Порядок изучения C#?

Добрый день. Последние пол года разбираю С# и совсем немножко C++, пишу кое какие мелкие программки для своих нужд.
Но хотелось бы, что бы хобби постепенно переросло в работу. Но нужны более прочные знания.
Из книг для себя выбрал Шилдта в качестве опорной базы и позже куплю Рихтера.
Чем еще дополнить свою библиотеку? Интересно абсолютно все, что связано с языком.
И по возможности если кто напишет свою рекомендацию, то хотелось бы аналоги книг для C++.
Какой подход к изучению применять? Стоит ли уделять программированию как больше времени, вплоть до 24/7 или есть золотая середина, которая позволит получить максимум пользы для себя и не в ущерб свободному времени.
  • Вопрос задан
  • 4162 просмотра
Решения вопроса 2
lexxpavlov
@lexxpavlov
Программист, преподаватель
Неплохая книга Бена Ватсона "С# 4.0 на примерах" - много примеров, как делать конкретные вещи, в том числе, по WPF.

Программирование зиждется на трёх китах - 1) знание (синтаксис) языка, 2) алгоритмы и 3) архитектура. Причём, последние не связаны с языком. Читайте не только о языке, но и общие знания - паттерны, архитектура, алгоритмы. В большинстве классических книг примеры написаны не на c#, но их чтение сильно развивает как программиста.
Мартин Р. Чистый код. Создание, анализ и рефакторинг рекомендую прочитать хотя бы до 12 главы, дальше - углубление. Первые главы дают шикарный базис для построения архитектуры - почему писать так, а не иначе. Примеры на Java, но этот язык довольно сильно похож на C#.
Фаулер М. Рефакторинг. Улучшение существующего кода классическая книга
Гамма Э и др. Приёмы объектно-ориентированного проектирования суперклассическая книга, так называемая "банда четырёх"
Скиена С. Алгоритмы. Руководство по разработке книга о алгоритмах, проще, чем известная книга Д. Кнута

Ну и посмотрите этот список книг.
Ответ написан
Комментировать
@Free_ze
Пишу комментарии в комментарии, а не в ответы
Чем еще дополнить свою библиотеку?

Что-то про базы данных (MSSQL Server в частности, вроде Виера.Р. "Программирование баз данных MSSQL Server для профессионалов") и о каких-то прикладных технологиях, которыми вы бы хотели заниматься (ASP.NET MVC, WPF и т.п.).
Для общего профессионального развития неплохо бы почитать что-то про операционные системы (Таненбаум, тот же Рихтер о программированнии под Windows на C/C++) и сети.

Стоит ли уделять программированию как больше времени, вплоть до 24/7

Если хотите убить интерес к сфере как можно скорее, то это идеальный план.

Ну и, да, посмотреть на реальный проект будет вполне полезно для новичка.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@goodfornothing
Троелсен -> Рихтер -> junior -> etc.
Ответ написан
Комментировать
Jeer
@Jeer
уверенный пользователь
Чтобы научиться программировать - нужно программировать :) Одними книгами сыт не будешь. Если у вас получается читать справочник Шилдта - это замечательно. Но обязательно при этом что-то делать своими руками. Например, есть пошаговые краткие руководства на метаните. Там пошагово представлены все требуемые темы, помимо самого шарпа у вас возникнет много непонятных областей, например про асинхронность или linq или про базу (база может быть написана на c#, либо созданные таблицы должны быть замапплены в c# классы, собственно, есть подход code first или db first). По таким небольшим вопросам обычно не здоровенные справочники, а мягкая обложка на 200-300 страниц, которые вполне проясняют многие непонятные моменты. Конечно, по базам и какому-нибудь wcf существуют тяжелые трактаты, но можно начать и без этого
Ответ написан
AmigoCode
@AmigoCode
Начинай с ulearn.me параллельно читай книги Эндрю Троелсен C# 6.0 + Дж. Рихтер CLR via C#
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы