คำถามติดแท็ก packages

แพ็คเกจหมายถึงสองสิ่งอย่างกว้าง ๆ : 1) หน่วย / ส่วนประกอบที่ใช้งานได้ของซอฟต์แวร์ที่สร้าง / คอมไพล์หรือ 2) พาร์ติชันของเนมสเปซส่วนกลาง (java)

15
คุณใช้กลยุทธ์ใดในการตั้งชื่อแพ็กเกจในโปรเจ็กต์ Java และเพราะเหตุใด [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบได้ด้วยข้อเท็จจริงและการอ้างอิงโดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันคิดถึงเรื่องนี้เมื่อไม่นานมานี้และเมื่อไม่นานมานี้ปรากฏขึ้นอีกครั้งเมื่อร้านของฉันกำลังทำเว็บแอป Java ตัวแรก ในบทนำฉันเห็นกลยุทธ์การตั้งชื่อแพ็กเกจหลัก 2 แบบ (เพื่อความชัดเจนฉันไม่ได้หมายถึงส่วน 'domain.company.project' ทั้งหมดของสิ่งนี้ฉันกำลังพูดถึงรูปแบบแพ็คเกจที่อยู่ด้านล่าง) อย่างไรก็ตามหลักการตั้งชื่อแพ็คเกจที่ฉันเห็นมีดังนี้: ฟังก์ชั่น: ตั้งชื่อแพ็กเกจของคุณตามฟังก์ชันสถาปัตยกรรมแทนที่จะเป็นเอกลักษณ์ตามโดเมนธุรกิจ คำอื่นสำหรับสิ่งนี้อาจเป็นการตั้งชื่อตาม "เลเยอร์" ดังนั้นคุณจะมีแพ็คเกจ * .ui และแพ็คเกจ * .domain และแพ็คเกจ * .orm หีบห่อของคุณเป็นชิ้นส่วนแนวนอนแทนที่จะเป็นแนวตั้ง นี้เป็นมากร่วมกันมากขึ้นกว่าการตั้งชื่อตรรกะ อันที่จริงฉันไม่เชื่อว่าฉันเคยเห็นหรือได้ยินโครงการที่ทำเช่นนี้ แน่นอนว่าสิ่งนี้ทำให้ฉันเบื่อหน่าย (เช่นคิดว่าคุณได้หาวิธีแก้ปัญหา NP) เนื่องจากฉันไม่ฉลาดมากและฉันคิดว่าทุกคนต้องมีเหตุผลที่ดีในการทำแบบที่พวกเขาทำ ในทางกลับกันฉันไม่ได้ต่อต้านคนที่คิดถึงช้างในห้องและฉันไม่เคยได้ยินข้อโต้แย้งที่เกิดขึ้นจริงในการตั้งชื่อแพ็คเกจด้วยวิธีนี้ ดูเหมือนว่าจะเป็นมาตรฐานโดยพฤตินัย ตรรกะ: การตั้งชื่อแพ็กเกจของคุณตามข้อมูลประจำตัวของโดเมนธุรกิจและใส่ทุกคลาสที่เกี่ยวข้องกับฟังก์ชันการทำงานตามแนวตั้งลงในแพ็กเกจนั้น ฉันไม่เคยเห็นหรือได้ยินเรื่องนี้อย่างที่ฉันพูดถึงมาก่อน แต่มันสมเหตุสมผลสำหรับฉัน ฉันมักจะเข้าหาระบบในแนวตั้งมากกว่าแนวนอน ฉันต้องการที่จะพัฒนาระบบประมวลผลคำสั่งซื้อไม่ใช่ชั้นการเข้าถึงข้อมูล เห็นได้ชัดว่ามีโอกาสดีที่ฉันจะแตะชั้นการเข้าถึงข้อมูลในการพัฒนาระบบนั้น แต่ประเด็นก็คือฉันไม่คิดอย่างนั้น แน่นอนว่าสิ่งนี้หมายความว่าอย่างไรก็คือเมื่อฉันได้รับคำสั่งเปลี่ยนแปลงหรือต้องการใช้คุณลักษณะใหม่ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.