algoritma dan pemrograman - wordpress.comclean code : dry , kiss , solid , dan lainya struktur data...

28
1 / 28 Algoritma dan Pemrograman Subprogram

Upload: others

Post on 31-Oct-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

1 / 28

Algoritma dan Pemrograman

Subprogram

Page 2: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

2 / 28

Opening Keynote

Page 3: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

3 / 28

Subtopik

● Pengenalan Prosedur● Pengenalan Fungsi● Rekursif

Page 4: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

4 / 28

Capaian

● Anda mampu membuat fungsi dan prosedur dengan tujuan yang jelas.

● Anda mampu memahami dan mengunakan Fungsi dan Prosedur pada kasus tertentu.

Page 5: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

5 / 28

Untuk mengikuti rangkaian materi pada slide ini ada prasyarat yang perlu dipenuhi :

● Interpreter Ruby pada media yang akan anda gunakan baik komputer , Handphone atau mengunakan situs daring.

● Saran, gunakan FOSS ( Free – Open Source Software ) / Perangkat Lunak Bebas Gratis.

Syarat Material

Page 6: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

6 / 28

Syarat Mental

● Persiapkan mental anda , jadi pelajar yang proaktif bukan pengemis yang reaktif

● Gunakan Akal dan Daya Kritis anda● Berasa Ingin tahu dan eksplorasi● Hadapi masalah , pecahkan serta berani

mengotori tangan sendiri● Jadila penanya yang cerdas , karena belajar

dan pahami terlebih dahulu yang anda ingin tanyakan suatu kebermanfaatan.

Page 7: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

7 / 28

Bacaan Lanjutan

● Berfikir Komputasional● Pseudo-Code dan UML● Clean Code : DRY , KISS , SOLID , dan lainya● Struktur Data● Pemrograman Berorientasi Objek

Page 8: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

8 / 28

c

Algoritma

Page 9: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

9 / 28

Pengenal Subprogram

● Merupakan kumpulan set intruksi/blok kode yang biasa digunakan dalam operasi program.

● Contoh Subprogram

– Fungsi– Prosedur

Page 10: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

10 / 28

Pengenalan Fungsi

● Fungsi semacam formula yang menerima argumen untuk mengoperasinya dengan menghasilkan nilai kembalian ( return )

● Kamus dan parameter dalam subprogram hanya bisa diakses oleh subprogram itu sendiri. Ini disebut lingkup variable ( scope )

● Global variable adalah variable yang dapat diakses oleh semua subprogram.

Page 11: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

11 / 28

Langkah membuat fungsi● Mendefinisikan Fungsi

– Tentukan nama fungsi,bila yang menunjukan kegunanya akan lebih baik.

– Mendefinisikan parameter /argumen .– Menentukan nilai kembalian

● Menrelisasikan Fungsi

– membuat algoritma fungsi :

input parameter → hasil nilai kembalian● Memanggil Fungsi

– Memangil fungsi dengan parameter aktual

Page 12: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

12 / 28

Contoh Fungsi .

Karena di subprgram memiliki Kamus dan Algoritma nya sendiri layaknya program namun dalam program.

Page 13: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

13 / 28

Pemnaggilan Fungsi :

biodata_menjadi_hashParamater:

aku

Deklarasi Fungsibiodata_menjadi_hash

Page 14: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

14 / 28

Pengenalan Prosedur

● Serupa dengan fungsi namun tidak memiliki kembalian.

Page 15: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

15 / 28

Page 16: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

16 / 28

Parameter

● Pada subprogram terdapat parameter , yang menjadi input bagi subprogram.

● Parameter memiliki berapa jenis– Biasa

● Untuk meneruskan parameter nilai dari pemanggilan. Harus ada.

– Opsional● Parameter ini diberi nilai atau tidak saat

pemanggilan– Default ( bawaan )

● Parameter akan bernilai default jika tidak diberi nilai saat pemanggilan

Page 17: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

17 / 28

Pemrograman

Page 18: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

18 / 28

Rekursif

● Merupakan perulangan dengan fungsi yang mengulang dengan dirinya sendiri.

● Rekursif memiliki elemen pengendali

– Basis● Kondisi dimana perulangan berhenti

– Rekurens● Kondisi dimana perulangan terus berulang hingga menemui basis

Page 19: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

19 / 28

Bentuk Umum Rekursif

Page 20: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

20 / 28

Contoh Rekursif

Page 21: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

21 / 28

Contoh Rekursif

Page 22: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

22 / 28

Modularitas

● Modularita bagaiaman kita memangil sub-program dari skrip lain ( importing ).

● Dapat mengunakan– require– load– require_relative

Page 23: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

23 / 28

Contoh Modularitas ( main .rb )

Page 24: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

24 / 28

Contoh Modularitas ( kalkulator.rb )

Page 25: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

25 / 28

Melakukan Modularitas

● Bentuk berkas tersebut pada direktori / lokasi yang sama.

● Jalan program main.rb dan pastikan kalkulator.rb pada direktori yang sama( ./ )

● Tujuan modularitas adalah memanggil subprogram pada kalkulator.rb melalui main.rb.

Page 26: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

26 / 28

Closing Keynote

“Life start at end of comfort zone, Life is uncomfort existance.”

Page 27: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

27 / 28

Terima Kasih

Page 28: Algoritma dan Pemrograman - WordPress.comClean Code : DRY , KISS , SOLID , dan lainya Struktur Data Pemrograman Berorientasi Objek 8 / 28 c Algoritma 9 / 28 Pengenal Subprogram Merupakan

28 / 28

Dalam nama perjuangan

● Materi ini dibuat sebagai bentuk perlawanan terhadap komersialisasi pendidikan dan pengendalian informasi

● Menjunjung kebebasan informasi dan pencerdasan umum

● Hak cipta bebas merdeka , setiap orang dianjurkan dan dinasehatkan untuk mengopi ,mencetak , mengganda, menyebar isi serta materi – materi didalamnya.