OberonCore https://forum.oberoncore.ru/ |
|
против питона https://forum.oberoncore.ru/viewtopic.php?f=7&t=5913 |
Страница 1 из 5 |
Автор: | Info21 [ Понедельник, 10 Октябрь, 2016 15:32 ] |
Заголовок сообщения: | против питона |
Коллеги, нужно собрать конкретные аргументы в тему, почему питон хуже Оберона/КП для обучения программированию. Хуже не только по мелочам, но и с точки зрения единой сквозной системы вводных курсов, о которой говорится в Информатике-21. Конкретные фичи, конкретный опыт. Систематизируем потом, сначала нужно собрать в режиме мозгового штурма. В Минобразе уже начались перемены, и нужно использовать шанс, чтобы вписаться в эту струю. |
Автор: | prospero78 [ Понедельник, 10 Октябрь, 2016 17:06 ] |
Заголовок сообщения: | Re: против питона |
1. Питон поощряет бестолковый стиль кода. 2. Питон поощряет бездумную смену типа объектов во время работы. 3. Питон не является единой нефрагментированной платформой для "малого" и "большого". 4. После питона сложно выправить вывихи сознания в восприятии правильных подходов. 5. Питон 2 и 3 ветки расколол сообщество на два лагеря: до и после. Причём после, по многим параметрам хуже чем до. 6. Питон имеет обширные привязки к серьёзным инструментам, но по отношению к ним -- является ведомым и всегда догоняет. 7. Питон -- это попытка исправить злокачественную генетику Си. И потому, после него обучаемый неизбежно пойдёт в Си. 8. Питон в чистом виде -- не может послужить основой для серьёзного программного обеспечения. Как по объёму, так и по качеству, так и производительности. Придётся осваивать либо расширение, либо отдельный язык. 9. Питон идёт по пути, который невозможно контролировать. С каждым годом всё тяжелей, и на пятки ему наступают более легковесные декларативные мини-языки. 10. Питон не является промышленным стандартом, а значит в будущем школьники будут вынуждены со временем отказываться от приобретённых навыков. Труд учителей и средства налогоплательщиков будут потрачены впустую. |
Автор: | Info21 [ Понедельник, 10 Октябрь, 2016 17:11 ] |
Заголовок сообщения: | Re: против питона |
Здорово для затравки. Но частично неконкретно. Коллеги, кто может подраскрыть пункты, не стесняйтесь. |
Автор: | Info21 [ Понедельник, 10 Октябрь, 2016 17:16 ] |
Заголовок сообщения: | Re: против питона |
Ещё хорошо бы иметь с прицелом на будущее свидетельства типа я пытался применять питон в некоем проекте, и бякнулся фейсом в ... etc. |
Автор: | Илья Ермаков [ Понедельник, 10 Октябрь, 2016 17:27 ] |
Заголовок сообщения: | Re: против питона |
Сделать упор на отсутствии статической типизации. При этом не в ключе даже "ах, какой ужас, как так программировать", а в том духе, что развитая система статической типизации является основой современной разработки серьёзного ПО. И язык, не формирующий навыков и паттернов работы со статической типизацией, оставляет большой пробел в изучении программирования. Из мейнстрима: Java (стандарт для крупного корпоративного и финансового ПО), C# (как альтер-Ява), Ada (авиация), С++ (сложная системщина), Haskell (передовой функциональный язык), Go (язык Гугла для веб-программирования) - всё это развитая статическая типизация. Даже С++, будь он трижды неладен, - в современной его идеологии - это в первую очередь обеспечение надёжности и предметной ориентированности за счёт развитой статической типизации в условиях обобщённого программирования (дженериков). Известны проблемы "скриптеров" при переходе на эти языки именно по причине "аморфности" мышления. Т.е. создаётся мощный тормоз для перехода в серьёзную, профессиональную лигу. Отсутствие строгой типизации в этом плане то же самое, что и GOTO для структуры алгоритма. Безусловно, проталкивание известной бандой Питона обусловлено исключительно их ориентацией на олимпиадную нишу (где важно быстро произвесть небольшие алгоритмы). Важно подчеркнуть это: что они ориентируюся на крайне узкую нишу, создавая тормоза как для общеалгоритмической, широко применимой грамотности, так и для выхода на профессиональный путь. Фанатизм к Питону и скриптам проявляет именно тот контингент, который желает застрять в весовой категории "чо-то потихоньку лабаю в своё удовольствие". |
Автор: | Борис Рюмшин [ Понедельник, 10 Октябрь, 2016 18:30 ] |
Заголовок сообщения: | Re: против питона |
Илья Ермаков писал(а): Фанатизм к Питону и скриптам проявляет именно тот контингент, который желает застрять в весовой категории "чо-то потихоньку лабаю в своё удовольствие". Нет. По большей части из-за п. 7 Валерия. |
Автор: | Иван Денисов [ Вторник, 11 Октябрь, 2016 12:28 ] |
Заголовок сообщения: | Re: против питона |
Присоединяюсь к типизации + Питон исповедует зубрежку. В нем в целом нет системы знаний, как в какой-то науке. Не работают причинно-следственные связи. Для школьника это очень плохо и поэтому непонятно, как двигаться дальше. Поэтому у школьника в принципе нет шансов реализовать самостоятельный проект на Питоне. Возьмем для примера деление на цело. В школе ученик привык, что 3/2 это 1.5, но в Питоне это не так. Логика "почему это не так" очень сложная и в целом противоречит школьной программе. Формируется система исключений с самых азов изучения. И так дальше повсюду. Однако с учетом всех недостатков. У него есть преимущество - линейная кривая обучения. Легкий старт и одинаково сложная кривая обучения. Немного "позубрил", стал немного больше "мочь" для решения задач. Ну и так или иначе, но Питон сегодня - лучший скриптовый язык для Linux. Так что он все равно входит в джентльменский набор современного IT специалиста. |
Автор: | kemiisto [ Вторник, 11 Октябрь, 2016 12:41 ] |
Заголовок сообщения: | Re: против питона |
Цитата: В школе ученик привык, что 3/2 это 1.5, но в Питоне это не так. Да неужели? Как раз в Питоне то 3/2 = 1.5. Всё остальное (про зубрёжку, отсуствие системы знаний и не работяющие причинно-следственные связи) - это, опять же, болтология, а просили конкретные аргументы. |
Автор: | kemiisto [ Вторник, 11 Октябрь, 2016 13:24 ] |
Заголовок сообщения: | Re: против питона |
Соглашусь с Ильёй Ермаковым: единственный существенный недостаток Python - динамическая типизация. Отсюда вытекают:
То есть, резюмирую, как Илья и сказал: "развитая система статической типизации является основой современной разработки серьёзного ПО". Вдумчивое проектирование, статический анализ, легко читаемый и модифицируемый код - всего это крайне тяжело достичь, используя динамически типизированные языки. Но для скриптов в несколько десятков строчек (для себя, здесь и сейчас) оно, к сожалению, годится. Ах, ну и чуть не забыл упомянуть, что подвижка в сторону статической типизации в Python есть. В версии 3.5 появились т.н. type hints (PEPs 483, 484), которые суть есть подсказки людям и машине по типам используемых объектов. Цели как раз улучшение читаемости и возможностей статического анализа. |
Автор: | prospero78 [ Вторник, 11 Октябрь, 2016 13:47 ] |
Заголовок сообщения: | Re: против питона |
Появились то они появились. Только по факту не работают, ни к чему не обязывают, и статические анализаторы в динамических системах -- это как плавать топором)) Питон хорош как клей. Буквально. Его отношение к другому коду должно быть как отношение массы штукатурки и обоев к массе обойного клея)) Не верно пытаться штукатурить стены обойным клеем, и из него же делать обои. |
Автор: | Trurl [ Вторник, 11 Октябрь, 2016 17:07 ] |
Заголовок сообщения: | Re: против питона |
kemiisto писал(а): Да неужели? Как раз в Питоне то 3/2 = 1.5. Зависит от версии Питона. |
Автор: | Роман М. [ Вторник, 11 Октябрь, 2016 17:45 ] |
Заголовок сообщения: | Re: против питона |
Trurl писал(а): kemiisto писал(а): Да неужели? Как раз в Питоне то 3/2 = 1.5. Зависит от версии Питона. Это и плохо, что в разных версиях Питона математика действует по-разному. |
Автор: | ilovb [ Вторник, 11 Октябрь, 2016 18:02 ] |
Заголовок сообщения: | Re: против питона |
Имхо, Питон слишком высокоуровневый. Сложно представить что происходит под капотом. В этом плане Оберон и Схема гораздо лучше. Еще Питон своим дизайном провоцирует писать бряки в циклах (тут возможно вру, но знающие поправят) |
Автор: | prospero78 [ Вторник, 11 Октябрь, 2016 18:25 ] |
Заголовок сообщения: | Re: против питона |
Я с самого начала сильно удивлялся почему во второй ветке 3/2=1, а в третьей 3/2=1.5. И это ещё мелочи по сравнению с тем, как стали обрабатываться строки))) Не. Катится под горку. Бог с ними с бряками. Там ещё континуэ имеется. А Трей... Эксцепт...Финалли -- вот что жутко)) Действительно, то что происходит под капотом -- магия. |
Автор: | kemiisto [ Вторник, 11 Октябрь, 2016 18:35 ] |
Заголовок сообщения: | Re: против питона |
ilovb писал(а): Еще Питон своим дизайном провоцирует писать бряки в циклах (тут возможно вру, но знающие поправят) Есть такое дело. Питон вообще много чем провоцирует писать неструктурно. И вообще он не императивный, а смешанный язык, в который всё больше пихают функцианАльщину. |
Автор: | Владимир Паронджанов [ Вторник, 11 Октябрь, 2016 18:53 ] |
Заголовок сообщения: | Re: против питона |
Из Википедии https://ru.wikipedia.org/wiki/Python Цитата: Класс языка:
мультипарадигмальный: объектно-ориентированный, рефлективный, императивный, функциональный, аспектно-ориентированный, динамический |
Автор: | Info21 [ Вторник, 11 Октябрь, 2016 23:10 ] |
Заголовок сообщения: | Re: против питона |
Trurl писал(а): kemiisto писал(а): Да неужели? Как раз в Питоне то 3/2 = 1.5. Зависит от версии Питона. Пожалуйста, дайте подробности. |
Автор: | Иван Денисов [ Среда, 12 Октябрь, 2016 00:28 ] |
Заголовок сообщения: | Re: против питона |
Info21 писал(а): Trurl писал(а): kemiisto писал(а): Да неужели? Как раз в Питоне то 3/2 = 1.5. Зависит от версии Питона. Пожалуйста, дайте подробности. В python до 3 версии деление целых значит деление на цело, но в версии 3 — уже нет. Чтобы в python до 3-ей версии поделить числа, надо писать так 3/float(2). Как это объяснить школьнику? Почему не добавить отдельный оператор для деления на цело? MOD и DIV должны проходить в школе и объяснять, как это связано с двоичным представлением данных. Вложение:
|
Автор: | Trurl [ Среда, 12 Октябрь, 2016 08:36 ] |
Заголовок сообщения: | Re: против питона |
Вот еще одна вещь, которую надо объяснять школьнику Код: >>> a=[1,2,3,4,5] >>> a [1, 2, 3, 4, 5] >>> b=a >>> b [1, 2, 3, 4, 5] >>> b[1]=8 >>> b [1, 8, 3, 4, 5] >>> a [1, 8, 3, 4, 5] Впрочем, это для многих скриптовых языков характерно. |
Автор: | prospero78 [ Среда, 12 Октябрь, 2016 08:57 ] |
Заголовок сообщения: | Re: против питона |
А во последний пример, кстати, это просто ступор был для меня))))) Я долго не мог въехать в эту магию 80 лвл)) Я до сих пор не пользуюсь такими штуками, так как это реально погибель адская. |
Страница 1 из 5 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |