Standar pengkodean terutama memberikan pedoman pemrograman kepada tim pengembangan sehingga pengembang proyek memiliki format yang konsisten untuk diikuti saat pemrograman. Dengan cara ini, kode yang ditulis oleh masing-masing pemrogram dalam tim pengembangan dapat dipahami oleh orang lain, sehingga meningkatkan pemeliharaan kode, membuat sekumpulan perangkat lunak yang ditulis oleh banyak orang seolah-olah ditulis oleh satu orang, sehingga membuat kode lebih mudah untuk memahami. Hal ini mengharuskan setiap orang untuk menggunakan gaya pengkodean yang konsisten. Alasan mengapa memperkenalkan standar ini adalah klise karena ketika pengembang baru bergabung dengan tim pengembangan proyek, beberapa mungkin belum familiar dengan standar pengkodean Delphi. Standar-standar ini akan diperkenalkan di sini dalam kategori berikut: 1. Aturan umum format kode sumber 2. Prosedur dan fungsi 3. Penamaan file, formulir, dan modul data 4. Penamaan paket dan komponen Aturan umum format kode sumber Indentasi di setiap level Ada dua ruang di antara mereka. Jangan tempatkan karakter tab di kode sumber. Hal ini karena lebar karakter tab bervariasi menurut pengaturan dan utilitas manajemen kode yang berbeda (pencetakan, dokumentasi, kontrol versi, dll.). Margin Margin diatur ke 80 karakter. Kode sumber umumnya tidak melebihi margin dengan menulis sebuah kata, namun aturan ini lebih fleksibel. Jika memungkinkan, pernyataan yang panjangnya lebih dari satu baris harus diapit dengan koma atau operator. Setelah jeda baris, itu harus diindentasi oleh dua karakter. Tanda kurung tidak mempunyai spasi antara tanda kurung kurawal pembuka dan karakter berikutnya. Begitu pula tidak ada spasi antara tanda kurung tutup dengan karakter sebelumnya. Contoh berikut menunjukkan spasi yang benar dan salah. CallPROcedure(Parameters); // Salah! CallProcedure (Parameters); // Benar! Kata-kata dan kata kunci yang dicadangkan Objek Kata-kata dan kata kunci yang dicadangkan dalam bahasa Pascal selalu seluruhnya menggunakan huruf kecil. Pernyataanbegin...endbegin harus berada pada barisnya sendiri. Misalnya, baris pertama di bawah ini salah, tetapi baris kedua benar: for i:=0 to 10 do bebeginStatement end// Salah, mulai berada pada baris yang sama dengan for i:=0 to 10 do //Benar !mulai dalam Kasus khusus dari aturan ini di startStatementend pada baris lain adalah ketika mulai merupakan bagian dari pernyataan lain. Misalnya: if ConditionthenbeginStatement endelse beneveStatement; pernyataan endend selalu berada pada baris terpisah. Jika permulaan bukan merupakan bagian dari pernyataan else, maka pernyataan akhir yang bersesuaian akan diindentasi dengan jumlah yang sama dengan pernyataan awal. Pernyataan (1) Situasi yang paling mungkin terjadi pada pernyataan if_then_else harus ditempatkan pada klausa maka, dan situasi yang tidak mungkin terjadi harus ditempatkan pada klausa else. Untuk menghindari banyak pernyataan if, gunakan pernyataan case saja. Jika ada lebih dari 5 level, jangan gunakan pernyataan if. Silakan gunakan metode yang lebih jelas. Jangan gunakan tanda kurung tambahan dalam pernyataan if. Dalam kode sumber, tanda kurung hanya digunakan jika benar-benar diperlukan. Misalnya: jika (I=42) maka // Salah, tanda kurung berlebihan jika (I=42) atau (J=42) maka // Benar, tanda kurung harus digunakan Jika ada beberapa kondisi yang akan diuji dalam pernyataan if, Anda harus Menyusun dari kanan ke kiri dalam urutan kompleksitas komputasi. Hal ini memungkinkan kode untuk memanfaatkan sepenuhnya logika estimasi hubung singkat kompiler. Jika Kondisi1 lebih cepat dari Kondisi2 dan Kondisi2 lebih cepat dari Kondisi3, pernyataan if harus dibuat seperti ini: if Kondisi1 dan Kondisi2 dan Kondisi3 maka(2) pernyataan case_else Konstanta untuk setiap kasus dalam pernyataan kasus harus disusun dalam angka atau alfabet memesan. Pernyataan tindakan untuk setiap situasi harus singkat dan biasanya tidak lebih dari 4 hingga 5 baris kode. Jika tindakannya terlalu rumit, kode tersebut harus ditempatkan dalam prosedur atau fungsi terpisah. Klausa else dari pernyataan kasus hanya digunakan untuk kasus default atau deteksi kesalahan. (3) Pernyataan while merekomendasikan untuk tidak menggunakan proses keluar untuk keluar dari perulangan while. Jika perlu, kondisi perulangan harus digunakan untuk keluar dari perulangan. Semua kode yang menginisialisasi perulangan while harus ditempatkan sebelum entri while dan tidak boleh dipisahkan dengan pernyataan yang tidak relevan. Pekerjaan tambahan apa pun untuk bisnis harus dilakukan segera setelah siklus. (4) Pernyataan for Jika jumlah loop ditentukan, pernyataan for harus digunakan sebagai pengganti pernyataan while. (5) pernyataan pengulangan Pernyataan pengulangan mirip dengan perulangan while dan mengikuti aturan yang sama. (6) Pernyataan with Pernyataan with harus digunakan dengan hati-hati. Hindari penggunaan pernyataan with secara berlebihan, terutama saat menggunakan beberapa objek atau rekaman dalam pernyataan with. Misalnya: dengan Record1, Record2, situasi ini dapat dengan mudah membingungkan pemrogram dan mempersulit proses debug. Penanganan Pengecualian Terstruktur Penanganan pengecualian terutama digunakan untuk memperbaiki kesalahan dan melindungi sumber daya. Artinya dimanapun sumber daya dialokasikan, try...finally harus digunakan untuk memastikan bahwa sumber daya tersebut dilepaskan. Namun, pengecualian dibuat jika sumber daya dialokasikan/dilepaskan di bagian awal/akhir unit atau di konstruktor/penghancur objek. (1) Penggunaan try...finally Jika memungkinkan, setiap alokasi sumber daya harus sesuai dengan struktur try...finally. Misalnya: //Kode berikut dapat menyebabkan kesalahan SomeClass1: = TSomeClass.Create;SomeClass2: = TSomeClass.Create;try{do some code}finallySomeClass.Free;SomeClass.Free;end;//Solusi aman untuk sumber daya di atas alokasinya adalah: SomeClass1: = TSomeClass Create;trySomeClass2: = TSomeClass Create;coba{lakukan beberapa kode}finallySomeClass2.Free;end;finallySomeClass1.Free;end;(2) Penggunaan coba...kecuali Jika Anda ingin melakukan beberapa tugas ketika terjadi pengecualian, Anda dapat menggunakan coba...kecuali. Biasanya, tidak perlu menggunakan try...kecuali untuk sekadar menampilkan pesan kesalahan, karena objek aplikasi dapat melakukan ini secara otomatis berdasarkan konteksnya. Jika Anda ingin mengaktifkan penanganan pengecualian default di klausa, Anda dapat memicu pengecualian lagi. (3) Penggunaan try...kecuali...else tidak disarankan menggunakan try...kecuali dengan klausa lain, karena ini akan memblokir semua pengecualian, termasuk pengecualian yang Anda tidak siap untuk menanganinya.