10 книг, которые должен прочитать каждый студент, изучающий информатику.
Я из математика, позже обратился к информатике. Я получил диплом по специальности «Математика и физика» и могу сказать, что математика по-прежнему остается моим любимым предметом.
После окончания учебы я обратился к самому горячему направлению инженерии, то есть к компьютерным наукам. Я начал свою магистерскую программу по компьютерным приложениям, и моей единственной целью было быстро заработать на этом самом популярном потоке. Как только я начал свое формальное образование в области компьютерных приложений, я начал больше любить компьютерную инженерию. Я должен был изучить языки программирования (C, C ++, Java, C # и т. Д.) И базу данных, чтобы как можно быстрее начать писать код. Но я был на совершенно другом пути, я тратил больше времени на сборку, компьютерную организацию, операционную систему, структуру данных, анализ данных и алгоритмы, компилятор, комбинаторику и т. Д. Как только я копнул глубже, я понял, что я очень близко еще раз к математическим понятиям. В этом причина моей любви к компьютерной инженерии.
Теперь изучение информатики было страстью, а не машиной для зарабатывания денег. Я начал изучать информатику от души и никогда не беспокоился о программе или оценках.
Спустя почти 10 лет я могу сказать, что был прав, сделав выбор в пользу компьютерной инженерии, а не компьютерных приложений. Сегодня мы управляем небольшой компанией по разработке программного обеспечения в Индии и используем ее для ежедневного переключения между различными технологическими стеками и технологическими платформами. Так что знание основных концепций очень помогает в повседневной работе.
Я с раннего детства увлекаюсь книгами и являюсь счастливым обладателем личной библиотеки (более 1200 книг). Но вам не нужно читать 1200 книг, чтобы изучать информатику, здесь я перечисляю 10 самых важных, полезных и очень важных книг. Я записываю их в точном порядке, в котором их следует читать:
- Компьютерная архитектура и цифровой дизайн (М. Моррис Мано)
- Язык программирования C (Деннис Ричи)
- Операционные системы (Эндрю С. Таненбаум)
- Структуры данных с использованием C (Эндрю С. Таненбаум)
- Компьютерные сети (Эндрю С. Таненбаум)
- Введение в алгоритмы (Томас Х. Кормен)
- Основы системы баз данных (Шамкант Б. Навате)
- Теория автоматов, язык и вычисления (Джеффри Д. Уллман)
- PL / SQL (Иван Байросс)
- Системный анализ и дизайн (Алан Деннис)
- Другое: Unix, Shell Script, Java Script, Ruby - это еще несколько хороших сценариев для изучения.
Помимо приведенного выше списка книг нужно выучить
Java: изучите документацию на официальном веб-сайте (или можете использовать Complete Reference, Black Book, Pearson, Apress, Head First или любую другую стандартную книгу). Кодекс практики - ключ к успеху.
Шаблоны проектирования. Изучите шаблоны проектирования как можно раньше и начните использовать их в своем программировании.
Python: Python очень прост в освоении, и вы можете изучить его на официальном веб-сайте, а также через учебные материалы на форуме. Изучение Python с Django - всегда бонус.
Продолжайте изучать как можно больше и внимательно следите за сообществом и фреймворками с открытым исходным кодом. Пожалуйста, не стесняйтесь задавать мне вопросы, я буду рад поделиться своими знаниями. Пожалуйста, поправьте меня, если я где-то ошибаюсь.