Sebagai seorang strawman mempertimbangkan paket java.util
itu adalah tempat pembuangan untuk berbagai kelas yang dalam kebanyakan kasus tidak berbagi kesamaan selain orang yang menempatkan mereka di sana malas atau tidak bersemangat untuk datang dengan nama paket yang secara semantik lebih benar untuk kelas mereka.
Sebagai satu contoh, ambil kelas UUID
apa nama paket semantik yang benar untuk kelas itu?
Saya sedang berupaya mengimplementasikan UUID
kelas saya sendiri agar lebih ringan. Saya tidak ingin menggunakan me.myproject.util.UUID
nama paket saya.
Saya mempertimbangkan me.myproject.rfc4122.UUID
tetapi itu tidak menyiratkan semantik dari penggunaan UUID
.
Saya juga mempertimbangkan me.myproject.uuid.UUID
tetapi saya tidak suka tautologi dalam hal itu, meskipun itu adalah pendekatan yang populer di Python untuk menempatkan kelas dalam modul dengan nama yang sama, dan packages
di Jawa tidak secara semantik setara dengan modules
di Python.
Saya juga mempertimbangkan me.myproject.UUID
tetapi menolaknya karena saya tidak ingin mencemari bagian namespace dengan hal-hal yang tidak terkait. Ini hanya memindahkan masalah ke tingkat atas.
Saya juga mempertimbangkan me.myproject.lib.UUID
tetapi ini tidak memiliki makna semantik selain .util
dan hanya mengganti nama masalahnya.
semantics
: cabang linguistik dan logika yang berkaitan dengan makna .
from me.myproject.uuid import UUID, GetUUIDInfo
terlihat OK. Mungkin ada lebih dari satu hal yang diekspor dalam sebuah modul.
me.myproject.UUID
? Ataume.UUID