Sebagai pengembang, harus ada spesifikasi kode yang ketat. Untuk alasan ini, saya merangkum beberapa kasus spesifikasi kode.
Daftar isi
1. Kata Pengantar
2. Kisaran uji coba
3. Spesifikasi Penamaan Java-
3.1 Perjanjian Publik
3.2 file java, tas, tas
3.3 Kelas, Spesifikasi Penamaan Antarmuka
3.4 Metode penamaan spesifikasi
3.5 konstan
3.6 Variabel dan parameter
3.7 Komponen/Komponen
3.8
3.9 Nomor Misterius
3.10 Lainnya
3.11 Pengecualian Java
3.12 Penamaan Array
3.13 aturan penamaan tabel basis data
3.14 Aturan Penamaan Bidang Database
3.15 Nama File JSP
3.16 Nama Servlet
4. Spesifikasi Format Menulis
4.1 Endix
4.2 Ruang
4.3 Alignment
4.4 Garis kosong
4.5 Catatan
5. Gaya file kode
1. Program sumber dalam sumber daya lain yang diwarisi oleh sistem juga harus dimodifikasi sesuai dengan spesifikasi ini.
2. Lingkup uji coba dokumen ini akan digunakan sebagai format pemrograman untuk pengembangan perangkat lunak Sistem Aplikasi Pos Hebei (bahasa Java). Selama proses pengkodean, pengujian dan pemeliharaan sistem, diperlukan untuk diamati secara ketat.
3. Spesifikasi Penamaan Java
3.1 Penamaan Nama File Sumber, Metode, Direktori, Paket, Nama Tabel Basis Data, Bidang Basis Data, dll. Dalam nama nama file sumber, metode, direktori, paket, nama tabel database, nama tabel basis data, bidang database. Suram
Penamaan yang digunakan oleh sistem diekspresikan dalam singkatan bahasa Inggris. Suram
Metode penamaan adalah: awalan+{penamaan kata singkatan}, awalan mengungkapkan penggunaan penamaan, seperti tabel database. Suram
Awalan penamaan ditentukan oleh tim proyek. Suram
Objek lain kecuali sistem objek pemeliharaan publik, semua penamaan menggunakan huruf kecil. Salah satu cara menggunakan "_" sebagai simbol koneksi, dan yang lainnya adalah menghubungkan huruf pertama dari kata prime secara langsung. Dalam spesifikasi ini, nama database dan nama bidang basis data mengadopsi cara pertama, dan sisanya berada di cara kedua. Suram
Menggunakan dapat secara akurat menggambarkan deskriptor bahasa Inggris lengkap dari variabel/bidang/kelas/antarmuka/tas. Misalnya, menggunakan nama -nama seperti FirstName, ListAllUsers, atau CorporateCustomer, secara ketat dilarang menggunakan pinyin Cina dan kata -kata yang tidak terkait. , metode, variabel, bidang, dll. Dinamai
Menggunakan pencampuran kecil untuk meningkatkan keterbacaan nama. Secara umum, huruf kecil harus digunakan, tetapi huruf pertama dari nama dan nama antarmuka, dan huruf pertama dari setiap kata perantara harus huruf besar. Semua nama paket. Suram
Cobalah untuk menggunakan sedikit singkatan, tetapi jika Anda harus menggunakannya, ketika Anda menggunakan singkatan publik dan singkatan kebiasaan, seperti implement dapat disingkat sebagai IMP, manajer (manajer) dapat disingkat sebagai MGR, dll. Untuk perinciannya, silakan merujuk ke penyalahgunaan pelecehan. (Hindari menggunakan nama panjang (lebih disukai tidak lebih dari 25 huruf).
Hindari menggunakan angka, tetapi 2 dapat digunakan sebagai pengganti, 4 bukan untuk, dll., Seperti: go2jsp.
3.2 File Java, tas
Nama file harus sama dengan kelasnya, dan huruf pertama dari kata ini dikapitalisasi. Suram
Nama paket umumnya dinamai proyek atau modul, dan menggunakan lebih sedikit singkatan dan nama panjang. Suram
Paket Dasar: com.czpost, semua paket dan file termasuk dalam paket ini.
Nama paket terdiri dari aturan berikut: [Paket Dasar].
Kelas tidak boleh didefinisikan secara langsung di bawah paket dasar.
3.3 Kategori dan Antarmuka Spesifikasi Penamaan Semua kata dari semua kata. Gunakan kata -kata yang bisa persis sama, makna antarmuka, fungsi, dll. Umumnya menggunakan kata benda. Suram
Antarmuka dapat membawa saya awalan atau mampu, ible, e dan sufiks lainnya.
3.4 Metode Penamaan Metode Penamaan Penamaan Metode Standar Penamaan harus menggunakan deskriptor bahasa Inggris yang lengkap, campuran penggunaan huruf kecil: huruf pertama dari semua kata perantara. Kata pertama dari metode metode ini sering menggunakan kata kerja dengan warna aksi yang kuat. Nilai nilai menggunakan awalan GET, kelas nilai menggunakan awalan yang ditetapkan, dan kelas penilaian digunakan (memiliki) awalan. Contoh: getName () setSarry () islogon () Metode Parameter Sequence: (oleh operator, konten operasi, logo operasi, lainnya) Contoh: Public void REPLACE (String Sourcestr, String Oldstr, String Newstr) {...... ...}
3.5 Konstanta menggunakan kata yang dikapitalisasi bahasa Inggris lengkap, dan terhubung ke garis antara kata dan kata -kata, seperti: default_value
3.6 Variabel dan variabel parameter disarankan untuk menggunakan metode penamaan Hongaria.
Variabel platform (termasuk int, pendek, panjang): Mulai dengan N, misalnya: long ncrednum;
Floating -Point Variabel (termasuk float, double): Mulai dengan F, misalnya: ftranamt ganda;
Variabel Karakter: Mulailah dengan C, misalnya: char cpageflag;
Tanggal Variabel: Mulai dengan D, misalnya: Tanggal dtoday;
Variabel String: Mulai dengan S, misalnya: char spageno [2+1];
Variabel Global: Jenis Data dengan G, misalnya: Chsbankno [10+1];
Variabel statis: Variabel statis juga merupakan variabel global dalam file, dan aturan penamaan sama dengan variabel global. Suram
Variabel Sistem -Level: Variabel tingkat sistem juga merupakan variabel global.
Misalnya: char _sbankno [10+1] tidak ada 'g'.
Variabel sementara biasanya dinamai I, J, K, M dan N, dan mereka umumnya digunakan untuk integer;
3.7 Komponen/Komponen harus mengadopsi komponen penamaan deskriptor bahasa Inggris yang lengkap (komponen antarmuka), diikuti oleh aturan penamaan Hongaria seperti: btnok, lblname. T tombol variabel btn+xxxxxxx, misalnya: btnsave, btn keluar, btnprint, dll. Pilihan dialog CHC dlg evt evt frm menu menu panel pnl textarea txa textfield txf
3.8 Koleksi, seperti array dan vektor, harus dinamai oleh beberapa nomor untuk mewakili jenis objek yang disimpan dalam antrian. Penamaan harus menggunakan deskriptor bahasa Inggris yang lengkap. Seperti: vektor vproduts = vektor baru ();
3.9 Program nomor misterius sering menggunakan beberapa kuantitas. Perhatikan bahwa penamaan konstanta ini harus mengekspresikan signifikansi angka, dan harus semua huruf besar, yang dibedakan dari pengidentifikasi yang sesuai dengan variabel. Misalnya, angka 50 dapat didefinisikan sebagai pengganti konstan yang disebut num_of_employees.
3.10 Ganda harus digunakan ketika penamaan lain menunjukkan bahwa mereka mewakili beberapa nilai. Seperti: orderitems.
3.11 Java Kategori abnormal abnormal terdiri dari kata -kata yang mewakili tipe dan pengecualian abnormal, seperti ActionXception.
Contoh abnormal umumnya menggunakan e, ex, dll. Dalam beberapa kelainan, gunakan nama atau singkatan yang abnormal ini untuk menambahkan E, EX, dll.
3.12 Array Array Array harus selalu disebutkan dengan cara berikut: Byte [] Buffer;
3.13 Aturan penamaan tabel database dipisahkan oleh garis bawah antara awalan dan kata penamaan.字 Sebutkan itu terdiri dari huruf kecil. Suram
Jika kata penamaan terdiri dari satu kata, itu dapat digunakan untuk ejaan penuh; jika itu adalah komposisi multi -kata dan singkatan. Antara singkatan, gunakan garis bawah. Sebagai contoh: 库 例 例 例: Mulailah dengan 'T_' Lihat: Mulailah dengan 'V_' 例 例 例 例 例 例 例 例 Tabel di akhir '_idx': 'Akhir
3.14 aturan penamaan bidang database
Jika kata penamaan terdiri dari satu kata, itu dapat digunakan untuk ejaan penuh; jika itu adalah komposisi multi -kata dan singkatan. Antara singkatan, gunakan garis bawah.字 Sebutkan itu terdiri dari huruf kecil. Tidak ada awalan.
3.15 Penamaan file JSP menggunakan deskripsi bahasa Inggris yang lengkap untuk menunjukkan fungsi yang diselesaikan oleh JSP, termasuk kata kerja yang jelas, huruf pertama, seperti: viewmessage.jsp, edituser.jsp atau forumchooser.jsp, dll.
3.16 Nama kelas servlet umumnya sesuai dengan objek yang disajikan dengan layanan akhiran, seperti: Userservice, Tradeservice, dll.
4. Format penulisan secara ketat membutuhkan format penulisan untuk membuat program ini rapi, mudah dibaca, dan gaya terpadu. Dianjurkan agar program sumber mengembangkan alat Eclipse, dan spesifikasi formatnya pra -tim dalam alat.
4.1 Saran innsy dan indentasi didasarkan pada 4 grid kosong. Pernyataan pra -pemrosesan, data global, judul, deskripsi tambahan, deskripsi fungsi, label, dll. Semua ditulis. "{" Dan "}" dari blok kalimat disejajarkan dan selaras dengan baris sebelumnya. Metode default di sclipse adalah awal "{" bukan baris yang terpisah, dan disarankan untuk berubah ke format di atas.
4.2 Pada prinsipnya, variabel, kelas, data konstan, dan fungsi di ruang pada prinsipnya ada dalam jenisnya, nama yang dimodifikasi ditempatkan dan selaras dengan benar sesuai dengan situasinya. Seseorang dapat digunakan dalam prinsip kata kunci, seperti: if (...) dan sebagainya. Persyaratan ruang operator adalah sebagai berikut: "::", "->", "[", "" "," ++ ","-"," ~ "," "!", "+"-- "(Mengacu pada angka positif)," & "(dikutip) dan operator lain seperti kedua sisi perhitungan bukan tanpa spasi (yang lainnya sistem simbol komputasi -Eye mengacu pada sisi yang terhubung dari operasi), lainnya Operator (termasuk sebagian besar dua operator dan operator dan operator dan "operator tiga -retak"?: "Satu kisi -kisi kosong di kedua sisi, dapat diselaraskan sesuai dengan situasi ketika fungsi didefinisikan, tetapi dapat digunakan ketika fungsi tersebut diimplementasikan. "Kisi -kisi tidak bisa kosong atau multi -ruang saat Anda perlu menyelaraskan.
4.3 Garis -garis ketersediaan harus disejajarkan pada prinsipnya, dan penyelarasan mencakup semua bagian seperti jenis, modifikasi, nama, dan parameter. Panjang setiap baris tidak boleh melebihi layar terlalu banyak. Indentasi baris pertama, yaitu, jika baris berikutnya adalah "{", itu harus diselaraskan dengan baris pertama. Definisi variabel adalah yang terbaik untuk disejajarkan dengan penambahan spasi atau tombol tab, dan variabel dari jenis yang sama adalah yang terbaik bersama -sama. Seperti yang ditunjukkan dalam contoh berikut: int nvalue;
4.4 Harus ada garis kosong yang tidak teratur di garis kosong, seperti sepuluh garis kosong berturut -turut. Setiap bagian dari struktur file program kosong. Untuk fungsi yang Anda tulis, disarankan untuk menambahkan "// -------" untuk memisahkan. Setidaknya satu baris harus kosong antara data internal fungsi dan kode. dari itu. Setidaknya ada satu baris antara empat "P" di kelas, dan data dan fungsi juga harus kosong.
4.5 Catatan Catatan adalah perwujudan spesifik dari keterbacaan perangkat lunak. Anotasi program umumnya menyumbang 20%dari jumlah pengkodean program, dan persyaratan rekayasa perangkat lunak tidak kurang dari 20%. Anotasi program tidak dapat digunakan dalam bahasa abstrak seperti "pemrosesan" dan "siklus" dalam bahasa abstrak. Hindari komentar dari setiap baris prosedur, Anda dapat menambahkan komentar di depan program, dengan logika pemrosesan yang jelas. Komentar itu penting, tetapi terlalu banyak harus terlalu banyak. Berikut ini adalah empat catatan yang diperlukan: Judul dan deskripsi tambahan.的 Penjelasan fungsi, kelas, dll. Harus ada penjelasan yang tepat untuk hampir setiap fungsi. , jika perlu, harus ada beberapa instruksi seperti perangkat lunak khusus dan persyaratan perangkat keras. Pernyataan fungsi publik dan kelas publik harus dijelaskan oleh metode dan ide desain. Suram
Harus ada penjelasan tertentu dalam hal yang tidak jelas atau tidak ditransplantasi. Suram
Dan sejumlah kecil catatan lain, seperti komentar variabel khusus, waktu menulis kode, dll.
5. Gaya file kode semua file java (*. Java) harus mengikuti aturan gaya berikut:
Untuk pembuatan file, untuk kelas turunan Java standar, cobalah menggunakan alat Eclipse untuk menghasilkan format file untuk menghindari file header header tangan/file implementasi. E Line Paket/Paket Impor harus sebelum jalur impor, nama paket standar dalam impor adalah sebelum nama paket lokal, dan diatur dalam urutan huruf. Jika baris impor berisi sub -direktori yang berbeda dalam paket yang sama, itu harus diproses dengan*.
Paket hotlava.net.stats; Suram
Anotasi kepala file anotasi kepala file terutama menunjukkan beberapa informasi file, yang merupakan deskripsi keseluruhan dari program, yang dapat meningkatkan keterbacaan dan pemeliharaan program. Anotasi kepala file umumnya di belakang pernyataan paket/impor, dan deskripsi kelas. Diperlukan untuk menulis setidaknya nama file, pembuat, waktu pembuatan dan deskripsi konten. Format harus dibatasi sebanyak mungkin: /*** Judul: ok untuk menentukan kelas posisi mouse* Deskripsi: Tentukan bidang pekerjaan mana yang sekarang dan mengembalikan nomor pekerjaan* @copyright: Hak Cipta (c) 2002* @company: Tekan * @Authoror: Rivershan * @Version: 1.0 */ Kelas berikutnya adalah komentar kelas, yang umumnya digunakan untuk menjelaskan kelas. / ** * Kelas repressing satu set paket dan technus penghitungan byte * Dapat diamati untuk memungkinkannya menjadi Watchet, tetapi hanya * laporan berubah ketika set saat ini selesai e */ Next adalah definisi kelas, yang berisi baris yang berbeda Memperluas dan mengimplementasikan Counterset Kelas Publik memperluas yang dapat diamati mengimplementasikan bidang kelas yang dapat dikloning
Berikutnya adalah variabel anggota: / ** * Paket Paket * / Paket Int [] yang dilindungi; Jika variabel anggota yang ditentukan oleh arsip, pribadi, dan paket jelas, tidak ada komentar.是 Metode akses adalah cara untuk mengakses variabel. Ini hanya untuk hanya menggunakan variabel kelas untuk mendapatkan nilainya, yang dapat dengan mudah ditulis di telepon. (Secara pribadi berpikir bahwa mencoba menulis sebanyak mungkin)
/** * Dapatkan penghitung * @return sebuah array yang berisi data statistik.
Public int [] getPackets () {return copyArray (paket, offset);} public int [] getBytes () {return copyArray (bytes, office)] getPackets () {packets return;} public void setPackets (int [] paket) {This.packets = packets;}
Metode lain tidak boleh ditulis pada garis konstruktor. Jenis akses ("publik", "pribadi", dll., Dan "statis", "final" atau "disinkronkan" harus ada dalam satu baris, dan metode dan parameter dapat ditulis satu per satu. Ini dapat membuat metode dan Parameter lebih mudah dibaca.
counterset publik (ukuran int) {
this.size = ukuran;
}
Jika metode klon dapat dikloning, langkah selanjutnya adalah metode klon: objek publik clone () {)
mencoba {
Hitung Obj = (countrset) super.clone ();
} Catch (cloneNotsupportedException e) {{
Throw New Internet ("ClonenotsupportException yang tidak terduga:" + e.getMessage ());
}
}
Metode kelas mulai menulis metode kelas:
/ ** * Atur jumlah paket * GalArgumentExcetion {
// Pastikan array dengan ukuran yang sama // if (r1.length! = R2.length || r1.length! = R3.length || r1.length! = R4.length) ion ("Array harus dari Ukuran Berita "; System.ArrayCopy (R1, 0, R3, 0, R1.Length); System.ArrayCopy (R2, 0, R4, R4, R1.Length); satu kelas harus menentukan metode tostring:
public string toString () {string retval = "countrset:"; ();} Return retval;}
Jika metode utama didefinisikan, itu harus ditulis di bagian bawah kelas.