Pull to refresh

Comments 41

> Например, он полностью на русском языке
Уже достали с эти аргументом. Каждая встроенная функция имеет английский вариант написания — пользуйтесь им.
> там нет и намека на ООП, хотя почему это не реализовали в v8 мне не ясно
Применим этот аргумент к другому языку, например, С: «там нет и намека на ООП, хотя почему это не реализовали мне не ясно». Аргумент перестает быть очевидным.
> Но этого я ни разу не видел ни в одной 1С-конфигурации.
Напишите свою небольшую конфигурацию с нуля, используя Ваши же рекомендации, и поделитесь опытом с окружающими.
Немного не понял вашего резковатого тона, так как я не утверждал что язык на русском это плохо, а всего лишь заметил, что поначалу этот факт вызывает некоторые эмоции. А потом привыкаешь. Что касается ООП, то все его очень ждали в v8, но когда появились первые беты, которые распространялись про франчам, приближенным к императору, стало очень грустно. Своих конфигураций хватает, однако, имхо, достаточно данной заметки с очевидными намеками, тем, кому это надо, поймут, а кому не надо, тому и толстая книга не поможет.
А у меня вызвал эмоции тот факт, что вы приводите в качестве аргумента неправильные факты. Называть язык примитивным и в качестве аргумента указывать то, что он полностью на русском языке — бред.

Что касается ООП, то все его очень ждали в v8

1С никому не обещала ООП в следующей версии языка (v8), но все почему-то ждали этого.

достаточно данной заметки с очевидными намеками

Заметки с намеками достаточно, чтобы поднять свою карму на Хабре, склоняя 1С, но не достаточно, чтобы донести свою точку зрения до программистов 1С.
Что касается аргументов, то там есть слово «например», то есть я перечислил не все аргументы, а парочку навскидку, из тех что будут понятны не специалисту. Я довольно много и давно дружу с Явой и Питоном и могу сказать, что язык 1С примитивен, если сравнивать с ними, семантически, синтаксически и т.д.

Что касается ООП, то откуда вам известно что обещали разработчики, а что нет? Развитие языка в сторону ООП, учитывая что восьмерочная платформа писалась заново, было довольно ожидаемым, но оно не родилось, что печально.
Не считаю правильным сравнивать внутренний язык платформы с универсальными языками.

Что касается ООП, то откуда вам известно что обещали разработчики, а что нет?

Для этого существуют Roadmap-ы.
Для себя много лет назад решил, что лучше потратить силы и время, выучить английский, изучить C\C++ (и др. языки), паттерны и всё такое, чем сразу и быстро зарабатывать на 1С. Теперь я могу работать в любой стране мире, знаю несколько языков программирования, и зарабатываю не меньше, чем 1сники.

Мне кажется, что зависит всё не от таланта, а от желания. Не каждый может стать суперпрофи (я им точно не являюсь, например), но нормальным программистом быть реально.

Может быть, поэтому отношение такое? Скорее даже не к самой платформе, а к выбору, который сделал для себя человек? Меньше усилий — меньше уважения, как-то так?
Согласен с тем что все зависит от желания. Но не согласен с «меньше усилий». В данной профессии есть своя специфика, например специалист по 1С чисто кодер не имеет практически никакой ценности; надо уметь работать с клиентом, знать бухучет получше бухгалтера, следить за изменениями в законодательстве, знать управленческие схемы, производство, логистику, не говоря уже о хорошем знании SQL и администрировании. То, на что указал я в своей заметке лишь небольшая часть, относящаяся к чисто программированию, это мысль о том, что зачастую при всех остальных плюсах, специалист по 1С — посредственный программист.
Неужели такой специалист, как Вы описали, не будет больше зарабатывать на какой-нибудь ERP?
Вы имеете ввиду SAP или Axapta? Я сам чуть больше года участвовал в проекте внедрения Аксы на одном предприятии, навскидку могу сказать, что для работы в этих системах нужно быть куда бОльшим программистом, чем для работы с 1С. Там значительно более низкоуровневый язык и значительно больше глючного и противоречивого кода, с которым приходится разбираться.
Ну и платят там, скажем так, иначе :-)
Когда-то в молодости устроился на месяц перекантоваться в контору, которая обслуживала предприятия, писала 1С-конфигурации и т.д.

Попросили что-то поправить в одной конфигурации, возился-возился с этим «русскоязычным языком программирования», пока нечаянно не открыл что можно писать латинскими и как бы на Pascal.

Дальше работа пошла споро!

P.S. Только остальные программисты конторы материли и потом переделали все на русский.
За пол года работы «программистом» 1с я понял, что больше я туда никогда не вернусь!
посмотрите Рарусовские конфигурации, там много интересного…
Я плотно работал с семерочным «Рарус-общепитом» года три назад но ничего особенно выдающегося в этой конфигурации не обнаружил. Видел краем глаза «АЗК», «Автозапчасти» и что-то еще, но не впечатлился.
Семерочные да, не верх совершенства, но в восьмой версии проскакивают просто замечательные вещи.
Обязательно при случае посмотрю.
Что и говорить, почему то весь код, который был связан с 1С и который я видел, был фееричен, карма такая, а точнее отсутствие профессионализма, потому что задачи они решают на любительском уровне «Работает и ладно».
Программы пишет программист, а конифгурации 1С конифгураст:-)
Сколько я знаю контор франчей 1С у них все время текучка бешеная, я сам проработал во франчазе полтора года, потому как вышел после вуза «недопрограммистом». со мной в эту же компанию пришло еще 4 человека, через полтора года состав компании почти полностью сменился… год-два это максимум, для 1сника работы у франчайзи т.к. после этого времени хотелки возрастают, но чаще всего руководство таких компаний предпочитает распрощаться с таким специалистом чем удовлетворять хотелки (не всегда оправданные между прочим).
Наиболее часто встречается такая схема у мелких франчази:
Шеф — он же владелец,
один-два — «гуру 1с» т.е. закаленные профессионалы которые всегда с шефом, часто чтобы удержать их шеф делится с ними процентом прибыли, в целом это самые высокооплачиваемые сотрудники
5-6 «недопрограммистов» — чаще всего это студенты старших курсов ИТ-шных специальностей или товарищи только после вуза… их чаще всего используют для простенького допиливания типовых конфигураций
5-10 девочек на внедрении (иногда среди них попадаются и вменяемые)
и наконец обязательный элемент любой конторы франчайзи, это тетечка приличного возраста, вечно шкнящая, обычно она ведет в конторе бухгалтерию и типа кадровый учет, т.е. попросту следит за тем чтоб товарищи на лево не ходили.
ЗЫ ну я на объективность не претендую, это все мои наблюдения
В целом картина описана верно, в том франче где работал я было тоже самое, за минусом тетечки -). А судя по текущим инсайдерским данным, сейчас только хуже, так как «гуру» давно ушли на вольные хлеба. Но в контексте темы это, в целом, не имеет значения, так как франчи описанной структуры свои конфигурации не пишут, предпочитая обновления, несложные доработки и коробочные продажи. Ввязываться в серьезное внедрение таким составом весьма чревато.
Вот тут как раз всплывает разница между фирмой-франчайзи и внедренческим центром.Потому что с текучкой во франчайзинге они превращаются в торгашей типовыми, и потом занимаются обновлениями…
Да и вообще программист 1с это не чистой воды программист до мозга гостей… это еще человек, который должен разбираться в различных видах учета, понимать финансовую составляющую компании.Потому что как показывает моя личная практика, если этих знаний нет, то грош цена такому 1с программисту.Хотя я это оцениваю из опыта работы фрилансером, когда нужно делать ВСЕ, дела в фирмах это темный лес наживы друг над другом…
Кто заставляет разработчиков напрямую обращаться к данным конкретного объекта? Можно же написать методы get/set, запихав в них необходимые проверки.

там нет и намека на ООП


Или я чего-то не понял?
Попробую пояснить. Конечно это не ООП, но эмуляция одного из принципов. Допустим есть справочник товаров. У каждого товара есть своя розничная цена. Любой объект в 1С может напрямую прочитать эту розничную цену. В типовых конфигурациях это обращение напрямую может производиться в десятках мест, и в каждом из этих десятков мест могут повторяться проверки на ноль, на отрицательное значение или вообще отсутствовать какие-либо проверки. При попытке изменить реквизит, например, на периодический, я должен буду прошерстить всю конфигурацию на предмет обращений к данному реквизиту и везде подправить код. Вариант с методом getRetailPrice, который будет заниматься вопросами проверки валидности значения, обработкой ошибок и возвращения запрашиваемого значения более правильный, к тому же только в нем я должен буду впоследствии сделать изменения не ползая по всей конфигурации. Пример сильно утрирован, но и такое встречается.
Существование объектов еще не гарантирует ООПшность языка
Как смеялся препод на курсах адин-эса: «Эту штуку писали не программисты со знанием бухгалтерии, а бухгалтеры со знанием программирования».
Одинакого неподдерживаемо и криво можно писать и на с++ и на 1С. Проверено. А на с++ можно еще и специально умудряться делать так, чтобы даже при сильном желании никто не понял, что там написано.
>А на с++ можно еще и специально умудряться делать так, чтобы даже при сильном желании никто не понял
Это вы ещё Perl не видели!
Видели. Сравнение именно с с++ только потому, что он упоминается автором.
Все что, касается финансов и бухгалтерии лучше 1С нет. Не думаю, что кто-то будет писать все это на C++. Замучаются потом поддерживать т.к. законодательство меняется очень быстро.
Я в свое время занимался поддержкой седьмой версии. Конфигурация была переработанная если чего-то не хватало использовали внешние компоненты особенно 1С++. Все отчеты которые обрабатывали большой объем данных формировались на MSSQL сервере. Для синхронизации использовали связку 1С, apache и php. Была даже возможность работать с базой через браузер.
Так что и в 1С есть простор для творчества нужно только захотеть этого.
Вот вот, кто бы хотел.
Но! «Программистам» во франчайзи этого не надо. Им надо чтобы работало. И сделать это надо максимально быстро для себя. А вот те, кто остается потом в фирмах поддерживать это всё, плюются и бранят внедренцев. Вот именно в фирмах программеры на ставке создают великие вещи. Всё из-за борьбы за то же время. Чтобы ему задачу поставили, а он её смог максимально быстро решить и заниматься своими делами. Но срать в коде он не может, т.к. осознает что поддерживать этот код ему.
собственно те кто в фирмах поддерживает 1с, в основном теже 1с-ники из франчайзи которого переманили решив что держать собственного программиста дешевле чем кормить орды франчей, либо эникейщики. Профессиональные программисты в 1с редкость. зачастую в таких конфигурациях нету даже комментариев, типа: я же писал так сам и разберусь если что. Несомненно, встречаются и уникальные разработки, но в основном по запутанности, избыточности и неоптимальности, эти конфигурации очень часто напоминают поделки студента первокурсника.
Можно пример кода? Больно интересно посмотреть.
UFO just landed and posted this here
// Получить значение одного реквизита по ссылке.
// Например, для элемента справочника нужно получить наименование,
// в этом случае в качестве ИмяРеквизита нужно передать «Наименование».
//
Функция ПолучитьЗначениеРеквизита(Ссылка, ИмяРеквизита) Экспорт

Результат = ПолучитьЗначенияРеквизитов(Ссылка, ИмяРеквизита);
Возврат Результат[ИмяРеквизита];

КонецФункции
А я еще считал себя ненормальным…
(http://habrahabr.ru/blogs/crazydev/72627)
Если источником всех проблем конфигураций 1С являются ее низко-квалифицированные программисты — то они виноваты в этом в последнюю очередь. Для пояснения приведу аналогию: если вы не любите еду из макдональдса и считаете ее невкусной и вредной для здоровья, то винить в этом школьников-поваров, подогревающих полуфабрикаты на кухне, по-моему, не стоит.
В проблемах конфигураций 1с скорее всего виноваты не программисты, а слишком высокие требования к скорости выпуска обновлений. Ведь причиной того что 1с так популярна стало то что это практически единственный бухгалтерский софт, в котором изменения в правилах учета, налогообложения и т.п. появляются практически на следующий день после выхода этих самых правил в печать, в виде т.н. обновлений, за счет которых в основном и кормятся мелкие конторы. т.е. выпустить такое обновление зачастую приходится в очень сжатые сроки, при этом качество жертвуется во имя скорости.
Еще один фактор появления говнокода в 1с — низкая стоимость внесения изменений в конфигурацию, т.е. когда заказчику не нравится скажем расположение кнопок, или колонок в отчете или там еще какая муть, то франчайзи, чтоб не потерять клиента, идут на реализацию любых прихотей причем в короткие сроки. Ну а качество этих дописок не всегда впечатляет.
UFO just landed and posted this here
Программы типа 1C не для программирования создаются, а для бухгалтеров и т.п. В данном случае программирование побочный продукт. Сколько программистов 1C нужно для 1C, сто тысяч, миллион? Это говорит лишь о в целом не продуманной системе.
Sign up to leave a comment.

Articles