2 research outputs found

    IMPLEMENTASI CLEAN ARCHITECTURE MVVM DAN REPOSITORY PATTERN UNTUK PENGEMBANGAN APLIKASI ANDROID JUAL BELI BARANG BEKAS “SECONDHAND”

    Get PDF
    Model View ViewModel atau yang biasa disingkat MVVM merupakan salah satu desain arsitektur yang sering digunakan dalam pengembangan aplikasi mobile khususnya android. MVVM memiliki beberapa tujuan, dari segi penulisan kode arsitektur ini bertujuan untuk mempermudah dalam penulisan kode dan melakukan testing, dari segi fitur arsitektur ini dibuat untuk bisa bertahan dalam perubahan konfigurasi pada aplikasi. Penerapan MVVM terkadang juga diikuti dengan penerapan repository pattern, repository pattern adalah sebuah desain arsitektur dalam pengembangan software, di mana repository pattern bertujuan untuk memisahkan data layer dari keseluruhan aplikasi, sehingga bagian lain akan ‘buta’ terhadap sumber data yang diberikan. Aplikasi SecondHand mengimplementasikan dua arsitektur ini dengan tujuan agar bisa membangun sebuah aplikasi yang bersih dari segi kode, dan kokoh dari segi fitur

    Criação de uma solução arquitetônica para organização de código em aplicações Android

    Get PDF
    TCC(graduação) - Universidade Federal de Santa Catarina. Centro Tecnológico. Ciências da Computação.Com a demanda alta pelo desenvolvimento de aplicativos Android, é necessário encontrar as melhores formas de organizar e estruturar o código desses aplicativos, de forma a maximizar a reutilização de código e a manutenabilidade, e o meio ideal de definir isso é através do uso de uma arquitetura adequada. Os desenvolvedores do sistema operacional Android não definem uma arquitetura recomendada para a criação de aplicativos. Além disso, o modelo de execução do Android e as bibliotecas do Android SDK definem diretivas para o desenvolvimento de aplicativos que dificultam o baixo acoplamento e a alta coesão entre os componentes do aplicativo. Por esses fatores, definir uma arquitetura ideal é um grande desafio no desenvolvimento Android. Neste trabalho, foram estudados diversos padrões de arquitetura usados pela comunidade e foram analisadas suas vantagens e desvantagens no desenvolvimento Android. Também foram estudados os mais modernos componentes de arquitetura disponibilizados pela Google. Foi criado então um projeto ​boilerplate que apresenta uma arquitetura de software que visa auxiliar programadores no desenvolvimento de aplicações Android com características desejáveis de organização de código. Criou-se uma aplicação utilizando esse ​boilerplate criado. Para a avaliação do ​boilerplate​, foram criadas duas aplicações utilizando o ​boilerplate como base. As aplicações foram submetidas a métricas de coesão e acoplamento. Foi também analisada uma outra aplicação já existente que não utilizou o ​boilerplate​, para fins de comparação. Os resultados dão indícios de que o ​boilerplate se mostrou eficaz nas métricas estabelecidas e colaborou para o desenvolvimento de aplicações Android com uma boa arquitetura, baixo acoplamento e alta coesão.With the high demand for the development of Android applications, it is necessary to find the best ways to organize and structure the code of these applications, in a way that maximizes code reuse and maintainability, and the most suitable way of defining that is by using an appropriate architecture. Developers of the Android operating system have not defined or recommended any architecture for the development of Android applications. Moreover, the Android execution model and the libraries of the Android SDK provide guidelines for the development of applications that hinder loose coupling and high cohesion between the application’s components. Because of these factors, it has always been a big challenge to define the ideal architecture for Android development. In this work, several architecture patterns used by the community were studied and their advantages and disadvantages in Android development were analyzed. Also the most modern architecture components available by Google were studied. Therefore, a boilerplate project that presents a software architecture that intends to help programmers on Android application development was created to help them create their applications with desirable code organization features. An application that uses this boilerplate was also created. For the boilerplate evaluation, programmer users were asked to create an application based on the boilerplate. The applications were analyzed with cohesion and coupling metrics and the users were asked to respond to a questionnaire. Another existent application that was not based on the boilerplate was also analyzed for comparison. The results indicate that the boilerplate was effective on the metrics used and helped the development of Android applications with a good architecture, high cohesion, and low coupling
    corecore