“ID” або “Id” в інтерфейсі користувача


90

Менеджер з контролю якості, у якому я працюю, щойно повідомив, що в моєму настільному додатку є помилка через те, що підказка про вхід - „Ідентифікатор оператора”, коли це має бути „Ідентифікатор оператора”. Її аргумент полягає в тому, що "Id" відноситься до его частини "психічного апарату" Фрейда і не є семантично правильним.

Зараз, будучи анальним інженером (AE), мені, звичайно, довелося шукати Id проти ID, і з моїх побіжних розслідувань (google) здається, що ID так само часто використовується для его Фрейда, як Id.

Тож моїми міркуваннями було б те, що Id є скороченою версією "Ідентифікатора" і є більш правильним або принаймні частіше вживаним, ніж ID, що зазвичай вказує на абревіатуру з двох слів.

Я міг просто змінити користувальницький інтерфейс, але тоді я б не продовжував свою професію як AE, тому мені було цікаво, чи є якісь найкращі практики чи посилання на подібні речі, які я міг би використати для підтвердження своїх аргументів? Маючи на увазі, що це питання стосується користувальницького інтерфейсу, а не вихідного коду, де скорочення та регістр - це зовсім інша галузь філософії.


6
Якщо я правильно пам’ятаю, Фрейд насправді говорив про das es, das ich und das uberich. Що перекладається як Це воно, Я (або Я) і Над-Я (або над-Я). Коли його переклали англійською мовою, перекладач не вважав, що це звучить дуже добре, тому переклав його латиною (Id, Ego, Super ego), оскільки це звучало більш вражаюче.
Колін Маккей,

5
+1 для інженера-анальника (і питання, яке насправді цікаве)
Стефано Боріні

Я поставив це питання одного разу і був проголосований до забуття! Однак я просив більше з особистих інтересів.
alex

4
Ви де-небудь згадували про те, що були інженером-аналістом? Це і Фрейд вирішив долю цього питання :).
Євген

Тож скільки спільнот ви могли б порахувати, де це насправді було б визнано цікавим? : P (+1 btw ^^)
обміняти

Відповіді:


88

За словами Мерріам-Вебстер , абревіатура - "ID". Якби це була правильна абревіатура, вона мала б бути "Id". з періодом.


19
Це абсолютно правильна відповідь. Незважаючи на те, що "Д" нічого не означає самостійно, я думаю, що всі ми вже повинні зрозуміти, що примхи англійської мови не пов'язані ні логікою, ні послідовністю. У кращому чи гіршому відношенні "посвідчення особи" - це фактичний, офіційний, правильний термін.
John Y

1
Я навіть не думав перевіряти словник. Схоже, ідентифікатор буквально правильний, враховуючи те, що він визначений більш ніж одним як абревіатура для ідентифікації. Редакторам словників, очевидно, потрібно прочитати керівні принципи Microsoft. дво- та 3-літерні скорочення. Тим часом я зміню свій користувальницький інтерфейс з ідентифікатора на ідентифікатор і прийму поразку, проклятий контроль якості.
Аарон Клаусон,

8
Ви, американці! Справжньою англійською мовою сутички не мають крапок. Порівняйте полковника Сміта та сержанта Смітерса. Або заголовки пан, місіс та міс. Оскільки це скорочення, вони не мають крапок, тоді як заголовки, такі як полковник, або скорочення, такі як понеділок, вівторок та середа, мають крапки.
TRiG

5
Далі: Ідентифікатор - це скорочення від Identity (без точок), так само як TV - від Television (або Transvestite), також без крапок. Без крапок, бо літери не означають повних слів. Я б використовував ідентифікатор у тексті, ідентифікатор у коді.
TRiG

1
На мою скромну думку, це неправильно: на веб-сайті MW йдеться про посвідчення особи, такі як посвідчення особи, паспорт тощо, іншими словами (їх) - документ із іменем та посвідченням особи, а також, можливо, зображення. Зрозуміло, що ідентифікатор таблиці бази даних (первинний ключ) - це не це, це скорочення від Ідентифікатор. Крапка пропущена, подібно до того, як крапки пропущені на телевізорі або, власне, ідентифікатор (ідентифікаційний документ, я припускаю).
Скліввз

41

Особисто я використовую "Id". Компілятору все одно, але мої очі. Порівняйте:

GetIDByWhatever  <-- looks terrible

GetIdByWhatever  <-- oh so pretty!

Естетика важливіша за граматику, коли справа стосується коду, завжди. (Оновлення: через 4 роки, я більше не підтримую цю заяву)


15
Хто сказав, що Id виглядає красивіше? Я вважаю протилежне. Я думаю, що вся суть публікації цього питання на SO полягає в отриманні раціональної, добре захищеної відповіді.
samvermette

8
Ідентифікатор чудовий у коді (і я погоджуюсь, бажано), однак питання стосувалося користувальницького інтерфейсу :) Ви ніколи не показали б жоден зі своїх прикладів користувачеві.
Шон Роуен,


4
Справа не лише в тому, щоб виглядати красиво, але якщо, наприклад, ви хочете виконати перетворення рядка в нижню літеру, ви можете закінчити get_i_d_by_whateverпроти get_id_by_whatever.
Адам Елсоданей,

1
Я думаю, що сенс, який намагався зробити @ErikKinding, полягає в тому, що за ID йде інше слово. Я згоден з тим, що GetID виглядає приємніше, ніж GetId, але GetIdFromDbTable читати легше, ніж GetIDFromDBTable, тому що ви інстинктивно знаєте, де слова розділені.
Стів

20

"D" нічого не означає, тому я завжди вважав це абревіатурою, а не абревіатурою - і тому я теж використовую "Id", а не "ID".

Я не знаю про міркування вашого Qa - слова можуть мати більше одного значення - це незвично в англійській мові :)

Але схоже, що загальновживаним насправді є " ID " (правильний чи неправильний: P), що, мабуть, очікується на формат, який очікують ваші користувачі.


1
Так очевидно .. і все ж я ніколи навіть не думав про це раніше. +1
womp

3
"Загальне вживання" є правильним, за визначенням. Так працює англійська мова. Так що так, посвідчення особи є правильним. Це абревіатура, що вимовляється як дві літери, як телевізор.
TRiG

Ідентифікатор є поширеним у реальному житті, переважно мається на увазі "Документ, що посвідчує особу" / "Документ, що посвідчує особу" / ... Ви не запитуєте чиюсь особу, ви вимагаєте документ, щоб підтвердити це.
sanderd17,

... подальші дії після передчасного введення ... Якщо ви використовуєте "Id" як скорочення для "Ідентифікатора", ви не питаєте про документ, то це просто абревіатура з малою літерою "d" IMO. Тим не менш, використання "Id" в інтерфейсі користувача є поганою практикою IMO. Ідентифікатор повинен бути чимось, що внутрішньо використовується системою, і кінцеві користувачі не повинні його знати. Це прекрасно в середовищі програмування, оскільки це дуже поширене скорочення.
sanderd17,

5

Як UAUA (аналітик ультраанальної зручності користування), будь ласка, використовуйте ID замість Id.

Візуально це більше впізнається англійською мовою. Граматично "Id" - це слово (римується з "кальмар"), і фрейдівське визначення було наведено вище. Нас ніколи не просять усно показувати " id ", а "ID". Ідентифікатор - це добре, але пропуск, оскільки крапки означають кілька слів.

Тому.

Просто використовуйте посвідчення особи, добре?

В ПОРЯДКУ.


4

Міркування менеджера з контролю якості нерозумні. Багато англійських слів мають багатозначне значення. "Провід", "провід", "провід" (метал, бути спереду або роз'єм).

Я просто намагався б відповідати великим літерам, що використовуються в інших місцях програми.


4

Цікаво, що так багато людей вважають, що "Id" повинен бути таким шляхом. Я вважаю, що "ID" підходить, оскільки він натякає на те, як ми його вимовляємо - ID. Крім того, коли я читаю "Id" у запущеному реченні, мені іноді доводиться повертатися і читати його ще раз, щоб переконатись, що це не помилка " це "або" воно ".


3

Отже, як технічний письменник, це питання, яке виникає у мене досить регулярно, коли я переглядаю роботи інших людей, будь то програмісти, студенти та інші письменники. Як правило, ідентифікатор відноситься до его, як казали інші до мене, і прийнятою абревіатурою для ідентифікації є ідентифікатор, лише тому, що багато людей не знають або не розуміють правила, не означає, що вони правильні (вибачте за тупість), розум Ви правила пунктуації та орфографії значною мірою майже так само мінливі, як мода!

Однак те, що, здається, ніхто не запитував, - чи є у вашої компанії стандарт? Зрештою, якщо у вашої компанії є посібник зі стилю, і вони висвітлювали цю тему в цьому посібнику, вам слід слідувати посібнику. Якщо це не висвітлено, то я можу запропонувати вам підняти питання з особою, яка веде путівник, та включити до розмови будь-яких зацікавлених сторін. Тут важливою є послідовність. Якщо компанія, в якій ви працюєте, не має посібника зі стилю, то, можливо, настав час розпочати її!

Сподіваюся, це допомагає ...



1

Як би ви сказали це, якби читали вголос? Я б вимовив ці дві букви. Ідентифікатор правильний, аналогічний подібним абревіатурам, таким як TV. (Без крапок, будь ласка, оскільки літери нічого не означають.)

Коли я маю справу з такими абревіатурами, мені подобається форматувати їх малими великими літерами, але це лише особистий смак. Столиці, як би там не було.

(Але я, мабуть, продовжував би використовувати ідентифікатор у самому коді.)


1

Інтерфейс користувача та код - це дуже різні звірі ...

"Ідентифікатор" - це правильна відповідь для інтерфейсу користувача.

У коді послідовність - це ваш друг. Хочете ви цього чи ні, вибирайте те, що вже є в іншому місці коду. Якщо його там немає, то прочитайте і прийміть рішення, або зв’яжіться з командою та виробіть шлях, на який кожен може погодитися. Послідовність значно полегшує життя.


1

У всіх нас є трохи OcD!

У будь-якому випадку, керівництво по стилю google говорить таке:

"Ідентифікатор: не ідентифікатор або ідентифікатор, крім рядкових літералів або переліків. У деяких контекстах найкраще вказувати як ідентифікатор або ідентифікатор."

Я йду з цим.

Microsoft є більш розмитим, з того, що я міг знайти.


0

як коротку версію Ідентифікатора я б використав Id. Також ідентифікуйте це дивно, коли у вас є такі функції

getUserIDByName()

Кілька великих літер у термінах домену досить проблематично для CamelCase, оскільки вони можуть спричинити неоднозначності, а отже і однорідність у ваших інтерфейсах та іменах


5
Звичайно, ви можете просто використати "getUserIdByName" у коді та відобразити інтерфейс із "ID", щоб отримати найкраще з обох світів.
Matthew Iselin

1
Так, але це двозначність, хоча я маю на увазі ... з цим можна жити =)
Стефано Боріні

4
У C # домовленість полягає у використанні camelCase / PascalCase із скороченнями у коді - наприклад. клас SqlConnection. У своєму інтерфейсі ви все одно будете посилатися на "Подробиці з'єднання SQL Server".
Blorgbeard вийшов

@Stefano, ви пропонуєте використовувати getUserIdByName () замість getUserIDByName () через проблему верблюда. Але що нам робити з БД? Подобається: GetDBConnection ()? Замінити БД на Дб?
Ofer Zelig


0

Я думаю, це залежить від того, як ми пишемо. Ми пишемо не "це", а "ай-ді". Ідентифікатор ідентифікатора пишеться двома звуками, тому люди роблять букву "Д", щоб не думати, що ід - це "слово". Це більше схоже на символ символу. Мені більше подобається "посвідчення особи", просто тому, що воно приємніше.


0

Я віддаю перевагу ідентифікатору, оскільки при використанні з іншим двобуквеним текстом це не стає єдиним словом із великими літерами

Фотоелектричні системи ... PVID (одне слово або 2?) PvId (набагато чіткіше).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.