откуда берётся столько быдлокодеров на PHP. А вот откуда.
Начав с языка, провоцирующего на написание поганого кода, дисциплине программирования уже не научиться.
Правильно кто-то написал в комментах: слишком низкий порог вхождения..
Оригинал этой записи. Комментировать можно тут или там.
Любые материалы из этого блога запрещается использовать на сайте livejournal.ru в любой форме и любом объёме
Tags:
no subject
но по сравнению с си у них есть модульность и явное выделение в модулях интерфейса и реализации, а также более строгая типизация средствами компилятора.
про objective c ничего вразумительного сказать не могу, я его слишком мало знаю. а для изучения ООП лучше смотреть на джаву или C#. или на тот же питон, там объектность довели до
абсурдалогического завершения :)no subject
Адской гадостью в Ц должен считаться мемори менеджмент
Шарп, ява и Ц++ с точки зрения "изучения ооп" не отличаются не фига, а смолтолк (и объектный кусок obj-c, да руби с питонами) лежат в перпендикуляной плоскости
Именно с учебной точки зрения концепция "сообщений, а не методов" и динамическая типизация вместо виртуализации мне кажутся более удобными и системными
руби, кстати, был бы всем хорош, если бы не слишком богатый синтаксис
no subject
руби я, к сожалению, тоже пракически не знаю
no subject
Он не может быть таковой, потому как его там попросту нет. Не нравятся malloc()/free() – пишите свою реализацию (как сделано в Doom/Quake) или юзайте сторонние аллокаторы (коих тоже немало).
Bottom line: Си это портабельный ассемблер. Не надо требовать от него большего, чем подсчет смещений в структурах и примивный access control ("static" keyword, et cetera).
no subject
речь же только о том, что Си не очень хорош для обучения (точно не хорош, как единственный язык)
кстати, у паскакаля в этом месте не лучше, но на это никто особо внимания не обращает почему-то
я бы только отметил, что писание собственных аллокаторов вообще ни как не снимает проблемы того, что нет ММ, а есть лишь закат солнца вручную
no subject
no subject
говорилподразумевал, но при соблюдении определенных условий, а именно: учить с оглядкой на underlying реализацию (т.е. фактически учить портабельному ассемблеру). Конечно, получается, что это уже не обучение языку высокого уровня, но, по крайней мере, все честно.no subject
Видимо потому, что у Паскаля других проблем хватает. :-)
no subject
Вы это студенту предлагаете сделать?
no subject
Студенту я предложу либо пойти учить лисп/схему/хаскель (глядишь, и серьезной математикой увлечется), либо аккуратно пользоваться тем, что есть (функциями стандартной библиотеки).
Пару лет назад я преподавал школьникам (7-9 кл.) ассемблер, в качестве проекта писали промитивную ОС (правильнее будет сказать task switcher), так вот hunk-based linear memory allocator из дума они раскусили-реализовали очень быстро. Студенты 1-2 курса уж тем более справятся.
no subject
это не обвинение, это констатация (проблемы, которая мне как бывшему студенту, непрограммисту, но организатору спроса на программистов непонятна)
no subject
no subject
знаешь, я взглянул на руби, так вот там как раз довели. :)