Saya sudah terbiasa dengan konvensi penamaan paket Java standar menggunakan nama domain untuk membuat nama paket yang unik (yaitu paket com.stackoverflow.widgets
). Namun, saya belum pernah melihat rekomendasi untuk bagaimana memilih nama paket untuk proyek pribadi. Saya berasumsi karena ini karena ini benar-benar masalah selera pribadi.
Jadi, bagaimana Anda memilih nama paket untuk proyek pribadi yang tidak akan pernah membuatnya menjadi produksi (Anda mungkin bereksperimen dengan kerangka kerja baru di waktu luang Anda). Dengan asumsi Anda tidak memiliki situs web pribadi yang domainnya dapat Anda gunakan untuk membuat struktur paket Anda, apa yang akan (atau akan) Anda lakukan? Apakah Anda memiliki sistem logis untuk menghasilkan nama paket baru untuk proyek hobi, atau apakah Anda hanya menggunakan nama paket yang mudah dibuang seperti mypackage
?
Karena saya hanya ingin tahu apa pendapat orang-orang tentang hal ini, saya menjadikannya sebagai wiki komunitas.
Bagi saya pribadi, saya tidak pernah terlalu memikirkannya, tetapi saya ingin bermain-main dengan Wicket malam ini dan terlintas di benak saya bahwa saya tidak memiliki ide yang jelas tentang bagaimana saya ingin mengatur proyek hobi saya. Konvensi penamaan paket yang terpisah dan berbeda untuk proyek hobi (dalam pikiran saya, setidaknya) akan berfungsi sebagai cara yang baik untuk menjaga kode pribadi dan yang terkait dengan pekerjaan jelas terpisah satu sama lain.
Saya sedang memikirkan konvensi penamaan hierarki sederhana, untuk menjaga sumber proyek pribadi saya dalam satu folder root:
- Gunakan
myprojects
sebagai folder root - Tambahkan nama proyek
- Tambahkan nama sub-paket tambahan
Jadi, proyek Wicket saya akan ada dalam paket myprojects.learningwicket
dan tes unit akan ada dalam paket myprojects.learningwicket.tests
(misalnya).
sumber
onion.duskgytldkxiuqc6.packagename
). Selama kunci pribadi tetap rahasia, Anda mengendalikan nama domain. Jadi gratis untuk mendaftar (menghasilkan), dan itu permanen (tidak seperti domain konvensional). Itu sesuai dengan surat konvensi Java, dan itu mengidentifikasi Anda secara unik.Jawaban:
Jika Anda hanya melakukan proyek pribadi di mana tidak ada orang lain yang akan menggunakan kode, maka Anda dapat membuat nama paket yang Anda sukai. Jangan membuat sesuatu yang dimulai dengan
com.
ataunet.
atau domain tingkat atas lainnya, karena itu akan menyiratkan bahwa Anda memiliki nama domain (mis. Menggunakancom.john
sebagai nama paket Anda hanya karena nama Anda kebetulan John bukan ide yang baik) .Jika Anda akan memberikan kode kepada orang lain, Anda harus menggunakan nama paket yang unik secara global, yang menurut konvensi Java berarti Anda harus mendaftar dan menggunakan nama domain.
sumber
com.xyz
apakah nama paket ini harus terdaftar di suatu tempat ?? PSxyz
adalah klien saya.com.github.mygithubid.myproject
?Saya hanya menggunakan inisial saya: fg.nameofproject.etc
Ini mengurangi mengetik. Itu bisa diawali kapan saja dengan sf.net atau com. atau org. atau com.google ..
Karena proyek ini memperlakukan pribadi itu istimewa seperti halnya kemeja hadiah yang baru saja dipersonalisasi - itu akan terasa enak.
sumber
bond.james.007
bond.james._007
- tidak memiliki cincin yang sama untuk itu ...: - {sumber
<sarcasm>
Bah Setiap programmer yang menghargai diri sendiri akan memiliki nama domain sendiri. Ini jelas pertanyaan jebakan. Setiap orang memiliki nama domain pribadi mereka sendiri!</sarcasm>
:-)Oke, dalam semua keseriusan, membeli nama domain khusus mungkin merupakan opsi termudah. Untuk sekitar $ 10 per tahun, Anda dapat menemukan penyedia terkemuka untuk meng-host domain dan meneruskan email.
sumber
Saya menyimpan sebagian besar proyek-proyek hobi saya di Google Code, jadi saya hanya menggunakan lokasi proyek sebagai nama paket:
com.googlecode.donkirkby.someproject
.sumber
nama saya anjan
biasanya, saya menggunakan com.anjan
Saya memiliki perusahaan fantasi sendiri - kadang-kadang saya menggunakannya
tradisi dengan sourceforge (seperti yang ditunjukkan oleh hibernate dan paket lainnya) adalah net.sf. *
jadi, tergantung pada suasana hati Anda, Anda bisa melakukannya.
sumber
Saya pikir Anda sudah berhasil. Godaan untuk menghindari di sini adalah untuk tidak repot-repot dengan nama paket sama sekali. Sangat mudah untuk menyimpan beberapa penekanan tombol karena "Saya hanya menulis beberapa kode uji." Tetapi kemudian kode itu menjadi bagus dan bermanfaat dan besar, dan kemudian Anda menyadari bahwa Anda memiliki awal yang kuat untuk apa yang mungkin menjadi perpustakaan atau aplikasi yang berumur panjang. Mungkin bukan perpustakaan atau aplikasi yang pernah meninggalkan jaringan rumah Anda, tetapi intinya adalah, Anda tidak berpikir ke depan. Itulah hantu Denmark dalam ilmu komputer - selalu berpikir ke depan, jika hanya sedikit.
Konvensi penamaan yang saya gunakan untuk kode hobi saya sangat mirip dengan Anda. Saya memiliki direktori tingkat atas bernama "futura" (panjang, alasan yang membosankan mengapa nama itu muncul) dimana semua kode saya hang off. Saya mencoba dan mengatur kode saya ke pustaka paket, bahkan jika itu mungkin kelas atau paket yang saya tidak pernah gunakan untuk proyek lain. Saya menempatkan semua aplikasi (yaitu, apa pun yang memiliki void main (String [] args) di kelas) di folder futura.app. *. Saya juga mencoba untuk meniru nama paket perpustakaan Java standar untuk kode saya sendiri, meskipun dalam beberapa kasus saya melanggar konvensi karena selera saya sendiri (yaitu futura.inet untuk Internet, bukan hanya soket, kode, dan futura. Koleksi untuk non hal-hal sepele.) Mengutip David Mamet: Selalu bersikap generik. Selalu generik!
Dari perawatan yang Anda gunakan untuk mengirim pertanyaan, saya curiga Anda setuju dengan poin terakhir saya juga: Anda tidak harus memperlakukan peretasan hobi sebagai proyek tingkat perusahaan, tetapi jika Anda membawa sebagian dari disiplin itu ke pertandingan kandang, hobi itu semakin bermanfaat.
sumber
Saya menggunakan URL OpenID saya dan kemudian saya tambahkan nama proyek saya. misalnya,
com.myopenid.cd1.twitter
adalah paket root dari klien Twitter yang telah saya kembangkan.sumber
Penamaan saya:
prj.project_name
.sumber
Saya hanya menggunakan nama saya: surname.initials.xxx, sebagai kompromi yang bagus antara keringkasan dan penghindaran tabrakan. Saya pikir itu akan memberikan tabrakan namespace gratis yang masuk akal jika saya pernah memilih untuk mempublikasikan kode secara publik. Saya juga punya sedikit program yang saya tulis yang dapat mengemas ulang seluruh pohon direktori jadi saya pikir saya harus membungkus ulang untuk penerbitan itu tidak menyakitkan ... karena itu saya tidak kehilangan terlalu banyak tidur di atasnya.
Setelah nama keluarga.initials.xxx, saya menggunakan aplikasi untuk paket aplikasi, lib untuk paket perpustakaan, dan untuk hal-hal yang saya murni coba-coba.
sumber
apa pendapat Anda tentang lastname.firstname.project ??? seperti luz.marlon.project?
sumber
Saya berpikir tentang mengajukan pertanyaan yang sama. Sejauh ini saya telah menggunakan awalan com.tehvan, meskipun saya sebenarnya tidak memiliki perusahaan.
sumber