Денис(keplerde)Если я правильно понял, то чтобы провести прямую от с++ до джаваскрипта нужно зайти с указателей манипулирования памятью???
Или это на каком то особенном этапе?
Как бы было бы неплохо отточить и сам питон) но это как я вижу дело времени, а для расширения кругозора и обогащения стека,
хотелось бы прояснить эти моменты))
Проведу линию на сколько я понимаю, что плюсы дали питону:
- Как и C, использует переменные для хранения данных и управления ими.
- Управляющие структуры Python, такие как операторы if/else, циклы и операторы switch, аналогичны структурам C.
- Cинтаксис функций подобен синтаксису C, с параметрами, заключенными в круглые скобки, и определениями функций, разделенными фигурными скобками.
- Python использует сборщик мусора для автоматического управления памятью, но основные концепции управления памятью аналогичны концепциям C (ну типа стека и кучи)
- Модульная система Python похожа на файлы заголовков C, что позволяет повторно использовать код и модульность.
- Имеет широкий спектр библиотек и модулей, доступных для различных задач, многие из которых реализованы на C или C++.
Бовсуновский:
Я бы не рекомендовал лезть в С, а использовать только С++. Да, все верно существует мнение. что бы работать с С++, нужно знать Си. Это заблуждение. Ранее я тоже поддерживал это заблуждение, но теперь вижу. что это было действительно заблуждением. В с++ нужно по полной использовать ООП и это обогатит ваше понимание ООП питон и др. языков.
Бьерн Страуструп один из создателей С++, как раз таки не рекомендует изучать Си перед С++, объясняя это тем, что программист не будет использовать все возможности С++.
Я очень долго размышлял, наверное сделаю курс уроков по С++(пока решения не принял), первый мой язык был Си. давно это было.
, код на С++ сложный пишут(не путайте код с языком), а язык обычный, что бы понять нужно действительно приложить немного усилий и подойти именно с позиции, что в нем все собирается.
Денис, Вы же хотите стать профессионалом, С++ вам нужен не только для того, что бы понять, как работают ссылки в js, python.
С++ прекрасно работает с Питон в связке, пример Toga, сами виджеты написаны на С++(причём с нуля), а все привязки работают на Питон. И быстро и приятно пользоваться.
Вы делаете задел на будущее.
--------------------------------------------------------
Вы все верно поняли.
С каким бы языком вы не сталкивались, первый вопрос, который Вы должны задать себе, что происходит с объектом, который в памяти(изменяется, не изменяется).
К сожалению эти вопросы уплывают напрочь, особенно в JS.
Дима (sway tornado) очень верно понял, как подойти, он подошёл с объекта, сначала видим объект, даём определение и понимаем что делает.
Вы тоже начните в С++ с понимания объекта (из жизни. Объект доска - можно распилить, покрасить, обстругать).
Но подойдите с указателей (по ходу вы вытащите методы и прочее, но это вам будет знакомо).
Нужно понять указатели.
Потом можно читать в любом порядке.
А питон от вас никуда не денется, кстати, вы атрибуты так до конца и не доделали.
Сами увидите после того, как покопаете С++, у вас взгляд и вопросы к языкам изменяться.
Работая с С++, Вы просто начинаете со скоростью ракеты двигаться к профессионализму и в других языках.
И не забывайте про объект, что я написал выше.
Вот смотрите, начинает человек изучать Питон, он прочитал, что такое объект, узнал, что все объекты и забыл на этом. В результате теряются определения и человек топчется на месте.
Что бы вернуть внимание и понимание в нужно русло и нужно разобраться с С++, там ничего само не происходит, а все собирается и в С++, если не исходить от объекта, ничего не получится, поэтому вы будете вынуждены двигаться от объекта, а это в свою очередь поставит вопросы к объектам и в других языках.
Не переживайте все точно получится.
Дима (sway tornado):
Валерий, я Вас полностью и целиком поддерживаю, и это было бы очень круто, когда Вам удасться запустить такой курс. Так как мы все с Вами начали профессиональное изучение языков программирования, я не говорю про один как-то, Ваш подход, Валерий, позволяет работать с любим языком, предлагаю не понижать планку, а только повишать. То нам очень было бы к стати, научится писать плагины, выджети на С++. Коль язык присущ в тех языках, с которыми мы непосредственно работаем, а это Python и Js для web-разработки, то это было бы очень к стати. И хотел сделать пометки, что язык С++ очень классный, и писать на нем на ООП было бы очень круто. Но хочу заметить, что к нему нельзя относится просто так легко, мол что там сложного, и что там учить. Он к себе требует очень серьёзного отношения, тем более, когда важны технические требования и т.д.
Я за то, чтобы овладеть на достаточном уровне Python и потом браться за что-то другое. Ведь на нем легче и приятней писать API, чем на том же php, который везде и всюду. Ждем с нетерпением новых видео комментариев к нашим работам. Спасибо, Вам, Валерий.
Бовсуновский:
Я уже несколько месяцев думаю над этим. Просто никак не получается вывести школу на более высокий уровень, без С++, так как никто не придумал иного, как передавать ссылки и работать с объектами, кроме как С++.
Я уже и план написал, с С++ я знаком давно, время от времени ковыряю для своего удовольствия.
Решение о том, что бы готовить профессиональных программистов было принято в 2022 году, я уже давно понял, что не хватает слов объяснить важность некоторых вещей, без С++.
Вот над этим я и думаю уже давно, потому что сказать человеку ты смотри, что делает объект, не работает. А вот если поковыряет С++, то - это понимание само придёт и станет привычкой, так как людям нужен реальный опыт.
С++ сам по себе он очень лаконичный с прекрасной справкой.
Да и вообще языки со статической типизацией они имеют ограниченное число компонентов, которое не меняется в любых ситуациях в этом плане с ними проще, чем с языками с динамической типизацией, здесь вариантность куда более высокая. Я все же рассматриваю С++ как язык, который поможет повысить уровень программирования в целом на любых языках.
Здесь ещё такой плюс, что связка JS, C++, Python везде с руками оторвут. (это ребятам поможет).
Вижу, что ребята стараются и хотят знать больше, но почему-то его многие бояться, на самом деле мета классы в питон намного сложнее С++.
Парня этого я посмотрел, видно, что парень шарит, но лекция у него для людей знающих, хотя бы один язык и то что я имел в виду, то что он делает постоянно, ставит вопрос, а что если, именно только так получается размышлять на С++, все нужно проверять, реально предсказать результат без практики, не очень получится и именно это мышление переносится автоматом на другие языки.
На сегодняшний день вообще есть два языка, которые помогают понять все другие языки.
С++ (это основы создания ссылок, объектов, памяти).
Lisp (кто буде работать в emacs - сталкнётся, там целое семейство языков). Но здесь чисто на любителя. Это прородитель первого ИИ. Мне нравится, но синтаксис на любителя. Все просто, функция defun одна и все на этом.
и там все списки и ничего кроме списков, например букву слове можно научить говорить, петь, танцевать и все в этом языке можно представит списком.
C++
int main() { return 0; }
Дальше поясню немного, если столкнётесь и будете искать понимание принципа. как писать код.
то же самое на lisp (язык обработки списков)
t
Это не опечатка, буква t означает true(используется в современных языках)
nil - то же самое, что false
t истина на котором строится принцип программирования на всех языках ниже.
если нечего будет возвращать вернёт саму себя.
Поэтому принцип программирования прост
и заключается в этом
(выражение :: дальше t или nil выполянть или не выполнять. вот и вся логика)
есть и другие операторы, но все строится на выражениях, если не лень по докам лазить, то научится можно быстро.
целая плеяда языков
Scheme
Racket
Clojure
Лого
AutoLISP
Interleaf Lisp
Nyquist
Rep
SKILL
TinyScheme
ICAD
файл настроек .spacemacs
смесь емакс и vim офигенно удобные , например открыть файл пробел + f + f
поиск по файлу пробел+ s + s
памятку себе сделал, если установить
https://github.com/syl20bnr/spacemacs
и потом в домашней директории заменить на мой файл, будет настроено автодополнение питон и джанго
Принцип spacemacs прост
если здесь посмотреть на строку 34
https://github.com/bovandr/spacemacs/blob/master/.spacemacs
dotspacemacs-configuration-layers
если хотим добавить С++, то с документации слоя
https://www.spacemacs.org/layers/+lang/c-c++/README.html
добавляем после dotspacemacs-configuration-layers
c-c++
там же описаны и хоткеи.