Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как правильно учить программирование?

Здравствуйте! Удивительное дело, но я увлёкся программированием только к концу 4-го курса. Раньше мне это казалось какой-то рутиной. Сейчас себе поставил цель за год-полтора выучиться до уровня джуна — чтобы попасть на первую работу.
Решил, что хочу развиваться в backend'e. Выбрал такой стек: C#, ASP.NET, sql. Постепенно буду осваивать и новые технологии.
Многие говорят, что нужно изучать не язык программирования, а само программирование, нужно научиться решать задачи. Погуглив и полистав этот ресурс, многое для себя узнал нового. Осознаю и даже уже замечаю, что каких-то фундаментальных вещей мне не хватает. В общем, что я хотел спросить-то...
1) Я узнал, что в первую очередь нужно освоить алгоритмы, структуры данных, ООП, парадигмы. Есть ли ещё что-нибудь фундаментальное, что нужно освоить? И можете ли посоветовать лучшую, на ваш взгляд, литературу по всему этому? Да, в инете всё можно найти, я читал статейки на подобные темы, но ответ от опытных специалистов всё-таки считаю более ценным.
2) И ещё у меня такая проблемка: логическое мышление оставляет желать лучшего (мягко говоря). Можно ли его натренировать, занимаясь непосредственно программированием или же нужно пробовать какие-то другие подходы? Заранее благодарю за ответы!
3) Стоит ли учить теорию? Да, самое главное - практика. Но в тоже время теории тоже немало. Наиболее главную информацию я конспектирую в тетрадь, чтобы информация лучше откладывалась в голове (я - визуал). Как считаете, не глуп ли такой подход?
ПрограммированиеIt (информационные технологии)+4
Анонимный вопрос
  · 1,4 K
Я 1С разработчик, интересуюсь программированием и смежными областями, веб разработкой...  · 10 сент 2021  · 1c.alexcode.ru
Добрый день!
Чтобы изучать саму теорию программирования, вам все равно придется применять ее в какой-то интерпретации - т.е. использовать какой-то язык программирования.
Хорошим упражнением является использование псевдокода. Т.е. вы пишите алгоритмы без привязки к синтаксису конкретного языка, "своими словами". Такой подход может помочь применить алгоритм в практически в любом языке. Например, написали обратный обход коллекции в псевдокоде, затем переписали на js, python, c# и т.п. - логика будет одна и та же.
Программирование - это не только ООП. Есть и другие парадигмы, у которых свои плюсы и минусы, и свои области применения - это императивное программирование и функциональный подход.
Голую теорию зазубривать бессмысленно - все нужно закреплять и проверять практикой.
Логику развить можно. Я сам гуманитарий по складу мышления, но за 17 лет работы логический аппарат так или иначе прокачивается. Решайте логические задачи, попробуйте свои силы на сайте Codewars - там можно решать задачи разного уровня сложности на самых разных языках.
Кстати, выбранный вами стек будет неплохо монетизироваться на российском рынке. Достаточно много корпоративного ПО, порталов и т.п. используют данный стек.
Также, не торопитесь записываться на платные курсы. Есть множество достойных бесплатных ресурсов, как на русском, так и на английском языке (последних, конечно, больше :)). EdX, Coursera, MIT Open Courseware могут стать хорошим подспорьем.
Практикующий разработчик, преподаватель, ментор и вечный студент.Перейти на 1c.alexcode.ru
Веб-разработчик, любитель истории, космоса и всего, что связано с наукой.  · 7 окт 2021
Ох. Боюсь, вы выбрали не совсем подходящие к современным реалиям технологии. Asp почти мертв, C# более популярен в геймдеве, чем в бэкэнд разработке. Если вы решили развиваться в web-разработке, то крайне рекомендую вам осваивать один из следующих языков: php, python, go. Это наиболее востребованные рынком технологии. На гитхабе существует репозиторий, который... Читать далее
Услуги психолога. Личная и семейная терапия.   · 21 окт 2021  · psiholog-aleksandr-astafev.clients.site
На мой взгляд осваивать теорию нужно, но желательно параллельно с практикой, для лучшего усвоения. Иногда только через практику теория становится понятной. Не раз замечал, что если есть теория, но нет представления куда её можно применить, она становится бессмысленной и изучение её превращается в банальную зубрёжку и быстро забывается. Логическое мышление присутствует... Читать далее
1 эксперт согласен
Всё верно. Алгоритмы — основа программирования. Конечно, нужно знать ещё синтаксис языка, но без алгоритмов он... Читать дальше
программист  · 29 окт 2021
Мне кажется, что в вашем случае: осталось 1.5 года, способностей выше коллег к программированию нет - лучше сосредоточиться на практике. по книгам: алгоритмы: корман, сэлжвик, шень написание кода: макконелл дизайн систем: я бы посмотрел курс на курсере Читать далее