คำถามเปิดกว้างที่น่าอึดอัดใจ แต่มันเป็นปัญหาที่ฉันต้องเผชิญกับ:
ซอฟต์แวร์ที่ง่ายต่อการบำรุงรักษาและใช้งานด้วยซอฟต์แวร์ที่ออกแบบมาอย่างดี การพยายามออกแบบให้ใช้งานง่ายหมายถึงการตั้งชื่อคอมโพเนนต์ของคุณในลักษณะที่นักพัฒนาซอฟต์แวร์รายต่อไปควรสามารถสรุปการทำงานของส่วนประกอบ นี่คือเหตุผลที่เราไม่ตั้งชื่อคลาสของเรา "Type1", "Type2" เป็นต้น
เมื่อคุณกำลังสร้างแบบจำลองแนวคิดในโลกแห่งความเป็นจริง (เช่นลูกค้า) สิ่งนี้ง่ายเหมือนการตั้งชื่อประเภทของคุณหลังจากที่แนวคิดแบบโลกแห่งความจริงถูกจำลอง แต่เมื่อคุณสร้างสิ่งที่เป็นนามธรรมซึ่งเป็นระบบมากขึ้นมันง่ายมากที่จะหมดชื่อซึ่งง่ายต่อการอ่านและย่อยง่าย
มันแย่ลง (สำหรับฉัน) เมื่อพยายามตั้งชื่อตระกูลประเภทโดยใช้ประเภทฐานหรือส่วนต่อประสานที่อธิบายถึงองค์ประกอบที่ต้องทำ แต่ไม่ใช่วิธีการทำงาน สิ่งนี้นำไปสู่แต่ละประเภทที่ได้มาโดยพยายามอธิบายถึงรสชาติของการนำไปใช้ (เช่นIDataConnection
และSqlConnection
ใน. NET Framework) แต่คุณจะแสดงบางสิ่งที่ซับซ้อนเช่น "ทำงานโดยสะท้อนและมองหาชุดคุณลักษณะเฉพาะ" ได้อย่างไร
จากนั้นเมื่อคุณเลือกชื่อสำหรับประเภทที่คุณคิดว่าอธิบายว่ามันกำลังพยายามทำอะไรเพื่อนร่วมงานของคุณถามว่า "WTF ทำสิ่งนี้ได้DomainSecurityMetadataProvider
จริงหรือไม่ "
มีเทคนิคที่ดีหรือไม่ในการเลือกชื่อที่มีความหมายดีสำหรับส่วนประกอบหรือจะสร้างกลุ่มขององค์ประกอบโดยไม่ต้องใช้ชื่อที่ยุ่งเหยิงหรือไม่?
มีการทดสอบอย่างง่าย ๆ ที่ฉันสามารถนำไปใช้กับชื่อเพื่อให้เกิดความรู้สึกที่ดีขึ้นไม่ว่าจะเป็นชื่อ "ดี" หรือไม่