QUIZ 1
QUIZ PBKK 1
Sandyatama Fransisna Nugraha (5025211196)
Soal :
Jelaskan struktur framework , dan apa saja kegunaanya dalam pengembangan Perangkat Lunak?
Dalam pembuatan aplikasi, pertimbangan apa saja ketika memilih metode implementasi Winform, WPF , ataupun UWP. Jelaskan perbedaan masing-masing.
Untuk memperjelas jawaban no 2, Buatlah screenshot aplikasi yang pernah dibuat, beserta deskripsi dan link tugas yang pernah dikerjakan mengenai Winfor, WPF dan UWP
Apa yang dimaksud dengan aplikasi Rich UI. Buatlah aplikasi Rich UI yang berguna dalam kehidupan sehari hari, misal Animasi Clock, aplikasi cuaca, pemantauan kesehatan. Buat design UI nya..
Implementasikan soal no 4, kemudian buat video tutorial pengerjaannya, upload di Youtube, dan embedded di blog dokumentasi.
Jawab :
Framework adalah kerangka kerja atau struktur framework berisikan kerangka kerja yang terdiri dari komponen-komponen utama yang membentuk dasar pengembangan perangkat lunak. Struktur ini menyediakan pendekatan yang terorganisir dan terstruktur dalam membangun aplikasi. Framework menyediakan serangkaian aturan, konvensi, dan alat yang membantu pengembang dalam mengembangkan perangkat lunak dengan lebih cepat dan efisien.Biasanya framework mencakup aturan, konvensi, dan pola desain yang harus diikuti oleh pengembang dalam membangun aplikasi.
Berikut adalah beberapa komponen utama yang biasanya ada dalam struktur framework:
Arsitektur: Framework biasanya memiliki arsitektur yang telah ditentukan sebelumnya. Arsitektur ini menentukan bagaimana komponen-komponen aplikasi saling berinteraksi dan berkomunikasi. Contoh arsitektur yang umum digunakan adalah Model-View-Controller (MVC) dan Model-View-ViewModel (MVVM).
Modul dan Komponen: Framework biasanya terdiri dari modul-modul atau komponen-komponen yang dapat digunakan untuk membangun aplikasi. Modul ini dapat berupa fungsi, kelas, atau komponen lain yang menyediakan fitur-fitur khusus yang dapat digunakan oleh pengembang.
Routing: Framework biasanya menyediakan mekanisme routing yang memungkinkan pengembang untuk menentukan bagaimana URL atau permintaan HTTP akan dipetakan ke fungsi atau tindakan tertentu dalam aplikasi. Routing ini memudahkan pengembang dalam mengatur navigasi dan mengelola permintaan pengguna.
Database dan ORM: Framework biasanya menyediakan dukungan untuk mengakses dan mengelola basis data. Framework dapat menyediakan ORM (Object-Relational Mapping) yang memungkinkan pengembang untuk berinteraksi dengan basis data menggunakan objek dan kelas, daripada menulis kueri SQL secara langsung.
Template Engine: Framework biasanya menyediakan mesin template yang memungkinkan pengembang untuk memisahkan logika bisnis dari tampilan. Dengan menggunakan template engine, pengembang dapat membuat tampilan yang dinamis dan mudah dipelihara.
Keamanan: Framework biasanya menyediakan fitur keamanan yang membantu melindungi aplikasi dari serangan dan kerentanan keamanan. Fitur-fitur ini dapat mencakup validasi input, perlindungan terhadap serangan XSS (Cross-Site Scripting) dan CSRF (Cross-Site Request Forgery), serta manajemen otentikasi dan otorisasi.
Pengujian: Framework biasanya menyediakan dukungan untuk pengujian otomatis. Pengembang dapat menulis unit test, integrasi test, dan test fungsional untuk memastikan bahwa aplikasi berfungsi dengan baik dan sesuai dengan harapan.
Struktur framework dapat bervariasi tergantung pada jenis framework yang digunakan, seperti framework web, framework aplikasi mobile, atau framework desktop. Namun, pada umumnya, struktur framework dirancang untuk memudahkan pengembangan perangkat lunak dengan menyediakan aturan dan komponen yang konsisten dan terstruktur.
Saya akan mengambil contoh struktur framework WPF, dimana struktur ini terdiri dari
Window: Window adalah komponen utama dalam WPF yang mewakili jendela aplikasi. Setiap aplikasi WPF memiliki setidaknya satu window utama. Window dapat berisi elemen-elemen lain seperti panel, kontrol, dan tata letak.
Controls: WPF menyediakan berbagai macam kontrol yang dapat digunakan dalam aplikasi, seperti tombol, teksbox, label, listbox, dan sebagainya. Kontrol-kontrol ini dapat ditempatkan di dalam window atau panel untuk membangun antarmuka pengguna.
Layout Panels: WPF menyediakan berbagai macam panel tata letak yang digunakan untuk mengatur posisi dan tata letak kontrol-kontrol dalam window. Beberapa contoh panel tata letak yang umum digunakan adalah StackPanel, Grid, DockPanel, dan WrapPanel.
Data Binding: WPF memiliki fitur data binding yang kuat yang memungkinkan pengikatan data antara sumber data dan kontrol. Dengan menggunakan data binding, pengembang dapat menghubungkan kontrol dengan sumber data dan secara otomatis memperbarui tampilan ketika data berubah.
Styles dan Templates: WPF menyediakan fitur gaya (styles) dan template yang memungkinkan pengembang untuk mendefinisikan tampilan dan gaya kontrol secara terpusat. Dengan menggunakan gaya dan template, pengembang dapat dengan mudah mengubah tampilan aplikasi secara konsisten.
Event Handling: WPF menggunakan model event handling yang mirip dengan platform .NET lainnya. Pengembang dapat menangani peristiwa (event) yang terjadi pada kontrol atau elemen lain dalam aplikasi untuk merespons interaksi pengguna.
Animation dan Transisi: WPF menyediakan dukungan untuk animasi dan transisi yang memungkinkan pengembang untuk membuat antarmuka pengguna yang dinamis dan menarik. Pengembang dapat membuat animasi perubahan properti, perpindahan elemen, dan efek transisi antara tampilan.
Data Templates: WPF menyediakan fitur data templates yang memungkinkan pengembang untuk mendefinisikan tampilan khusus untuk objek data tertentu. Dengan menggunakan data templates, pengembang dapat mengontrol tampilan item dalam kontrol seperti listbox atau combobox.
Kegunaan framework dalam pengembangan perangkat lunak antara lain:
Mempercepat pengembangan: Framework menyediakan komponen dan fungsi yang sudah siap pakai, sehingga pengembang tidak perlu memulai dari awal. Hal ini mempercepat proses pengembangan aplikasi.
Memudahkan pemeliharaan: Dengan menggunakan framework, pengembang dapat mengikuti standar dan konvensi yang sudah ditetapkan. Hal ini memudahkan pemeliharaan dan perbaikan aplikasi di masa depan.
Meningkatkan keamanan: Framework umumnya memiliki fitur keamanan yang sudah teruji dan terintegrasi. Pengembang dapat memanfaatkan fitur-fitur ini untuk melindungi aplikasi dari serangan dan kerentanan keamanan.
Memiliki dokumentasi yang lengkap: Framework umumnya disertai dengan dokumentasi yang lengkap dan jelas. Hal ini memudahkan pengembang dalam mempelajari dan menggunakan framework tersebut.
Memfasilitasi kolaborasi: Dengan menggunakan framework yang populer, pengembang dapat dengan mudah berkolaborasi dengan pengembang lain. Mereka dapat berbagi pengetahuan, pengalaman, dan sumber daya untuk mempercepat pengembangan aplikasi.
- Winfor :
Aplikasi Calculator App
Membuat aplikasi kalkulator dimana user bisa melakukan penambahan, pengurangan, perkalian dan pembagian angka.
- WPF
Membuat List Nama
Membuat aplikasi list nama dimana user dapat melakukan penambahan nama dengan menggunakan teknologi add name
Link : https://github.com/TamaFn/Tugas3_PBKK
2. Membuat Media Capture
Membuat Aplikasi Media Capture dengan menggunakan framework WPF dimana user dapat melakukan sesi memulai pemotretan, penyimpanan gambar dan mengakhiri sesi pemotretan
Link : https://github.com/TamaFn/MediaCaptureApp- UWP
Membuat Aplikasi Photolab
- Menggunakan XAML untuk mendefinisikan tampilan dengan elemen-elemen seperti tombol, gambar, dan teks.
- Menganimasikan elemen dengan keyframes, transformasi, dan efek transisi.
- Memperkaya tampilan dengan efek visual seperti bayangan dan blur.
- Mengatur elemen dengan tata letak fleksibel seperti grid dan stack panel.
- Menambahkan transisi halus antara tampilan.
- Menganimasikan elemen dengan keyframes, transformasi, dan efek transisi.
- Memperkaya tampilan dengan efek visual seperti bayangan dan blur.
- Mengatur elemen dengan tata letak fleksibel seperti grid dan stack panel.
- Membuat kontrol kustom sesuai kebutuhan.
- Menambahkan transisi halus antara tampilan.
Komentar
Posting Komentar