Amalan terbaik pengaturcaraan ialah teknik atau panduan standard yang dipraktikkan oleh pengatur cara untuk menghasilkan kod atur cara yang berkualiti, teratur, mudah dibaca, diselenggara dan difahami oleh pihak lain. Topik ini juga meneroka jenis-jenis ralat dalam kod serta cara mengesan dan membaikinya.
Kod yang teratur menggunakan komen, inden dan penamaan yang jelas. Kod yang padat tanpa amalan terbaik sukar dibaca dan diselenggara. Tiga jenis ralat utama dalam Java pula perlu dikenal pasti dengan cara pengesanan yang berbeza.
Kod Beramalan Terbaik
// Kira luas bulatan double jejari = 5.0; double luas = Math.PI * jejari * jejari; System.out.println("Luas bulatan: " + luas);
Mengandungi komen, inden konsisten dan nama pemboleh ubah bermakna.
Kod Tanpa Amalan Terbaik
double x=5.0;double y=Math.PI*x*x;System.out.println(y);
Tiada komen, tiada inden dan nama pemboleh ubah tidak deskriptif.
Ralat Sintaks
Dikesan oleh pengkompil semasa fasa penyusunan.
Ralat Masa Larian
Berlaku semasa atur cara sedang berjalan.
Ralat Logik
Tidak dikesan oleh pengkompil; semak output secara manual.
Empat faktor kebolehbacaan kod, tiga jenis ralat, dan cara mengesan nilai pemboleh ubah input serta output.
Amalan terbaik ialah teknik atau metodologi yang terbukti melalui pengalaman atau kajian boleh dipercayai untuk mencapai hasil yang diingini secara berkesan. Dalam pengaturcaraan, ia bermaksud pengatur cara mempraktikkan tatacara yang standard untuk menghasilkan atur cara yang baik dan mudah difahami.
Inden memastikan kod mudah dibaca dan difahami oleh pengguna lain. Penulisan inden dilakukan secara konsisten dari awal hingga akhir kod, iaitu barisan teks berada beberapa aksara ke dalam dari jidar kiri atau kanan.
Saiz pemboleh ubah dipilih tepat supaya tidak terlalu kecil atau besar serta memulihara sumber (conserve resources). Contohnya, menggunakan int bagi nombor bulat dan bukannya double.
int
double
Nama pemboleh ubah mesti jelas dan mematuhi peraturan Java. Skop biarlah kecil bagi mengelakkan kekeliruan dan memudahkan penyelenggaraan. Nama tidak bermula dengan nombor, tiada ruang kosong, tidak menggunakan kata kekunci Java, dan bersifat peka kes.
Komen ialah penanda penerangan fungsi kod kepada pengatur cara dan diabaikan oleh pengkompil Java. Komen ditulis jelas dalam 2 hingga 3 baris pendek untuk memenuhi ruang lajur pengekodan.
cara1
1cara
_
caraPertama
cara_1
integer
CaraPertama
x
y
print
value
// teks
//
/* teks */
/*
*/
/** teks */
/* */
Ralat sintaks berlaku akibat pelanggaran peraturan tatabahasa bahasa pengaturcaraan atau penggunaan aksara atau objek yang tidak dikenali. Ia dikesan semasa fasa penyusunan oleh pengkompil yang memaparkan mesej ralat tertentu sebelum atur cara boleh dijalankan.
Ralat masa larian ditemui semasa atur cara sedang berjalan dan menyebabkannya terganggu atau terhenti secara tiba-tiba. Ia berlaku apabila atur cara cuba melaksanakan operasi aritmetik atau pemprosesan yang mustahil.
Ralat logik berlaku apabila atur cara berjaya disusun dan dijalankan tanpa henti mengejut, tetapi menghasilkan output yang salah atau tidak menepati kehendak. Ia tidak dapat dikesan atau jarang dikesan oleh pengkompil sistem.
}
;
ArithmeticException: / by zero
Math.sqrt(-25)
pi * jejari * jejari
pi * jejari
15.709
78.55
Pemboleh ubah bertindak sebagai pemudah cara storan ingatan komputer untuk menerima, menghantar dan memproses data. Pemboleh ubah input ialah nilai awal yang dimasukkan atau diumpukkan ke dalam pemboleh ubah sebelum pemprosesan. Pemboleh ubah output ialah nilai baharu yang terhasil setelah operasi atau formula aritmetik diproses oleh komputer.
jejari = 5, tapak = 6, bilangan_tiket = 3, harga_tiket = 45.00.
jejari = 5
tapak = 6
bilangan_tiket = 3
harga_tiket = 45.00
luas bulatan = 78.55, jumlah_harga = 135.00.
luas bulatan = 78.55
jumlah_harga = 135.00
Kelas java.text.DecimalFormat dengan corak ("#.00") digunakan untuk memformat output perpuluhan kepada dua tempat perpuluhan.
java.text.DecimalFormat
("#.00")
Cuba jawab sendiri dahulu, kemudian tekan butang untuk menyemak.
Mengapakah pengkompil tidak dapat mengesan ralat logik dalam sesebuah kod atur cara?
Kerana kod atur cara mematuhi semua peraturan sintaks bahasa pengaturcaraan dan tidak mengandungi operasi yang mustahil untuk dilaksanakan oleh pemproses, tetapi hanya salah dari segi logik atau formula matematik yang ditetapkan oleh pengatur cara.
Berikan satu sebab mengapa penamaan pemboleh ubah 1jumlah tidak sah dalam Java.
1jumlah
Nama pemboleh ubah dalam Java tidak boleh dimulakan dengan digit atau nombor.
Apakah perbezaan utama antara komen yang bermula dengan tanda // dan komen diapit tanda /* ... */?
/* ... */
Komen bertanda // hanya mengabaikan teks sehingga ke hujung baris yang sama, iaitu satu baris. Komen /* ... */ pula mengabaikan teks merentasi beberapa baris yang berlainan, iaitu pelbagai baris.
luasBulatan
luasbulatan
harga tiket
harga_tiket
hargaTiket
0
Komen akan melambatkan kelajuan pelaksanaan atur cara dan menambah saiz fail atur cara yang diproses.
Pengkompil Java mengabaikan sepenuhnya teks komen semasa fasa kompilasi. Komen sama sekali tidak menjejaskan prestasi atau output atur cara.
Ralat masa larian dan ralat sintaks adalah ralat yang sama kerana kedua-duanya memaparkan mesej ralat teks merah pada konsol.
Ralat sintaks berlaku sebelum atur cara berjaya dikompil akibat salah tatatanda kod, manakala ralat masa larian berlaku semasa atur cara sedang berjalan akibat operasi mustahil seperti bahagi dengan sifar.
Menamakan pemboleh ubah dengan huruf ringkas seperti x dan y adalah lebih baik kerana menjimatkan ruang kod.
Amalan terbaik menegaskan penggunaan nama pemboleh ubah yang bermakna dan jelas, seperti tapak dan tinggi, supaya mudah dibaca dan diselenggara oleh pengatur cara lain.
tapak
tinggi
/** ... */
1 Apakah jenis ralat yang berlaku apabila atur cara cuba membahagikan sesuatu nilai integer dengan angka 0 semasa atur cara dijalankan?
2 Antara pengisytiharan pemboleh ubah berikut, yang manakah mematuhi panduan amalan terbaik dalam pengaturcaraan Java?
double 1harga;
int tapak_segi_tiga;
int int;
3 Tatatanda komen bagi membolehkan pengkompil Java mengabaikan teks pada baris yang sama bermula daripada tatatanda tersebut sehingga ke akhir baris ialah .
4 Ralat berlaku sekiranya atur cara dapat dijalankan tanpa mesej gangguan pengkompil tetapi output yang dipaparkan adalah tidak tepat berbanding jawapan sebenar.
Seret istilah atau konsep ke huraian yang betul. Jika menggunakan telefon, tekan pilihan jawapan dahulu, kemudian tekan kotak padanan.
There is something wrong with this question.