Geri Dön

Mobil uygulama geliştirme süreci için otomatik kod üretimi

Automatic code generation for mobile application development process

  1. Tez No: 939424
  2. Yazar: ŞAHİN BİÇEN
  3. Danışmanlar: DR. ÖĞR. ÜYESİ TURGAY AYDOĞAN
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2025
  8. Dil: Türkçe
  9. Üniversite: Süleyman Demirel Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. 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

  1. 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

    Türkçe

    2018

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolHacettepe Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. SEVİL ŞEN AKAGÜNDÜZ

  2. Hibrit mobil eğitsel ölçme sistemi geliştirilmesi

    Hybrid mobile educational assessment system development

    BAYRAM TOKLUİÇTEN

    Yüksek Lisans

    Türkçe

    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

  3. 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

    Türkçe

    2022

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolAnkara Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. REFİK SAMET

  4. 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

    İngilizce

    2025

    Mimarlıkİstanbul Teknik Üniversitesi

    Mimarlık Ana Bilim Dalı

    PROF. DR. BEGÜM SERTYEŞİLIŞIK

  5. 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

    İngilizce

    2023

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolSakarya Üniversitesi

    Bilgisayar ve Bilişim Mühendisliği Ana Bilim Dalı

    PROF. DR. CELAL ÇEKEN