Dergiler / Harran Üniversitesi Mühendislik Dergisi / 2023 / Cilt: 8 Sayı: 2

C++ Programlama Dili için Yerel Nesne-İlişkisel Haritalama Yaklaşımı

Sayfa
151–158
Yayın Tarihi
2023-08-31
DOI
—
🏛️Bu makalenin bibliyografik verileri ve tam metin bağlantısı DergiPark üzerinden sağlanmıştır.
DergiPark Kaydı ↗
✨

Yapay Zeka Hızlı Bakış & Çıkarımlar

AI Insight
⚡ TL;DR(1 Cümlede Hızlı Çıkarım)

Geliştirilen C++ ORM katmanı yerel olarak uygulamak için yeni bir yaklaşım tanıtılmaktadır.

📌 3 Maddede Bu Makale

🎯
Amaç & Hipotez:En popüler programlama dillerinin çoğu, nesne yönelimli olarak bilinen dillerdir.
📊
Temel Bulgular & Veri:Yapısal sorgulama dili olan SQL ise ilişkisel bir Veritabanı ile etkileşim kurmak için kullanılan ve verileri düzenlemek, yönetmek ve almak için kullanılan, standart haline gelmiş bir araçtır.
💡
Sonuç & Katkı:Geliştirilen C++ ORM katmanı yerel olarak uygulamak için yeni bir yaklaşım tanıtılmaktadır.
🔬Tür:Araştırma Makalesi
📍Kapsam:Genişletilmiş Akademik Örneklem
⚙️Değişkenler:C++ · SQL · ORM

Özet

En popüler programlama dillerinin çoğu, nesne yönelimli olarak bilinen dillerdir. Bu diller ile geliştirilmiş uygulamaların çoğu da, ilişkisel veri tabanları kullanmaktadır. Yapısal sorgulama dili olan SQL ise ilişkisel bir Veritabanı ile etkileşim kurmak için kullanılan ve verileri düzenlemek, yönetmek ve almak için kullanılan, standart haline gelmiş bir araçtır. Bu iki teknolojinin arasındaki temel farklılıklar nedeniyle sorunsuz bir şekilde birlikte çalışmamaktadır. Aralarındaki uyumsuzluklar, nesne/ilişkisel empedans uyumsuzluğu sorunları olarak ortaya çıkmaktadır. Bu nedenle, verileri o iki ortam arasında dönüştürebilmek için bir haritalama katmanına sahip olmak oldukça gereklidir. Bu soyutlama katmanı, uygulama nesnelerini otomatik olarak veritabanı kayıtlarına eşler; bu şekilde veritabanı ile etkileşim için gerekli kod miktarında azalma olmaktadır. Ayrıca verilerin tutulduğu veri tabanını yazılımcıdan soyutlamaya yardımcı olur. Böylelikle, kodun testini ve bakımını daha kolay kılar. Bu tür araçlara nesne/ilişkisel haritalama aracı denilir (Object/Relational Mapping - ORM). Çoğu programlama dili için çeşitli ORM araçları geliştirilmiştir. Ancak C++ için etkili bir ORM aracı bulunmamaktadır. Bu çalışmada C++'ın şablon (template) programlama ile esnek adresleme özellikleri kullanılarak veri tabanı işlemleri için kullanılan SQL komutları seri hale getirilmektedir. Geliştirilen C++ ORM katmanı yerel olarak uygulamak için yeni bir yaklaşım tanıtılmaktadır.

🔖

Bu Makaleye Atıf Yap

KALLA, A., TENEKECİ, E. (2023). C++ Programlama Dili için Yerel Nesne-İlişkisel Haritalama Yaklaşımı. Harran Üniversitesi Mühendislik Dergisi, Cilt: 8 Sayı: 2, 151–158. https://ajindex.com/articles/959495

📄 Tam Metin PDF Okuyucu

📄

PDF görüntüleyici hazırlanıyor...

Kaynakça (3)

  1. S. Karacabey, “Veritabanı modelleri ve hiyerarşik veritabanından ilişkisel veritabanına dönüşüm”, Yüksek Lisans Tezi, Yıldız Teknik Üniversitesi (1997).
  2. C. Ireland, D. Bowers, M. Newton, K. Waugh, “Understanding object-relational mapping: A framework based approach”, International Journal on Advances in Software, vol 2 no 2&3, (2009). M. K. Awang, “Transforming object oriented data model to relational data model”, International Journal of New Computer Architectures and their Applications, 3(3):403-410 (2012).
  3. C. Xia, G. Yu, M. Tang,.”Efficient Implement of ORM (Object/Relational Mapping) Use in J2EE Framework: Hibernate”, 1 - 3. 10.1109/CISE.2009.5365905 (2010). X. Zhang, “A framework for object-relational mapping with an example in C++”, Masters thesis, Concordia University (2004). Code Synthesis, “ODB - C++ Object-Relational Mapping (ORM)”, https://www.codesynthesis.com/products/odb/ (Accessed 2022-11-06). L. Marty, “QxOrm: C++ Qt ORM Object Relational Mapping database library - QxEntityEditor: C++ Qt entities graphic editor (data model designer and source code generator)”, http://www.qxorm.com/qxorm_en/home.html/ (Accessed 2022-11-06). L. Stryzhevskyi, “Oat++”, https://oatpp.io/ (Accessed 2022-11-06). Emweb, “Wt, C++ Web Toolkit — Emweb”, https://www.webtoolkit.eu/wt/ (Accessed 2022-11-06). TreeFrog Framework Project, “TreeFrog Framework | High-speed C++ MVC Framework for Web Application”, https://www.treefrogframework.org/ (Accessed 2022-11-06). M. Garrigues, “Lithium C++ High Performance HTTP server”, https://matt-42.github.io/lithium/ (Accessed 2022-11-06). P. Korzhyk, “GitHub - paulftw/hiberlite: C++ ORM for SQLite”, https://github.com/paulftw/hiberlite/ (Accessed 2022-11-06). BrainlessLabs, “GitHub - BrainlessLabs/bun: Bun is a simple to use C++ Object Database, Object Relational Mapper (ORM) and key-value library”, https://github.com/BrainlessLabs/bun/ (Accessed 2022-11-06).