QUIZ 1 PBKK 2023

Nama    : Salsabila Fatma Aripa

NRP      : 5025211057

Kelas     : PBKK - B

Tugas     : PBKK - Tugas 4

Tahun     : 2023


Soal Quiz yang diberikan

1. Jelaskan struktur framework , dan apa saja kegunaanya dalam pengembangan Perangkat Lunak? 

2. Dalam pembuatan aplikasi, pertimbangan apa saja ketika memilih metode implementasi Winform, WPF , ataupun UWP. Jelaskan perbedaan masing-masing. 

3. Untuk memperjelas jawaban no 2, Buatlah screenshot aplikasi yang pernah dibuat, beserta deskripsi dan link tugas yang pernah dikerjakan mengenai Winfor, WPF dan UWP.

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

5. Implementasikan soal no 4, kemudian buat video tutorial pengerjaannya, upload di Youtube, dan embedded di blog dokumentasi.

Jawaban No. 1

Sebuah framework dalam pengembangan perangkat lunak adalah kerangka kerja atau struktur yang telah dibuat sebelumnya, yang menyediakan sejumlah komponen, aturan, dan alat bantu yang dapat digunakan oleh pengembang perangkat lunak untuk mempercepat proses pengembangan. Framework membantu mengatur pengembangan perangkat lunak dengan menyediakan panduan, struktur, dan solusi umum untuk masalah yang sering muncul dalam pengembangan perangkat lunak.

Struktur sebuah framework dalam pengembangan perangkat lunak merujuk pada organisasi dan hierarki komponen-komponen yang membentuk kerangka kerja tersebut. Struktur framework adalah kerangka dasar yang memandu pengembang dalam membangun aplikasi atau sistem. 

Berikut adalah komponen umum dalam struktur sebuah framework:

1. Core Components (Komponen Inti) : Bagian inti framework yang menyediakan fungsionalitas dasar dan komponen utama. Ini termasuk modul inti, library, dan alat yang digunakan dalam pengembangan aplikasi. Contoh: Modul manajemen basis data, sistem routing, manajemen ketergantungan, atau komponen antarmuka pengguna inti.

2. Pola Arsitektur Aplikasi (Application Architecture Patterns) : Framework seringkali mendorong atau mengikuti pola arsitektur tertentu, seperti Model-View-Controller (MVC) atau Model-View-ViewModel (MVVM). Pola ini membantu dalam pemisahan logika bisnis, presentasi, dan data dalam aplikasi.

3. Aturan dan Pedoman (Rules and Guidelines) : Framework biasanya mengatur aturan dan pedoman tentang cara menulis kode, struktur direktori, dan organisasi proyek. Hal ini memastikan konsistensi dalam kode aplikasi.

4. Kode dan Komponen yang Siap Pakai (Ready-Made Code and Components) : Framework seringkali menyertakan komponen yang sudah siap pakai, seperti form input, manajemen otentikasi, atau komponen antarmuka pengguna yang dapat digunakan langsung.

5. Manajemen Siklus Hidup Aplikasi (Application Lifecycle Management) : Framework menyediakan alat dan logika untuk mengelola siklus hidup aplikasi, seperti inisialisasi, penyebaran, dan penanganan peristiwa (event handling).

6. Manajemen Ketergantungan (Dependency Management) : Framework biasanya menyediakan alat untuk mengelola ketergantungan antara komponen, library, dan modul yang digunakan dalam proyek.

7. Keamanan (Security) : Framework seringkali memiliki lapisan keamanan terintegrasi yang membantu melindungi aplikasi dari serangan umum, seperti SQL injection, cross-site scripting (XSS), atau serangan keamanan lainnya.

8. Pengujian dan Pemeliharaan (Testing and Maintenance) : Framework biasanya menyediakan alat dan kerangka kerja untuk pengujian otomatis dan pemeliharaan kode, termasuk debugging, pemantauan kinerja, dan manajemen kesalahan.

9. Dokumentasi (Documentation): Framework seringkali disertai dengan dokumentasi yang lengkap, yang memudahkan pengembang untuk memahami cara menggunakan framework dan memecahkan masalah yang muncul.

Framework memiliki beberapa kegunaan yang penting dalam pengembangan perangkat lunak, termasuk:

1. Mempercepat Pengembangan: Framework menyediakan komponen siap pakai dan pola desain yang memungkinkan pengembang untuk memulai lebih cepat, mengurangi upaya pengembangan dari awal, dan mempercepat waktu peluncuran aplikasi.

2. Konsistensi Kode: Framework biasanya mengatur aturan dan pedoman yang konsisten dalam penulisan kode, sehingga memastikan bahwa kode yang dihasilkan oleh berbagai pengembang tetap konsisten dan mudah dimengerti.

3. Mengurangi Kesalahan: Kode yang telah diuji dan diuji kembali yang disertakan dalam framework dapat membantu mengurangi kesalahan dalam pengembangan aplikasi, karena komponen-komponen tersebut telah diuji oleh banyak pengguna sebelumnya.

4. Efisiensi dan Produktivitas: Framework biasanya menyediakan alat bantu dan utilitas yang mempercepat tugas-tugas umum, seperti pengujian, manajemen basis data, dan interaksi antarmuka pengguna. Ini dapat meningkatkan produktivitas pengembang.

5. Keamanan Terintegrasi: Banyak framework menyediakan mekanisme keamanan terintegrasi, yang membantu melindungi aplikasi dari serangan umum, seperti SQL injection, cross-site scripting (XSS), dan serangan keamanan lainnya.

6. Pola Arsitektur yang Terbukti: Framework seringkali mengusulkan atau mewajibkan pengguna untuk mengikuti pola arsitektur yang terbukti, seperti Model-View-Controller (MVC), yang membantu dalam pemisahan logika bisnis, presentasi, dan data dalam aplikasi.

7. Dokumentasi yang Baik: Banyak framework dilengkapi dengan dokumentasi yang baik, yang memudahkan pengembang untuk memahami cara menggunakan framework dan memecahkan masalah yang muncul.

8. Pemeliharaan yang Lebih Mudah: Karena banyak framework mengikuti standar umum dan memiliki struktur yang terorganisir, pemeliharaan aplikasi jangka panjang menjadi lebih mudah dan dapat dilakukan oleh pengembang lain.

9. Skalabilitas: Framework seringkali memungkinkan pengembangan aplikasi yang lebih mudah diubah ukurannya. Ini adalah fitur penting untuk aplikasi yang mungkin harus tumbuh seiring waktu.

10. Konsentrasi pada Masalah Bisnis: Dengan menggunakan komponen siap pakai dari framework, pengembang dapat fokus pada menyelesaikan masalah bisnis utama daripada menghabiskan waktu membangun komponen dasar.

Jawaban No. 2

Ketika memilih metode implementasi antara WinForms, WPF (Windows Presentation Foundation), dan UWP (Universal Windows Platform) dalam pengembangan aplikasi Windows, Anda perlu mempertimbangkan beberapa faktor untuk membuat keputusan yang tepat. Berikut adalah pertimbangan utama dan perbedaan masing-masing:

Kompleksitas Aplikasi:

  • WinForms: Cocok untuk aplikasi desktop sederhana atau aplikasi yang memerlukan antarmuka pengguna (UI) dasar.

  • WPF: Lebih cocok untuk aplikasi yang lebih kompleks dengan tampilan yang sangat disesuaikan. WPF memberikan lebih banyak fleksibilitas dalam desain UI.

  • UWP: Dirancang khusus untuk aplikasi Universal Windows Platform yang bersifat modern. Cocok untuk aplikasi yang ingin berjalan di berbagai perangkat Windows, termasuk PC, tablet, dan perangkat mobile.

Desain Antarmuka Pengguna (UI):

  • WinForms: UI lebih terbatas dalam hal desain dan visualisasi. Tampilan cenderung lebih klasik dan terbatas pada kontrol dasar.

  • WPF: Menawarkan desain UI yang lebih kaya dengan dukungan untuk animasi, tampilan 2D/3D, dan elemen UI yang sangat disesuaikan.

  • UWP: Dirancang untuk memberikan pengalaman UI modern dan responsif, dengan dukungan untuk tampilan yang dapat disesuaikan dengan perangkat dan mode malam (dark mode).

Kinerja:

  • WinForms: Umumnya memiliki kinerja yang baik untuk aplikasi desktop sederhana.

  • WPF: Lebih berat dan memerlukan lebih banyak sumber daya, tetapi memberikan lebih banyak potensi visual.

  • UWP: Memiliki performa yang baik dan responsif, terutama di perangkat Windows 10 atau yang lebih baru.

Portabilitas:

  • WinForms: Terbatas pada lingkungan Windows.

  • WPF: Dapat digunakan di lingkungan Windows, meskipun tidak sefleksibel UWP dalam hal portabilitas.

  • UWP: Dapat digunakan pada berbagai perangkat Windows, termasuk desktop, tablet, dan perangkat mobile.

Pengembangan dan Perkembangan Terbaru:

  • WinForms: Sudah ada sejak lama dan kemungkinan tidak akan mengalami perkembangan besar di masa mendatang.

  • WPF: Masih mendapatkan perhatian dari Microsoft dan memiliki kemungkinan perkembangan lebih lanjut.

  • UWP: Adalah platform yang lebih modern dengan dukungan Microsoft yang lebih aktif, terutama untuk pengembangan aplikasi Windows 10.

Lingkungan Pembangunan:

  • WinForms: Lebih mudah untuk dikuasai dan memiliki dukungan yang luas. Banyak pengembang dengan pengalaman dalam teknologi ini.

  • WPF: Lebih kompleks dalam hal konsep, tetapi sangat fleksibel. Membutuhkan kurva pembelajaran yang lebih tinggi.

  • UWP: Dirancang untuk kemudahan pengembangan dan memiliki alat bantu modern.

  • Pemilihan antara WinForms, WPF, dan UWP tergantung pada jenis aplikasi yang Anda kembangkan, tingkat kebutuhan UI, performa, dan target perangkat. Juga, penting untuk mempertimbangkan pengalaman pengembangan dan dukungan yang Anda miliki saat membuat keputusan.

Pemilihan antara WinForms, WPF, dan UWP tergantung pada jenis aplikasi yang Anda kembangkan, tingkat kebutuhan UI, performa, dan target perangkat. Juga, penting untuk mempertimbangkan pengalaman pengembangan dan dukungan yang Anda miliki saat membuat keputusan.


Jawaban No. 3 :


Screenshoot - Winfor

Lalu berikut adalah hasil Latihan membuat Kalkulator Sederhana menggunakan .Net Framework. Winfor.

Kalkulator Sederhana:

Operasi Penjumlahan:


Operasi Pengurangan : 


Operasi Perkalian :



Operasi Pembagian : 



Lalu berikut adalah hasil Latihan membuat WebcameCaptureApp menggunakan .Net Framework. Winform.

1. Dimulai dengan memilih integrated camera lalu selanjutnya memilih button start



2. Lalu camera akkan menyala dan menampilkan gambar yang bersumber dari camera internal


3. Selanjutnya memilih button capture, dan app akan menampilkan hasil capture


4. Memilih button save dan dapat disimpan pada penyimpanan yang kita inginkan


Link Github : https://github.com/bilaaripa/WebcameCaptureApp

Screenshoot - WPF


Latihan List Name menggunakan WPF



Link Github : https://github.com/bilaaripa/WPFListName

Latihan membuat WPH Dasboard :




Screenshoot - UWP

Latihan Membuat UWP - Photo Lab :



Link Github : https://github.com/bilaaripa/UWPPhotoLab

Jawaban No. 4 : 

Aplikasi Rich UI adalah aplikasi dengan antarmuka pengguna (UI) yang kaya, menarik, dan interaktif. Aplikasi ini menonjol dalam hal estetika, interaktivitas, dan fungsionalitas yang membuat pengalaman pengguna lebih memikat dan efektif. Kali ini saya akan mengembangkan aplikasi rich UI dengan WPF.  WPF (Windows Presentation Foundation) adalah teknologi baru yang dirilis oleh Microsoft bersamaan dengan .NET Framework 3.0 (versi sekarang adalah 3.5). Selain WPF .NET 3.0 juga menyertakan beberapa teknologi baru yaitu WF (Workflow Foundation) untuk pemodelan dan WCF (Windows Communication Foundation) yang merupakan pengembangan dari Web Services.

Design UI Aplikasi Pemantauan Cuaca :


 Jawaban No. 5 OTW

Komentar

Postingan populer dari blog ini

PBKK Tugas 13 - Membuat Google App Script

Final Project Pemrograman Berbasis Kerangka Kerja