Platformlar Arası Kod Klon Tespiti

dc.contributor.advisorAkhan Akbulut
dc.contributor.authorTUNÇ, TAYFUN
dc.date.accessioned2024-03-01T07:42:53Z
dc.date.available2024-03-01T07:42:53Z
dc.date.issued2023
dc.description▪ Yüksek lisans tezi.
dc.description.abstractGünümüzün taleplerine ayak uydurmak için yazılım mimarisi sürekli olarak geliştirilmektedir. En modern mimari yöntemlerden biri olmasına rağmen, mikroservis mimarisini uygulamanın zorlukları vardır. Mikroservis mimarisinin çok dilli yapısı organizasyon kolaylığı sağlarken, kod klonlarının algılanmasını da zorlaştırır. Kod klonları, bir yazılım sistemindeki, sistemi korumak için gereken bakım zamanını ve ihtiyaç duyduğu kaynağı artıran, yinelenen kod parçalarını ifade eder. Yazılım geliştirme için kod klonlarının hem olumlu hem de olumsuz etkileri olabilir. Bu nedenle, herhangi bir kod gözden geçirme ve yeniden düzenleme öncesi klonların tanımlanması gerekir. Çok dilli mikroservislerde, platformlar arasında kod klonlarını tespit etmek, onları aynı platformda bulmaktan daha zorlu bir iştir. Bu araştırma, JavaScript, C, C# ve Java ile geliştirilen yazılım bileşenlerinin, birbirinin kod klonları olma derecesini analiz etmek için bir metodoloji sunmaktadır. Spesifik olarak, kodların ne kadar benzer olduğunu belirlemek için Kosinüs Benzerliği, Öklid Uzaklığı ve Manhattan Uzaklığı ölçümlerini kullandık. Deney yoluyla, https://atcoder.jp sitesinden kod kopyalarından oluşan bir veri kümesi topladık ve çeşitli yaklaşımlar için deneysel eşikler belirledik. Deneylerimiz, platformlar arası kod klonlarını tespit etmede en etkili yaklaşımın Manhattan Uzaklığı olduğunu (%91,59), bunu Öklid Uzaklığı (%91,08) ve son olarak da Kosinüs Benzerliği'nin (%72,83) izlediğini gösteriyor. Aynı platformda kod klonlarını tespit etmedeki başarı oranı ise Kosinüs Benzerliği %94,73, Öklid Uzaklığı %91,77 ve Manhattan Uzaklığı %91,15'tir. Bu tekniğin, yazılım geliştirme ekiplerinin çeşitli teknolojiler kullandığı ortamlarda ortaya çıkabilecek platformlar arası benzer kod örneklerini belirlemek için kullanılabileceği tespit edilmiştir.tr
dc.identifier.tezno785766
dc.identifier.urihttps://hdl.handle.net/11413/9102
dc.language.isotr
dc.publisherİstanbul Kültür Üniversitesi
dc.rightsinfo:eu-repo/semantics/openAccess
dc.subjectMikroservis
dc.subjectMikroservis Mimarisi
dc.subjectKod Klon Tespiti
dc.subjectÇok Dilli Programlama
dc.titlePlatformlar Arası Kod Klon Tespititr
dc.typemasterThesis
local.journal.endpage66

Files

Original bundle

Now showing 1 - 1 of 1
Thumbnail Image
Name:
↓ Tam Metin/Full Text
Size:
1.93 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Placeholder
Name:
license.txt
Size:
1.81 KB
Format:
Item-specific license agreed upon to submission
Description: