Python

Вопрос про языки программирования и фреймворки

Правда ли, что сам язык программирования по сути ничего не может, кроме простеньких скриптов, а вся серьезная разработка ведется уже в фреймворках и по сути синтаксис учится лишь для понимания, того что делаешь.
Я к тому, что не сможешь делать что-то в бэкэндэ зная лишь синтаксис языка, но не зная фреймворков или сделать игру без движка. Я сейчас говорю про языки общего напровления, Java/Python/C++, понятно что тот же JS изначально был сделан для работы с сайтами и легко вставляется в проект (просто прописать путь script.js в html)
да
Кисточка тоже ничего не может, её ещё и рисовать надо.
АБ
Алексей Башун
89 589
Лучший ответ
Фреймворк - это всего лишь готовый код, который написан на том самом языке, который "ничего не может". Реализация рутинных действий, ускоряющая написание твоего кода.

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

И движок игры - это тоже всего лишь готовый код на языке, который "не может". Пройди курс математики любого технического ВУЗа - и сам сможешь написать собственный движок с нуля.

P.S. Другое дело, если сам по себе язык очень медленный. И если производительности Python для web-фреймовка ещё хватает, то делать что-то более серьёзное (от 3D-игр до нейронных сетей) на столь медленном языке не имеет смысла. Потому, когда говорят о нейронных сетях или BigData на Python, в реальности всё сводятся к тому, что берётся готовая библиотека, реализующая нужную обработку (и в которой нет ни одной строчки Python-кода) и на Python пишется интерфейсная прокладка между креслом и этой библиотекой.
SS
Suslik Suslovits
59 527
умные люди изобретают велосипеды, мудрые люди на них ездят.
Azat Alymbaev
Azat Alymbaev
87 618
"Правда ли, что сам язык программирования по сути ничего не может, кроме простеньких скриптов, а вся серьезная разработка ведется уже в фреймворках и по сути синтаксис учится лишь для понимания, того что делаешь."

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

"понятно что тот же JS изначально был сделан для работы с сайтами и легко вставляется в проект (просто прописать путь script.js в html)"

Что за бред аутиста? Каким образом то, что скрипт вставляется в проект, означает, что там не надо использовать фреймворки?
И на JS полно фреймворков - React, Vue. Не говоря о фреймворках для node.js, который на бек-енде.
Да и в проект оно не всегда так вставляется - есть Babel и тоже есть системы сборки - для автоматической сборки многих файлов в единый скрипт и для поддержки новых фич JS, которых браузеры еще не все поддерживают.
Сергей Ваганов
Сергей Ваганов
92 464
Сам язык программирования может всё, но в реальных проектах нет смысла изобретать велосипед заново. Это нужно лишь для обучения.
Фреймворки тоже на них написаны, лол.
po
polievktov69
16 564
Старые операционные системы написанны на чистом Си.
Некоторые драйвера на ассемблере.
Без каких-либо фреймворков.
И любой фреймворк строится из маленьких кирпичиков.
Ерсин Сапаков
Ерсин Сапаков
4 627
В целом правда. Не знаю как в JS, но вот в том же python, например, для анализа и визуализации данных тебе придется изучать новые библиотеки (numpy, pandas, matplotlib и т. д.) и в них реализованы свои методы и классы. На одном голом языке особо далеко не уедешь, но знать его на определенном уровне, само собой, нужно, чтобы понимать как работать с тем, что я перечислил.