Saya memiliki kelas ish besar (sekitar 40 metode) yang merupakan bagian dari paket yang akan saya kirimkan sebagai program kerja. Saat ini, metodenya cukup campur aduk dalam hal utilitas publik / swasta dll dan saya ingin memesannya dengan cara yang masuk akal. Apakah ada cara standar untuk melakukan ini? Misalnya, bidang biasanya didaftar sebelum metode, konstruktor terdaftar sebelum metode lain, dan pengambil / penampung terakhir; bagaimana dengan metode yang tersisa?
java
methods
conventions
fredley
sumber
sumber
Jawaban:
Beberapa konvensi mendaftar semua metode publik terlebih dahulu, dan kemudian semua yang pribadi - itu artinya mudah untuk memisahkan API dari implementasi, bahkan ketika tidak ada antarmuka yang terlibat, jika Anda mengerti maksud saya.
Gagasan lain adalah mengelompokkan metode yang terkait bersama - ini membuatnya lebih mudah untuk melihat jahitan di mana Anda dapat membagi kelas besar yang ada menjadi beberapa yang lebih kecil, lebih bertarget.
sumber
Variabel kelas (statis): Pertama variabel kelas publik, kemudian yang dilindungi, dan kemudian pribadi.
Variabel Instance: Pertama publik, kemudian dilindungi, dan kemudian pribadi.
Konstruktor
Metode: Metode-metode ini harus dikelompokkan berdasarkan fungsi alih-alih oleh cakupan atau aksesibilitas. Sebagai contoh, metode kelas privat dapat berada di antara dua metode instance publik. Tujuannya adalah membuat membaca dan memahami kode lebih mudah.
Sumber: http://www.oracle.com/technetwork/java/codeconventions-141855.html
sumber
Tautan yang lebih tepat ke «Konvensi Kode»: «Deklarasi Kelas dan Antarmuka»
sumber
Tidak yakin apakah ada standar yang diterima secara universal tetapi preferensi saya sendiri;
toString
,equals
danhashcode
selanjutnyasumber
new Thing()
seharusnya hanya menghasilkan Hal baru yang dipakai. Seharusnya tidak mengakibatkan koneksi database dibuka, file ditulis, dll.40 metode dalam satu kelas sedikit banyak.
Apakah masuk akal untuk memindahkan beberapa fungsionalitas ke kelas - kelas lain yang sesuai namanya. Maka itu jauh lebih mudah untuk dimengerti.
Bila jumlah Anda lebih sedikit, jauh lebih mudah untuk menuliskannya dalam urutan membaca alami. Paradigma yang sering adalah untuk membuat daftar hal-hal baik sebelum atau setelah Anda membutuhkannya, sesuai urutan Anda membutuhkannya.
Ini biasanya berarti bahwa
main()
berjalan di atas atau di bawah.sumber
onPause()
,onResume()
dll, serta semua sayaOnClickListener
bidang, yang, meskipun mereka bidang, tidak terlihat atau berperilaku seperti mereka jadi masuk akal untuk daftar secara terpisah."Konvensi" saya: statis sebelum contoh, publik sebelum pribadi, konstruktor sebelum metode, tetapi metode utama di bagian bawah (jika ada).
sumber
Juga, gerhana menawarkan kemungkinan untuk menyortir anggota kelas untuk Anda, jika Anda karena suatu alasan mencampuradukkan mereka:
Buka file kelas Anda, pergi ke "Sumber" di menu utama dan pilih "Sort Anggota".
diambil dari sini: Metode pengurutan di Eclipse
sumber
Apakah Anda menggunakan Eclipse? Jika demikian, saya akan tetap dengan urutan sortir anggota default, karena itu kemungkinan besar akan familiar bagi siapa pun yang membaca kode Anda (walaupun itu bukan urutan sortir favorit saya.)
sumber