SQL Server DML işlemleri üzerinde performans ve kod yazımı açısından C# ve Python programlama dillerinin karşılaştırılması
Comparison of C# and Python programming languages in terms of performance and coding on SQL Server DML operations
Yazar: MAHMUT YEŞİLYURT
Danışman: PROF. DR. YUSUF ZİYA AYIK
Atatürk Üniversitesi / Sosyal Bilimler Enstitüsü / Yönetim Bilişim Sistemleri Ana Bilim Dalı / Yönetim Bilişim Sistemleri Bilim Dalı
Derece: Yüksek Lisans, 2024
Konu: Yönetim Bilişim Sistemleri = Management Information Systems
Dizin: Bilgisayar programlama = Computer programming

Özet:
Günümüzde bilgisayar programlama dillerinde ve veritabanı yönetim sistemlerinde pek çok çeşitlilik bulunmakta ve bu çeşitli programlama dillerinin ve veritabanı yönetim sistemlerinin birbirlerine göre avantajlı ve dezavantajlı özellikleri bulunmaktadır. Bilgisayar programlarının dilinden bağımsız olarak vazgeçilmez bir bileşeni de veritabanlarıdır. Veritabanları sayesinde, bilgisayar programları ihtiyaç duydukları veya ürettikleri verileri kayıt altına alır ve gerekli oldukları zaman bu kayıtları çağırarak verilen görevleri yerine getirirler. Bilgisayar programının verimli ve hızlı çalışabilmesi için gerek veritabanının gerekse bilgisayar programının iyi yapılandırılmış olması en büyük etkendir. Bu çalışmada, bu çeşitli programlama dilleri arasında en yaygın kullanılan programlama dillerinden olan C# ve Python dillerinin yine en yaygın kullanılan veritabanı yönetim sistemlerinden biri olan MSSQL veritabanı üzerinden SQL DML (Veri Manipülasyonu Dili) işlemleri olan INSERT, SELECT, UPDATE, DELETE işlemlerini yapmak için sorguları oluşturup çalıştırmak ve işlem sonuçlarını ekrana yazdırmak özelinde işlem performansı ve bu işlemi yapabilmesi için yazılması gereken kod miktarının kod yazılabilirliği açısından değerlendirilmesi yapılmıştır. İşlem performansı bakımından yapılan değerlendirme de işlem sürelerine bakıldığında matematiksel olarak Python dili daha iyi performans göstermiş gibi gözükmesine rağmen her iki programlama dilinin de diğerine göre anlamlı bir üstünlük sağlamadığı görülmüştür. Kod boyutu ve okunabilirliği bakımından yapılan değerlendirme ise kod okunabilirliği bakımında genel bağlamda C# daha okunabilir bir dil olarak değerlendirilmesine rağmen bu çalışma için yazılan programlar bağlamında, kod okunabilirliği bağlamında her iki programlama dili arasında bir fark görülmemiştir. Kod boyutu bakımından ise Python kesin bir üstünlük sağlamıştır. Sonuç olarak her iki dil de birbirlerine göre üstün özellikler barındırdığı, DML işlemlerinde bu iki dilin birbirlerine karşı tercih sebebi olabilecek kesin bir üstünlüğünün olmadığı tespit edilmiştir. Dil seçiminin, projenin gereksinimlerine, ekosistemine ve ekip becerilerine bağlı olarak yapılması uygun görülmüştür.

Abstract:
Nowadays, there are many variations in computer programming languages and database management systems, and these various programming languages and database management systems have advantages and disadvantages over each other. Databases are an essential component of computer programs, regardless of their language. Thanks to databases, computer programs record the data that they need or produce and perform the given tasks by retrieving these data when necessary. For a computer program to run efficiently and quickly, it is essential that both the database and the computer program are well structured. In this study, C# and Python languages, which are among the most widely used programming languages out of these various programming languages, have been evaluated in terms of transaction performance and the amount of code that needs to be written to perform SQL DML (Data Manipulation Language) operations such as INSERT, SELECT, UPDATE, DELETE operations and print the results of the operation on the screen via MSSQL database, which is one of the most widely used database management systems. In terms of processing performance, it was observed that neither programming language provided a significant superiority over the other, although mathematically Python language seems to have performed better when looking at the processing times. In terms of code size and readability, although C# is generally considered to be a more readable language in terms of code readability, in the context of the programs written for this study, there was no difference between the two programming languages in terms of code readability. In terms of code size, Python provided a clear superiority. As a result, it has been determined that both languages have superior features compared to each other, and that there is no definite superiority between these two languages that can be a reason for preference over each other in DML operations. The choice of language should be based on the requirements of the project, the ecosystem and the skills of the team