Postingan

Menampilkan postingan dari Juli, 2021

Test Driven Development

 Test Driven Development Testing pada flutter  1. Unit Test Test untuk setiap fungsi, method dan class. Tujuan dari test ini adalah untuk memverifikasi kebenaran unit logika dibawah berbagai kondisi. Setelah melakukan refactoring code dan menggunakan bloc pattern, membuat unit test pada code menjadi lebih mudah. CONTOH CASE TEST BLOC FITUR SEE ALL COMMENTS (COMMENTS LIST) :  Pertama-tama, perlu dilakukan import package flutter_test, mockito, Comment List Bloc, dan package-package lain yang bersangkutan. import 'package:bloc/bloc.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:learn_fazz/blocs/comment_list/comment_list.dart'; import 'package:learn_fazz/models/comment_list_result.dart'; import 'package:learn_fazz/repositories/comment_repository.dart'; import 'package:mockito/mockito.dart'; import '../../test_helpers/mock_classes.dart'; import '../../test_helpers/simple_bloc_delegate.dart'; import ...

Spring

Spring Spring  merupakan framework Java yang mempermudah para  programmer  dalam membuat sebuah aplikasi Java dengan menerapkan salah satunya adalah  design-patern : dependency-injection . Beberapa Fitur yang disediakan Spring Framework adalah sebagai berikut. Depedency Injection Aspect Oriented Programming Spring MVC dan Restful Web Service Support koneksi database, dsb. Spring Boot  merupakan salah satu jenis framework dari Spring. Namun di Spring Boot , kita lebih dipermudah dalam pembuatan program karena : Sudah disediakan Tomcat dan beberapa server lain, sehingga kita hanya perlu  run . Menggunakan Maven sebagai  build manager  yang dapat kita atur di  Project Object Model (POM) Anotasi-anotasi  ajaib  yang mempermudah kita dalam menentukan komponen kelas-kelas. Istilah Deskripsi @Autowired Anotasi yang digunakan untuk melakukan inject instance dari suatu bean ke objek yang memiliki dependency @Configuration Anotasi yang diguna...

Flutter

Flutter Flutter adalah teknologi  open source  dari Google yang bisa digunakan untuk membuat aplikasi Android dan iOS. Flutter menggunakan bahasa dart.  Kelebihan flutter :  Penulisan kode lebih cepat Satu kode dapat menghasilkan aplikasi android maupun iOS Tampilan desain yang bagus Mudah untuk dipelajari dan digunakan Kekurangan flutter : Ukuran file yang besar Library yang masih belum terlalu lengkap Komunitas yang masih berkembang Widget adalah semua komponen seperti button, text, icon dan sebagainya yang membentuk sebuah tampilan atau kerangka aplikasi. Keseluruhan dari aplikasi yang terlihat di layar merupakan kumpulan widget.  Ada 2 jenis widget : Stateful Widget : widget yang dinamis / dapat berubah-ubah. Dinamis yang dimaksud adalah setiap isi komponen dalam Stateful widget dapat berubah secara dinamis pada saat pengguna menggunakan aplikasi. Code dasar stateful widget : class MyApp extends StatefulWidget { @override _MyAppState createState() =>...

SOLID Principles

Gambar
 S.O.L.I.D SOLID Principles ini dicetuskan oleh Uncle Bob di sekitar tahun 1995-an, yang mana ketika kita mengimplementasikannya dalam pengembangan software dengan pendakatan berbasis objek (object oriented), diharapkan akan membuat kode program menjadi lebih adaptif terhadap perubahan serta mudah dalam maintenance. SOLID : S : Single Responsibility Principle O : Open Closed Principle L : Liskov Substitution Principle I : Interface Segregation Principle D : Dependency Inversion Principle Single Responsibility Principle : setiap class hanya memiliki 1 fungsi saja Dalam project, misal terdapat class MyHomePage, class MyHomePage untuk menampilkan tampilan halaman home. Open Closed Principle :  setiap entitas perangkat lunak (class, module, fungsi, dsb.) sebaiknya terbuka untuk dilakukan ekstensi, dan tertutup untuk modifikasi. Kita seharusnya dapat menambahkan behavior baru tanpa perlu merubah implementasinya. Tujuan dari prinsip ini untuk menghindari kemungkinan terjadinya ...

Scrum

Scrum Agile Manifesto merupakan nilai-nilai yang digunakan dalam mendasari berlangsungnya Agile Software Development. Agile Manifesto muncul dilatarbelakangi oleh frustasi para pengembang software akibat metode yang digunakan pada saat itu, yaitu Waterfall Model. Salah satunya jeda waktu yang panjang antara penentuan requirement dan product delivery yang dapat berujung pada pembatalan project karena prosesnya yang lama. Kebutuhan klien juga berubah-ubah pada jangka waktu tersebut sehingga produk akhir tidak memenuhi requirement. Pada tahun 2000, Jon Kern, Kent Beck, Ward Cunningham, Arie van Bennekum, Alistair Cockburn, dan 12 orang lainnya mengadakan pertemuan di Oregon dan kemudian pada tahun 2001 di The Lodge, Utah. Pertemuan tersebut menghasilkan Agile Manifesto yang dituliskan secara formal. Agile Manifesto terdiri dari 4 nilai utama. Berikut adalah 4 nilai Agile Manifesto yang dikutip dari website tersebut. 1. Individuals and Interactions Over Processes and Tools Individu dan...