Pull to refresh
1
0

фронтэндер сеньор, питонист джун

Send message
Мы, видимо, разное понимаем под классическим Паскалем. ТП6.0, насколько я помню, имел простенькую реализацию объектов.
Мы, видимо, разное понимаем под классическим Паскалем. ТП6.0, насколько я помню, имел простенькую реализацию объектов.
Боюсь, что на самом деле все наоборот: думают вторые, а первые механически фигачат код — быстро-быстро, но крайне некачественно — обожают готовые решения и фреймворки, жестоко злоупотребляют копипастой, а при столкновении с действительно новой задачей, которой до них никто не занимался, немедленно пасуют. Ну и «расшифровка мыслей» тех и других у вас крайне далека от реальности.
А никто ничего корчевать и не собирается. Просто в классическом Паскале развитого ООП нет, а в реализациях оно достаточно упрощенное, чтобы не составлять для новичка большой проблемы.
Я считаю, что ООП для новичка — перегруз. Ему бы сперва хоть с процедурами разобраться. Вот второй язык очень неплохо учить именно объектный, а первый лучше без этого.
А чуточка объектности и в Паскале есть, для знакомства — в самый раз.
Не вижу причин заколачивать гвозди микроскопом, когда есть молоток. Ява — язык жестоко объектно-ориентированный, а это совершенно лишняя для начинающего сложность. Для сравнения, классический Паскаль (а я говорю именно о нем, а не о современных продвинутых версиях) имеет самый минимум объектности, и этого как раз достаточно. Если же не вгружаться в ООП, то вместо нормального обучения мы будем плодить недоучек, а это еще один способ превратить программиста в конченого говнокодера.
C# я совсем не знаю, но судя по тому, что он считается аналогом Явы, к нему это же соображение так же подходит.
Вообще, если и выбирать из всех языков си-образного семейства в учебных целях, лучше всего смотрится собственно C. Вот только слишком уж он низкоуровневый, да еще и указатели… Так что и тут Паскаль лучше.
Да и еще одна мелочь, которую я забыл упомянуть: в паскале переменные объявляются пачкой в начале блока. Это дополнительно дисциплинирует и прививает хороший стиль.

А вот что касается строгости синтаксиса, так это вы просто не поняли прикола. В Паскале нет конструкции if… Там есть только конструкция if...then, где if и then работают ограничителями — не менее надежно, чем скобки в if() в других языках.
Ну и главное мое соображение в этой части — потерять фигурную скобку довольно легко (даже интегрированные среды не всегда спасают), а вы попробуйте потерять целый begin или end…
Строгость во всем нужна. В оформлении — код структурирован, каждый блок имеет ясные начало и конец. Тут паскаль просто чудесен — вот begin, вот end… Правда, оператор goto… Но на фоне остального эту мелочь можно и потерпеть.
В типизации — да, это важно. Строгие типы, не обязательно статические, но тогда с явным и четким преобразованием типов. При этом систему типов лучше не усложнять, чтоб не забивать чрезмерно мозги новичку.
И очень желательно, чтобы не было никаких семантических излишеств. То есть если мы решили использовать какой то элемент, мы не должны сталкиваться с вопросом «каким из кучи равнозначных способов это нам написать?» — способ должен быть единственным. А если способов несколько, между ними должны быть достаточно четкие различия, чтобы выбор не составлял труда. А то ладно еще семантический сахар тоннами на всех местах, а в PHP вон функции и свойства объектов взаимозаменяемы…
И разумеется, никаких чудес в стиле джаваскрипта (не буду приводить примеры, слишком уж их много).
И боюсь, что я еще не все вспомнил, что важно на практике.
Проблема этой статьи в том, что потерялся ключевой вопрос — для какой конечной цели вообще учить язык? Потому что одно дело, когда учишь, чтобы углубиться, получить знания, совершенствоваться и в итоге мейби-мейби стать самым крутым в своей области, и совершенно другое, когда надо на бегу что-то ухватить, кое-как разобраться и быстро-быстро начать этим зарабатывать. И рекомендации тут диаметрально противоположные.
В первом варианте надо начинать не с чего полегче и попопулярнее, а с языка, который поможет настроить мозги и выработать необходимые качества для работы. И такой язык был, есть и будет в обозримой перспективе только один — Паскаль. Заменить его совершенно нечем, потому что из всех языков, обладающих необходимой строгостью и притом достаточно простых для освоения, он единственный настоящий. Есть еще два-три специальных учебных языка, но на них никто никогда не написал ни одной реальной программы.
Во втором варианте надо хватать учить, что быстрее, проще и популярнее у работодателей, не оглядываясь на качество. Поэтому надо учить даже не верстку, а бутстрап, не джаваскрипт, а джквери и реакт, не пхп, а что там у нас сейчас самое ходовое?.. ларавель, кажется… — и херачить, херачить, херачить. Хороший программист при таком обучении, разумеется, не получится никогда, — но хорошо надрючившись вполне можно стать крепким мидлом с соответствующей зарплатой и радоваться жизни, а это для многих как раз и есть конечная цель.
Можно сформулировать еще несколько вариантов — и для каждого рекомендация будет своя. Что же касается всего перечисленного в статье, то это имеет смысл рассматривать только как второй язык для тех, кто уже умеет собственно программировать и хочет превратить это умение в профессию.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity