Jadi dalam membuat aplikasi, harus diperhatikan urutan langkah dan strategi mulai melakukan analisis terhadap permasalahan, merumuskan kebutuham , membuat desain, mengimplementasikan dengan bahasa pemrograman, dan melakukan tes atau uji coba terhadap program yang dihasilkan.
Pengembangan Aplikasi dan Pemecahan Masalah
Dalam mengembangkan aplikasi tidak sekedar koding dan koding tapi perlu strategi dan langkah-langkah yang terstruktur.
Untuk menyusun sebuah komputer diperlukan langkah-langkah berkut.
Untuk menyusun sebuah program yang besar dan kompleks, pemrogram membutuhkan tahapan penyusunan yang sistematis dan terpadu, yaitu:
Definisi Masalah, Pada tahap ini programmer harus mengetahui masalah yang akan diselesaikan, apa tujuan dan kegunaan program yang akan dibuat. Untuk itu diperlukan pengumpulan data baik lewat wawancara terutama pengguna program, dan ketersediaan sumber daya yang akan digunakan dalam pengembangan dan penerapan progam yang akan dibuat. Sebagai contoh program pembayaran rekening listrik di atas. Program harus bisa otomatis menghitung besarnya tarif listrik berdasarkan kelas pengguna, batas daya dan besarnya penggunaan daya.
Analisis Kebutuhan, Berdasarkan data yang diperoleh mengenai masalah yang akan diselesaikan, langkah selanjutnya adalah mengumpulkan kebutuhan untuk pengembanagan program. Untuk bisa menghitung besar tarif listrik, pengguna harus menyiapkan tabel penentuan TDL berdasarkan ketentuan dan cara perhitungannya sehingga bisa menyusun algoritmanya. Selain itu kebutuhan-kebutuhan yang mendukung fungsi tujuan juga harus diperhatikan, misalkan bagaimana hasil perhitungan harus ditampilkan, apakah perlu dicetak atau tidak, atau misalkan data pelanggan dan pemakaian daya harus diambil langsung ke database PLN. Maka ini kebutuhan yang harus disiapkan agar program dapat berjalan.
Penyusunan Algoritma, Jika kebutuhan program sudah teridentifikasi, langkah selanjutnya adalah menyusun algoritma atau langkah-langkah penyelesainnya. Hal ini penting untuk memeudahkan penyusunan program. Tahap ini juga disebut sebagai tahap desain. Desain program ini dapat disajikan dalam bentuk flowchart sehingga mudah oleh programmer untuk menuangkannya ke dalam bahasa Pemrograman.
Pengkodean/Pemrograman, Setelah proses desain atau penyusunan algoritma dilakukan, tahap selanjutnya adalah menuangkannya ke dalam bahasa pemrograman. Bahasa Pemrograman dipilih sesuai dengan hasil analisis kebutuhan program. Jika program memerlukan database untuk menyimpan, mengakses informasi, atau program harus mempunyai tampilan menarik dengan berbagai tombol dan menu, maka bahasa Pascal tidak cocok untuk itu karena masih sangat sederhana. Untuk itu diperlukan pemrograman visual seperti Delphi, VB net, dan sebagainya.
Testing dan Debugging, Setelah proses pengkodean dilakukan langkah selanjutnya adalah melakukan uji coba (testing) dan debugging. Langkah uji coba ini penting untuk mengetahui apakah program yang telah dihasilkan memberikan solusi yang benar sesuai dengan yang diharapkan. Jika belum maka perlu proses debugging untuk mengetahui di mana letak kesalahannya dan bagaimana cara memperbaikinya.
Pemeliharaan, Program yang sudha berhasil diujicobakan kemudian diaplikasikan oleh pengguna. Selama program digunakan kekurangan-kekurangan dicatat dan digunakan untuk memperbaiki program yang sedang dijalankan. Pada proses ini modifikasi program dapat dilakukan untuk memperbaiki kesalahan dan peningkatan performance. Langkah-langkah pengembangan ini dikenal dengan Model Waterfall (air Terjun).
Analisis dan Desain Algoritma
Algoritma yang baik tidak hanya sekedar benar dalam menentukan solusi, namun juga harus efektif dan efisien. Kriteria efektif berdasarkan seberapa bagus (optimal) penyelesaian yang dihasilkan, sedangkan efisien ini biasanya terkait dengan waktu eksekusi untuk menyelesaiakn suatu masalah.
Sebagai contoh kalian bisa membandingkan dua buah mesin pencari. Mesin cari bisa kita katakan efektif jika konten yang diberikan benar-benar sesuai dengan harapan user. Sedangkan efisien terkait dengan berapa lama waktu pencarian.
Ada beberapa strategi teknik pemecahan masalah dalam algoritma, di antaranya adalah:
1. Divide and Conquer
Teknik ini digunakan untuk mememcahkan masalah dalam skala yang besar kemudian membagi-baginya menjadi masalah yang lebih sederhana. Dari masalah yang sederhana ini diselesaikan dan hasilnya digabungkan dengan solusi dari bagian yang lain sehingga didapatkan solusi dari permasalahan utama.
2. Decrease and Conquer
Berbeda dengan divide and conquer, teknik ini tidak membagi maslah utama menjadi beberapa bagian, tapi mengurangi ukuran dari permasalahan utama sehingga menjadi lebih sederhana.
3. Transform and Conquer
Teknik ini merubah penyajian masalah ke dalam bentuk lain agar lebih mudah diselesaikan. Sebagai contoh : Menyelesaikan sistem persamaan linear dengan matriks.
Error Handling
Pernah kalian menggunakan program dan di tengah kalian asik bekerja tiba-tiba hang, atau menutup sendiri? Ini bisa disebabkan adanya error yang muncul tapi belum diantisipasi oleh program tersebut. Dalam pembuatan program, kesalahan tidak hanya terjadi pada kode program (syntax error), kesalahan mungkin juga terjadi di pihak pengguna seperti kesalahan dalam menginputkan nilai ke dalam program. Program yang baik adalah yang bisa mengantisipasi kesalahan seperti itu sehingga tidak berhenti di tengah jalan.
Selain kesalahan penulisan (syntax error) dikenal juga run-time error, yaitu kesalahan yang muncul saat program dijalankan. Sebagai contoh pembagian dengan nol.
Hasil:=a/b;
Agar program tidak langsung berhenti, maka perlu kesalahan perlu diantisipasi. Penanganan kesalahan ini disebut error handling atau exception. Kemampuan menangani error mutlak harus dikuasai oleh seorang programmer.
Di dalam Free Pascal disediakan beberapa metode penangan error, di antaranya adalah menggunakan pernyataan Try ...Except, Try...Finally, dan Raise Exception.
Pernyataan Try.... Except.
Pernyataan ini menjalankan serangkaian proses dengan perintah Try di depan, kemudian setelah itu diikuti Except, untuk menandakan kejadian khusus yang dideteksi sebagai error (kesalahan). Sintaks dari pernyataan Try Except adalah sebagai berikut.
Try
Pernyataan1; Pernyataan2;
except
on e: exception do // Exception handling
begin
Writeln('Error: ' + e.message);
end; end;
Pernyataan Try... Finally
Pernyataan Try .. Finally ini menjalankans erangkain proses setelah perintah Try. Jika ada error ma pada bagian error itu akan dilewati. Kemudian perintah-perintah setelah pernyataan Finally akan dieksekusi apapun yang terjadi baik ada kesalahan atau tidak.
Try
Pernyataan1; Pernyataan2;
Finally
Pernyataan3; end; Sintak pernyataan Try ...Finally
Pernyataan Raise Exception
Dalam membuat program terkadang dibutuhkan suatu nilai dengan rentang tertentu, Misalkan variabel bulan, bernilai dari 1 sampai 12, tidak ada nilai 0 ataupun 13. Untuk menghindari kesalahan seperti ini digunakan pernyataan raise exception.
Berikut ini contoh penggunannya:
program ExceptionHandling;
{$mode objfpc}{$H+} uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, sysutils; Var bulan: Integer; begin
Write('Masukkan bulan ke berapa: '); Readln(bulan);
try
if (bulan< 1) or (xbulan> 12) then // raise exception
raise exception.Create('Nilai Bulan di luar jangkauan'); Writeln('Anda memasukkan bulan ke ‘,bulan);
except
on e: exception do // Catch my exception
begin
Writeln('Kesalahannya adalah: ' + e.Message);
end;
end;
Write('Tekan Enter untuk menutup'); Readln;
end.
Comments