EAS PBKK

Nama : Afiq Akram

NRP : 5025201270

Kelas : PBKK-B

Soal

  1. 1. Sebutkan keuntungan dan kerugian penggunaan framework dalam membangun aplikasi
  2. 2. Dalam framework mvc , apa tugas masing masing bagian? Berikan contoh penggunaanya
  3. 3. Dengan menggunakan framework laravel buatlah deskribsi dan fitur  aplikasi sistem kehadiran utk instansi ITS
  4. 4. Tuliskan struktur tabelnya
  5. 5. Desain bentuk laporan 
  6. 6. Implementasikan dan buat presentasi video

Jawaban

1.  

Keuntungan

- Produktivitas yang lebih tinggi: Framework menyediakan kerangka kerja dan struktur yang sudah ada, sehingga pengembang dapat fokus pada logika bisnis dan fitur aplikasi tanpa harus memulai dari awal. Ini dapat menghemat waktu dan usaha dalam pengembangan aplikasi.

- Konsistensi dan standar: Framework biasanya mengikuti praktik terbaik dan standar industri. Dengan menggunakan framework, pengembang dapat memastikan bahwa kode mereka mengikuti pola dan konvensi yang sudah mapan, sehingga meningkatkan konsistensi dan keberlanjutan kode.

- Keamanan yang ditingkatkan: Beberapa framework telah dibangun dengan pertimbangan keamanan yang kuat. Mereka menyediakan lapisan keamanan bawaan untuk melindungi aplikasi dari serangan umum, seperti serangan injeksi SQL atau serangan lintas situs (XSS). Dengan menggunakan framework, pengembang dapat memanfaatkan keuntungan ini tanpa harus secara manual mengimplementasikan semua langkah keamanan.

- Pemeliharaan dan dukungan yang lebih baik: Framework yang populer biasanya memiliki komunitas pengembang yang aktif dan dukungan dokumentasi yang baik. Jika Anda mengalami masalah atau kesulitan dalam pengembangan, kemungkinan besar ada banyak sumber daya dan forum di mana Anda dapat mencari bantuan atau solusi.

- Skalabilitas: Beberapa framework dirancang untuk memungkinkan skalabilitas yang lebih baik. Mereka dapat menangani beban kerja yang lebih besar dengan lebih efisien dan memiliki fitur seperti caching, penyebaran otomatis, atau manajemen sesi yang membantu dalam mengelola pertumbuhan aplikasi seiring waktu.

Kerugian

- Pembelajaran awal yang lebih lama: Menggunakan framework baru membutuhkan waktu untuk mempelajari sintaks, konsep, dan struktur yang baru. Jika pengembang tidak memiliki pengalaman sebelumnya dengan framework tersebut, mereka harus menghabiskan waktu tambahan untuk menguasainya sebelum dapat membangun aplikasi secara efektif.

- Keterbatasan desain: Terkadang, menggunakan framework dapat membatasi fleksibilitas desain aplikasi. Beberapa framework mungkin memiliki batasan dalam hal tata letak, gaya, atau fungsionalitas tertentu. Jika aplikasi Anda membutuhkan kebebasan desain yang tinggi, mungkin perlu melakukan penyesuaian atau memilih framework yang lebih fleksibel.

- Overhead kinerja: Beberapa framework mungkin memiliki overhead kinerja yang lebih tinggi dibandingkan dengan pengembangan langsung menggunakan bahasa pemrograman yang mendasarinya. Ini bisa terjadi karena adanya lapisan abstraksi tambahan atau fitur-fitur yang kompleks dalam framework. Namun, dampak overhead ini tergantung pada framework yang digunakan dan kebutuhan aplikasi Anda.

- Ketergantungan vendor: Jika Anda menggunakan framework yang dikembangkan oleh perusahaan atau pihak ketiga, Anda mungkin menjadi tergantung pada vendor tersebut. Jika vendor tersebut menghentikan dukungan atau mengubah arah pengembangan, Anda mungkin perlu beralih ke solusi lain, yang dapat memerlukan pengubahan signifikan dalam aplikasi Anda.

- Ukuran file yang lebih besar: Beberapa framework dapat menghasilkan aplikasi dengan ukuran file yang lebih besar dibandingkan dengan pengembangan langsung. Ini dapat mempengaruhi waktu unduhan dan kinerja aplikasi pada perangkat dengan koneksi internet yang lambat atau kapasitas penyimpanan terbatas.


2. Dalam framework MVC (Model-View-Controller), tugas masing-masing bagian adalah sebagai berikut:

a. Model:

- Tugas Model adalah untuk mewakili data dan logika bisnis dari aplikasi. Model bertanggung jawab untuk mengelola dan memanipulasi data serta mengimplementasikan aturan bisnis yang terkait.

- Contoh penggunaannya adalah dalam aplikasi toko online, Model dapat mewakili entitas seperti Produk, Pelanggan, atau Pesanan. Model akan mengatur pemrosesan data seperti membaca, menulis, dan memperbarui informasi produk, pelanggan, atau pesanan tersebut.

b. View:

- Tugas View adalah untuk menampilkan informasi kepada pengguna dan mengumpulkan input dari pengguna. View bertanggung jawab untuk tampilan antarmuka pengguna (UI) dan presentasi data.

- Contoh penggunaannya adalah dalam aplikasi toko online, View dapat berupa halaman web yang menampilkan daftar produk, halaman rincian produk, atau keranjang belanja. View akan mengambil informasi dari Model dan mempresentasikannya dengan cara yang sesuai, seperti menggunakan HTML, CSS, dan JavaScript.

c. Controller:

- Tugas Controller adalah untuk menangani permintaan pengguna, mengatur interaksi antara Model dan View, serta mengendalikan alur logika aplikasi.

- Contoh penggunaannya adalah dalam aplikasi toko online, Controller akan menangani tindakan pengguna seperti menambahkan produk ke keranjang, memproses pembayaran, atau mengubah detail pengiriman. Controller akan menerima input dari View, berinteraksi dengan Model untuk memperbarui data, dan memperbarui tampilan yang sesuai dalam View.

Secara umum, Model berfokus pada data dan logika bisnis, View berfokus pada tampilan antarmuka pengguna, dan Controller berfungsi sebagai penghubung antara Model dan View serta mengatur alur logika aplikasi.


3. Deskripsi dan Fitur Aplikasi Sistem Kehadiran untuk Instansi ITS menggunakan Framework Laravel:

Aplikasi Sistem Kehadiran untuk Instansi ITS adalah sebuah aplikasi web yang bertujuan untuk memudahkan pengelolaan kehadiran staf dan dosen di Institut Teknologi Sepuluh Nopember (ITS). Aplikasi ini menyediakan fitur-fitur berikut:

Otentikasi Pengguna: Aplikasi ini akan memiliki sistem otentikasi yang memungkinkan pengguna untuk mendaftar dan masuk ke akun mereka. Pengguna akan dibedakan menjadi dua peran, yaitu staf dan dosen.

Manajemen Kehadiran: Setiap pengguna akan memiliki akses ke halaman kehadiran mereka sendiri. Pengguna dapat memasukkan informasi kehadiran mereka, seperti tanggal dan waktu masuk serta keluar. Aplikasi akan mencatat kehadiran ini untuk setiap pengguna.

Manajemen Jadwal: Aplikasi akan memiliki fitur untuk mengatur jadwal kehadiran. Admin aplikasi dapat mengatur jadwal kehadiran harian, mingguan, atau bulanan untuk staf dan dosen. Pengguna akan menerima notifikasi mengenai jadwal kehadiran mereka.

Laporan Kehadiran: Aplikasi ini akan menyediakan laporan kehadiran untuk setiap pengguna. Pengguna dapat melihat riwayat kehadiran mereka, termasuk jumlah kehadiran, keterlambatan, atau absensi. Admin aplikasi juga dapat menghasilkan laporan kehadiran kolektif untuk semua staf dan dosen.

Integrasi Email dan Notifikasi: Aplikasi akan mengintegrasikan sistem email untuk mengirimkan notifikasi ke pengguna terkait jadwal kehadiran, perubahan jadwal, atau pengingat kehadiran.


4. Struktur Tabel yang direkomendasikan untuk Aplikasi Sistem Kehadiran:

a. Tabel "users":

id (Primary Key)

name

email

password

role (peran pengguna: staf atau dosen)

b. Tabel "roles":

   - id (Primary Key)

   - name (Nama peran/role)

c. Tabel "attendances":

id (Primary Key)

user_id (Foreign Key ke tabel users)

date (tanggal kehadiran)

check_in_time (waktu masuk)

location (posisi atau lokasi pengguna saat mengabsen)

d. Tabel "schedules":

id (Primary Key)

user_id (Foreign Key ke tabel users)

date (tanggal jadwal)

start_time (waktu mulai kehadiran)

location (posisi atau lokasi yang diharapkan saat pengguna mengabsen)


5.


Komentar

Postingan populer dari blog ini

Rekursif - Tower of Hanoi

Tugas 11 - ViewModel and State in Compose