Mobil uygulama geliştirme süreci için otomatik kod üretimi
Automatic code generation for mobile application development process
- Tez No: 939424
- Danışmanlar: DR. ÖĞR. ÜYESİ TURGAY AYDOĞAN
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2025
- Dil: Türkçe
- Üniversite: Süleyman Demirel Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 95
Özet
Bu çalışma Flutter tabanlı mobil uygulama projelerinde; istemci ile sunucu arasındaki iletişimi sağlayan REST tabanlı API aracılığıyla aldığı verilere göre çok katmanlı yazılım mimarilerinin, Android Studio gibi geliştirme ortamlarına ihtiyaç duymaksızın otomatik olarak oluşturulmasını sağlayan masaüstü tabanlı bir yazılım aracı geliştirmeyi amaçlamaktadır. Geliştirilen yazılım aracı, özellikle API dokümantasyonunda yaygın olarak veri paylaşımı biçimi olarak kullanılan JavaScript Nesne Gösterimi (JSON) dosyalarını temel alarak, yazılım geliştirme süreçlerini hızlandırmayı ve otomasyon destekli, temiz kod prensiplerine uygun yapılar üretmeyi hedeflemektedir. Çalışmada JSON dosyası analiz edilerek API'ye ait uç noktalar, parametreler ve veri modelleri ayrıştırılmış; elde edilen bu bilgiler aracılığıyla otomatik olarak dinamik kod üretimi gerçekleştirilmiştir. Bu süreçte, önceden tanımlanmış proje şablon dosyaları kullanılmış ve kullanıcılara şablonları özelleştirme olanağı tanınarak projeye özgü kod yapılarının oluşturulması sağlanmıştır. Otomatik olarak üretilen kodlar, okunabilirlik ve modülerlik açısından temiz kod ilkeleri çerçevesinde yapılandırılmıştır. Geliştirilen yazılım aracı, kullanıcıların proje içerisinde kullanacakları klasör yapısını tanımlamalarına olanak tanımaktadır. Ayrıca, API belgelerine uyumlu olacak şekilde gerekli uygulama geliştirme kütüphaneleri önerilmiş ve bu kütüphanelerin sürüm denetimi yapılarak projeye sorunsuz biçimde entegre edilmesi sağlanmıştır. Bu sayede proje gereksinimlerine uygun çözümler sunulmuş ve uyumluluk sorunları en aza indirilmiştir. Yazılım aracına entegre edilen hazır bir doğal dil işleme modeli ile kullanıcı arayüzü tasarım süreçleri hızlandırılmıştır. Bu sayede geleneksel arayüz tasarımı sürecinde karşılaşılan insan kaynaklı hatalar azaltılmış ve işlem gereksinimleri düşürülmüştür. Bu çalışma sonucunda yazılım geliştirme süreçlerinde hem zaman tasarrufu sağlanmış hem de geliştiricilere daha düzenli, okunabilir ve sürdürülebilir bir kod altyapısı sunulmuştur. Geliştirilen yazılım aracı özellikle mobil uygulama geliştirme projelerinde kod üretimini optimize ederek, yazılım süreçlerine yenilikçi ve verimlilik odaklı bir yaklaşım kazandırmaktadır.
Özet (Çeviri)
This study aims to develop a desktop-based software tool for Flutter-based mobile application projects, which automatically generates multi-layered software architectures based on the data received via a REST-based API that facilitates communication between the client and the server without the need for development media such as Android Studio. The software tool so developed specifically focuses on accelerating software development processes and generating automation-supported, clean code-compliant structures by utilizing JavaScript Object Notation (JSON) files, which are commonly used for data sharing in API documentation. In the study, the JSON file was analyzed and the endpoints, parameters and data models of the API were parsed; and dynamic code generation was performed automatically on the basis of such data. Pre-defined project template files were used in this process and users were given the opportunity to customize the templates to create project-specific code structures. The automatically generated code is structured according to clean code principles in terms of readability and modularity. The developed software tool allows users to define the folder structure to be implemented in the project. Furthermore, necessary application development libraries that are compatible with the API documentation are recommended, and version verification of such libraries is implemented to ensure smooth integration into the project. This ensures that solutions are tailored to project requirements and compatibility issues are minimized. A built-in natural language processing model integrated into the software tool accelerates the user interface design process. This reduces human errors typically encountered during traditional UI design and further reduces the processing requirements. This study has resulted in both time savings in software development processes and a more organized, readable and sustainable code infrastructure for developers. The developed software tool brings an innovative and efficiency-oriented approach to software processes by optimizing code generation, especially in mobile application development projects.
Benzer Tezler
- Androıd uygulama kurulum süreci için verimli bir evrimsel tabanlı fuzz testi
An efficient evolutionary-based fuzzing for android application installation process
VEYSEL HATAŞ
Yüksek Lisans
Türkçe
2018
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolHacettepe ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. SEVİL ŞEN AKAGÜNDÜZ
- Hibrit mobil eğitsel ölçme sistemi geliştirilmesi
Hybrid mobile educational assessment system development
BAYRAM TOKLUİÇTEN
Yüksek Lisans
Türkçe
2016
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolAfyon Kocatepe Üniversitesiİnternet ve Bilişim Teknolojileri Yönetimi Ana Bilim Dalı
YRD. DOÇ. DR. ERTUĞRUL ERGÜN
- Bluetooth based mobile automatic class attendance management system
Bluetooth tabanlı mobil otomatik sınıf yoklama yönetim sistemi
MEHTAP YÜCEİLYAS
Yüksek Lisans
Türkçe
2022
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolAnkara ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF. DR. REFİK SAMET
- A conceptual model for image recognition based progress monitoring: retail construction and finishing works
Görüntü tanıma tabanlı ilerleme takibi için kavramsal bir model: perakende inşaat ve ince yapı işleri
SALİH KAAN MAZLUM
Doktora
İngilizce
2025
Mimarlıkİstanbul Teknik ÜniversitesiMimarlık Ana Bilim Dalı
PROF. DR. BEGÜM SERTYEŞİLIŞIK
- Session hijacking attacks on wireless networks detection and prevention
Kablosuz ağlarda oturum ele geçirme saldırılarını tespit etme ve önleme
TAHA ALI MOHAMMED GAROON
Yüksek Lisans
İngilizce
2023
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolSakarya ÜniversitesiBilgisayar ve Bilişim Mühendisliği Ana Bilim Dalı
PROF. DR. CELAL ÇEKEN