Слова «statement» – інструкція, «expression» – вираз
tarasyyyk opened this issue · 17 comments
Вибираємо кращий переклад слова statement. В контексті "частина JavaScript коду, який буде виконуватися на сторінці".
Наприклад:
Statements are delimited with a semicolon:
alert('Hello'); alert('World');
Варіанти:
- конструкція. Використовується в MDN. Мені подобається цей варіант.
- інструкція. Поточний переклад. Використовується в російській версії цього посібника.
виразНе підходить для даного слова. "Вираз" буде використовуватися дляexpression.- команда. Використовується на сайті javascript.ru.
Опитування:
Опитування триває до 1 жовтня 2019 року.
Нові варіанти перекладу пропонуйте в цьому issue.
Взагалі, на мою думку, і "вираз" і "конструкція" гарні варіанти, в одному випадку один добре пасує, в іншому — другий. У прикладі вище, як на мене, то "вираз" краще підходить, але "конструкція" також валідний варіант. Чи не можно використовувати обидва варіанти, в залежності від контексту?
@Zim123 подивимося, яким буде результат опитування. Якщо ці два варіанти наберуть більш-менш одинакові кількості голосів, то виберемо обидва варіанти.
Із оксфордського словника:
A statement is something that you say or write which gives information in a formal or definite way.
Серед наданих варіантів, лише вираз підходить під подібне визначення слова.
Але такий переклад вираз конфліктує із словом expression, адже там також треба перекладати вираз. Тут при перекладі потрібно врахувати все.
@UkrainianCitizen в такому випадку переклад вираз відпадає для слова statement. Тому що, expression доволі часто буде зустрічатися в наступних розділах.
@UkrainianCitizen @tarasyyyk
А чом би і ні? Є таке поняття як синонім, якщо в одному реченні вони будуть зустрічатися, то statement можно перекласти як "конструкція", якщо ні — то можно як "вираз". Я взагалі не бачу проблеми. Тим паче, що у "інструкції по перекладу" було сказано, що не обов'язково дослівно переводити, можно близько за змістом.
@Zim123 В українській мові, це синоніми, але в англійській - це два різних слова, які в контексті програмування вживаються в різних випадках, тому і для перекладу треба вживати два різних слова.
Вікі - ненадійне джерело, але там expression перекладають як вираз. Також виходячи із тлумачення і use cases англ. відповідника, це, зрештою, вираз.
@Zim123 @tarasyyyk Англійська вікі пише, що statement - це синтаксичний юніт, який виражає якусь дію, яка має бути виконана.
Виходячи з такого визначення, це може бути або команда(на якусь дію/дії) або інструкція(щось зробити)(або ще якийсь неназваний варіант, котрий задовольняє цей критерій).
Конструкція відпадає, адже слово не передає те, що це statement описує дію. Крім того, потрібно зазначити, що присвоєння - це теж statement і тому аж ніяк не можна сказати - конструкція присвоєння.
Українська вікі перекладає як інструкція. І хоча, це, можливо, не на 100% правда, пропоную прийняти це слово.
Крім того, вживання команда як перекладу мені здається некоректним у випадку деяких statement таких як відкриття блоку conditional logic, адже, по суті, це не команда, а радше дійсно інструкція на певні дії. В цьому випадку, переклад інструкція є менш некоректною, ніж команда, якщо розглядати use cases в загальному.
@UkrainianCitizen тоді слово expression краще перекладати як вираз?
Зараз для statement якраз і використовується слово інструкція. В такому випадку нічого міняти не прийдеться.
@tarasyyyk Я думаю, що так.
У випадку з The "switch" statement конструкція максимально влучний із перерахованих варіант. Тому я за statement = конструкція :-)
У випадку з
The "switch" statementконструкція максимально влучний із перерахованих варіант. Тому я за statement = конструкція :-)
Це лише часткова правда у випадку із switch. Не хочу повторюватися чому це неправильно, почитайте мою відповідь. Крім того, є слово construct, переклад якого 100% конструкція, що конфліктує з таким варіантом перекладу.
Вікіпедія говорить наступне:
"Констру́кція (constructio, від con — «разом», «з» та struere — «будувати»)"
Особисто я собі уявив особу недосвідчену в програмуванні, і мені здається, що це може бути за важко і не зрозуміло для неї. Особисто мене такі незрозумілі слова завжди відлякували на початку вивчення певної мови програмування. З точки зору читабельності, моєю думкою, підійде слово "інструкція" – де-факто, певна лінія коду є інструкцією для транспілятора або компілятора
Опитування завершено. Згідно результатів, для слова statement буде використовуватися український відповідник «інструкція». Слово додано до Глосарію.
Знімок опитування:

Не побачив operator i operand в глосарії.
@UkrainianCitizen так і перекладатимемо: operator => оператор i operand => операнд.
@tarasyyyk не в той тред написав, але вже закінчу тут. Це треба в глосарій додати.