2022-09-08 14:29:23
Как бы я сейчас изучал программирование, если бы начинал с нуля.
Я бы начинал с языка программирования C. Почему?
Си - это база. На Си написаны операционные системы, программы управления космическими кораблями и даже другие языки программирования. Например, Python.
В си нету встроенных методов. Метод - это готовый кусок кода, который написал разработчик языка. Есть разные методы. Например, добавить число в конец списка или отфильтровать слова в списке по количеству символов в слове. Для вызова метода требуется 1 слово. В си вам придётся самостоятельно реализовать такой метод в виде отдельной функции.
Си - это низкоуровневый язык.
Низкоуровневые языки программирования — это такие языки, при помощи которых есть возможность «напрямую» обращаться к аппаратному функционалу компьютера.
Про СИ записано очень много фундаментальных видео от людей, которые реально разбираются в теме и обучили не один десяток студентов.
Таким образом
СИ - это фундамент для вашего программерского будущего. Вы будете понимать, как работает ваш код, что такое машинные инструкции, что такое компилятор, как это вообще всё устроено и работает изнутри. Вам будет легко учить другие языки программирования, тк большое количество языков написаны на си и имеют схожий синтаксис. Вы получите проверенные и качественные знания бесплатно, а не заплатите пару десятков, а то и сотню тысяч какому-то непонятно кому.
Как бы я изучал СИ:
От преподавателей вузов. Я ещё не видел более качественного и глубокого объяснения темы, чем у них.
Сперва я бы посмотрел полностью весь "Курс молодого бойца МФТИ (Язык Си)" от Тимофея Хирьянова. В школе 21 практически каждый знает его имя и смотрел его видео. Очень хорошо объясняет.
Ссылка на курс - тык
Затем "Язык С для начинающих (информатика 1 семестр)" тоже от МФТИ. Преподаватель: Дербышева Т.Н. Тоже просто сказка, а не преподаватель.
Ссылка на курс - тык
И в конце пройти курс на Stepik'e "Программирование на C и выполнение программ" от Игоря Жиркова, преподавателя из ИТМО.
Ссылка на курс - тык
На этом этапе вы поняли, что такое программирование и можете выбирать какой язык вы будете изучать в дальнейшем. Будь то Python, JS или Rust. Но параллельно вам нужно ещё изучить несколько инструментов, необходимых программисту. Про них ниже.
Дополнительные инструменты, которые нужны программисту:
Основы командной строки.
Командная строка — это первое, с чем сталкивается программист, работающий на *NIX системах, например, linux или macos. Её значение невозможно переоценить, она является основным способом взаимодействия с системой и способом управления множеством программ, таких как git или ansible.
Лично я изучал через курс от Хекслета.
Ссылка на курс - тык
Git
- это консольная утилита, для отслеживания и ведения истории изменения файлов, в вашем проекте.
Лично я изучал через курс от Хекслета.
Ссылка на курс - тык
Английский язык.
Понятное дело, что он необходим. Всё просто. Чем раньше начнёте изучать - тем лучше. Но на этапе изучения Си и "дополнительных инструментов" можно и без него.
Итог.
На изучение материала выше потребуется около 3 месяцев. В результате:
▸Вы начнёте понимать, что такое программирование.
▸У вас появится понимание того, как работают программы, которыми вы пользуетесь.
▸Будет легче определиться с языком, который вы хотите изучать следующим.
▸В дальнейшем, изучить любой другой язык программирования будет легче. Начиная от HTML, CSS, JS и заканчивая Python, Rust, C++.
Ещё раз план действий:
0. Английский.
1. Курс молодого бойца МФТИ (Язык Си).
2. Язык С для начинающих (информатика 1 семестр).
3. Программирование на C и выполнение программ.
4. Основы командной строки.
5. Git.
Если я что-то написал не так - дайте знать в комментариях.
P.S. Скорее всего, в дальнейшем я выложу пост-продолжение. В нём я напишу план действий для будущего абузера после изучения Си. Сейчас мне кажется, что это будет HTML -> CSS -> JS -> углубленное JS(не только фронтенд)/Python -> Rust -> Solidity. Но моё мнение может измениться. Посмотрим.
Админ|Twitter|Канал|Чат|YouTube
736 viewsedited 11:29