25.Feby Asroful_Pemrograman dasar



Pemrograman Dasar Semester 2
Nama : Feby Asroful Anam
Kelas : XI TKJ 1
Absen : 25


BAB I. Prosedur dan Fungsi
Prosedur atau Fungsi adalah suatu program yang terpisah dari program utama, diletakan dalam blok tersendiri yang berfungsi sebagai bagian dari program.
1.1.           Deklarasi dan Definisi Prosedur 
Dari percobaan-percobaan yang telah dilakukan, bisa diambil kesimpulan bahwa:
1.       Prosedur atau Fungsi adalah suatu program yang terpisah dari program utama, diletakan dalam blok tersendiri yang berfungsi sebagai bagian dari program.
2.       Suatu program memerlukan subprogram untuk mempermudah dalam pembuatannya serta subprogram digunakan untuk mempersingkat penulisan, procedure dalam bahasa Pascal termasuk ke dalam subprogram.
3.       Dalam bahasa Pascal, pendefinisian prosedur ditulis bersatu di dalam program utama, kecuali jika direalisasikan sebagai unit. Prosedur diletakkan di bawah kata var.
4.       Prosedur dapat menggunakan parameter atau tanpa menggunakan parameter. Parameter berfungsi sebagai media komunikasi antara subprogram dengan program pemanggil.
5.      Bahasa Pascal memungkinkan prosedur mempunyai parameter masukan, parameter keluaran, dan parameter masukan/keluaran. Parameter formal yang bertipe keluaran atau masukan/keluaran harus diawali dengan kata kunci var, sedangkan parameter formal yag bertipe masukan tidak diawali dengan kata kunci var.
6.       Untuk mengetahui apakah suatu parameter termasuk parameter masukan atau parameter keluaran adalah dengan mengetahui masalahnya, apakah prosedur tersebut menghasilkan keluaran yang digunakan oleh program pemanggil atau tidak.
7.       Procedure dapat digunakan juga untuk tipe data yang rumit, dengan catatan keluaran hanya data tunggal.
8.       Parameter masukan merupakan parameter yang nilainya berfungsi sebagai nilai awal proses pada procedure.
9.       Pada procedure tanpa parameter dan dengan parameter masukan hanya mengerjakan proses yang sebenarnya merupakan masukan program utama yang dikerjakan pada subprogram.
10.   Pada struktur procedure dengan parameter dan keluaran, setiap parameter aktual yang dikirimkan ketika memanggil procedure akan digunakan sebagai parameter formal yang menjadi nilai awal proses dan kemudian akan dikembalikan melalui parameter formal pada  program utama.

1.2.           Pemanfaatan Prosedur
Dari percobaan-percobaan yang telah dilakukan, bisa ambil kesimpulan bahwa:
1. Program yang sebenarnya bisa dilakukan dengan cara biasa, namun dalam penggunaan kata tercadang procedure, maka program akan diketikkan dengan lebih ringkas, karena dapat dipilih mana proses yang utama, mana proses yang membentuk suatu perhitungan, sehingga pada akhirnya procedure perhitungan akan dipanggil dalam procedure hasil dan procedure hasil akan dipanggil dalam program keluaran.
2. Dalam membagi kasus untuk diletakkan dalam procedure, kita diharuskan mengenali logikanya, sehingga programer tidak akan kesulitan dalam proses pemanggilan data.
3. Parameter dan variabel dalam procedure berperan sangat penting dalam pendeklarasian, karena ketika salah meletakkan variabel global atau variabel lokal,maka program akan missmatch atau error.
4. Penggunaan tipe data yang tepat akan memudahkan dalam masukan dan keluaran seperti yang diinginkan pengguna, tentu kita harus tahu jenis data apa yang tepat dan batasan keluaran yang dihasilkan data tersebut.

1.3.  Deklarasi dan Definisi Fungsi
Dari percobaan-percobaan yang telah dilakukan, bisa ambil kesimpulan bahwa:
1.       Sebuah fungsi digunakan untuk menghitung sebuah nilai berdasar satu atau beberapa nilai  masukan. Dalam pascal, fungsi akan membantu mewujudkan pemecahan masalah yang lebih sederhana, sehingga program semakin mudah dibaca dan lebih mudah diubah atau dimodifikasi.
2.       Function dalam bahasa Pascal tidak dapat mengembalikan nilai yang bertipe terstruktur. Karena itu, fungsi yang mengembalikan tipe terstruktur harus dimanipulasi dengan cara mengubah tipe hasilnya menjadi tipe dasar (misalnya integer atau boolean).
3.       Beberapa keuntungan ketika kita memakai fungsi dalam FreePascal :
  a. Menguraikan tugas pemrograman rumit menjadi langkah-langkah yang lebih sederhana atau kecil.
  b. Mengurangi duplikasi kode (kode yang sama ditulis berulang-ulang) dalam program.
  c. Dapat menggunakan kode yang ditulis dalam berbagai program yang berbeda.
  d. Memecah program besar menjadi kecil sehingga dapat dikerjakan oleh programmer-programmer atau dipecah menjadi beberapa tahap sehingga mempermudah pengerjaan dalam sebuah projek.

1.4.  Pemanfaatan Prosedur dan Fungsi dalam Aplikasi
1. Tujuan penggunaan function antara lain adalah kode program pada program utama menjadi sederhana (pendek) sehingga mudah untuk di baca dan dimengerti serta variable yang digunakan pada program utama menjadi lebih sedikit dibandingkan program non modular.
2. Fungsi dan prosedur dapat digunakan bersama-sama di dalam sebuahprogram, fungsi dapat diletakkan di dalam suatu prosedur, demikianpula sebaliknya, prosedur dapat diletakkan di dalam suatu fungsi.
3. Pada saat menggunakan fungsi dan prosedur bersama-sama, pembuat program harus selalu mengingat kembali hal sebagai berikut : Ruang lingkup variabel global dan variabel lokal yang dipergunakan.

1.5.  Fungsi Rekursif dan Aplikasinya
Dari percobaan-percobaan yang telah dilakukan, bisa ambil kesimpulan bahwa:
1. Fungsi Rekursif adalah fungsi yang memanggil dirinya sendiri jika selama kondisi pemanggilan dipenuhi.
2. Fungsi rekursif tidak akaan terhenti jika tidak memiliki kondisi khusus atau basis
3. Fungsi rekursif dapat berjalan dengan baik meskipun basis bukan berupa nilai tetap
4. Fungsi rekursif dapat berjalan dengan baik meskipun basis lebih dari satu kondisi atau kasus

1.6.  Pointer ke Fungsi dan Aplikasinya
1. Pointer ke fungsi adalah sebuah pointer yang digunakan untuk menunjuk suatu funsi yang sesuai, sehingga pemanggilan fungsi tidak harus dengan menyebut nama fungsi secara langsung tetapi cukup menggunakan pointernya. Meski sebuah fungsi sudah ditunjuk oelh suatu pointer tetapi tetap diperkenankan memanggil fungsi dengan nama asli fungsi tersebut.
2. Untuk mengarahkan pointer supaya menunjuk ke sebuah fungsi, cukup gunakan operator @.
Langkah-langkahnya adalah:
·         Deklarasikan variabel bertipe pointer ke fungsi, atau bisa didahului denganmendefinisikan tipe data sendiri yaitu tipe data pointer ke fungsi.
·         Arahkan varibel pointer ke sebuah fungsi yang sesuai dengan operator @.
·         Gunakan pointer ke fungsi untuk memanggil atau menggunakan fungsi tersebut.
3. Sebuah pointer fungsi yang sudah ditentukan tipe parameternya tidak bisa digunakan untuk menunjuk fungsi lain yang tipe parameternya berbeda. Nama variabel dari parameter fungsi boleh berbeda tetapi tipe harus sama.
4.. Sebuah pointer juga bisa menunjuk suatu prosedur dengan cara yang serupa dengan bagaimana sebuah pointer menunjuk suatu fungsi.

1.7.   Modularisasi Fungsi 
1. File dynamic library adalah file pustaka yang di dalamnya terdapat prosedur-prosedur ataupun fungsi-fungsi yang berguna untuk menyimpan proses untuk kemudian dipanggil hasilnya oleh program utama
2. Penamaan library boleh berbeda dengan nama file library tersebut
3. Unit adalah suatu modul program yang terpisah dan digunakan untuk menyimpan proses-proses tertentu yang berkaitan.
4. Penamaan unit harus sama dengan nama file unit tersebut.

BAB II. Pencarian dan Pengurutan Data
2.1.  Pencarian Data Dengan Algoritma Linier
            Array yang sudah terurut dapat meningkatkan kinerja lgoritma pencarian linier.Algoritma  pencarian linier dengan sentinel adalah melakukan penambahan data pada elemen array. Data dapat simpulkan  terdapat pada array jika idx < n+1.

2.2.  Pemanfaatan Pencarian Data dalam Aplikasi
Penggunaan algoritma pencarian linier pada aplikasi sangat bermanfaat jika data yangdicari ada pada sekumpulan sedikit data.Jika pada data besar, pencarian ini tidak praktis dan tidak efisien.

2.3.  Pengurutan Data Dengan Algoritma Bubble Sort
Algoritma pengurutan (sorting) adalah algoritma atau proses mengatur sekumpulan objek menurut urutan atau susunan tertentu. Inti dari algorima pengurutan gelembung atau apung (bubble sort) mengapungkan harga suatu array, bila pengurutan menaik, maka harga yang kecil  yang “diapungkan” atau “digelembungkan”, dan jika pengurutan menurun, harga yang besar yang  “diapungkan” atau “digelembungkan”.

2.4.   Pengurutan Data Dengan Algoritma Selection Sort
Algoritma pengurutan seleksi adalah algoritma pengurutan yang berdasarkan pada pencarian elemen yang kemudian baru diurutkan. Ada dua varian algoritma pengurutan seleksi ditinjau dari pemilihan elemen maksimum atau minimum, yaitu:
1. Algoritma pengurutan seleksi-maksimum, yaitu memilih elemen maksimum sebagai basis  pengurutan (pencarian elemen maksimum kemudian baru diurutkan).
2. Algoritma pengurutan seleksi-minimum, yaitu memilih elemen minimum sebagai basis pengurutan (pencarian elemen minimum kemudian baru diurutkan).

6.5. Pemanfaatan Pengurutann dalam Aplikasi
Penggunaan algoritma pengurutan gelembung dan seleksi pada aplikasi sangat bermanfaat jika data yang diurutkan hanya sedikit.

BAB III. Pengembangan Aplikasi

Karakteristik khusus dari perangkat lunak adalah sebagai berikut.

1. Perangkat lunak tidak pernah usang, meskipun sudah digunakan selama bertahun-tahun.
Pengguna perangkat lunak mungkin mengalami kebosanan tetapi sebenarnya kondisi perangkat
lunak akan tetap sama seperti awal asalkan kondisi hardware tidak mengalami perubahan.

2. Perangkat lunak bukan produk pabrikan massal (manufactured product), tetapi hasil
pengembangan dan rekayasa (developed and engineered product).

3. Meski industri pada umumnya mengarah pada perakitan berbasis komponen, kebanyakan
perangkat lunak masih dibuat berdasar keinginan pemesan (custom built).

3.1.           Model Waterfall Tahap Analisis

Secara rinci dalam tahap analisis perangkat lunak adalah sebagai berikut

1. Kenali masalah.
Misalnya seorang customer hendak memesan perangkat lunak kepada seorang pengembang perangkat lunak, maka pertama kali harus diketahui ada masalah apa saja yang ingin diselesaikan dengan software.

2. Tetapkan tujuan
Setelah masalah dikenali maka langkah berikutnya adalah menetapkan tujuan-tujuan dari
pembuatan software.

3. Tentukan solusi yang akan diwujudkan
Setelah tujuan ditetapkan maka dibuat beberapa alternatif yang akan diambil atau diwujudkan. Misalnya apakah aplikasi akan dibuat berbasis desktop, web, atau mungkin mobile, apakah akan menggunakan server database atau file penyimpan data lainnya, apakah akan dibuat bisa diakses secara online atau tidak.

4. Buat model analisis
Agar lebih baku maka diperlukanpemodelan sehingga bisa lebih mudah dipahami secara teknis oleh pembuat software. Model yang sering digunakan antara lain diagram alir data (Data Flow Diagram/DFD), diagram keterkaitan data (Entity Relationship Diagram / ERD) dan kamus data (Data Dictionary / DD).

5. Dokumentasi.
Semua yang dihasilkan pada kegiatan analisis harus didokumentasikan, dicatat secara rinci dan terstruktur dan akhirnya harus disimpan dengan baik.

3.2.           Model Waterfall Tahap Desain

Standar dalam desain perangkat lunak ada banyak, tetapi yang paling sering digunakan
adalah desain data, desain arsitektur, dan desain antarmuka. Desain data sendiri adalah
penjabaran dari analisis data yang telah dilakukan pada tahap analisis. Desain arsitektur
dikembangkan dari diagram alir data (DAD). Desain antarmuka yang paling sederhana adalah antarmuka aplikasi dengan penggunanya, yaitu tampilan aplikasi yang terlihat oleh pengguna.

Simbol yang digunakan dalam desain arsitektur hanyalah kotak dan garis penghubung tanpa disertai arah panah. Secara umum desain arsitektur dan HIPO akan dibaca dari bawah kiri, naik ke atas, ke kanan, kemudian ke kanan bawah.

Desain arsitektur memperlihatkan komponen atau modul atau mungkin hanya
prosedur/fungsi yang harus dibuat oleh programmer serta kaitan modul satu dengan modul lainnya. Desain arsitektur juga bisa dilihat sebagai Hierarki Input Proses dan Output (HIPO) yang berlaku pada modul-modul yang harus dibuat.


3.3.           Model Waterfall Tahap Pengujian

Dalam pembuatan perangkat lunak, setelah melalui tahap desain dan kemudian ditulis
dalam baris-baris perintah (coding) sehingga berwujud perangkat lunak yang bisa digunakan. Mengingat bawah perangkat lunak memiliki karakteristik yang berbeda dari produk pabrikan pada umumnya maka pengujian perangkat lunak dilakukan dengan cara yang berbeda.

Seperti sudah disebutkan bahwa dokumen analisis menjadi kontrak kerja yang harus
dipenuhi oleh pembuat aplikasi (software developer) sehingga pengujian paling utama adalah untuk melihat apakah semua tuntutan tersebut sudah diimplemetasikan dengan baik pada apliasi yang dihasilkan.
Diharapkan pada tahap ini aplikasi Pendataan Nilai Siswa sudah dibuat oleh siswa.
Perhatikan aplikasi yang sudah dibuat. Untuk menguji aplikasi berdasar tekniknya ada dua

1. Ujilah semua alur program program.

+ Ujilah semua percabangan yang ada menggunakan nilai variabel yang dibuat bisa  
melalui semua cabang
+ Ujilah semua perulangan yang terjadi
+ Perhatika perubahan nilai variabel selama jalannya pengujian
Teknik ini membutuhkan bahwa penguji mendapatkan langsung sourcecode asli dari
aplikasi yang dibuat. Dalam compiler Free Pascal penguji bisa memanfaatkan menu Step
Over (F8) dan Trace Into (F7) dan perhatikan jalannya program secara bertahap

2. Ujilah semua mekanisme input dan catatlah output yang dihasilkan.

Input yang valid seharusnya bisa diterima dengan baik untuk selanjutnya diproses, dan hasil dari proses juga harus valid (benar). 
 Input invalid seharusnya tidak mengakibatkan aplikasi menjadi berhenti atau mati, tetapi aplikasi yang baik harus bisa mengenali input yang invalid, memberi tahu pengguna ada kesalahan dalam input, menolak memproses input yang salah, dan memberitahu input yang seharusnya diberikan oleh pengguna, tanpa mengakibatkan aplikasi menjadi berhenti ataum bahkan mati dan lebih parah mengakibatkan keseluruhan proses dalam sistem operasi berhenti.

3.4.           Kegiatan Belajar 4. Model Prototyping
Prototyping pada dasarnya melakukan pengembangan perangkat lunak secara cepat, tidak harus mengikuti tahapan ADCT secara matang.Meski tidak terlalu matang tetapi perbaikan bisa terjadi karena dilakukan secara berulang (siklus). Meskipun demikian, biasanya aplikasi yang dihasilkan pada siklus-siklus awal seringkali sama sekali jauh dari yang diharapkan dan tidak layak digunakan.

Langkah-langkah prototyping adalah sebagai berikut.

1.       Dengarkan kebutuhan customer , hal ini pada dasarnya sama seperti tahap analisis hanya saja dilakukan dengan cepat dan tidak perlu sangat detail.

2.       Buat prototipe calon aplikasi dengan segera berdasarkan informasi pada tahap satu.


3.      Customer menguji prototipe yang dihasilkan. Jika customer sudah merasa cukup maka
pengembangan aplikasi dihentikan, jika customer belum puas dan ada informasi tambahan
yang lebih detail maka siklus berputar ke tahap satu tetapi diarahkan untuk lebih
menyempurnakan aplikasi.


Jika ber minat,klik di SINI

Komentar

Postingan populer dari blog ini

Pointer

07.Antonio-Operasi String dan Konversi Data

25-Feby asroful anam_Sistem Komputer