มาตรฐานในการจัดการกับ pluralia tantum ในรหัสของคุณคืออะไร [ปิด]


20

เมื่อใช้ตัวแปรที่มีพหูพจน์และเอกพจน์เหมือนกันคุณจะตั้งชื่อพวกเขาอย่างไร มีมาตรฐานออกมาบ้างไหม?

ตัวอย่างเช่น:

Series[] series  // Plural
Series series    // Singular

ลึก:

หากต้องการเจาะจงชุดของฉันจะต้องเรียกว่าชุด (เนื่องจากการจัดรูปแบบ JSON) คุณจะพิจารณาตั้งชื่อรูปแบบเอกพจน์ของซีรี่ส์ที่เพิ่มเข้าไปในคอลเลกชันSeries sหรือไม่

ในขณะที่:

List<Series> series = new List<Series>();
Series s;

while (someBool)
{
    s = new Series();
    s.Name = "Name";
    while (anotherBool)
    {
        s.AddValue(someValue);
    }
    series.Add(s);
}

4
ฉันมักจะแยกพวกเขาโดยการเพิ่มประเภทของคอลเลกชันที่พวกเขาจะถูกเก็บไว้ลงในชื่อของพวกเขาเช่นseriesList, หรือseriesArray seriesLinkedListฉันไม่คิดว่าจะมีมาตรฐานการตั้งชื่อ
Andy

8
+1 สำหรับ pluralia แทนทาลัม! ฉันเดาว่ามันขึ้นอยู่กับว่าseriesมันคืออะไร ตัวอย่างเช่นถ้าเป็นละครทีวี (ฉันกำลังคาดเดาที่นี่) องค์ประกอบเดียวอาจเป็นepisode- แม้ว่ามันจะทำให้ฉันรู้สึกยุ่งเล็กน้อย มีคำพ้องความหมายที่เหมาะสมกับแบบจำลองของคุณหรือไม่? ฉันเคยเกิดขึ้นในการแก้ปัญหาที่น่ากลัวในรหัสบางอย่างที่ฉันรักษา - มันจะใช้งานได้ในทางเทคนิคสำหรับคุณ: ใช้กอลลัม - พูด; seriesesเช่น: ไม่ใช่ว่าฉันแนะนำให้คุณทำอย่างนั้น - ไม่ใช่อย่างแน่นอน! : D
Darragh Enright

3
@Daragh เมื่อพูดคุยกับเพื่อนร่วมงานของฉันเกี่ยวกับซีรีส์ "ซีรีส์" เป็นครั้งคราวจะเกิดขึ้นเมื่อพยายามที่จะเน้นว่าเรากำลังพูดถึงคอลเลกชัน;)
anthonytimmers

1
เนื่องจากคุณไม่สามารถเปลี่ยนชื่อรายการของคุณในตัวอย่างนั้นฉันจะเรียกมันว่าชุดใหม่
the_lotus

1
มันเป็นตัวเลือกที่จะเรียกมันSeries[] seriesesหรือว่าเกินไป Gollum-y?
จูลส์

คำตอบ:


18

ฉันไม่คิดว่าจะมีมาตรฐานสำหรับเรื่องนี้ คำนามภาษาอังกฤษส่วนใหญ่ไม่ได้มาพร้อมกับปัญหานี้ ดังนั้นหากคุณไม่ต้องการเพิ่มคำเช่น "list" หรือ "collection" ในชื่อตัวแปรทางออกที่เป็นไปได้คือการหลีกเลี่ยงปัญหานั้นโดยเพียงแค่เลือกคำอื่น

ในตัวอย่างของคุณสามารถใช้ "ลำดับ" แทน "ซีรีส์" (หากนั่นคือความหมายของ "ซีรีส์" ที่คุณนึกไว้)

แน่นอนว่าสำหรับคำบางคำเช่น "แว่นตา" หรือ "กางเกงขายาว" การค้นหาคำพ้องความหมายที่เหมาะสมกับบริบทของคุณอาจไม่ใช่เรื่องง่าย สำหรับผู้ที่น่าจะเป็นทางออกที่ดีที่สุดในการทำตามคำแนะนำของ @ DavidPacker ให้ใช้คำเช่น "spectaclesCollection" หรือ "trousersList"


ฉันจะหลีกเลี่ยงการตั้งชื่อ trouserList เพราะมันอาจบิดเบือนประเภทที่อยู่เบื้องหลัง การเป็น C # ถูกติดแท็กในคำถามที่ฉันคิดว่า XxxCollection นั้นดีกว่าเนื่องจาก ICollection เป็นอินเทอร์เฟซไม่ใช่การใช้งานเฉพาะ
Ziv
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.