คำถามติดแท็ก naming-conventions

ระเบียบการตั้งชื่อหมายถึงกฎทั่วไปที่ควบคุมชื่อที่กำหนดให้กับการสร้างโปรแกรมมิงเช่นตัวแปรและวิธีการ อนุสัญญาเหล่านี้อำนวยความสะดวกในการอ่านและปรับปรุงความสามารถในการบำรุงรักษาของรหัสโดยบังคับใช้การตั้งชื่อที่สอดคล้องกันระหว่างโมดูลที่แตกต่างกัน

8
ใครสามารถอธิบายสัญลักษณ์ดอลลาร์ใน Javascript ได้บ้าง
รหัสที่เป็นปัญหาอยู่ที่นี่: var $item = $(this).parent().parent().find('input'); อะไรคือจุดประสงค์ของเครื่องหมายดอลลาร์ในชื่อตัวแปรทำไมไม่รวมอยู่ในนั้น?

6
การประชุมสำหรับตัวคั่นคำในชื่อแพคเกจ Java คืออะไร?
ควรแยกหนึ่งคำในชื่อแพ็คเกจอย่างไร ข้อใดต่อไปนี้ถูกต้อง com.stackoverflow.my_package (ใต้) com.stackoverflow.my-package (ยัติภังค์) com.stackoverflow.MyPackage (CamelCase) มาตรฐานทั่วไปคืออะไร

6
มีแบบแผนการตั้งชื่อสำหรับที่เก็บคอมไพล์หรือไม่?
ตัวอย่างเช่นฉันมีบริการสงบที่เรียกว่าบริการการซื้อ ฉันควรตั้งชื่อที่เก็บของฉัน: purchaserestservice purchase-rest-service purchase_rest_service หรืออย่างอื่น? การประชุมคืออะไร? แล้วใน Github ล่ะ? ที่เก็บข้อมูลสาธารณะควรเป็นไปตามมาตรฐานหรือไม่

11
การตั้งชื่อส่วนต่อประสานใน Java [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ภาษา OO ส่วนใหญ่นำหน้าชื่ออินเตอร์เฟสด้วยตัวพิมพ์ใหญ่ I ทำไม Java ไม่ทำเช่นนี้? อะไรคือเหตุผลที่ไม่ปฏิบัติตามอนุสัญญานี้ เพื่อแสดงให้เห็นถึงสิ่งที่ฉันหมายถึงถ้าฉันต้องการที่จะมีส่วนติดต่อผู้ใช้และการใช้งานของผู้ใช้ฉันมีสองตัวเลือกใน Java: Class = ผู้ใช้ส่วนต่อประสาน = UserInterface Class = UserImpl, Interface = ผู้ใช้ ที่ไหนในภาษาส่วนใหญ่: Class = ผู้ใช้ส่วนต่อประสาน = IUser ตอนนี้คุณอาจยืนยันว่าคุณสามารถเลือกชื่อที่สื่อความหมายได้มากที่สุดสำหรับการใช้งานของผู้ใช้และปัญหาจะหายไป แต่ Java ของการผลักดันวิธี POJO กับสิ่งต่าง ๆ และคอนเทนเนอร์ IOC ส่วนใหญ่ใช้ DynamicProxies อย่างกว้างขวาง สองสิ่งเหล่านี้เข้าด้วยกันหมายความว่าคุณจะมีอินเทอร์เฟซมากมายกับการใช้งาน POJO เดียว …

5
สิ่งประดิษฐ์ Maven และการตั้งชื่อกลุ่ม
ขณะนี้ฉันกำลังอยู่ระหว่างการย้ายโครงการจาก Ant ไปยัง Maven Conformist อย่างที่ฉันเป็นฉันต้องการใช้ข้อตกลงที่ได้รับการยอมรับอย่างดีในการค้นหาgroupIdและartifactIdแต่ฉันไม่สามารถหาข้อตกลงที่มีรายละเอียด (มีบ้าง แต่พวกเขาไม่ครอบคลุมประเด็นที่ฉันสงสัย) ทำโปรเจ็กต์นี้เป็นตัวอย่างแรกแพ็คเกจ Java: com.mycompany.teatimer ที่จริงแล้วTea Timerเป็นสองคำ แต่จาวาแพคเกจการตั้งชื่อการประชุมห้ามการแทรกขีดล่างหรือเครื่องหมายขีดคั่นดังนั้นฉันจึงเขียนมันทั้งหมดเข้าด้วยกัน ฉันเลือกgroupIdรหัสแพคเกจที่เหมือนกันเพราะฉันคิดว่าเป็นความคิดที่ดี ใช่ไหม? สุดท้ายผมต้องเลือกผมในขณะนี้ไปartifactId teatimerแต่เมื่อฉันมองไปที่โครงการ Maven อื่น ๆ ที่พวกเขาใช้ยัติภังค์คำแยกในartifactIds tea-timerเช่นนี้ แต่มันจะดูแปลกเมื่อตัดแบ่งไปที่:groupIdcom.mycompany.teatimer.tea-timer คุณจะทำอย่างไร ตัวอย่างอื่น: ชื่อแพ็คเกจ: com.mycompany.awesomeinhouseframework groupId: com.mycompany.awesomeinhouseframework(?) artifactId: awesome-inhouse-framework(?)

5
แบบแผนการตั้งชื่อไฟล์ javascript คืออะไร? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ ควรตั้งชื่อไฟล์ some-with-hyphens.js, camelCased.js หรืออย่างอื่น? ฉันไม่พบคำตอบสำหรับคำถามนี้ที่นี่

30
ทุกคนพบคลาสการตั้งชื่อและวิธีการหนึ่งในส่วนที่ยากที่สุดในการเขียนโปรแกรม? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ดังนั้นฉันกำลังทำงานกับคลาสนี้ที่ควรจะขอเอกสารความช่วยเหลือจากผู้ขายผ่านบริการบนเว็บ ฉันพยายามที่จะตั้งชื่อDocumentRetriever, VendorDocRequester, DocGetterแต่พวกเขาก็ไม่ได้เสียงที่เหมาะสม ฉันจบการสืบค้นผ่านdictionary.comครึ่งชั่วโมงเพื่อพยายามหาคำที่เพียงพอ เริ่มเขียนโปรแกรมด้วยชื่อที่ไม่ดีเหมือนมีผมที่แย่มากในตอนเช้าส่วนที่เหลือของวันนั้นตกต่ำจากที่นั่น ความรู้สึกของฉัน?

9
อนุสัญญาการตั้งชื่อ Enum - พหูพจน์
ฉันถามคำถามนี้แม้ว่าจะอ่านคล้ายกัน แต่ไม่ตรงกับสิ่งที่ฉันต้องการในหลักการตั้งชื่อ C # สำหรับคุณสมบัติ enum และการจับคู่ ฉันพบว่าฉันมีแนวโน้มที่จะตั้งชื่อ enums เป็นพหูพจน์แล้ว 'ใช้' พวกเขาเป็นเอกพจน์ตัวอย่าง: public enum EntityTypes { Type1, Type2 } public class SomeClass { /* some codes */ public EntityTypes EntityType {get; set;} } แน่นอนว่ามันใช้งานได้และนี่คือสไตล์ของฉัน แต่ทุกคนสามารถพบปัญหาที่อาจเกิดขึ้นกับการประชุมดังกล่าวได้หรือไม่? ฉันมีการตั้งชื่อ "น่าเกลียด" กับคำว่า "สถานะ" แม้ว่า: public enum OrderStatuses { Pending, Fulfilled, Error, Blah, Blah } …

10
ประเภทที่ตามด้วย _t (ขีดล่าง -t) หมายถึงอะไร
ดูเหมือนว่าเป็นคำถามง่าย ๆ แต่ฉันไม่พบด้วยการค้นหา Stack Overflow หรือ Google ประเภทใดตามด้วย_tค่าเฉลี่ย เช่น int_t anInt; ฉันเห็นรหัส C จำนวนมากเพื่อจัดการกับฮาร์ดแวร์อย่างใกล้ชิดฉันอดไม่ได้ที่จะคิดว่ามันเกี่ยวข้องกัน

6
แบบแผนการตั้งชื่อ JavaScript [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันรู้ว่ามีข้อโต้แย้งมากมาย (อาจไม่ใช่ข้อโต้แย้ง แต่อย่างน้อยก็มีข้อโต้แย้ง) เกี่ยวกับแบบแผนการตั้งชื่อที่ดีที่สุดสำหรับ JavaScript คุณตั้งชื่อตัวแปรฟังก์ชันวัตถุและสิ่งนั้นได้อย่างไร ฉันจะทิ้งความคิดของฉันเองเกี่ยวกับเรื่องนี้เนื่องจากฉันไม่ได้ทำ JS มานาน (สองสามปีเท่านั้น) และฉันเพิ่งได้รับคำขอให้สร้างเอกสารที่มีแบบแผนการตั้งชื่อเพื่อใช้ในโครงการที่ทำงานของเรา . ดังนั้นฉันจึงได้ดู (google-ing) รอบ ๆ และมีความคิดเห็นที่แตกต่างกันมากมาย หนังสือที่ฉันอ่านใน JS ใช้วิธีการตั้งชื่อต่าง ๆ ด้วยตัวเอง แต่พวกเขาก็เห็นด้วยเล็กน้อย:“ ค้นหาสิ่งที่เหมาะกับคุณและยึดมันไว้” แต่ตอนนี้ฉันได้อ่านหนังสือมากมายฉันพบว่าฉันชอบวิธีอื่นดีกว่าที่ฉันคุ้นเคย

8
แผนการตั้งชื่อมาตรฐานสำหรับ html / css ids และคลาสคืออะไร
มันขึ้นอยู่กับแพลตฟอร์มที่คุณใช้หรือมีการประชุมทั่วไปที่นักพัฒนาส่วนใหญ่แนะนำ / ติดตาม? มีหลายตัวเลือก: id="someIdentifier"' - ดูสวยสอดคล้องกับรหัสจาวาสคริปต์ id="some-identifier" - ดูเหมือนแอตทริบิวต์ html5 เหมือนและสิ่งอื่น ๆ ใน html id="some_identifier" - ดูค่อนข้างสอดคล้องกับรหัสทับทิมและยังคงเป็นตัวระบุที่ถูกต้องภายใน Javascript ฉันคิดว่า # 1 และ # 3 ด้านบนเหมาะสมที่สุดเพราะพวกเขาเล่นได้ดีกว่าด้วย Javascript มีคำตอบที่ถูกต้องสำหรับสิ่งนี้หรือไม่?

11
ควรจะมีการประกาศ“ ตัวบันทึกสุดท้ายแบบคงที่” ใน UPPER-CASE หรือไม่?
ใน Java ตัวแปรสแตติกสุดท้ายเป็นค่าคงที่และการประชุมคือว่าพวกเขาควรจะเป็นตัวพิมพ์ใหญ่ แต่ผมได้เห็นว่าคนส่วนใหญ่ประกาศตัดไม้ในกรณีที่ต่ำกว่าซึ่งขึ้นมาเป็นการละเมิดในPMD เช่น: private static final Logger logger = Logger.getLogger(MyClass.class); เพียงค้นหาgoogleหรือSOเพื่อ "static final logger" และคุณจะเห็นสิ่งนี้ด้วยตัวคุณเอง เราควรใช้ LOGGER แทนหรือไม่

6
ขีดล่างนำหน้าสำหรับชื่อคุณสมบัติและเมธอดใน JavaScript
คำนำหน้าขีดล่างใน JavaScript มีเพียงแบบแผนเท่านั้นตัวอย่างเช่นในวิธีการเรียนแบบส่วนตัวของ Python คืออะไร? จากเอกสาร 2.7 Python: ตัวแปรอินสแตนซ์“ ส่วนตัว” ที่ไม่สามารถเข้าถึงได้ยกเว้นจากภายในวัตถุไม่มีอยู่ใน Python อย่างไรก็ตามมีการประชุมที่ตามด้วยรหัส Python ส่วนใหญ่: ชื่อที่นำหน้าด้วยเครื่องหมายขีดล่าง (เช่น _spam) ควรได้รับการปฏิบัติเสมือนเป็นส่วนที่ไม่เปิดเผยต่อสาธารณะของ API (ไม่ว่าจะเป็นฟังก์ชันวิธีการหรือสมาชิกข้อมูล) . สิ่งนี้ใช้กับ JavaScript ได้หรือไม่ ยกตัวอย่างโค้ด JavaScript นี้: function AltTabPopup() { this._init(); } AltTabPopup.prototype = { _init : function() { ... } } นอกจากนี้ยังใช้ตัวแปรนำหน้าขีดล่าง ... this._currentApp = 0; this._currentWindow = …

30
ชื่อที่ดีที่สุดสำหรับวิธี“ เพิ่ม” ที่ไม่กลายพันธุ์ในคอลเลกชันที่ไม่เปลี่ยนรูปแบบคืออะไร
ขออภัยสำหรับชื่อวาฟเฟิล - ถ้าฉันสามารถสร้างชื่อที่กระชับได้ฉันไม่ต้องถามคำถาม สมมติว่าฉันมีประเภทรายการที่ไม่เปลี่ยนรูป มันมีการดำเนินงานFoo(x)ที่ส่งกลับรายการที่ไม่เปลี่ยนรูปใหม่ที่มีข้อโต้แย้งที่ระบุว่าเป็นองค์ประกอบพิเศษในตอนท้าย ดังนั้นเพื่อสร้างรายการของสตริงที่มีค่า "Hello", "immutable", "world" คุณสามารถเขียน: var empty = new ImmutableList<string>(); var list1 = empty.Foo("Hello"); var list2 = list1.Foo("immutable"); var list3 = list2.Foo("word"); (นี่คือรหัส C # และฉันสนใจคำแนะนำ C # มากที่สุดหากคุณรู้สึกว่าภาษามีความสำคัญไม่ใช่คำถามทางภาษา แต่พื้นฐานของภาษาอาจมีความสำคัญ) สิ่งสำคัญคือรายการที่มีอยู่จะไม่เปลี่ยนแปลงโดยFooดังนั้นempty.Countจะยังคงกลับ 0 อีกวิธีหนึ่ง (สำนวนมากขึ้น) ของการบรรลุผลจะเป็น: var list = new ImmutableList<string>().Foo("Hello") .Foo("immutable") .Foo("word"); คำถามของฉันคืออะไรชื่อที่ดีที่สุดสำหรับ Foo คืออะไร? …

5
ข้อกำหนดในการตั้งชื่อคีย์อีกครั้งหรือไม่
การตั้งชื่อตามปกติสำหรับกุญแจใน Redis คืออะไร? ฉันเห็นค่าคั่นด้วย:แต่ฉันไม่แน่ใจว่าการประชุมปกติคืออะไรหรือเพราะอะไร สำหรับผู้ใช้คุณจะทำอะไรเช่น ... user:00 ถ้า ID ของผู้ใช้คือ 00 คุณสามารถค้นหาเฉพาะจุดเริ่มต้นของคีย์เพื่อส่งคืนผู้ใช้ทั้งหมดหรือไม่ ฉันแค่หวังว่าจะหลีกเลี่ยงปัญหาในอนาคตโดยการค้นคว้าหาวิธีที่เหมาะกับผู้คนและทำไมพวกเขาถึงเลือกพวกเขา

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.