Analisis Dependency Injection dan Model-View-Presenter Pada Aplikasi Berbasis Android - Kartarina Kartarina; Apriliansyah Apriliansyah (STMIK Banjarbaru, 2022)
Abstrak. Coupling merupakan salah satu indikator kualitas perancangan perangkat lunak terstruktur dan berorientasi objek. Coupling yang ketat akan sulit dirawat sehingga langkah awal mengendalikan Coupling yang baik adalah dengan menerapkan Design Pattern. Eksperimen penerapan Design Pattern membuktikan bahwa design pattern tidak menjamin pengkodean dapat lepas dari Design Smell. Masalah Coupling pada objek yang berkaitan dengan sumber data adalah ketika objek membutuhkan referensi objek Android Context. Android mengumumkan penggunaan Hilt sebagai standar dalam otomatisasi Dependency Injection. Penerapan MVP dapat membantu pengiriman referensi objek Android Context ke Model. Penelitian ini bertujuan menganalisis lebih lanjut untuk mengetahui hasil komparasi metrik kopling objek dari penerapan Dependency Injection secara manual dan otomatisasi pada aplikasi Android. Penelitian ini menghasilkan, otomatisasi penambahan jumlah kopling kelas pada View dan mengurangi kopling kelas pada Presenter. Selain itu, manfaat dari penerapan Dependency Injection secara otomatisasi mengurangi tanggung jawab Class pada Presenter dan menghilangkan Design Smell atau desain yang kompleks, walau begitu, penerapan Dependency Injection secara otomatisasi mempengaruhi pola MVP yang menggunakan Dependency Injection secara manual.Kata kunci: Coupling; Design Pattern; Dependency Injection; Model-View-Presenter Abstract. Coupling is one indicator of the quality for structured and object-oriented software design. Tight couplings will be difficult to maintain so the first step when controlling a good coupling is to apply a Design Pattern. Experiments on the application of Design Patterns prove that design patterns do not guarantee that coding can be separated from Design Smell. Coupling problem with objects related to data sources is that when the object requires an Android Context object reference. Android announced the use of Hilt as standard in Dependency Injection automation. Implementing MVP can help pass Android Context object references to Models. This aims to analyze further to find out the results of the comparison of object coupling metrics from the manual and automated application of Dependency Injection on Android applications. The results of the research, automatic increasing the number classes of coupling on the View and reduce class coupling on the Presenter. In addition, the benefits of implementing Dependency Injection automatically reduces class responsibility on Presenter and Design Smell or complex designs, however, automated Dependency Injection implementation affects the MVP pattern that uses Dependency Injection manually.Keywords: Coupling; Design Pattern; Dependency Injection; Model-View-Presenter