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ı: Belirtilmemiş.

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

    Bilgisayar Ana Bilim Dalı (disiplinlerarası)

    YRD. DOÇ. DR. ERTUĞRUL ERGÜN

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

  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 mobile application for attendance tracking based on user authentication

    Kullanıcı kimlik doğrulamaya dayalı katılım takibi için mobil uygulama

    BAWAR ALI ABDALKARIM ABDALKARIM

    Yüksek Lisans

    İngilizce

    İngilizce

    2023

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

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. DEVRİM AKGÜN

  5. Finans sektöründe çevik proje yönetimini iyileştirmede kullanılan araç seçim kararına yönelik bir uygulama

    An application to decision of tool selection to improve agile project management in the finance industry

    KENAN CAN HARPUTLU

    Yüksek Lisans

    Türkçe

    Türkçe

    2023

    Mühendislik Bilimleriİstanbul Teknik Üniversitesi

    İşletme Mühendisliği Ana Bilim Dalı

    DOÇ. DR. AHMET ATIL AŞICI