การสร้างแบบจำลองชื่อและนามสกุลแยกกัน


32

ข้อโต้แย้งใดที่ควรพิจารณาเมื่อออกแบบระบบใหม่และต้องเก็บชื่อของบุคคลเป็นฟิลด์เดียวหรือแยกเป็นชื่อ / นามสกุล?

ข้อดีสำหรับฟิลด์เดียว:

  • UI ที่เรียบง่าย
  • ไม่มีความกำกวมเมื่อพยายามป้อนชื่อของบุคคลที่มีชื่อยาวมาก (มักไม่ชัดเจนซึ่งเป็นนามสกุล / ชื่อ .. )
  • ความซับซ้อนน้อยลงเมื่อจัดการหัวเรื่อง (เช่นไม่จำเป็นต้องแยกฟิลด์เพื่อป้อน "MD" หรือ "Dr. ")

ข้อดีสำหรับฟิลด์แยก:

  • การสื่อสารส่วนบุคคลเป็นไปได้ "Dear Mr X" หรือ "Dear Julie"
  • หากบริการเว็บที่ใช้งานต้องการชื่อ / นามสกุลแยกกันสามารถให้บริการได้อย่างง่ายดาย
  • ทางเลือกที่ดีกว่าสำหรับอุตสาหกรรมใด ๆ ที่มีข้อกำหนดการระบุที่เข้มงวด (เช่นการแพทย์รัฐบาล ฯลฯ )
  • ตัวเลือกที่ปลอดภัยยิ่งขึ้นเนื่องจากคุณสามารถกลับไปใช้ทางเลือกเขตข้อมูลเดียวได้ตลอดเวลา

คุณเห็นอาร์กิวเมนต์เพิ่มเติมที่ไม่ได้ระบุไว้ข้างต้นหรือไม่

อัปเดต: คำถามคืออะไรข้อโต้แย้งเพิ่มเติม (= ไม่ได้ระบุไว้ในคำถาม) สามารถแสดงรายการได้สำหรับแต่ละโซลูชัน ฉันคิดว่าการให้ความคิดเห็นแทนข้อดีและข้อเสียที่เป็นไปได้ผลักดันการอภิปรายในทางที่ผิด ผู้พัฒนาแต่ละคนจะต้องทำการตัดสินใจของเขา / เธอเกี่ยวกับปัญหานี้เป้าหมายของคำถามนี้คือการรวบรวมรายการของการขัดแย้งที่ไม่สำคัญที่สามารถประเมินได้หากจำเป็น


11
คุณพยายามจะทำอะไรกับชื่อเหล่านั้น? คุณมีข้อกำหนดทางกฎหมายหรือไม่ มีผลอื่นนอกเหนือจากการแสดงชื่อผู้ใช้หรือไม่?
Darkhogg

9
ความแตกต่างของชื่อ / นามสกุลไม่สนับสนุนคนที่มีเพียงชื่อเดียวเช่น "Cher"
JacquesB

77
ฉันแนะนำให้คุณอ่านบทความต่อไปนี้: kalzumeus.com/2010/06/17/…มันเป็นเครื่องเปิดตาที่แท้จริงเมื่อคิดถึงชื่อ
Pieter B

10
คุณอาจลองถามคำถามนี้เกี่ยวกับประสบการณ์ผู้ใช้ชุมชนอาจมีมุมมองที่แตกต่างกันเกี่ยวกับปัญหาส่วนติดต่อผู้ใช้
11684

9
@PieterB บางจุดในบทความนั้นเป็นที่น่าสงสัยและบางครั้งคุณต้องตั้งสมมุติฐานเพื่อให้สิ่งต่าง ๆ สำเร็จ บทความนั้นไม่ได้ให้คำแนะนำที่เป็นประโยชน์เกี่ยวกับวิธีจัดการชื่อ หากชื่อมีอักขระที่ไม่ใช่ Unicode คุณจะอนุญาตให้ผู้ใช้อัปโหลดรูปภาพได้อย่างไร จะเกิดอะไรขึ้นถ้าไม่มีแง่มุมที่มองเห็น - อนุญาตให้ใช้วิดีโอพร้อมเสียงได้ จะเป็นอย่างไรถ้าชื่อนั้นเป็นศิลปะการแสดงและสามารถแสดงตอนเที่ยงคืนในฮ่องกงได้เท่านั้น ในบางจุดคุณต้องเข้าใจและแก้ไขปัญหาแทนการเปิดเผยในมุมของทฤษฎีที่ฐานผู้ใช้ของคุณจะไม่พบเจอ
Reinstate Monica

คำตอบ:


50

ชื่อและนามสกุลไม่ใช่แนวคิดที่มีประโยชน์ ชื่อทำงานแตกต่างกันในประเทศต่าง ๆ ในประเทศแถบเอเชียส่วนใหญ่ชื่อสกุลจะถูกเขียนขึ้นก่อน แต่ยังคงใช้สำหรับการเรียงลำดับดังนั้นคุณอาจใช้ชื่อจริงและการเรียงลำดับจะผิดหรือในนามสกุลและการแสดงจะเป็น แล้วก็มีหลายประเทศอย่างไอซ์แลนด์ที่พวกเขาไม่ได้ใช้ชื่อสกุลเลย แต่แทนที่จะเป็นชื่อของพ่อ ดังนั้นพวกเขาจึงจัดเรียงตามชื่อที่กำหนด

คำว่า "ชื่อที่ให้ไว้" และ "นามสกุล" (หรือ "ชื่อสกุล") นั้นดีกว่าในเรื่องนี้ แต่ฉันจะหลีกเลี่ยงพวกเขาหากไม่จำเป็นจริงๆ (เช่นเอกสารทางการเช่นหนังสือเดินทางมีให้พวกเขาดังนั้นคุณต้องใช้พวกเขา) เพราะ พวกเขาทำสิ่งที่ซับซ้อนมากขึ้น

  • การสื่อสารส่วนบุคคลเป็นไปได้ "Dear Mr X" หรือ "Dear Julie"

ยกเว้นคุณไม่มีความคิดว่าจะโทรหาบุคคลที่ได้รับจากชื่อหรือนามสกุลหรืออะไร และอย่าให้ฉันเริ่มต้นด้วยภาษาที่มีการกล่าวหาคุณไม่สามารถได้รับการกล่าวหาจากการเสนอชื่อโดยทั่วไป ไม่มันจะดีกว่าถ้าคุณถามผู้ใช้ว่าจะโทรหาพวกเขาอย่างไร

  • หากบริการเว็บที่ใช้งานต้องการชื่อ / นามสกุลแยกกันสามารถให้บริการได้อย่างง่ายดาย

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

  • ทางเลือกที่ดีกว่าสำหรับอุตสาหกรรมใด ๆ ที่มีข้อกำหนดการระบุที่เข้มงวด (เช่นการแพทย์รัฐบาล ฯลฯ )

ไม่เป็นทางเลือกที่ผิดสำหรับสิ่งเหล่านี้ โดยทั่วไปเอกสารทางการจะใช้คำว่า "ชื่อที่ให้" และ "นามสกุล" (หรือ "นามสกุล") ซึ่งไม่ชัดเจน

  • ตัวเลือกที่ปลอดภัยยิ่งขึ้นเนื่องจากคุณสามารถกลับไปใช้ทางเลือกเขตข้อมูลเดียวได้ตลอดเวลา

อันที่จริงแล้วเนื่องจากความคลุมเครือที่มีชื่อชาวเอเชียคุณจึงไม่สามารถเข้าใจได้อย่างชัดเจน


2
หากใช้แอปในส่วนต่างๆของโลกป้ายฟิลด์จะต้องมีการแปลพร้อมกับวิธีการรวม / ใช้
JeffO

5
@JeffO ปัญหาที่แท้จริงคือวันนี้คุณมีแนวโน้มที่จะมีผู้คนจากประเทศต่าง ๆ ในระบบเดียวกันดังนั้นคุณต้องสร้างระบบและหาวิธีแทรกชื่อจากวัฒนธรรมที่แตกต่างเข้ามาเพื่อให้มันทำงานได้อย่างสม่ำเสมอ . อย่าเข้าไปในโพรงกระต่ายเว้นแต่คุณจะต้องการมันจริงๆ
Jan Hudec

4
@IstvanDevai มีคดีความทางกฎหมายในแคลิฟอร์เนียที่มีการประกาศสัญญาเป็นโมฆะเนื่องจากกฎหมายเครดิตกำหนดให้ต้องใช้ "นามสกุล" คนที่มีนามสกุลฮิสแปนิกสองคน แต่เมื่อขอนามสกุลนามสกุลแรก (บิดา) จะได้รับซึ่งเป็นเรื่องธรรมดา อีกฝ่ายสูญเสียคดีการเรียกเก็บเงินเนื่องจากชื่อในสัญญาไม่ใช่ชื่อ "นามสกุล" ของเขากล่าวคืออีกชื่อหนึ่งในตอนท้ายของชื่อเต็มของเขา ตัวอย่างของความสับสนครั้งแรก / ครั้งสุดท้ายและไม่ได้มีความหมายเหมือนกันทั้งหมดกับชื่อ / นามสกุลที่กำหนด

6
@Casey - ชื่อกลางควรรวมอยู่ในช่องชื่อที่กำหนดเพราะนั่นคือสิ่งที่พวกเขา: ชื่อที่กำหนดรอง ถ้าฉันมีเงินดอลลาร์ทุกครั้งที่ฉันเห็นคนฮิสแปที่ไม่มีชื่อกลาง แต่นามสกุลสองคนได้นามสกุล (และที่สำคัญที่สุด) เป็นครั้งแรกของพวกเขาในเขตชื่อกลางฉันจะเกษียณแล้ว หากคุณต้องการทราบว่าจะเรียกบุคคลใดให้มีฟิลด์สำหรับสิ่งนั้นแยกจากชื่อ จากนั้นบาร์โธโลมิวแฟรงค์เอ็ดเวิร์ดสมิ ธ เวลลิงตันสามารถบอกให้คุณเรียกพวกเขาว่าบาร์ต เราอาจพูดภาษาอังกฤษได้ แต่มีผู้คนที่นี่จากสถานที่ที่ไม่ได้พูดภาษาอังกฤษและมีการป้อนชื่อด้วย

4
-1 ในขณะที่คำตอบนั้นไม่ผิดอย่างสมบูรณ์ แต่ก็ไม่ได้สมเหตุสมผลนักสำหรับคำถามในมือ OP ค้นหาอาร์กิวเมนต์เพิ่มเติมสำหรับการใช้ชื่อหนึ่งฟิลด์หรือสองฟิลด์สำหรับชื่อมนุษย์ ไม่ว่าจะเรียกว่า "แรก / สุดท้าย" หรือ "ที่ได้รับ / sur" ไม่ใช่จุดสนใจมันเป็นเพียงฉลากที่ OP มีอยู่ในใจ ประเด็นอื่น ๆ ทั้งหมดดูเหมือนจะให้ความเห็นอย่างสูงกับฉันและจากประสบการณ์ส่วนตัวของฉันในการสร้างและปรับใช้แอพพลิเคชั่นสำหรับลูกค้าขนาดใหญ่สมมติฐานของ OP เป็นปกติอย่างสมบูรณ์และเพิ่งเกิดขึ้นด้วยวิธีนั้น คำตอบนี้พยายามที่จะโต้แย้งพารามิเตอร์ของคำถามออกไป
AnoE

31

ข้อโต้แย้งเดียวที่สำคัญคือข้อกำหนดของระบบของคุณคืออะไร?

คุณต้องการจัดการกับวัฒนธรรมเดียวหรือไม่? ถ้าเป็นเช่นนั้นสอดคล้องกับวัฒนธรรมที่ มิฉะนั้นจะวางแผนสำหรับการทำให้เป็นสากล

คุณจำเป็นต้องได้รับข้อมูลเพื่อจัดการกับแบบฟอร์มของรัฐบาลการดูแลสุขภาพหรือข้อกำหนดทางกฎหมาย / ระบบอื่น ๆ หรือไม่? ทำตามสิ่งที่บอก ถ้านั่นหมายถึงชื่อและนามสกุลให้ทำ ถ้ามันหมายถึงสิ่งที่แตกต่างทำ

คุณมีข้อกำหนดสำหรับ API ที่มีชื่อและนามสกุล (หรือเป็นไปได้ว่ามีเหตุผลพอที่จะรับประกันได้ว่าไม่สนใจ YAGNI) ทำในสิ่งที่สมเหตุสมผล

หากคุณต้องการการสื่อสารในแบบของคุณคุณควรถามชื่อและร้านค้าที่พวกเขาต้องการด้วยไหม?

ข้อกำหนดของระบบของคุณควรกำหนดสิ่งที่คุณทำ ทำสิ่งที่คุณต้อง YAGNI และส่วนที่เหลือ


7
ไม่มีสิ่งเช่น "วัฒนธรรมเดียว" อีกต่อไป แม้แต่ชุมชนที่เล็กที่สุดก็ยังมีบรรทัดฐานทางวัฒนธรรมและภาษาที่หลากหลาย
BobDalgleish

7
@BobDalgleish True แต่บางครั้งก็ไม่สำคัญ บางครั้งค่าใช้จ่ายในการสนับสนุนวัฒนธรรมที่หลากหลายทำให้นักธุรกิจเพียงแค่บอกว่าไม่
Becuzz

9
@BobDalgleish สันนิษฐานว่าวัฒนธรรมใดที่โดดเด่นในตลาดที่มีการพัฒนาแอปพลิเคชัน ฉันไม่คิดว่านี่เป็นเรื่องลึกลับหรือหายาก
Casey

3
@BobDalgleish - "วัฒนธรรม" ไม่เกี่ยวข้อง ไม่มีใครถามเกี่ยวกับวัฒนธรรมของคุณเมื่อคุณออกเอกสาร ถ้าฉันต้องการสนับสนุนเฉพาะประเทศเซอร์เบีย (ซึ่งตอนนี้ฉันอยู่) ฉันจะรวมชื่อและนามสกุลตามที่กำหนดไว้ในเอกสารทุกฉบับที่ออกในประเทศนี้และนั่นก็คือ ไม่สำคัญว่าวัฒนธรรมของคุณคืออะไร หนังสือเดินทางใบขับขี่ ฯลฯ จะมีชื่อและนามสกุลเป็นระยะเวลา
Davor Ždralo

2
@icirellik ผิดในทางใด สิ่งเหล่านั้น (ขีดจำกัดความยาว ฯลฯ ) ผิดหรือเปล่าถ้าคุณพยายามที่จะจำลองแบบของจักรวาลอย่างสมบูรณ์? อย่างแน่นอน แต่ฉันไม่เคยถูกขอให้เป็นแบบอย่างที่สมบูรณ์แบบของเอกภพและทุกอย่างที่เป็นไปได้ที่ใครบางคนอาจต้องการเลือกชื่อ ฉันจะบัญชีชื่อ Klingon หรือไม่? ไม่ แต่ทำไมล่ะ บางคนอาจทำเช่นนั้นสักวันหนึ่ง (โดยสุจริตแล้วจะไม่ทำให้ฉันประหลาดใจหากมีคนทำเช่นนั้นในตอนนี้) แต่มีจุดที่คุณเพิ่งรู้ว่าจะมีบางสิ่งที่เพิ่งจะไม่ทำงานกับแบบจำลองของคุณ และเวลา dev พิเศษเพื่อจัดการกับความเป็นไปได้ทุกอย่างไม่คุ้มค่า (ต่อ ... )
Becuzz

5

หากคุณมีมากกว่าหนึ่งวิธีในการแสดงและ / หรือใช้ชื่อคุณอาจจำเป็นต้องมีฟิลด์แยกต่างหาก พร้อมกับการป้อนข้อมูลคุณสามารถให้ข้อเสนอแนะเพื่อแสดงให้ผู้ใช้ทราบว่าจะใช้งานอย่างไร วิธีที่คุณรวมพวกเขาอาจนำไปสู่การแปลงเป็นเขตข้อมูลเดียวในอนาคต

มีป้ายกำกับที่แสดง: คำทักทายหรือชื่อที่แสดง: ชื่อ + นามสกุลการจัดระเบียบ / การเรียงลำดับ: นามสกุล, ชื่อ

เมื่อคุณไม่แน่ใจว่าจะใช้สิ่งนี้ได้อย่างไรในอนาคตให้เริ่มด้วยชื่อที่แยกแล้วจากนั้นคุณสามารถรวมพวกเขาเป็นฟิลด์เดียวเมื่อคุณรู้ว่านั่นคือทั้งหมดที่คุณต้องการ ไม่ใช่ว่าเป็นการยากที่จะเขียนอัลกอริธึมที่จะแยกฟิลด์ชื่อเดียวเป็นชื่อและนามสกุล แต่คุณจะทำผิดพลาดในไม่กี่คนและคนไม่ชอบความผิดพลาดกับชื่อของพวกเขา ด้วยการแบ่งฟิลด์ผู้ใช้สามารถปรับวิธีป้อนชื่อเมื่อเห็นการใช้งาน การรวมเข้าด้วยกันในฟิลด์ชื่อแบบถาวรมีความเสี่ยงน้อยกว่า


5

ฉันเห็นด้วยกับสิ่งต่าง ๆ ที่ @JanHudec พูดถึงแม้ว่าฉันจะต้องการขยายตัวเล็กน้อย:

  • คุณจำเป็นต้องรู้ว่าความต้องการที่แท้จริงของคุณคืออะไร แต่มันง่ายกว่าที่จะรวบรวมข้อมูลมากกว่าที่จะแยกมันออกจากกันเมื่อรวมกันอีกครั้ง
  • การเรียงลำดับจะเป็นสิ่งที่ท้าทายอยู่เสมอเนื่องจากกฎอาจแตกต่างกันไปตามสถานที่และวัฒนธรรม
  • หลายวัฒนธรรมไม่ตรงกับความต้องการของคุณซึ่งนำไปสู่สมมติฐานที่ไม่ดี (นี่คือจุดที่ใหญ่ที่สุดของแจน)

คำศัพท์เป็นสิ่งสำคัญ

คำเช่นชื่อและนามสกุลหรือครอบครัวชื่อมีความหมายความหมายและฐานข้อมูลของคุณควรจะสะท้อนให้เห็นถึงความหมายของข้อมูลของคุณ คำศัพท์เช่นชื่อและนามสกุลมีความหมายเชิงตำแหน่งโดยทั่วไปจะอิงตามแนวคิดของอังกฤษและอเมริกันว่าชื่อทำงานอย่างไร ใช้คำศัพท์ที่เหมาะสมสำหรับความหมายของข้อมูลของคุณ

ไกลแค่ไหนที่คุณต้องการที่จะทำลายมันลงมา?

มีแนวคิดเรื่องตำแหน่ง (นายดร. นาง ฯลฯ ) หรือลำดับ (จูเนียร์ซีเนียร์ III ฯลฯ ) และแม้กระทั่งการรับรอง (ปริญญาเอก, MS, PCAM ฯลฯ ) ซึ่งอาจมีความสำคัญขึ้นอยู่กับ บริบทและวัตถุประสงค์

โลแคลหลายแห่งมีแนวคิดของชื่อสกุลหลายชื่อ (บิดาและมารดา) และบางแห่งไม่มี เมื่อกรอกแบบฟอร์มบางครั้งผู้คนจะต้องเลือกอย่างหนักว่าจะใช้ชื่อใดเช่นใช้ชื่อสกุลของบิดาสำหรับ "นามสกุล" ในรูปแบบอเมริกันหรือขึ้นมาด้วยนามสกุลตามชื่อบิดา (Janson) )

ในขณะที่อยู่ในอเมริกาเป็นเรื่องปกติที่จะมีชื่อกลางหนึ่งชื่อหรือมากกว่านั้นมักจะถูกละเลยนอกครอบครัวของคุณ

การเรียงลำดับ

ช่วยให้มีฟิลด์เฉพาะสำหรับชื่อเรียงลำดับ ด้วยวิธีนี้คุณสามารถแก้ปัญหากฎเมื่อคุณสร้างบันทึก นอกจากนี้ยังช่วยให้คุณมีชื่อเรียงตามลำดับที่ถูกต้องข้ามขอบเขตระหว่างประเทศ

แนวทางปฏิบัติทั่วไป

ข้อกำหนดที่แท้จริงของคุณกำหนดความถูกต้องที่คุณต้องมีเกี่ยวกับชื่อ หากคุณกำลังสร้างเว็บไซต์ของรัฐบาลหรือเว็บไซต์ธนาคารคุณมีข้อกำหนดสำหรับการจัดเก็บและจัดการชื่อมากกว่าที่เป็นทางการเช่น Facebook

แนวทางอย่างไม่เป็นทางการ

  • มีหนึ่งฟิลด์ที่อธิบายถึงวิธีที่ผู้ใช้ต้องการเป็นที่รู้จัก
  • จัดเรียงและแสดงผลใช้ชื่อนั้น

แนวทางกึ่งทางการ

  • มีหนึ่งฟิลด์สำหรับชื่อเล่นหรือวิธีที่ผู้ใช้ต้องการได้รับการแก้ไข
  • มีสองฟิลด์หนึ่งฟิลด์สำหรับชื่อที่กำหนดและอีกหนึ่งฟิลด์สำหรับนามสกุล (ควรเป็นตัวเลือก)
  • คำนวณฟิลด์การเรียงลำดับตามตำแหน่งที่ตั้งและคอมโบที่กำหนด / นามสกุล
  • ใช้ชื่อเล่นเมื่อพูดถึงผู้ใช้โดยตรง
  • ใช้ชื่อทางการเมื่อแสดงรายชื่อคน

แนวทางที่เป็นทางการ

  • สิ่งเหล่านี้ถูกกำหนดโดยนโยบายและขั้นตอนที่มีอยู่สำหรับเอนทิตีที่คุณสนับสนุน
  • คุณต้องการฟิลด์มากที่สุดเท่าที่จำนวนส่วนชื่อสูงสุดที่คุณจะได้รับการสนับสนุนตั้งชื่อความหมายสำหรับสิ่งที่พวกเขาเป็น
  • รวมฟิลด์การเรียงลำดับที่จัดการการเรียงลำดับตามที่คุณต้องการในกรณีแบบกึ่งทางการ
  • การแสดงผลมักจะถูกกำหนดโดยนโยบายและขั้นตอนที่มีอยู่ คุณต้องทำความคุ้นเคยกับพวกเขา

ผู้ลงคะแนนเสียงจะดูแลอย่างละเอียดหรือไม่ บางทีฉันอาจพลาดบางสิ่ง
Berin Loritsch

นี่ดูเหมือนว่าฉันจะครอบคลุมและคำแนะนำอย่างจริงจังที่สุดที่นี่
Jesse Clark

4

นอกเหนือจากสิ่งที่ @JanHudec ชี้และที่ฉันเห็นด้วยก็เป็นสิ่งที่ควรสังเกตว่าในหลาย ๆ ประเทศผู้คนมีนามสกุลมากกว่าหนึ่งชื่อดังนั้นเขตข้อมูลนามสกุลเดียวอาจไม่เกี่ยวข้อง เช่นในสเปนคนที่มีนามสกุลสองคนและพวกเขาใช้เพียงหนึ่งหรือทั้งสองขึ้นอยู่กับสถานการณ์

นอกจากนี้คุณไม่ควรปรับเปลี่ยนการสื่อสารตามสมมติฐานของคุณเช่นในบางวัฒนธรรมคุณอาจดูหยาบคายเมื่อเรียกชื่อนามสกุลของคนและในกรณีอื่นอาจเป็นเรื่องตรงกันข้าม

นอกจากนี้บางวัฒนธรรมยังให้ความสำคัญกับรูปแบบเช่น 'Mrs' vs 'Ms' และพวกเขาอาจรวมคำนี้กับชื่อหรือนามสกุลขึ้นอยู่กับแต่ละกรณี

ดังนั้นฉันจะเรียนรู้วิธีแก้ปัญหาที่คุณมีเขตข้อมูลชื่อเดียวและอาจมีเขตข้อมูลเพิ่มเติมที่ผู้ใช้เติมที่บอกวิธีการหันไปหาผู้ใช้ - สิ่งที่คล้ายกับสิ่งที่สายการบินหลายแห่งทำเมื่อคุณซื้อตั๋วออนไลน์ วิธีนี้อาจช่วยแก้ปัญหาการแยกชื่อหากคุณต้องการใช้กับบริการเว็บภายนอกที่คุณกล่าวถึง


1
สมมุติว่าคุณแปลเป็นภาษาท้องถิ่นจริงๆคุณสามารถใช้เทมเพลตที่แตกต่างกันสำหรับภาษาที่แตกต่างกันได้
Casey

4

ยิ่งไปกว่านั้นสิ่งที่ @HanHudec และ @KjMag ได้ชี้ให้เห็นแม้ในวัฒนธรรม / ภาษาที่ใกล้เคียงกับภาษาอังกฤษสิ่งนี้กลายเป็นปัญหา ยกตัวอย่างภาษาเยอรมัน คุณมีแนวคิดของ Vornamen, ชื่อจริง, Nachnamen, นามสกุลและ Rufname ชื่อที่คุณถูกเรียก ยกตัวอย่างพ่อของฉันเขามี 3 ชื่อแรกในสูติบัตรของพวกเขาที่ระบุไว้ในลำดับ Christoph Stephan Andreas และเขามีนามสกุลเดียว คุณคิดว่าเขาชื่ออะไร

คำตอบที่ถูกต้อง: Andreas นั่นคือรูฟเนมของเขาในอเมริกาเขาใช้ชื่อนั้นว่าเป็นชื่อของเขาเพื่อให้พอดีกับเทมเพลตอเมริกัน ดังนั้นคุณอาจสันนิษฐานได้ว่าชื่อสุดท้ายของคุณในเยอรมนีคือชื่อที่คุณถูกเรียก แต่แล้วคุณก็มีน้องชายของฉัน: Christoph Sebastian Herbert Maria (ตอนนี้ฉันแจกบาวาเรียนไปแล้ว) หรือคริสตินกาเบรียน้องสาวของฉัน คุณคิดว่าชื่อที่พวกเขาเรียกนั้นคืออะไร? เซบาสเตียนและคริสตินตามลำดับ

ฉันต้องการคำตอบที่สามที่พูดหนึ่งฟิลด์สำหรับชื่อเต็ม และฉันจะเพิ่มเข้าไปในนั้น: อาจเพิ่มฟิลด์อื่นสำหรับนามสกุล / นามสกุลและตั้งคำถาม: คุณจะเรียงลำดับชื่ออะไรในรายการ แล้วฟิลด์สุดท้ายสำหรับ: คุณต้องการได้รับการแก้ไขอย่างไร


1
"นามสกุล" เป็นเพียงชื่ออื่นสำหรับ "นามสกุล" ไม่ใช่คำที่ปรากฏตามลำดับ ชื่อสุดท้ายของ Nakayama Taro คือ "Nakayama"
Casey

2
หากต้องการเพิ่มอีกกรณี: ปู่ของฉันถูกเรียกว่า "Antoon Leendert van Ingen Schenau" => ชื่อที่ให้ไว้: "Antoon Leendert"; เรียกว่า: "Leen"; นามสกุล: "van Ingen Schenau" เพื่อจัดเรียงภายใต้ "Ingen" ไม่สามารถเรียกชื่อหรือการเรียงลำดับที่ถูกต้องได้อย่างง่ายดายจากรายการชื่อ / นามสกุล
Bart van Ingen Schenau

1
@Casey ตามใคร ในประเทศญี่ปุ่นมันเป็น "ชื่อ" ตัวอย่างเช่นไม่ใช่ "นามสกุล"
eis

1
@eis ในญี่ปุ่นมันคือ名字 แต่ที่นี่ในโลกที่พูดภาษาอังกฤษ "นามสกุล" เป็นคำพ้องสำหรับ "นามสกุล" และไม่ใช่ "คำสุดท้ายในลำดับชื่อของใครบางคน"
Casey

1
@ eis ฉันไม่แน่ใจว่าคุณต้องการทำอะไร ผู้ใช้จะไม่ทราบถึงความแตกต่างหากคุณเรียกใช้ฟิลด์ฐานข้อมูล last_name แทนนามสกุล หนึ่งเป็นเพียงคำพ้องความหมายของอีก หากข้อกังวลของคุณคือการนำเสนอซอฟต์แวร์ให้กับผู้ที่ไม่ได้ใช้ภาษาอังกฤษแสดงว่าไม่เกี่ยวข้องกันเพราะทั้ง "นามสกุล" และ "นามสกุล" เป็นคำภาษาอังกฤษและคุณควรใช้คำศัพท์ในภาษาที่คุณต้องการแปลเป็นภาษาท้องถิ่น หากข้อกังวลคือคุณต้องการให้คนที่ไม่รู้จักภาษาอังกฤษสามารถใช้หน้าภาษาอังกฤษได้ดีนั่นดูเหมือนจะเป็นวิธีที่น่ายินดีที่จะแก้ไขปัญหาที่เกิดขึ้นจริง
Casey

-2

หากมีใครกำลังมองหาแอพพลิเคชั่นระดับโลกคน ๆ นั้นอาจจะสร้างชื่อของบุคคลเป็นอาร์เรย์ของสตริง ตัวอย่างเช่นพิจารณาชื่อประธานาธิบดีในภาพยนตร์ Idiocracy:

  • Dwayne Elzondo Mountain น้ำค้างน้ำค้าง Herbert Camacho

นั่นคือชื่อเต็มของเขา ชื่อมี 6 องค์ประกอบในอาร์เรย์ สำหรับวัฒนธรรมของสหรัฐอเมริกาชื่อแรกคือองค์ประกอบแรกในอาร์เรย์ (Dwayne) และนามสกุลคือองค์ประกอบสุดท้ายในอาร์เรย์ (Camacho) แต่นั่นไม่ใช่กรณีเสมอไป

เราสามารถใช้กฎเฉพาะของวัฒนธรรมเพื่อกำหนดชื่อ "ชื่อแรก" ถ้าชื่อจริงเป็นองค์ประกอบสุดท้ายและอื่น ๆ ขึ้นอยู่กับว่าชื่อทำงานในวัฒนธรรม / ตำแหน่งที่ตั้งต่างกัน

นอกจากนี้ในกรณีของสหรัฐอเมริกาเรามีกรณีที่องค์ประกอบสุดท้ายไม่ใช่นามสกุลเช่น:

  • Dwayne Elzondo Mountain น้ำค้างน้ำค้าง Herbert Camacho Jr.

ดังนั้นอาจเป็นฟิลด์ต่อท้ายชื่อหรือต้องแยกวิเคราะห์องค์ประกอบสุดท้ายเพื่อค้นหาคำต่อท้ายที่รู้จักโดยยึดตามวัฒนธรรมเพื่อให้ได้นามสกุลที่ถูกต้อง

ดังนั้นคุณควรเก็บชื่อไว้ในองค์ประกอบเดียว (ชื่อเต็ม) ของคุณให้ดีขึ้นแล้วใช้ชุดคำสั่ง "standardization / sanitation" เพื่อแยกวิเคราะห์องค์ประกอบเฉพาะตามต้องการ มีกลยุทธ์คล้ายกันสำหรับที่อยู่ พวกเขามักจะรวบรวมเป็นหนึ่งสตริงแล้วส่งไปยังบริการเพื่อแยกวิเคราะห์ชิ้นส่วน


3
เขตข้อมูลเดียวแล้ว "การแยกวิเคราะห์" เป็นความคิดที่ไม่ดีจริงๆ ลองพิจารณาคนที่มีนามสกุล "รุ่นพี่": คุณแจงอย่างไร แล้ว "de la Jolla" ในฐานะนามสกุลล่ะ?
BobDalgleish

ฉันพูดถึงการแยกวิเคราะห์หรือฟิลด์คำต่อท้ายชื่อ หากจำเป็นต้องใช้โซลูชันทั่วไปจำเป็นต้องใช้โปรแกรมวิเคราะห์คำเพื่อให้คุณสามารถจัดการแต่ละกรณีเช่น "อาวุโส" และ "de la Jolla" เราสามารถใช้ AI และฝึกการจดจำชื่อได้ ฉันพนันได้เลยว่าถ้าใครเลี้ยงมันเป็นชุดข้อมูลที่มีขนาดใหญ่พอมันจะสามารถจดจำ "de la Jollas" ของโลกได้ แต่นั่นเป็นทางออกหนึ่งที่เป็นไปได้ การสะสมชิ้นส่วนที่ไม่ต่อเนื่องแน่นอนเป็นไปได้เช่นกัน แต่มันมีข้อเสีย
Jon Raynor
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.