Некоторое время назад я написал статью о том, что язык программирования значения не имеет. Не все с этим согласились. Но это нормально: сколько людей - столько мнений.
Там же я сказал, что выучить, например, Java или С++ не намного сложнее, чем выучить 1С или Python. И с этим тоже не все согласились. Однако я своё мнение не изменил, и никто пока не переубедил меня в том, что оно неверное. Потому что язык, это:
- Алфавит – набор символов, который используется для построения слов
- Синтаксис – правописание слов и правила записи предложений
- Семантика – смысловое содержание языковой конструкции
А всё остальное прямого отношения к языку не имеет.
Понятно, что в любом современном языке имеется куча стандартных библиотек. Также почти все языки могут так или иначе использовать разные технологии программирования (API, COM, DLL, .NET и др.). Также имеется немало так называемых фреймворков, расширяющих возможности языка. Но изучение всего этого будет уже не изучением языка, а именно изучением технологий, расширений и применений языка.
Ну вы же не скажете человеку, что он не знает русского языка только потому, что он не читал Льва Толстого или Достоевского. Поэтому если я не знаком с jQuery, то это не означает, что я не знаю JavaScript. Также нельзя сказать, что я не знаю Delphi/Lazarus, если я не знаю модуль DateUtils. А зачем мне его знать, если я им никогда не пользуюсь (точнее, я-то пользуюсь, но это лишь пример).
В то же время “простые” языки программирования, к коим почему-то относят 1С, Python, Visual Basic, Delphi и др., на самом деле окажутся совсем непростыми, если воспринимать их не как язык, а как набор технологий и библиотек (особенно с учётом библиотек от сторонних разработчиков). Например, в той же 1С можно:
- Обмениваться данными с другими программами и управлять этими программами через API
- Работать с базами данных
- Работать с таблицами, графиками и т.п.
- Работать с железом (например, со сканером штрих-кода)
- Генерировать те же штрих-коды и QR-коды
Ну и так далее. Всё зависит от задач. И профессионал 1С решает не менее сложные задачи, чем профессионал Java или C++. У меня вообще иногда складывается ощущение, что разработчики С++ специально создали запутанный и сложный язык для того, чтобы гнобить остальных программистов.
Но, ребята, другие программисты не работают с С++ не потому, что не могут его выучить. А исключительно потому, что он им не нравится (да-да, он нравится далеко не всем).
А вообще язык программирования и среда разработки - это всего лишь инструмент. У кого-то он красивый, у кого-то удобный, у кого-то простой. Но всё это не имеет совершенно никакого значения, если вы с его помощью получаете нужный результат.
Совершенно неважно, какая у вас лопата - хромированная, позолоченная, или ржавая. Если вы можете с её помощью вскопать огород, то всё остальное значения не имеет.
Другое дело, если вам эту лопату надо продать. Вот тогда, конечно, надо сделать её красивой, либо добавить к ней каких-то функций (часто совершенно ненужных). А ещё лучше сделать её сложной, чтобы пользователям требовалось обучение, за которое тоже можно брать деньги. Но это уже маркетинг, а не программирование.
На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.