LINUX.ORG.RU
ФорумTalks

Рецензия на книги А. В. Столярова

 , ,


1

4

Столяров (@Croco) трудился в университете, как полагается, вел несколько курсов лекций. Все преподаватели ведут несколько смежных курсов, но в отличие от большинства, Столяров выкладывал свои методички в публичный доступ. В 2016 году за деньги с донатов он взял материал этих курсов, расширил его беседами с лекций и практик и все это опубликовал. В итоге получился обыкновенный курс программирования любого, подчеркиваю, любого профильного вуза страны.

Что важно, этот курс стал бесплатно доступен любому желающему в два клика, без необходимости проходить бюрократический фильтр и платить цену автомобиля за доступ к информации. Благодаря работе Столярова любой заинтересованный человек получает качественно отредактированный конспект лекций МГУ по программированию с пояснениями. По содержанию это +/- 1999 или 2000 год.

Абсолютно ничего нового, революционного, свежего Столяров не написал. К моменту публикации (2016 год) по темам, затронутым Столяровым, было опубликовано десятки книг, которые пережили множество изданий. Например, книги по TCP/IP от издательства O’Reilly к тому времени издавались уже 20 лет и имели по 7-8 улучшенных и дополненных изданий.

Мало того, что Столяров опубликовал прописные истины администрирования и программирования, он еще их щедро разбавил философией лаборанта из 90-х. То есть технические книги стали содержать в себе конспекты типовых разговоров второкурсников за бутылкой водки. Что, конечно, добавило живости в чтиво, но дурно влияет на 17-летних подростков, которые пьяный трёп обслуживающего персонала воспринимают за жизненную философию и руководство к действию.

Столяров, несомненно, проделал большую работу. Написал любопытный памятник эпохе, который не может не вызывать ностальгических чувств у тех, кто хоть краешком застал то былинное время.

Но как разработчик, как автор, он не сделал ничего нового. И сам по себе является карикатурным образом админа 90-х, про которых писали юмористические рассказы в Fido. Попытка доказать всему честному люду, какой он великий инженер, через постройку велосипеда, развалившегося на первой кочке, — это типичный пример творчества тех лет. Рассказов про Винипуха и боды и записок Жены программиста.

Столяров эти рассказы воплотил в жизнь, начав писать CMS мечты и допустив постыднейшую ошибку в безопасности.

Вывод: Столяров — это классический, можно сказать, эталонный системный администратор из 90-х. Человек, который отказался развиваться, отринул курсы повышения квалификации и навсегда остался в сладком возрасте 20 лет в рамках того давно ушедшего социума, его стереотипов и правил.

Книги Столярова — это книги 90-х, хотя они написаны через четверть века, в конце 2010-х. Это памятник эпохи начала массовой компьютеризации в России. Это надо понимать при работе с ними. Читая работы Столярова, надо давать «поправку на ветер», и всё будет хорошо.

Несомненно, книги Столярова представляют интерес и пользу в начальном ознакомлении с основными принципами функционирования компьютера и компьютерных сетей, так как они описывают зарю технологий, когда оные не обросли множеством деталей. Книги четко структурированы, плавно вводят в тему, не перегружают деталями, затрагивая суть.

К минусам относится некомпетентность автора в востребованных на данный момент технологиях, его предвзятость и радикализм. Книги содержат устаревшие стереотипы, опровергнутые практикой.

Ответ на: комментарий от soomrack

Язык должен быть востребованным к тому времени когда студент (или птушник) выйдет на работу.

Список доступных для посещения ясновидящих прилагается?

Pascal/Delphi – мертв

А когда-то… И ведь ничего не предвещало…

область его будущей работы

Где список доступных ясновидящих? Принимать в ВУЗ лишь абитуриентов со справкой от провидицы, где будет написано, кем будет работать имярек и чем там заниматься?

Если ему интересно

То он читает дополнительную литературу, выбирает нужную кафедру и посещает спецкурсы. пропедевтический курс программирования это не касается.

mister_VA ★★
()
Ответ на: комментарий от mister_VA

Язык должен быть востребованным к тому времени когда студент (или птушник) выйдет на работу.

Список доступных для посещения ясновидящих прилагается?

Родители видят что интересно ребенку. Старшие классы специализированы. ВУЗы принимают на конкретные программы обучения, которые дают вполне конкретную специальность. ПТУ еще более узкоспециализщированы.

Pascal/Delphi – мертв

А когда-то… И ведь ничего не предвещало…

В нулевые уже все было ясно. …Как падшую лошадь ее пристрелите, не выжить, не надо обмана…

soomrack ★★★★★
()
Ответ на: комментарий от mister_VA

Список доступных для посещения ясновидящих прилагается?

Прилагается. Пыли кабинетной это кажется ясновидением, но если ты разбираешься в теме, то все становится понятно и предсказуемо. Еще раз: питону почти 35 лет, он активно развивается и количество проектов на нем только растет, как и областей его применения.

А когда-то… И ведь ничего не предвещало…

Появился в 1995, позже питона, и умер еще в конце нулевых.

То он читает дополнительную литературу, выбирает нужную кафедру и посещает спецкурсы. пропедевтический курс программирования это не касается.

Нахер вы вообще тогда нужны, непонятно.

liksys ★★★★
()
Последнее исправление: liksys (всего исправлений: 1)
Ответ на: комментарий от liksys

Я предлагаю взять очень удобный ЯП

Нет, он очень неудобен именно как учебно-иллюстративный.

созволишь прочитать мой исходный пост, то увидишь, что я предлагаю

Читал. Тупые глупости диванного мечтателя.

Код для видео на си, код логики сервера - на питоне.

Код для видео на Си с нуля можно написать, лишь глубоко зная Си и ещё глубже форматы и кодеки для видео и аудио. Удачи вам получить сервер от не знающих, как работает этот ваш TCP/IP.

учим питон, учимся программировать и проектировать

Не получится. Нельзя учить ЯП, не зная программирования. «В Питоне есть следующие операторы цикла», «Шо такое оператор и шо такое цикл?!»

Напиши готовый мейкфайл

Может мне ещё и за пивком для студентов бегать? Это студенты учатся. make много проще даже Паскаля.

Не говоря уже о том, что можно просто показать, как запускать gcc

Это называется профанацией. Можно проги вообще писать от руки на листке бумаги. Гусиным пером чернилами из растительных компонентов, собственноручно собранных в ближайшем лесу.

нужно рассказывать о том, как правильно структурировать проекты и декомпозировать задачу.

В начальный курс программирования это не входит, как и вообще в собственно курс программирования. Это уже из раздела научной организации труда.

Нужно показывать, как языки взаимодействуют друг с другом, как использовать плюсы того или иного языка и как получить от этого выигрыш

Для этого надо хорошо знать хоть один ЯП и хотя бы поверхностно остальные затрагиваемые. Это опять вне общего курса программирования, а предмет спецкурса.

(1)Берем питон, показываем как пишутся алгоритмы на высоком уровне, (2) как проектировать софт и декомпозировать задачу.

Вы понимаете, что между первым и вторым минимум 3 года обучения и основательная куча знаний в том числе и не из базового курса программирования?!

И, мля, как ты собираешься декомпозировать задачу, если ты считаешь, что система сборки и система версий не нужны в курсе программирования?!

Потому все и насрали на твоё «обоснованное» мнение, поскольку у тебя студенты после одной лекции превращаются в подготовленных к созданию под руководством препода сложного проекта программистов.

В МИТ взяли Питон не потому что он действительно удобен, а потому что он на слуху, а реально там «покажем алгоритмы», а потом будем учить ЯП и прочее.

mister_VA ★★
()
Ответ на: комментарий от liksys

Еще раз: питону почти 35 лет

Фортран ещё старше и он ещё используется и даже развивается. Я даже знаю про сумасшедшего, который учит программированию бухгалтеров, на Фортране, заставляя «дергать» WinAPI ассемблерными вставками.

Си и С++ тоже старше и тоже развиваются, какие уже талмуды их стандартов?

количество проектов на нем только растет, как и областей его применения.

И ещё раз повторяю: Питон – гавно, сила которого в сторонних библиотеках, которые пишут или переписываю не на Питоне. Питон вообще не самодостаточен и без Си и С++ вообще ни на что не годен.

Появился в 1995

Делфи – наследник ТурбоПаскаля и всё ещё жив, силён как раз кучей встроенных библиотек, прекрасно подходит для написания десктопных приложений для Винды и «морд» для БД или вообще готовых СУБД, если имеющиеся не нравятся, но стоит дохрена денег, потому мимо массового применения в стране, где никто не любит платить за ПО, даже те,кто его создаёт

Нахер вы вообще тогда нужны, непонятно.

Отмотайте назад, я уже поднимал этот же вопрос и давал на него ответ. ВУЗовская система образования устарела минимум на 250 лет, максимум на 580. Тем не менее «профессионалы своего дела» очень редко способны создать настоящий учебник, что демонстрируется отсутствием учебников по программированию и даже учебников по программированию на конкретном ЯП, поскольку создание учебников, методических и дидактических пособий – это ОТДЕЛЬНАЯ наука в разделе «Педагогика».

mister_VA ★★
()
Ответ на: комментарий от soomrack

Родители видят что интересно ребенку.

Стоп. Не надо про родителей. Основной работой школьных учителей должна быть защита детей от родителей. Собственно, оглянитесь вокруг, весь этот лютый п*здец, что творится на Шарике с начала времён, показывает полный провал родителей как воспитателей.

Старшие классы специализированы.

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

ВУЗы принимают на конкретные программы обучения

На которых даётся максимально общее и широкое образование с несколькими спецкурсами в конце.

mister_VA ★★
()
Последнее исправление: mister_VA (всего исправлений: 2)
Ответ на: комментарий от mister_VA

Нет, он очень неудобен именно как учебно-иллюстративный.

Он неудобен ТЕБЕ потому что ТЫ ЕГО НЕ ЗНАЕШЬ.

Читал. Тупые глупости диванного мечтателя.

Глупостями ты обычно называешь всё, что не понимаешь, клоун кабинетный. За что вам вообще деньги платят, дармоеды?

Код для видео на Си с нуля можно написать, лишь глубоко зная Си и ещё глубже форматы и кодеки для видео и аудио. Удачи вам получить сервер от не знающих, как работает этот ваш TCP/IP.

Ты опять теоретизируешь, дуралей, потому что нихрена не знаешь о предметной области. Ничего из перечисленного вообще не нужно. Открываешь спецификацию, читаешь и пишешь. В случае VNC прям читаешь абзац, осознаешь и переносишь в код. Не нужно знать глубоко TCP/IP, достаточно уметь работать с сокетами. Что, кстати, в питоне проще, чем в си. Что до кодеков - бери сишную библиотеку и обрабатывай. Си тут нужен чтобы фреймы перекладывать, тоже всё элементарно.

Например, в прошлом году я писал штуку, чтобы рендерить текстовые сообщения в растровые картинки. Оказался очень увлекательный и интересный процесс: разместить текстовое сообщение в RGB так, чтобы оно масштабировалось по ширине и высоте в зависимости от длины текста, не более чем на 2/3 от ширины и высоты экрана, при этом с сохранением пропорций. Нихрена здесь знать не надо, кроме элементарных сишных операций. Но на питоне это все будет неэффективно, а вот написать этот код на си в виде модуля к питону - отличное упражнение.

Не получится. Нельзя учить ЯП, не зная программирования.

Конечно нельзя. Поэтому надо учить алгоритмике, заодно изучая синтаксис языка.

Может мне ещё и за пивком для студентов бегать?

Сбегай, все равно от тебя толку никакого. Твоя задача - подготовить для студентов тестовое окружение, а не грузить их мейкфайлами с самых первых уроков. Делай свою работу, дармоед.

Это называется профанацией.

Это называется обучение, клоун. То, чем по идее ты должен заниматься, но настолько зарос плесенью, что не можешь. Логично показать, как компилируется сишный исходник компилятором. Стивен Прата, по которому я изучал си, подробно освещал в одном из первых парарафов вопрос компилирования через GCC и вижуалстудию. И всё, вопрос закрыт до момента, пока исходники не разделятся на несколько файлов, а будет это нескоро. И когда студенты уже понимают, как программирование работает, освоить мейк им будет достаточно просто.

В начальный курс программирования это не входит, как и вообще в собственно курс программирования… Это опять вне общего курса программирования,

Повторяю, нахер ты нужен тогда со своим курсом, дармоед? Это вы не изучаете, то не нужно, за этим на спецкурс… В итоге после вашего недокурса с паскалем студенты не понимают вообще ничего. Они забывают его, потому что он оторван от реальности.

Вы понимаете, что между первым и вторым минимум 3 года обучения

Чушь.

И, мля, как ты собираешься декомпозировать задачу, если ты считаешь, что система сборки и система версий не нужны в курсе программирования?!

Ты читаешь меня через слово, клован. Нужны, но не с первых же уроков.

Потому все и насрали на твоё «обоснованное» мнение

Да, я вижу. Насрали полтора столяровских подсоса с умственной инвалидностью, и ты. Остальные плюс-минус согласны, разве что расходимся в деталях. Все твои же аргументы сводятся к тому, что паскаль ок, а остальные языки помрут, потому что делфи тоже умер, и вообще, они неудобные, потому что ты их не знаешь.

Я тебе скажу, в чем твоя проблема, как и всех дармоедов с регалиями, вроде столярова. Вы вообще нихрена не понимаете, как нужно учить людей. Вы, вроде как, имеете педагогическое образование, но грошь ему цена. Знаешь почему? Потому что ваши сраные курсы оторваны от реальности и никак не связаны друг с другом.

По идее, когда человек изучает программирование, ему в руки дают мощный инструмент автоматизирования своих задач. Например, он мог бы использовать это, чтобы сделать какие-то сложные однотипные вычисления, сгенерировать данные, аггрегировать статистику, написать какой-то софт для другого курса и так далее. Но я видел знаешь что? Что у людей закончился курс по программированию в твоем стиле, и они забывают его, как страшный сон. Потому что дуралеи с регалиями, вроде тебя, не объясняют, как программирование связано с реальностью. Вы изучаете язык, делаете лабораторные - и всё. Нет никаких примеров применения полученных знаний, с помощью которых студент мог бы решить свои насущные проблемы. Вместо того, чтобы пользоваться программированием, студни, вроде бы зная паскаль, сидят и считают погрешности экспериментов на калькуляторе.

В МИТ взяли Питон не потому что он действительно удобен, а потому что он на слуху, а реально там «покажем алгоритмы», а потом будем учить ЯП и прочее.

А ты прям свечку держал? Лолище.

liksys ★★★★
()
Последнее исправление: liksys (всего исправлений: 2)
Ответ на: комментарий от mister_VA

Фортран ещё старше и он ещё используется и даже развивается

Это к делу не относится. Речь шла о том, что питон никуда не девается. Разуй глаза и посмотри на количество проектов на нем.

Что до фортрана - на нем вагоны физических библиотек, потому его даже сейчас имеет смысл учить на физфаках.

И ещё раз повторяю: Питон – гавно

Ты некомпетентен в вопросах питона, клоун. Мы с тобой уже выяснили, что ты о нем ничего не знаешь, кроме того, что когда-то (десять лет назад) был второй питон а теперь третий (из чего ты делаешь вывод о фрагменитрованности). А еще что там используются отступы, фу-фу-фу.

сила которого в сторонних библиотеках, которые пишут или переписываю не на Питоне

Зачем ты повторяешь то, что написано в моем исходном посте, но криво? Да, сила питона в том, что это высокоуровневый клей для бизнес-логики. А еще он очень прост для входа, поэтому отлично подходит в качестве первого языка.

Питон вообще не самодостаточен и без Си и С++ вообще ни на что не годен.

В этом вообще нет никакой проблемы.

Делфи – наследник ТурбоПаскаля и всё ещё жив

Ты не думал уволиться из своего заборостроительного и в стендаперы пойти?

Отмотайте назад, я уже поднимал этот же вопрос и давал на него ответ.

Мне не интересна твоя демагогия про столетия устаревания. Оторви жопу от стула и иди работать, дармоед.

liksys ★★★★
()
Ответ на: комментарий от soomrack

Это типичная пыль кабинетная. Он сидит в преподавательской, гоняет чаи и проверяет типовые лабораторные, которые десятилетиями задает всё новым поколениям студентов. Мир меняется, но если ты зайдешь к нему на кафедру, то рискуешь пропахнуть нафталином. Только там у него всё постоянно, неизменно, и живой дельфи стоит на компе с виндоуз-2000.

liksys ★★★★
()
Последнее исправление: liksys (всего исправлений: 1)
Ответ на: комментарий от hobbit

Понимаешь чего, нормальная среда сборки, любая нормальная и так не пересобирает то, что не нужно пересобирать. Основной довод за модули – уменьшение времени компиляции. Простите, но они изобрели make и Makefile бородатой давности. Где можно написать что во что собирается и не пересобирает того, что не нужно. И оный make какой бородатой давности? Зачем переизобретать то же самое?

И еще, зачем тащить все в язык? Зачем тащить в язык возможности сборочной системы? Философией юникса всегда была 1 команда, которая делает 1 дело и делает это хорошо. Для чего делать комбайны, мне непонятно.

hibou ★★★★★
()
Последнее исправление: hibou (всего исправлений: 1)
Ответ на: комментарий от liksys

Напиши готовый мейкфайл для одного сишного кода, и его хватит на десяток начальных упражнений.

Да норм написанного хватит не только для начальных упражнений.

Не говоря уже о том, что можно просто показать, как запускать gcc: gcc test.c

Ну все-таки gcc test.c -o test будет чутка получше.

anc ★★★★★
()
Ответ на: комментарий от liksys

Скорее всего ты ищешь примеры в какой-то узкой области. С учебными это никак не связано.

Практически с любой, полезной на практике. Хоть в ML, хоть с веб. И тут какая-то культура получается, потому что, например в библиотеках и фреймворках C#, как-то ухитряются обходиться без постоянного депрекейта, а то что объявлено устаревшим может при этом продолжать оставаться десятилетиями.

praseodim ★★★★★
()
Ответ на: комментарий от praseodim

Чет я сомневаюсь в том, что каждый твой пример оказывался сломанным. Я почему-то с подобным сталкиваюсь редко.

И, опять же, это все никак не связано с оучебными примерами. В рамках стандартной библиотеки - ее старых частей - всё стабильно и не меняется, на этом можно строить курс.

liksys ★★★★
()
Ответ на: комментарий от soomrack

Pascal/Delphi – мертв

Ну lazarus вроде ещё жив.

anc ★★★★★
()
Ответ на: комментарий от liksys

и живой дельфи

Ну дельфи действительно всё ещё выпускают. Я как-то сомневаюсь что Embarcadero это делает исключительно J4F.

anc ★★★★★
()
Ответ на: комментарий от hibou

Основной довод за модули – уменьшение времени компиляции.

Очень смешно.

anc ★★★★★
()
Ответ на: комментарий от liksys

Появился в 1995, позже питона, и умер еще в конце нулевых.

Намного раньше. В 1983-м году. Турбо-Паскаль фирмы Borland. В 1995-м - это только интегрированная среда для разработки для Windows на борландовском паскале. С формами, компонентами и тп. При этом разрабатывать для Windows (3.x) можно было и раньше с 1990 г.

Так что, если говорить про борландовский паскаль, то он появился раньше Питона, имел огромную популярность в 80-х и 90-х. То что борманды со второй половины 90-х начали все сливать - это уже другая история и оно не очевидно было поначалу.

Хотя по-своему интересная конечно. Началась история успеха компании с того, что их компиляторы (в первую очередь Турбо-Паскаль) были очень дешевыми, быстрыми и удобными в использовании. Их даже в демпинге обвиняли. Но постепенно они без меры забронзовели. В 96-м примерно году они там вообразили себя мегакрутыми и даже переименовались в Inprise Inc, а Delphi 3-я стала стоить уже как настоящий энтерпрайз. Ну и покатились по наклонной, стало хромать качество и т.д. Хотя Delphi 7 в 2002-м году вышла весьма неплохим продуктом. Примерно в то же время пытались выйти на рынок разработки для Linux с выпуском Kylix - фактически Delphi для Linux.

В принципе у борландов (к тому времени обратно вернули это имя) было хотя и не блестящее положение, но они довольно твердо стояли на ногах в нише разработки для Windows, представляя хорошую альтернативу Java, новомодному .NET и MSVS.

И вот тут менеджмент похоже повелся на сладкие речи MS про технологию .NET и борланды сделали нечто странное - выпустили Delphi 8 исключительно для .NET, в которой убрали возможность компиляции для Win32 и привычные библиотеки.

Потом в будущих версиях вернули, но все. Delphi пошла по рукам от одной фирмы к другой, пока не осела у Embarcadero.

В принципе, среда и язык не мертвые. Все время выходят новые версии. Самые новейшие вышли в 2024-м году, поддерживают кучу разных технологий и платформ, в том числе и Linux и ARM, плагины для AI и тп.

praseodim ★★★★★
()
Ответ на: комментарий от liksys

И, опять же, это все никак не связано с оучебными примерами. В рамках стандартной библиотеки - ее старых частей - всё стабильно и не меняется, на этом можно строить курс.

И тут возвращаемся к тому, что Python - довольно специфический язык. Сам по себе он на практике был бы не очень востребованым, а основную популярность дают многочисленные библиотеки. Конечно, их бы столько не появилось не будь питон интересен многим, но все же в какой-то момент сработала самораскрутка, что чем больше библиотек на нем или для него, тем еще больше их пишут для него.

praseodim ★★★★★
()
Ответ на: комментарий от praseodim

Да Питон это про библиотеки в первую очередь — типичный скриптовый язык для склеивания компонентов. Без библиотек он ничем не примечателен.

sabacs
()
Ответ на: комментарий от praseodim

да блин, Python это щель амёбы

амёба не выползла на распределённые большие машины, а python заNumericался, и через защеливание для иследователей, стал годным инструментом; в том же ipython c самого начала была «iparallel» для маштабирования на весь (какой есть) «кластер»

помница на сайте увы(испанской), в 1998 уже форсился змеец(в стилистике принцаСэр_Хисс-Змея из мульта лис-робин-гуд) - т.е факт что на питон переложился техИнститутМасачуса со схемы - это не случайность а платёжеспособный спрос исследовательских организаций

qulinxao3 ★★
()
Последнее исправление: qulinxao3 (всего исправлений: 5)
Ответ на: комментарий от praseodim

а основную популярность дают многочисленные библиотеки.

Python вначале стал популярным потому, что он принуждал писать понятный код молодым говнокодерам делающим backend сайтов. Код, который можно было прочитать. Веб в нулевые бурно развивался и говнокодеров становилось все больше, т.к. спрос на программистов сильно превышал предложения.

А потом уже написали кучу библиотек, пошло ML, и python начал занимать нишу в научных вычислениях, которую до него занимал фортран. Но к тому времени язык уже распух в своей выразительности настолько, что на нем снова начали писать код, который проблемно прочитать (за это я его и не люблю).

soomrack ★★★★★
()
Ответ на: комментарий от soomrack

взлёт ибо легкость утилизации

https://en.wikipedia.org/wiki/IPython#Parallel_computing

в питоне достаточно рано Parallel_computing на кластерах защелили

grail как фронтенд на питоне буквально чуть раньше появление javascript — но не взлетело

numeric чуть раньше бэкенд-говнокодинга

в 91..93 оно(питонистия) форсилась среди Си-кодеров заради embeding|extention мода тада такая (lua такаяже тока со стороны гуйни sol и прочая фронтендятина) - сами Си-кодеры не особо, больше исследователи которым си|фортран уже роднее себя стал - у Бизли есть описание как в 92-94 питон в ливерморе? завирусился

cgi-python фроде как не особо зашёл хотя и полная zope( но это уже окрестности милениума)

так что питон скорее через Numeric и затем ipython щель для исследователей - на одной осьмой python ага через зад-конец

qulinxao3 ★★
()
Последнее исправление: qulinxao3 (всего исправлений: 4)
Ответ на: комментарий от lbvf50txt

Правильное использование goto тривиально: выход из 2-х и более вложенных циклов.

Зависит от языка, на самом деле. Если речь о Си, то это не только выход из вложенных циклов, но и очистка ресурсов, обработка ошибок, ручная реализация КА (иногда) и т.п. Но даже для выхода из вложенного цикла написанного на Си goto может оказаться неуместным.

Наследование помогает достичь Single Responsibility, бороться с Multiple Responsibility, что может трактоваться как максимальная степень Strongly Coupling. Multiple Responsibility — это Strongly Coupling. Все связано в одном месте.

Наследование помогает только в одном — переиспользование кода. В остальном очень часто мешает.

Вот мое объяснение, принципа Open/Close в SOLID, и то как он помогает избежать cвязность (coupling) через наследование.

Для строго следования принципам SOLID следует ограничить наследование, а ещё лучше не использовать его вовсе. :)

Ну и надо понимать, что SOLID это тоже не панацея и не использовать их везде.

sabacs
()
Ответ на: комментарий от sabacs

для правильного SOLID достаточно чуть-чуть поCLUдить

qulinxao3 ★★
()
Ответ на: комментарий от qulinxao3

Ничего не понял.

Я вживую все это наблюдал, в нулевые, когда вебом активно занимался.

С середины нулевых все старались переползти на питон и новые проекты в вебе старались начать делать на нем. Потому что код был понятный, ты сажаешь в офис человека, который позавчера научился писать hello world и даешь ему простые задания, и получаешь читаемый код. Человек получает 800-1200$ и думает, что поймал бога за бороду. Оттуда пошли убеждения, что программирование это просто, а платят много, собственно, так оно и было для новичков, но не долго, меньше десяти лет.

Да, доля PHP была доминирующей (и Perl тоже имел жирный кусок), но массовый уход в Python пошел именно тогда.

PS: я про РФ.

soomrack ★★★★★
()
Последнее исправление: soomrack (всего исправлений: 1)
Ответ на: комментарий от lbvf50txt

Принцип открытости/закрытости (Open/Closed Principle) — это часть SOLID, которая как раз связана с наследованием.

Ничего подобного.

sabacs
()
Ответ на: комментарий от liksys

Ничего подобного. Там сделаны новые фреймворки, несовместимые со старыми.

sabacs
()
Ответ на: комментарий от praseodim

Сам по себе он на практике был бы не очень востребованым, а основную популярность дают многочисленные библиотеки.

Python так популярен из-за своей «встроенной библиотеки»; про него говорят: «it has a ‘batteries included’ philosophy». Для определенного спектра практических и образовательных задач ничего, кроме стандартного Python, не нужно.

Причина, по которой Python стал так популярен у киберспортсменов, а потом перешел в подготовку к собеседованиям, — это его богатая стандартная библиотека. Отрабатывать алгоритмы на Python гораздо удобнее, чем на других языках: базовые структуры уже есть (стеки, очереди, кучи, словари), и сам синтаксис лаконичный. Чего стоят list/dictionary comprehension, а также Python slice notation.

Вторая причина — администрирование. Python заменил в администрировании сначала Perl, потом Ruby. Что опять же подтверждает его богатую стандартную библиотеку. И, ВНИМАНИЕ, однозначность и стандартность.

И тут возвращаемся к тому, что Python - довольно специфический язык.

Ruby — довольно специфический язык, что делает его чрезвычайно выразительным и удобным, так как там нет ни операторов, ни чисел как примитивов — одни объекты и их методы.

#!/usr/bin/env ruby

p 1+1 # prints 2
p 1.+(1) # prints 2

p %w{1a 2b}.map(&:to_i).map(&:even?).map(&:to_s).map(&:upcase)
# prints ["FALSE", "TRUE"]

А вот Python это абсолютно стандатрный язык.

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 1)
Ответ на: комментарий от soomrack

в Россиюшке топ-компы очень 1999-2000 перестали быть публичными чутка похоже на прекращение (своих)публикаций по тем или отвлечённым темам в разных обществах в разные острые моменты мировой истории :)

питон стал питоном через Numeric :) @ прикрутили как операцию в 95-96 но ГВидо сохранил независимость отказавшись включить числодробильню в стандартную либу 1.5+-

то что бэкенд и в середине 90ых пытались - дак туда все ломились и php благодаря вкусу публики оказался топом

«парехмахеры» пуделей один из механизмов уменьшения джини-коэф если иные(мехи) не закрывают

Оттуда пошли убеждения, что программирование это просто

трубка мира нефтегазагона ещё и не такие эвристики формирует

qulinxao3 ★★
()
Ответ на: комментарий от sabacs

Наследование помогает только в одном — переиспользование кода.

ООП это контроль за типами данных, основная суть ООП – ты больше не можешь передавать указатели в функции, а функции не могут интерпретировать их как им угодно. Это сильно ограничивает возможности в написании функций, ограничивает развитие кода. Наследование решает эту проблему – ты можешь передавать не только тот типа данных, который указан в аннотации функции, но и любого его наследника.

PS: а инкапсуляция и пр. – это просто старая концепция «сокрытие сложности», которая получила новые формы в ООП, и которая и без ООП прекрасно существовала (те же замыкания и т.д.).

soomrack ★★★★★
()
Последнее исправление: soomrack (всего исправлений: 1)
Ответ на: комментарий от lbvf50txt

А вот Python это абсолютно стандатрный язык.

:= та ещё диверсия

qulinxao3 ★★
()
Ответ на: комментарий от soomrack

pre-ps: Меняем Shell или чудо IPython

чисто как 0.7 аргумент

https://en.wikipedia.org/wiki/Parallel_computing

vs

https://ru.wikipedia.org/wiki/Параллельные_вычислительные_системы

темы по разному интересны в англосфере и русфере

qulinxao3 ★★
()
Последнее исправление: qulinxao3 (всего исправлений: 1)
Ответ на: комментарий от qulinxao3

И что?

Я тебе говорю как было. Массово ни в 90е ни в 00е питон научному сообществу нафиг не сдался, старички писали на фортране, средний возраст на С и С++ с классами, инженеры массово пользовались Матлабом для расчетов.

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

А вот веб развивался очень бурно, и нужно было где-то найти новые тысячи программистов, которые будут делать простые вещи – генерить странички, дергать БД и т.п. Питон решил эту проблему – очень простой и НЕВЫРАЗИТЕЛЬНЫЙ синтаксис, резко ограничил возможности говнопрогеров делать нечитабельный код, пара месяцев обучения и новый программист, который будет писать скрипты для формирования страниц и дергать базу – готов.

И это касается не только РФ, это общее для всего мира.

PS: я думаю, что нас скоро ждет очень серьезный кризис программистов, т.к. хорошие программисты получаются из молодых программистов, а молодые – неопытные и их заменят нейронки, соотв. приток молодых в профессии резко сократится, собственно, он уже сократился из-за падения зарплат, но скоро упадет еще сильнее.

soomrack ★★★★★
()
Последнее исправление: soomrack (всего исправлений: 1)
Ответ на: комментарий от praseodim

Намного раньше. В 1983-м году. Турбо-Паскаль фирмы Borland.

Зачем ты мне рассказываешь про турбопаскаль, если разговор был конкретно о делфи, который появился именно в 1995? Кабинетный теоретик здесь ставил его в пример, что мол во какая глыба была, но период активного использования этой глыбы, как оказалось, всего 15 лет.

имел огромную популярность в 80-х и 90-х

Собственно, всё, поезд ушел. В любом случае, как ни посмотри, у питона век оказался более долог, и конца этому не видно.

В принципе, среда и язык не мертвые.

Да мертвые они, мертвые. Новых проектов на них почти не пишут, лишь поддерживают старые. И продают это тем, у кого много сотрудников, знающих паскаль, и есть много наработок на нем.

Но в стороне от всего этого, никто в здравом уме не будет начинать новый проект да делфи, кроме фанатов этой шняги.

liksys ★★★★
()
Ответ на: комментарий от praseodim

И тут возвращаемся к тому, что Python - довольно специфический язык. Сам по себе он на практике был бы не очень востребованым, а основную популярность дают многочисленные библиотеки.

Так а проблема-то в чем? Хороший язык с удачным дизайном, людям понравился - вот и появились библиотеки. Причем перл еще и прикопал такие популярные ранее языки, как перл и руби. Да, они не мертвые, но их сейчас мало кто знает. Перл еще держится, но в основном на легаси и админских скриптах. Если же посмотреть на графики популярности типа TIOBE и PYPL, то питон растет, а вот перл и руби стабильно падают.

liksys ★★★★
()
Ответ на: комментарий от soomrack

Главная проблема с ООП в том, что сколько людей столько и определений что такое ООП. :)

Если же обратиться к первоисточникам, то есть такое мнение

«Я придумал термин «объектно-ориентированный», и могу сказать, что я не имел в виду С++». Алан Кэй

Для реализации вот этого

ты можешь передавать не только тот типа данных, который указан в аннотации функции, но и любого его наследника.

Наследования не нужно, достаточно чтобы объект (вне зависимости что мы под этим понимаем) реализовал необходимый интерфейс.

sabacs
()
Ответ на: комментарий от soomrack

на нем снова начали писать код, который проблемно прочитать

До перла с его белочками ему все равно далеко %)

Если мне не изменяет память, то именно от питона пошла идея сделать форматирование частью синтаксиса, чтобы ты не мог писать всратый код. Дальше это развил го с его публичными/приватными объектами в зависимости от камелкейса. Хотя конкретно го - уродливый страх и ужас, сделанный, чтобы на нем писали вчерашние студенты, не отстрелив себе ноги и голову. Он хорош внутри, а вот синтаксис - просто кошмар.

Лично я если бы дизайнил язык, сделал бы его чуть более многословным и похожим на питон, но со скобками и явной статической типизацией. И приколотил бы кодинг-стайл намертво, сделав несоответствие ему синтаксической ошибкой.

liksys ★★★★
()
Ответ на: комментарий от sabacs

Ты, как обычно, говоришь «нет», но не тому, что тебе сказал собеседник, а тому, что ты додумал за собеседником. Это довольно близко к симптомам шизофрении.

soomrack ★★★★★
()
Ответ на: комментарий от liksys

Лично я если бы дизайнил язык, сделал бы его чуть более многословным и похожим на питон, но со скобками и явной статической типизацией. И приколотил бы кодинг-стайл намертво, сделав несоответствие ему синтаксической ошибкой.

Это Golang c go fmt.

lbvf50txt
() автор топика
Ответ на: комментарий от liksys

Да мертвые они, мертвые. Новых проектов на них почти не пишут, лишь поддерживают старые. И продают это тем, у кого много сотрудников, знающих паскаль, и есть много наработок на нем.

Пишут на них новый код, я же уже сказал тебе что в новом Delphi другая библиотека, несовместимая со старой. Старая VCL это легаси, которое также поддерживается, то уже не развивается.

sabacs
()
Ответ на: комментарий от soomrack
That's not how I read the article. It sounded like Page's original version didn't work so he hired an RA to fix it. The RA spent more time debugging the (then very immature) Java than he did debugging Page's code so he rewrote it in Python.
Once they started getting traffic, the Python script that the RA had written couldn't stand up anymore, so they hired engineers to fix it again, who did so by rewriting it in C++.

Page's choice of Java originally was probably a faddish choice, given that Java was being hyped into the stratosphere by Sun at the time, even though neither the language nor its implementation were ready for prime time. The RA's choice of python was more reasonable, but Python was a highly esoteric research language at the point and did not have the ecosystem around it yet for writing scalable production code.

мир достаточно разнообразен и для пряника и для пряника вчерашнего

это события 95-96 гг

qulinxao3 ★★
()
Ответ на: комментарий от sabacs

Это всё копиум. Я уже сказал тебе, что то, что нам нем пишут новый код те, у кого есть наработки и человеческие ресурсы, не отменяют его мертвости. Иди погрепай по гитхабу да посмотри, сколько ты найдешь новых проектов.

liksys ★★★★
()
Ответ на: комментарий от liksys

Развитие питона привело к тому, что он потерял то, что сделало его популярным – очень ограниченную выразительность. Да, он приобрел гораздо больше, чем потерял… Но в целом, это означает, на мой взгляд, что у отрасли есть очень серьезный запрос на хороший скриптовый язык, который пока не реализован. Поэтому, на горизонте 10-20 лет, я не уверен, что питон удержит позиции, да, он будет популярным, да, им будут активно пользоваться, но возможно появится новый язык, на который все активно начнут переходить.

Если бы я проектировал язык, то я бы тоже хотел бы скобки, явную типизацию, встроенные АСД (нормально сделанные с т.з. алгоритмов!) и форматирование вынес бы в опции компилятора/интерпретатора, по умолчанию, но не в синтаксис, параллельность еще и распределенность, векторные вычисления… Короче, довольно много чего хочется в стандартном пакете, но по чуть-чуть.

soomrack ★★★★★
()
Ответ на: комментарий от liksys

*форматирование это из Парнаса середина 70-ых

вообще была мода на «структурные редакторы»(тот же бэйсик на спектруме это вариант такого структурного) -обусловленно и железом и стремлением что бы пользователь видел из какого меню ожидаются его реплики в интерактиве - начало 90ых вот ABC def (https://leo-editor.github.io/leo-editor/ не так жёсток )

*Тitle-case для экспорта это оберон - середина 80-ых

вот так индустрия и «ресёч» сосуществуют

qulinxao3 ★★
()
Последнее исправление: qulinxao3 (всего исправлений: 1)
Ответ на: комментарий от qulinxao3

Отдельные примеры – не статистика. Конечно, и в 90е были были фанаты питона в R&D, без фанатов он бы не стал популярным.

soomrack ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)