С чего начинать изучение программирования чайнику -1 уровня?
Попытки найти план, алгоритм изучения программирования с нуля провалились, потому что куда ни плюнь оказывается до нуля еще расти и расти надо. Видимо, подразумевается, что «чайник» уже должен иметь определенный набор знаний. А как быть тем, чей уровень удовлетворяет лишь требованиям на должность работника call-центра ( уверенный пользователь ПК)? Интересно, удовлетворяет ли вообще.
Знаю, что необходимо хорошо понимать математику, уметь логически думать, но, благо, с этим нет проблем. С физикой также дружу, вроде она нужна программистам, правда, я не понимаю зачем.
Что необходимо изучать параллельно с каким-то базовым языком программирования? Да и кстати с каким языком? (Какой-то сайт по обучению детей программированию на python в игровом формате нашел меня, хех)) так я на этом сайте и учусь питону, но вдруг прям самые азы нужно с чего-то более простого начинать). Попадалась инфа, что с алгоритмами следует познакомиться. Опять же: где и как?
Снова про языки программирования. Их черт знает сколько и они имеют свою специфику и свое назначение. Не нужно ли учить сразу несколько языков для разных задач?
Будет очень здорово, если подскажете, в какую сторону двигаться, потому что это темный лес, в котором у меня завязаны глаза)))
2.2K пост 11.9K подписчик
Правила сообщества
— Будьте взаимовежливы, аргументируйте критику
— Приветствуются любые посты по тематике программирования
— Если ваш пост содержит ссылки на внешние ресурсы — он должен быть самодостаточным. Вариации на тему «далее читайте в моей телеге» будут удаляться из сообщества
4 года назад
> вдруг прям самые азы нужно с чего-то более простого начинать
На этом уровне если что-то получается, то значит всё идёт хорошо. В программировании, если по-простому, нужно решать задачи целиком, а не делать всё по правилам. Писать хороший код и выработать чувство прекрасного можно и попозже.
Нужно придумать себе какую-то цель — сделать игру крестики-нолики или змейку, пройти комфортный для себя курс или что-то в этом роде. Главное чтобы процесс доставлял удовольствие, иначе будет больно и неприятно.
Идеально, если есть понимание для чего программирование нужно лично вам — какие-то проблемы которые хочется решить. Тогда можно потихоньку двигаться в эту сторону, видеть свой прогресс и радоваться.
По выбору языка: в целом для новичка я вижу два наиболее безболезненных направления — питон чтобы делать консольные приложения или простые игры (ну и много чего ещё), либо же HTML+JS. Первый вариант может оказаться попроще, но у HTML+JS легче создание более симпатичных вещей, которыми можно поделиться с друзьями и и получить плюс к мотивации. Выбирайте что легче идёт, это главный критерий. Если что, потом несложно поменять ветку развития, это тоже полезный опыт.
Несколько языков учить параллельно скорее смысла особого нет. Если вы дошли до уровня, когда нужны оба, то по-видимому уже не совсем чайник, ибо проект стал больше 250 строк кода =)
Как и всегда, на вопрос «нужно ли учить» отталкивайтесь от задачи — если требуется вдруг освоить JS, то осваивайте. Если нет, то и пусть.
Алгоритмы. Какие-то простые вы освоите по курсам, если будете их проходить. На вашем уровне знать их смысла нет, но и вреда мало. Та жа быстрая сортировка — хороший реальный пример применения рекурсии. Без нужды рекомендую не углубляться, но и избегать сильно не стоит. Не понимаете почему работает сортировка слиянием — пропускайте и решайте __свою__ задачу, потом может придет осознание. (все сортировки здесь приведены только для примера).
Теперь про «куда двигаться». Куда глаза глядят. Серьезно.
Но я помогу и предложу настоящую задачку: если вдруг серьезно дружите с физикой и математикой — сделайте свой игровой движок с физикой.
1. Берете Python и устанавливаете PyGame
2. Освойтесь, сделайте просто белое окошко.
3. Учитесь рисовать фигуры — круг, квадрат, линии.
4. Поймите как обрабатывать нажатия клавиш — чтобы круг двигался по экрану
5. Рисуете поле — четыре линии для стен, круг по центру экрана, квадрат куда угодно.
6. Сейчас можно вылететь за пределы стен. Исправьте это любым способом.
7. А чтобы квадрат тоже мог останавливать круг?
8. А если квадратов много? Например, создавать их по клику мышки.
9. А если квадраты повернуты на случайный угол? Как их рисовать и как с ними сталкивать летающий круг?
10. Задание с большой звёздочкой. Сделать чтобы квадраты можно было толкать, они бы летали и сталкивались друг с другом. Заодно проверите свои знания математики =)
По ходу дела придумывайте что-то своё — очки какие-нибудь, бонусы там. Используйте фантазию!
Эта задача требует знания примерно всего, что требуется от самого начинающего. Если сделаете — сможете двигаться дальше спокойно. Но ни в коем случае не настаиваю — если звучит сложно или скучно, то и не надо делать. Придумайте что-нибудь своё, это не так-то сложно. Пока думаете можно проходить какой-нибудь курс =)
Мотивация это очень важно, удачи! Если что, пишите мне на пикабу, помогу чем смогу.