|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
Осторожно! Больная тема и особорелигиозная. Но хотелось бы таки понять, насколько это былоподход и главное - почему? Я понимаю, что сейчас полетят тухлые помидоры. Но какие у вас аргументы против? И есть ли кто-то с аргументами ЗА? Стоит сразу подчеркнуть, что речь только о продуктах для внутреннего рынка. Понятное дело, что если вы разрабатываете продукт для буржуев, то это отдельная тема. Неудобно переключаться между языками и все такое прочее при написании кода - это уже классика. Что-нибудь еще? Задавать имена таблиц и столбцов на транслите считается верхом неприличия. Типа надо на инглише. Окей, но разве когда имена таблиц заданы с помощью гуглтранслейта это лучше? Да, может быть не все этим страдают, но я видел много коммерческих продуктов, в которых имена заданы на английском, но сразу видно, что это было сделано без учета контекста, то есть с помощью гуглтранслейта или, когда речь идет о самых простых словах, то с помощью собственного словарного запаса уровня третьего класса начальной школы, без какого-либо учета правил английского. Ну, например, когда хотят перевести "тип класса" пишут TypeClass, вместо ClassType или "тип операции" переводят как TypeOperation. То есть имеет место прямой дословный перевод с русского (конечно, в каких-то случаях такой подход, когда слово Type впереди, мог быть выбран ради сортировки столбцов или таблиц в списке, чтоб все типы рядышком были). Недавно была задача интеграции с одним известным программным комплексом, уровня Enterprise, который используется в очень многих крупных эээ..., ну в общем... не важно где. Там было таких ошибок просто одна на другой. И у меня всегда возникает вопрос в таких ситуациях: друзья, господа, коллеги, зачем вы пишите названия на английском, применяя свой словарный запас уровня третьего класса "лондон из зЭ кЭпитал..." ну вы поняли, - зачем? Думаете, это круче, чем TipClassa? Когда носитель будет читать это гэ... он будет испытывать боль и не только носитель, но и тот, кто знает инглиш чуть лучше уровня третьего класса. Он будет писать Select OperationType from ..., а система ему скажет - нене, дружище, нет такого столбца! Получается, что такой кривой английский только усложняет жизнь. Что гласит закон джунглей? Закон джунглей гласит, что код должен быть понятным, не так ли? Часто даже жертвуют производительностью, ради понятности (разумеется, там, где это не критично), о компактности уже и речи не идет. Все эти табуляции, разрывы и прочее были придуманы точно не ради экономии места на экране, а вызов процедуры и возврат занимает несколько дополнительных тактов процессора, но сейчас это уже никого не волнует. Когда речь идет о языках программирования, там львиную долю занимают операторы, переменные, встроенные процедуры и функции, которые на английском. И хотя сейчас всё в юникоде и некоторые языки позволяют создавать имена переменных на русском, это бред. Но когда речь идет о базе данных, то в запросах 90% это имена таблиц и столбцов и оставшиеся 10% это ключевые слова. insert, update, select... зачем перечислять, вы и так знаете. Соединение, снова условия по именам таблиц и столбцам, сортировки, группировки, оконки, pivot и unpivot и так далее. Открыл квадратную скобку и интеллисенс нам поможет избавиться от лишних переключений. Но даже на чистом инглише вам придется иногд переключиться, чтобы написать комент или текст сообщения об ошибке. Или, скажете, у вас коменты тоже на англицком? То есть в запросах мы работаем в основном с именами, а не с ключевыми словами, поэтому, когда столбцы названы на русском, уровень понятности зашкаливает. Когда это огромная портянка, а не просто Код: sql 1.
, то сплошные плюсы, чем когда, уж простите, какой-нибудь горе-переводчик поназывал таблицы и алиасы так, что по имени не сразу поймешь, что он хотел сказать, пока не просмотришь всю логику заполнения этой таблицы, зато БМВ типа на английском, совесть перед сообществом чиста, я не быдлокодер, можно спать спокойно! P.S. я не случайно создал топик именно в этом разделе, потому что речь конкретно о сиквеле, так что не нужно про другие СУБД и возможные в них проблемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 15:10 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001 уровень понятности зашкаливает Ага. Догадайтесь с трёх раз, что выводит запрос Код: sql 1.
TJ001 Открыл квадратную скобку и интеллисенс нам поможет избавиться от лишних переключений. В базе ~3000 таблиц. Примерно столько же процедур/функций/вьюх. При открывании [ интеллисенс при таких вводных подвешивает студию на ощутимое время. А после этого без переключения клавиатуры останется всего-то промотать список из 3000 пунктов стрелочкой вниз до нужного. А вообще - это всё рефлексии свободных художников. Обычно существуют всякие внутренние code conventions, регламентирующие стили наименования объектов, форматирование, отступы (пробелы/табы - ещё одна тема для спец. олимпиады), итд. И их соблюдают. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 15:30 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
Ага. Догадайтесь с трёх раз, что выводит запрос Код: sql 1.
судя по всему, вы точно знаете, что выводит запрос? Код: sql 1.
TJ001 Открыл квадратную скобку и интеллисенс нам поможет избавиться от лишних переключений. В базе ~3000 таблиц. Примерно столько же процедур/функций/вьюх. При открывании [ интеллисенс при таких вводных подвешивает студию на ощутимое время. А после этого без переключения клавиатуры останется всего-то промотать список из 3000 пунктов стрелочкой вниз до нужного. когда в базе over3000 таблиц, то английские имена не спасут тоже и интеллисенс зависнет с таким же успехом и даже без квадратных скобок, а как только вы поставите точку после dbo иии? поэтому на русском писать не надо? как это отосится к теме? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 15:50 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001, Если речь идёт про абстрактный sql server с доступом только через ssms, то никаких проблем нет. Как только появляются подключения по jdbc и прочее веселье - проще становится жить с latin only. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 15:50 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
Но когда речь идет о базе данных, то в запросах 90% это имена таблиц и столбцов и оставшиеся 10% это ключевые слова. insert, update, select... зачем перечислять, вы и так знаете. Соединение, снова условия по именам таблиц и столбцам, сортировки, группировки, оконки, pivot и unpivot и так далее. Открыл квадратную скобку и интеллисенс нам поможет избавиться от лишних переключений. Но даже на чистом инглише вам придется иногд переключиться, чтобы написать комент или текст сообщения об ошибке. Или, скажете, у вас коменты тоже на англицком? все на английском. когда требуется вывод сообщения в текущей локали правильно использовать сообщение из заранее зарегистрированного sys.messages для нужной локали. даже переключения на dml инструкциях уже раздражают select [имя], [фамилия] from [dbo].[Продукты] inner join [dbo].[Заказы] on ... красным выделил переключения раскладки, это еще без алисов таблиц и.т.д надо приучить сразу себя писать на английском. если разраба коробит от того что названия на английском получаются корявые это не следствие того что необходимо переходить на именование объеков на великом могучем, это причина разрабу записаться на курсы английского. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 15:53 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
env, хороший аргумент про jdbc felix_ff, легко сказать - отправить разрабов на курсы искать сразу с достойным знанием, мы повышаем порог вхождения наслаивается куча проблем Но не будем зацикливаться только на СУБД возьмем, к примеру, SSAS и Visual Studio он создает модель с локалью RU Следовательно, имена таблиц там физически называются на русском. Если их назвать на инглише, то нужно транслейт прикрутить, но русский транслейт стандартными средствами не прикручивается к локали RU Написание DAX запросов подразумевает всё то, что вы выделили красным, бесит, соглашусь, но что делать? Так микрасофт организовал работу своих продуктов. Выход: создавать модель с локалью EN, добавлять транслейт, дальше поддерживать имена таблиц и транслейтов, иначе пользователь в PowerBI или Excel увидит английские имена и будет округлять глаза. В результате поддержка этих костылей оказывается дороже нескольких дополнительных переключений, разве нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:08 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001 судя по всему, вы точно знаете, что выводит запрос? Код: sql 1.
Нет, не знаю. Но про зашкаливание уровня понятности на русском писал не я. TJ001 когда в базе over3000 таблиц, то английские имена не спасут тоже и интеллисенс зависнет с таким же успехом и даже без квадратных скобок, а как только вы поставите точку после dbo иии? поэтому на русском писать не надо? Нет, пишите на том, на чём вам позволяют, или хочется. Просто выше было написано про то, что при наличии имен объектов на кириллице от частых переключений спасает intellisence. У меня лично он, кстати, всегда отключен. Но это всё ерунда. Сон Веры Павловны А вообще - это всё рефлексии свободных художников. Отдельно взятый разработчик в составе команды следует общим правилам, а не своим измышлениям на тему. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:16 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Но про зашкаливание уровня понятности на русском писал не я. TJ001 Когда это огромная портянка, а не просто select * from t1 Так было сказано ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:21 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Сон Веры Павловны А вообще - это всё рефлексии свободных художников. Отдельно взятый разработчик в составе команды следует общим правилам, а не своим измышлениям на тему. Но тут вопрос как раз в плоскости не отдельно взятого разработчика, а команды, когда мнения расходятся. Вот и хочется узнать мнения по этому поводу. Аргументы тех, кто за, я изложил и тех, кто против тоже и проблемы команды в общем-то тоже, когда не у каждого достаточный уровень знания английского. Приходится либо согласовывать имена столбцов, либо имеем в конце кто в лес, кто по дрова. То Sales то Purchase, когда речь и там и там о продажах. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:27 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001 То Sales то Purchase, когда речь и там и там о продажах. Продажи и Покупка тебя не спасут. ЗЫ. Большинство современных хреновин нормально работают с русскими буквами. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:32 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001 То Sales то Purchase, когда речь и там и там о продажах. А вот нет, здесь уже важен фактор контекста в котором расматривается та или иная сущность. дословно Sales - продажи, Purchases - покупки. Но применительно к какому нибудь магазину товаров оба наименования могут рассматриваться как определения представляющие по смыслу одно и тоже, но применительно например к объекту какой нибудь "брокер" уже могут иметь диаметрально разное отношение. По сути такие вещи в части правильных английский наименований согласуются в рамках базовой проектной модели, обычно архитектором проекта, что бы разработчикам не приходилось из головы придумывать названия. Это правда отклонение от первоначальной темы обсуждения. Но оба варианта на мой взгляд все равно лучше русских наименований объектов в модели данных. По сути наименования на том или ином языке важны для интерфейсной составляющей - той которая отображается конечному пользователю, то есть это задача интерфейса. Интерфейс должен содержать маппинги на модель и производить перевод в удобочитаемый вид, а все внутренние потроха извините должны быть согласованы между командой разработчиков и документированны. Если стоит проблема наиманования сущностей между отдельными разработчиками видимо нужно выделять координирующего человека, обычно в данном случае таковым выступает проектный архитектор или проект менеджер. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:44 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
aleks222 ЗЫ. Большинство современных хреновин нормально работают с русскими буквами. Да, большинство, но не все. И количество переключений раскладки большое. Из-за этого сейчас предпочитаю все на английском именовать, хотя и на русском делал 3-4 проекта. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:49 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001 возьмем, к примеру, SSAS и Visual Studio он создает модель с локалью RU Следовательно, имена таблиц там физически называются на русском. Если их назвать на инглише, то нужно транслейт прикрутить, но русский транслейт стандартными средствами не прикручивается к локали RU На самом деле, именовать можно как угодно, некоторые вообще вот так 19900129 делают, и ничего, даже живут после этого. Важно, чтобы у всех разработчиков на проекте был единый code style convention, и все бы его неукоснительно соблюдали. Аргументы против смешивания кодировок:
Касательно же вашей реальной проблемы - создайте для каждой таблицы вьюху либо синоним (на ваше усмотрение), поместите их все в отдельную схему (а еще лучше - в отдельную БД), чтобы не путаться, поименуйте их как хотите, хоть с пробелами внутри, и в кубах используйте в качестве источников только этот набор прокладок. А главное - никогда не используйте их нигде в своем коде. Это позволит вам одновременно получить какие угодно названия объектов, и при этом избежать использования не-английских названий в коде БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 16:57 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
felix_ff Но применительно к какому нибудь магазину товаров оба наименования могут рассматриваться как определения представляющие по смыслу одно и тоже В том-то и проблема, что вроде как одно и тоже, но названо по-разному, а это уже не хорошо, потому что в рамках одной системы такого быть не должно или так или так. Но приходит новый человек и у него даже мыслей не возникает спросить, он же точно знает, что продажи - это Sales, так и пишет, а другой днем раньше уже назвал Parchase. Понятное дело, что все это исправляется и договоренность какая-то будет достигнута, но это время и нервы, а потом еще и ошибки, вызванные пакетным переименованием через Ctrl+H, которые несопоставимы с лишними двумя десятками или даже сотнями переключений раскладки. Можно сказать что это все плохое управление, но это же люди, они всегда преподносят сюрпризы. Когда самолет летает из точки А в точку Б уже несколько лет каждый день, там все движения механические и отточены, а разработка такое дело... felix_ff По сути такие вещи в части правильных английский наименований согласуются в рамках базовой проектной модели, обычно архитектором проекта, что бы разработчикам не приходилось из головы придумывать названия. Ну вот так и приходится делать, но когда создается десяток новых таблиц с десятком столбцов внутри, архитектору становится не сладко у него и других дел хватает, а разрабы ноют "давай быстрее, работа стоит". Но это действительно уже из другой области. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 17:06 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
похоже, есть люди, которым нравится отлавливать случайно затесавшиеся буквы не в той раскладке. особенно, "с" ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 17:31 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
Ennor Tiegael Т.е. проблемы у вас на самом деле с SSAS, но топик вы создали в разделе по MSSQL, почему-то. Ладно, это мелочи. Нет, с ним проблем, как таковых, нет Проблема, когда начинаешь это склеивать, когда запрос идет одновременно к кубу на русском, к БД на английском и прочее. Начинаешь создавать временные таблицы и половина кода на русском, половина на английском, плюс все вышеобозначенные проблемы с выбором терминов, которые использовал разработчик, хочется застрелиться. И в такие моменты возникает желание сделать все на русском, потому что бесят эти лебеди, раки и щуки. Лучше я три раза раскладку сменю в одном слове, чем буду разбирать эти тонны непонятных TypeClass А там еще MDS подключается, который тоже как бы... Псевдонимы можно таблицам давать на русском, а реальные имена на английском, но потом ты такой хочешь вынуть оттуда [Должность сотрудника], вот она, в экселе, я ее вижу... Но как она называется в реальности? Отлично, идем в модель, ищем долбаную таблицу, открываем, смотрим АГА! Вот оно! Написал в запросе. Теперь мне нужен адрес из другой модели, вот он, я его вижу в браузере, но как реально называется таблица и столбец? GoTo 1. Кого бы еще застрелить? Что касается всяkих сочеtаний символов в одном слове, типа "ABC анализ" тут только одно правило - писать в другом регистре, использовать CamelCase и не в середине слова. А что еще делать, когда зоопарк? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 17:31 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001, И #ВременныеТаблицы тоже на русском делаете? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 17:57 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
env, Не пробовал :D ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 18:01 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
нашел недавно у своих авторnamespace с ommon_lib выделенная буква - на кириллице :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 18:02 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
на 1С легко писать на кириллице (работал на 7.7 несколько лет когда-то) там и ЯП на русском, и объекты можно на кириллице ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 18:05 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
andreymx на 1С легко писать на кириллице (работал на 7.7 несколько лет когда-то) там и ЯП на русском, и объекты можно на кириллице первая мысль закравшаяся мне в мозг при прочтении названия темы как раз была про 1С. Это от них вся эта чертовщина лезет :D Эти фразочки вида "Попытка" "Исключение" "КонецПопытки", "конецЕсли" Уже тогда подумал что будет "конец если" если я решу изучить это добро. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 18:13 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
andreymx нашел недавно у своих авторnamespace с ommon_lib выделенная буква - на кириллице :) это как раз доказывает, что проблема не в русских названиях столбцов, а в наличии двух раскладок у нас на клавиатурах разработчик хотел написать на англицком, в лучших традициях, но случайно подложил свинью ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 19:17 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
felix_ff, мой вопрос к 1с не имеет отношения)) а лишь является следствием необходимости соединять куб, DWH и MDS если бы в MDS были русские названия столбцов и таблиц, не пришлось бы делать те итерации, о которых я написал - ходить и смотреть оригинальное название таблицы, всё было бы на русском но дело не только в русском, но и в кривых переводах, что почти одно из той же оперы что и транслит почему тогда не транслит? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 19:21 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001, > Задавать имена таблиц и столбцов на транслите считается верхом неприличия Почему? У кого-то комплекс? У текста два потребителя - компьютер и программисты. Если не считать комментариев и документации, я все пишу по-английски, мои коллеги хорошо им владеют. Если я увижу что-то на транслите, я тоже пойму. Если то транслит то английский, тоже разберусь. А вот кириллица обеспокоит - а где/когда она рванет? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 19:24 |
|
Имена таблиц и столбцов на русском. Давайте об этом поговорим
|
|||
---|---|---|---|
#18+
TJ001 andreymx нашел недавно у своих пропущено... выделенная буква - на кириллице :) это как раз доказывает, что проблема не в русских названиях столбцов, а в наличии двух раскладок у нас на клавиатурах разработчик хотел написать на англицком, в лучших традициях, но случайно подложил свинью Кириллица другим цветом ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2020, 19:47 |
|
|
start [/forum/topic.php?desktop=1&fid=46&tid=1685320]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
61ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 289ms |
total: | 446ms |
0 / 0 |