# data[].attributes.body
1. Andryan (2502040631)

2. Ardelia Beatrice (2502041363)

3. Galang Nurbudi Utomo (2502041464)

4. Putu Agus Parimartha (2502040682)

5. Vanessa Aprily Hongastu (2502040726)

# data[].attributes.headline
1.Mencari perbedaan dan persamaan modul dan function., harap sertakan dengan contoh yg umum

# data[].attributes.subject
1.Mencari perbedaan dan persamaan modul dan function., harap sertakan dengan contoh yg umum

# data[].attributes.body
Module merupakan bagian yang sengaja dipisahkan agar memudahkan pembuatan program / aplikasi. Sedangkan, function merupakan kumpulan statement yang dikelompokkan berdasarkan fungsinya.

# data[].attributes.headline
3. Bagaimana menerapkan defensive programming dalam dunia perbankan?

# data[].attributes.subject
3. Bagaimana menerapkan defensive programming dalam dunia perbankan?

# data[].attributes.body
Defensive programming adalah praktik menulis perangkat lunak untuk memungkinkan operasi berkelanjutan setelah dan saat mengalami masalah yang tidak direncanakan.

Contoh sederhana adalah memeriksa NULL setelah memanggil malloc(), dan memastikan bahwa program menangani kasus dengan baik.

https://interrupt.memfault.com/blog/defensive-and-offensive-programming#defensive-programming

# data[].attributes.body
2. Blacklist validation.

Blacklist validation adalah praktik hanya menolak input yang diketahui (bad). blacklist validation biasanya melibatkan penolakan input yang berisi konten yang secara khusus diketahui berbahaya dengan melihat melalui konten untuk sejumlah karakter, string, atau pola yang “dikenal buruk”. Blacklist validation dikenal lebih lemah daripada whitelist validation karena daftar karakter yang berpotensi buruk sangat besar, dan karena itu daftar konten buruk apa pun kemungkinan besar, lambat dijalankan, tidak lengkap, dan sulit diperbarui.

https://www.sciencedirect.com/topics/computer-science/input-validation

Manfaat dari input validation

Menghindari validation attack

Memberikan keamanan data perbankan

Memberi batasan kepada nasabah dalam mengakses ATM

Mencegah data yang terbentuk secara tidak benar memasuki sistem informasi.

# data[].attributes.body
Pemblokiran kartu ATM saat salah memasukkan pin ATM selama 3 kali berturut turut

Pada aplikasi Blu BCA yang mengharuskan user untuk menginput password dengan lowercase dan uppercase. Setelah menginput, pada log in selanjutnya user harus melakukan validasi password tersebut.

# data[].attributes.headline
2. Berikan penjelasan mengenai manfaat input validasi khususnya di perbankan

# data[].attributes.subject
2. Berikan penjelasan mengenai manfaat input validasi khususnya di perbankan

# data[].attributes.body
Input validasi adalah proses pengujian input yang diterima oleh aplikasi untuk kepatuhan terhadap standar yang ditentukan dalam aplikasi. Input validasi bisa sesederhana mengetik parameter secara ketat dan serumit menggunakan regular expressions atau business logic untuk memvalidasi input.

Ada dua jenis pendekatan input validasi yang berbeda :
1. Whitelist validation.

Whitelist validation adalah praktik hanya menerima input yang diketahui (good). whitelist validation dapat melibatkan kepatuhan dengan jenis,panjang atau ukuran, rentang numerik, atau standart format lainnya seperti sebelum menerima input untuk untuk diproses lebih lanjut.

# data[].attributes.attachment_caption
Tabel perbedaan antara module dan  function

# data[].attributes.body
Persamaan:
- Reusable

- digunakan untuk mempermudah proses debug

- menghindari terjadinya redundan

Contoh :
Kita membuat sebuah module yang dinamakan module login lalu di dalamnya dijalankan statement untuk memasukkan password, lalu kita bisa membuat sebuah function yang tujuan nya spesifik untuk validasi password, sehingga programnya bisa dijalankan dengan efisien dan efektif

sumber :
https://www.geeksforgeeks.org/what-is-the-difference-between-pythons-module-package-and-library/

https://www.codeleaks.io/function-vs-module-in-python/#

https://rwet.decontextualize.com/book/functions/