powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Народ, никак не могу уловить причину выразительности Python
25 сообщений из 51, страница 1 из 3
Народ, никак не могу уловить причину выразительности Python
    #39677324
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу не воспринимать мой вопрос, как спор или противостояние, мне действительно не понятно и хочется разобраться.

Много где слышал, что программы на Python являются короткими и простыми (по сравнению с тем же С++). Собственно именно читаемость кода была поставлена на первое место при разработке языка. Изучил синтаксис языка и не понял откуда эта читаемость появляется. Я опишу отличия синтаксиса Python от С++ (остальное у них совпадает):

1. В Python можно не писать типы, но типизация строгая и за любым "разнотиповым" действием кроется конвертация. Неужели эти невидимые типы / конвертации, которые надо додумывать повышают читаемость?

2. Объекты представляют из себя "хранилища" данных (без инкапсуляции), что приводит к возможности написать такой код: предметная область произвольно дробится на объекты и пишется "основная" функция, которая дергает данные из нескольких объектов, реализуя в себе как бизнес- логику приложения, так и огрызки логики каждого объекта (иначе зачем она таскает чужие данные). Короче получится код- лапша. В Enterprise- решениях подобный подход просто не допустим, потому что невозможно проанализировать 10 000 страниц кода А4, на поиски каких- то присваиваний или считываний данных. Неужели необходимость "штудировать весь код" улучшает читаемость?

Все остальное точно такое, как и в С++: есть кортежи tuple, контейнеры any, возможность использовать тип auto (в том числе для создания шаблонов), циклы по коллекциям, встроенные коллекции. Короче количество кода и тут и там по остальным пунктам одинаковое. Нет только фигурных скобочек и точки с запятой.

Поэтому мне и непонятно, откуда эта читаемость появляется? Может я чего- то не доглядел? Опытные Python- разработчики, пожалуйста, подскажите где от меня сокрыто ускорение разработки.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677397
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Python'а грамматика намного проще, в отличие от грамматики C++.

Python интерпретируемый язык, не компилируемый (по крайней мере Pyston так и не взлетел). Это сразу развязывает руки в плане
типизации объектов. И кстати, она там утиная (динамическая), а не строгая.

Python создан для программирования, а не для решения технических проблем и постоянной борьбы с инструментом, как этот ваш
C++. То есть, на питоне проще выразить свои идеи в коде, нежели в C++, где нужно сначала описать сценарий сборки на том же CMake,
прилинковать нужные либы, прописать INCLUDEPATH'ы, и ещё не забыть про остальные платформы. В питоне же просто в большинстве
случаев требуется запустить
Код: plaintext
$ python my_program.py
и будет работать везде.

Ну а за интроспекцию типов вообще можно не волноваться в Python'е. Чего не скажешь про C++ с его метапрограммированием и
compile-time вычислениями, когда нужно постоянно помнить где код "выполняется" во время компиляции, а где в рантайме.

Работа с variadic template'ами также здесь далеко не светлая сторона С++, в то время как Python обходится *args и **kwargs на изи.

А вообще, это сравнение тёплого с мягким, так как, у каждого языка своё назначение
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677507
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQL,

просто нет всяких begin/end'ов и изкоробки удобные структуры данных -> программы короче
проще синтаксис
кое-где учат в школе

из обратного - медленнее в 100 раз, и удачно сохранив программу не тем редактором с другим размером табов - навернешь ее безвозвратно
из второго пункта следствие - особое удовольствие при совместной разработке

еще "удачно" выполнив pip пакет, можно подтянуть полинтернета всякого говна себе в питоновские каталоги =)
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677541
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemarglпросто нет всяких begin/end'ов

Да в плюсах, как бы, тоже нет. Всё достигается отступами, а если нужен RAII делаешь with ...: с объектом, у которог оперегружены __enter__ и __exit__

Siemarglиз обратного - медленнее в 100 раз


Так это смотря что делать. Если тебе нужна числоробилка -- используй NumPy. Тяжёлые части critical path'ов всегда можно вынести в C extension.
Но только когда нужно.

Siemarglи удачно сохранив программу не тем редактором с другим размером табов - навернешь ее безвозвратно


Современные IDE уже давно умеют справляться с такими, даже запортившимися скриптами. Например, в PyCharm, можно нажать шоткат
Ctrl(Cmd)+Shift+F и он сам всё отформатирует.

Siemarglиз второго пункта следствие - особое удовольствие при совместной разработке

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

Siemarglеще "удачно" выполнив pip пакет, можно подтянуть полинтернета всякого говна себе в питоновские каталоги =)

Судя по тому, что ты здесь пишешь, у тебя либо давно не было опыта разработки на питоне, либо его вообще нет и все рассуждения на уровне клюквы.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677565
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NekZУ Python'а грамматика намного проще, в отличие от грамматики C++.

Их грамматика отличается только указанием типа (хотя в С++ теперь можно использовать auto), фигурными скобками и точкой с запятой. Остальное все тоже самое.

NekZPython интерпретируемый язык, не компилируемый (по крайней мере Pyston так и не взлетел). Это сразу развязывает руки в плане типизации объектов. И кстати, она там утиная (динамическая), а не строгая.

В Python строгая типизация, просто имена объектов в процессе выполнения могут "привязываться" к другим объектам. В современных IDE (анализирующих только измененные файлы) компиляция С++ программ занимает пару секунд.

NekZ... нежели в C++, где нужно сначала описать сценарий сборки на том же CMake,
прилинковать нужные либы, прописать INCLUDEPATH'ы, и ещё не забыть про остальные платформы. В питоне же просто в большинстве случаев требуется запустить
Код: plaintext
$ python my_program.py
и будет работать везде.

Никаких сценариев сборки в С++ никто не пишет. Это все делает IDE.

NekZНу а за интроспекцию типов вообще можно не волноваться в Python'е. Чего не скажешь про C++ с его метапрограммированием и compile-time вычислениями, когда нужно постоянно помнить где код "выполняется" во время компиляции, а где в рантайме.


Работа с variadic template'ами также здесь далеко не светлая сторона С++, в то время как Python обходится *args и **kwargs на изи.


Оба пункта настолько редко используются, что представляют исключительно академический интерес.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677593
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLИх грамматика отличается только указанием типа (хотя в С++ теперь можно использовать auto), фигурными скобками и точкой с запятой. Остальное все тоже самое.

Я говорил про грамматику БНФ . Так вот, у C++ она намного сложнее. Не зря были приведены ссылки на грамматики обоих языков.

AlekseySQLВ Python строгая типизация

В питоне нет строгой типизации.

AlekseySQL просто имена объектов в процессе выполнения могут "привязываться" к другим объектам.

Это одно из преимуществ утиной типизации.

AlekseySQLВ современных IDE (анализирующих только измененные файлы) компиляция С++ программ

IDE не компилируют программы.

AlekseySQLзанимает пару секунд.

Ага, то-то я и смотрю, что чтобы собрать, скажем, фреймворк Qt, требуется (примерно) 40 минут.
Компиляция каждого C++ файла занимает время, а затем ещё и линковка, которая тоже немало времени берёт.
Современные продукты собираются долго, особенно, если кто-то поменял какой-нибудь хедер, который много где используется.

AlekseySQLНикаких сценариев сборки в С++ никто не пишет. Это все делает IDE.

В кроссплатформенной цепочке сборки с использованием известных CI, скажем, Jenkins, сценарий сборки необходим чтобы сгенерить Makefile
для Linux, Xcode проект для мака и Visual Studio проект для винды. Не нужны, говоришь?

AlekseySQLОба пункта настолько редко используются, что представляют исключительно академический интерес.
Чувак, ты точно профессиональный C++ программист, или просто толсто троллить пытаешься?
Для Hello world'а не нужны, а на практике приходится прибегать к ним.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677639
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NekZЯ говорил про грамматику БНФ . Так вот, у C++ она намного сложнее. Не зря были приведены ссылки на грамматики обоих языков.

"Форма Бэкуса — Наура - формальная система описания синтаксиса, в которой одни синтаксические категории последовательно определяются через другие категории."
В С++ одни синтаксические конструкции НЕ определяются через другие, исключение составляют классы и структуры (точно также присутствующие в Python), которые представляют совокупность полей и методов. Все остальное находится на одном уровне.

NekZAlekseySQLВ Python строгая типизация

В питоне нет строгой типизации.

В Python строгая типизация, это знает любой грамотный программист.

NekZAlekseySQL просто имена объектов в процессе выполнения могут "привязываться" к другим объектам.

Это одно из преимуществ утиной типизации.

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

NekZAlekseySQLВ современных IDE (анализирующих только измененные файлы) компиляция С++ программ

IDE не компилируют программы.

Что за детские придирки к словам? IDE в настройках хранит путь к компилятору и по нажатию кнопочки его вызывает. Так пойдет?

NekZAlekseySQLзанимает пару секунд.

Ага, то-то я и смотрю, что чтобы собрать, скажем, фреймворк Qt, требуется (примерно) 40 минут.
Компиляция каждого C++ файла занимает время, а затем ещё и линковка, которая тоже немало времени берёт.
Современные продукты собираются долго, особенно, если кто-то поменял какой-нибудь хедер, который много где используется

Разговор был о скорости разработки своих пакетов, компиляция при которой занимает секунды. К тому же сборки чужих пакетов распрастраняются уже в бинарниках и только для редких платформ их надо собирать самостоятельно. Кстати, если на С++ что-то собирается 40 минут, то на Python это будет РАБОТАТЬ 100 * 40 минут.

NekZAlekseySQLНикаких сценариев сборки в С++ никто не пишет. Это все делает IDE.

В кроссплатформенной цепочке сборки с использованием известных CI, скажем, Jenkins, сценарий сборки необходим чтобы сгенерить Makefile
для Linux, Xcode проект для мака и Visual Studio проект для винды. Не нужны, говоришь?

В топике поставлен вопрос выразительности разработки на Python, а не его возможности для применения как интегратор различных компонентов. Зачем подменять понятия?

NekZAlekseySQLОба пункта настолько редко используются, что представляют исключительно академический интерес.
Чувак, ты точно профессиональный C++ программист, или просто толсто троллить пытаешься?
Для Hello world'а не нужны, а на практике приходится прибегать к ним.

"Hello world" правильно пишется так: "Hello, world".
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677678
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQL"Форма Бэкуса — Наура - формальная система описания синтаксиса, в которой одни синтаксические категории последовательно определяются через другие категории."
В С++ одни синтаксические конструкции НЕ определяются через другие, исключение составляют классы и структуры (точно также присутствующие в Python), которые представляют совокупность полей и методов. Все остальное находится на одном уровне.

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

AlekseySQLВ Python строгая типизация, это знает любой грамотный программист.

Можешь привести ссылку где это утверждается? У Python'а отродясь не было строгой типизации. Во всех учебниках по Python'у описывается утиная
(динамическая) типизация. Тянет на очень жирный троллинг, либо синдром Дедала с его FVMas.

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

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

AlekseySQLЧто за детские придирки к словам? IDE в настройках хранит путь к компилятору и по нажатию кнопочки его вызывает. Так пойдет?

Это не придирки, это твоё непонимание что такое IDE. IDE -- вещь опциональная. Ею можно и не пользоваться, отдав предпочтение Makefile'ам.
Тот же Eclipse умеет создавать проекты на основе Makefile'ов, при учёте, что синтаксис Makefile является полным по Тьюрингу.
IDE лишь один из инструментов, которым можно собрать C++ проект. Под виндой, например, ты можешь в консоли вызвать msbuild для сборки
студийного проекта. На маке xcodebuild. Заметь, IDE в этом процессе, по факту не участвует. Проект IDE является сценарием сборки для перечисленных
консольных утилит. И именно так и собираются пакеты в современном продакшне, без ручной сборки через IDE, а через вызовы скриптов сборки,
которые уже вызывают эти самые команды. В большинстве случаев это
Код: plaintext
1.
$ mkdir build && cd build && cmake bla-bla-bla .. && cmake --build . --config Release && build_package && publish_package

AlekseySQLРазговор был о скорости разработки своих пакетов, компиляция при которой занимает секунды.

Как обычно, всё зависит от обстоятельств.

AlekseySQLК тому же сборки чужих пакетов распрастраняются уже в бинарниках и только для редких платформ их надо собирать самостоятельно.

Питоновые тоже. У pip'а нет ограничений ставить питоновые скрипты в пакетах, или уже готовые бинарные модули .so/.pyd.

AlekseySQLКстати, если на С++ что-то собирается 40 минут, то на Python это будет РАБОТАТЬ 100 * 40 минут.

Очередная клюква от незнакомого с Python'ом.

AlekseySQLВ топике поставлен вопрос выразительности разработки на Python, а не его возможности для применения как интегратор различных компонентов. Зачем подменять понятия?

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

AlekseySQL"Hello world" правильно пишется так: "Hello, world".
AlekseySQLЧто за детские придирки к словам?

В общем, слив.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677702
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NekZТо есть ты не понял, что имелся в виду синтаксис формы БНФ, а не целевого описываемого языка.

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

NekZМожешь привести ссылку где это утверждается? У Python'а отродясь не было строгой типизации. Во всех учебниках по Python'у описывается утиная
(динамическая) типизация. Тянет на очень жирный троллинг, либо синдром Дедала с его FVMas.

В
YouTube Video
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677714
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLсинтаксис С++ ничем не сложнее синтаксиса Python

Ноу комментс

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

Почитай что такое Reference counting. Объекты однозначно индентифицируются по id (built-in функция id). Привязанные имена являются ссылками
на объект.

AlekseySQLВсе объекты имеют тип, который строго определен. Утиная типизация (все что крякает, летает и плавает- будем называть уткой) не имеет ничего общего с динамической. Это разные понятия. Утиная типизация отталкивается не от свойств объекта, а от тех возможностей, которые у него есть.

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

AlekseySQLХотели сделать читаемый язык, а сделали нечитаемый.

Субъективное мнение ниасилившего.

AlekseySQLКстати, если на С++ что-то собирается 40 минут, то на Python это будет РАБОТАТЬ 100 * 40 минут.

AlekseySQLЯ написал "на Python", а не на С / С++.

Сам себе противоречишь?

AlekseySQLЭто у вас непонимание как происходит работа всего комплекса.
7+ лет опыта разработки C/C++ экстеншнов для CPython под Linux, macOS, Windows для индустрии VFX для Python-скриптинга в разных C++-хостах.
Не надо мне говорить, что я не понимаю как оно работает под капотом.

Перестать уже сравнивать тёплое с мягким, это смотрится непрофессионально, как и рассуждения Дедала о "дырявом C++" и "кишке танка".
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677959
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NekZSiemarglи удачно сохранив программу не тем редактором с другим размером табов - навернешь ее безвозвратно


Современные IDE уже давно умеют справляться с такими, даже запортившимися скриптами. Например, в PyCharm, можно нажать шоткат
Ctrl(Cmd)+Shift+F и он сам всё отформатирует.Сказки не рассказывай только. Неоднострочные блоки он не восстановит.
Да и я говорил про "не тот редактор" (вроде ноутпада, mc-edit итп), а не про несуперзаточенное чудо.

NekZ7+ лет опыта разработки C/C++ экстеншнов для CPython под Linux, macOS, Windows для индустрии VFX для Python-скриптинга в разных C++-хостах.
Не надо мне говорить, что я не понимаю как оно работает под капотом.

Перестать уже сравнивать тёплое с мягким, это смотрится непрофессионально, как и рассуждения Дедала о "дырявом C++" и "кишке танка".Наверное ты этим (костыли пишешь) занимаешься, потому что иначе работает непростительно паршиво =)

Мое мнение - хороший учебный язык, но ничего серьезного на нем затевать не стоит. И наоборот - программы "одного дня" - сегодня написал и проверил - завтра стер - очень даже.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39677963
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglСказки не рассказывай только. Неоднострочные блоки он не восстановит.
Да и я говорил про "не тот редактор" (вроде ноутпада, mc-edit итп), а не про несуперзаточенное чудо.

mcedit... Ну да, ну да, наверное не стоит пейсать код в mcedit'е и коммитить сразу в продакшн.

SiemarglНаверное ты этим (костыли пишешь) занимаешься, потому что иначе работает непростительно паршиво =)

Это нужно для пользовательского скриптинга. Как например тот же VBA в MS Office, или JS в OpenOffice. Так и тут, но в VFX инструментах, Python
является стандартом для скриптинга и построения пайпланов для пост-процессинга рендеринга видео, как и низкоуровневой работы с пиксельными
данными.

SiemarglМое мнение - хороший учебный язык

Согласен.

Siemarglно ничего серьезного на нем затевать не стоит.

Тренды показывают обратное. Мало того, что у него огромное коммьюнити, так ещё и крупные корпорации активно контрибьютят в него.

SiemarglИ наоборот - программы "одного дня" - сегодня написал и проверил - завтра стер - очень даже.
Просто скриптовый язык.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678091
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SiemarglМое мнение - хороший учебный язык, но ничего серьезного на нем затевать не стоит. И наоборот - программы "одного дня" - сегодня написал и проверил - завтра стер - очень даже.

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

Код: python
1.
print [x ** 2 for x in range(1, 11) if x % 2 == 0]



У меня сложилось впечатление, что те, кто ругает С++ за сложность просто не знакомы с книгой Боба Мартина "Чистый код". Исходя из его книги, за надпись сверху надо бить по рукам, потому что она совсем не читаема.

Популярность Python объясняется также, как и популярность Javascript: шашлычных, блинных, чебуречных.... всегда в десятки раз больше, чем нормальных столовых и ресторанов. А эти языки используются как раз для мелких, но частых дел.

В лекции представленной ниже преподаватель Python так и говорит: программы до 1000 строк набиваю на Python, а больше 1000 строк- беру Java. Другими словами, Python не годится для Enterprise.

YouTube Video
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678112
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторИзучил синтаксис языка и не понял откуда эта читаемость появляется.
возможно, из принудительного визуального структурирования, выбора коротких ключевых слов. Но - на вкус и цвет фломастеры разные, кому не по душе - не пользуются.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678181
Лысый дядька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот что характерно, месяцев так десять назад топикстартер писал такие вот пассажи , человек только-только начал погружаться в профессию, делает первые шаги в С++. Года не прошло - с**а, эксперт!
Дорогой, AlekseySQL, потрать день, пройди туториал по Django, сделай хоть что-нибудь, потом уже рассуждай. Какой тебе энтерпрайз, кто тебя туда пустит, если ты рассуждаешь о выборе технологии по количеству предполагаемых строк кода?
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678381
Ы2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLязык для ученых, которые 1 раз напишут программу и потом ее выбросят, никогда не перечитывая код.
Вы очень странно представляете себе программирование в науке :)

AlekseySQLСамое смешное, что Python создавался как легкочитаемый язык, но получилось наоборот:
Код: python
1.
print [x ** 2 for x in range(1, 11) if x % 2 == 0]


…за надпись сверху надо бить по рукам, потому что она совсем не читаема.
Я, например, Python не знаю, но «надпись» прочитал и понял. Может, все дело в том, что я ученый?
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678407
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ы2,

Да, читаемость у Питона очень хорошая - логично сложено построение выражений.

Но я бы после Питона посмотрел на D - там есть все это (правда и овердофига больше и есть сложные концепции), и скорость С.

Т.е. при >1000 условных строк D >> Java >> Python
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678414
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglНо я бы после Питона посмотрел на D - там есть все это (правда и овердофига больше и есть сложные концепции), и скорость С.

Зачем, когда есть православный Go?
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678445
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NekZSiemarglНо я бы после Питона посмотрел на D - там есть все это (правда и овердофига больше и есть сложные концепции), и скорость С.

Зачем, когда есть православный Go?го примитивен, примитивнее питона в т.ч
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678499
Лысый дядька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemarglго примитивен, примитивнее питона в т.ч
Я бы посмотрел, как команда набранных по объявлению вчерашних студентов пишет потрясающе гибкий, читабельный, поддерживаемый код на Scala. Golang для того и создавался, чтобы быть бесхитростным, как палка-копалка, что, безусловно, лишает пылкие умы свободы творчества, но позволяет оставаться инструментом для достижения поставленных перед проектом целей кратчайшим путем.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678625
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лысый дядькаSiemarglго примитивен, примитивнее питона в т.ч
Я бы посмотрел, как команда набранных по объявлению вчерашних студентов пишет потрясающе гибкий, читабельный, поддерживаемый код на Scala. Golang для того и создавался, чтобы быть бесхитростным, как палка-копалка, что, безусловно, лишает пылкие умы свободы творчества, но позволяет оставаться инструментом для достижения поставленных перед проектом целей кратчайшим путем.Как это соотносится с темой топика ?
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678685
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Ы2]AlekseySQLязык для ученых, которые 1 раз напишут программу и потом ее выбросят, никогда не перечитывая код.
Вы очень странно представляете себе программирование в науке :)

Я учился в МФТИ, и сейчас у меня там есть друг, который продолжает работать в лаборатории. Кстати, он не знал ни одного языка, но по необходимости в 35 лет выучил Python. Есть также источники с habr:

авторPython «хорош» в научных вычислениях из-за низкого порога вхождения.
Для большинства людей, занимающихся наукой (даже теорией), необходим инструмент для каких-никаких расчетов, да чтоб еще графики рисовал. В моей области когда-то давно был такой монстр как IDL, но сейчас все поголовно пишут на Python.
При этом зачастую не используются никакие фичи языка кроме стандартных циклов/ветвлений, функций и многомерных (в лучшем случае) массивов. Всё.
Т.к. никто не хочет тратить время на «это ваше программирование», ни об ООП, ни об оптимизации, ни о чем либо еще люди даже не слышали. К исследованиям Python не побуждает, т.к. почти всё нужное среднестатистическому учёному можно найти в той или иной библиотеке.
Провал между средним «научным» программированием и средним «профильным» программированием настолько велик, что, измеряя его в годах задержки, эквивалентен лагу в хороших лет 30. Такие дела.
Всё вышенаписанное — личное мнение, основанное на личном опыте.
авторЯ на Matlab работал с 1989 года с версии 2.0 до примерно 2005.
В течение 12 лет я не встречал ни одного человека, который бы тоже работал в Matlab, за исключением своего универовского друга, который меня и "подсадил", коллег, с которыми я сам поделился сей радостью, и своих студентов.
авторПо своему опыту научной работы могу сказать, что когда над задачей работает от одного до нескольких человек, он повторном использовании кода речи не идёт. Пишут как получится, используются минимальные возможности языка, о системах контроля версий большинство не знает. Да и в общем потоке информации которую необходимо изучать ( математика, физика) для программирования места почти нет. Может быть, если бы на первых курсах универа больше уделяли этому внимания, ситуация могла быть лучше.

Почему Python так хорош в научных вычислениях
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39678700
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лысый дядькаSiemarglго примитивен, примитивнее питона в т.ч
Я бы посмотрел, как команда набранных по объявлению вчерашних студентов пишет потрясающе гибкий, читабельный, поддерживаемый код на Scala. Golang для того и создавался, чтобы быть бесхитростным, как палка-копалка, что, безусловно, лишает пылкие умы свободы творчества, но позволяет оставаться инструментом для достижения поставленных перед проектом целей кратчайшим путем.

Отсутствие многих удобных вещей в go никак не гарантирует тот факт, что вчерашние студенты будут закладывать в приложение грамотную архитектуру. В конечном счете получится такая поделка, в которой еще сложнее разобраться.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39679148
Ы2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLЯ учился в МФТИ, и сейчас у меня там есть друг, который продолжает работать в лаборатории. Кстати, он не знал ни одного языка, но по необходимости в 35 лет выучил Python. Есть также источники с habr …
Если вы пишите, что-то изначально более-менее одноразовое, вам нет дела до оптимизации — на нее уйдет больше времени, чем на сами вычисления. И пишите так, как вам же удобнее отлаживать.
А когда беретесь делать инструмент — подходы меняются. В моей области сейчас очень много активно развиваемых инструментов на Python, полагаю, их код регулярно пересматривается, и живет он массово на github.
...
Рейтинг: 0 / 0
Народ, никак не могу уловить причину выразительности Python
    #39679163
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ы2Если вы пишите, что-то изначально более-менее одноразовое, вам нет дела до оптимизации — на нее уйдет больше времени, чем на сами вычисления. И пишите так, как вам же удобнее отлаживать.
А когда беретесь делать инструмент — подходы меняются. В моей области сейчас очень много активно развиваемых инструментов на Python, полагаю, их код регулярно пересматривается, и живет он массово на github.

Вы считаете, что господа чучуные пишут библиотеки ("инструмент" в вашей терминологии)? Нет, конечно! Их чудо- код кое- как заработал- и слава Богу. При этом используется процедурный стиль, в котором все сущности перемешаны в одной большой функции, а код представляет из себя код- лапшу.
...
Рейтинг: 0 / 0
25 сообщений из 51, страница 1 из 3
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Народ, никак не могу уловить причину выразительности Python
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]