34 полезные книги по программированию, рекомендуемые для начинающих разработчиков

Опубликовано: 2017-01-09

Неудивительно, что плохо написанный код может привести к провалу проекта, будь он большим или маленьким. Поэтому написание чистого и управляемого кода чрезвычайно важно для общего успеха проекта разработки программного обеспечения.

Существуют различные методы, с помощью которых можно научиться правильно программировать. Очевидно, что практический опыт чрезвычайно ценен, но наличие прочных теоретических знаний также чрезвычайно полезно.

Часть этих знаний приобретается за годы учебы, но быть в курсе важных книг и статей может быть очень полезно.

В настоящее время программисты подходят к проблемам методом быстрого решения. Если метод проб и ошибок не сработал, вы можете найти проблему в Google и попытаться найти там решение.

Однако, если вы хотите стать опытным программистом, а не «мартышкой кода», чтение литературы является обязательным. Чтение и изучение чужого кода позволит вам по-новому взглянуть на проблемы и легче их решать.

Если вы не знаете, с чего начать, читайте дальше. Мы собрали исчерпывающий список книг, получивших высокую оценку и уважение в сообществе разработчиков.

Чтобы помочь вам быстро перейти к списку книг по вашему любимому языку, мы классифицировали названия книг в соответствии с языком программирования, с которым они связаны, а также даем краткое описание каждого языка.

Какой ваш любимый язык программирования?

  1. Javascript
  2. С
  3. С#
  4. С++
  5. Ява
  6. PHP
  7. питон
  8. Рубин

JavaScript

JavaScript — это язык, который в последнее время переживает своего рода возрождение. Хотя раньше он использовался исключительно для клиентских функций, которые выполняются в веб-браузерах пользователей, в настоящее время он используется в качестве серверного языка, в некоторых случаях с использованием Node.js.

Некоторые ошибочно считают его «игрушечным» языком, но, тем не менее, он в основном используется для практических функций на стороне браузера. JavaScript имеет тенденцию учить плохим привычкам в структуре кода и архитектуре из-за своей прощающей природы. Если у вас есть интерес к JavaScript, следующие заголовки будут стоить вашего времени:

Более разумный способ изучения JavaScript

  1. Более разумный способ изучения JavaScript: новый подход, который использует технологии, чтобы вдвое сократить ваши усилия

Эффективный JavaScript

2. Эффективный JavaScript : 68 конкретных способов использования возможностей JavaScript (серия «Эффективная разработка программного обеспечения»)

Красноречивый-JavaScript

3. Eloquent JavaScript : современное введение в программирование

Вы не знаете JS: ES6 и далее

4. Вы не знаете JS: ES6 и далее

JavaScript: полное руководство

5. Head First JavaScript Programming: руководство для мозга

JavaScript: полное руководство

6. JavaScript: Полное руководство : Активируйте свои веб-страницы (Полное руководство)

С

Как правило, язык C лучше всего подходит для системных требований более низкого уровня, но он также используется в операционных системах и драйверах устройств, а также важен при разработке игр. Программы, написанные на языке C, как правило, имеют чрезвычайно высокую производительность во время выполнения.

С другой стороны, этот язык не идеален для разработки стандартных приложений и редко используется в веб-разработке. Язык также подвержен и восприимчив к различным недостаткам безопасности. Довольно интересно, что почти все эксплойты веб-безопасности могут быть связаны с неправильным использованием C.

Прочтите следующее:

Язык программирования C

7. Язык программирования C

Программирование на C 4th Edition Developers Library

8. Программирование на C (4-е издание) (Библиотека разработчика)

Руководство для начинающих по программированию на C, 3-е издание

9. Руководство для начинающих по программированию на C (3-е издание)

Библиотека разработчиков C Primer Plus 6th Edition

10. C Primer Plus (6-е издание) (Библиотека разработчика)

Практическое программирование на C

11. Практическое программирование на C : почему 2+2 = 5986? (Краткие справочники)

С#

Неудивительно, что язык C# основан на языке C, и, следовательно, изучение структуры языка можно перенести на другие языки, такие как Java, Objective-C, PHP и C++.

C#, наряду с неизменно популярным Java, является одним из самых востребованных языков программирования для работодателей. Visual Studio на основе C# считается во всем мире лучшей IDE, в то время как другие инструменты на основе C#, такие как Xamarin Studio и платформа Mono, широко используются программистами для написания приложений C# для мобильных устройств, Mac, Linux и т. д.

C# — это объектно-ориентированный язык, позволяющий использовать интуитивно понятные объектные модели. Хотя некоторые программисты предполагают, что это что-то вроде мошенничества, многие программисты на самом деле предпочитают его.

Кроме того, C# — хорошо управляемый язык, поэтому программисту не нужно беспокоиться об управлении памятью.

Дальнейшее чтение, которое мы рекомендуем:

C-6.0 и платформа NET-4.6

12. C# 6.0 и платформа .NET 4.6

С в глубине

13. Подробно о C#, 3-е издание

Руководство для игроков C

14. Руководство игрока на C# (2-е издание)

С++

C++ эффективно сочетает низкоуровневую мощь C с несколькими уровнями абстракции, что делает его более многомерным и динамичным языком.

Если функции не существует в языке, ее часто можно записать в него, если вы достаточно гуру. С помощью этого языка вы можете выполнять императивное, функциональное, декларативное и объектно-ориентированное программирование.

Тем не менее, C++ чрезвычайно надежен, а способы взаимодействия его разнообразных функций очень сложны. Ни один разработчик не может использовать весь набор строительных блоков, предоставляемых C++, но чтобы выбрать правильное подмножество для программы, требуются большие усилия и мудрость.

Эти книги могут помочь вам лучше понять этот язык:

15. Ускоренный C++: практическое программирование на примере

С Праймер

16. Учебник по C++ (5-е издание)

55 конкретных способов улучшить ваши программы и дизайны

17. Эффективный C++: 55 конкретных способов улучшить ваши программы и проекты (3-е издание)

Ява

Java — самый популярный язык в корпоративных приложениях. Прежде всего, он поддерживается Oracle и имеет множество расширений/платформ, написанных поверх него, включая новые вещи, такие как NoSQL и языки функционального стиля, такие как Scala.

Java — это язык Android, поэтому он также имеет большое значение для разработки мобильных приложений и поддерживается Google. Однако инструменты Java могут быть сложными в работе.

Основные материалы для чтения для энтузиастов Java включают:

Глава первая Java

18. Head First Java, 2-е издание

Java: полный справочник, девятое издание

19. Java: полный справочник, девятое издание

Эффективная Java

20. Эффективная Java (2-е издание)

Шаблоны дизайна Head First: руководство для мозга

21. Шаблоны дизайна Head First: руководство для мозга

Головоломки Java: ловушки, подводные камни и закоулки

22. Java Puzzlers: ловушки, подводные камни и угловые случаи

PHP

По какой-то причине PHP — это язык, который люди либо любят, либо ненавидят, а иногда и то, и другое. PHP широко распространен, но в то же время многие считают его ужасным (т.е. плохо разработанным) языком. Тем не менее, PHP используется на огромном количестве успешных веб-сайтов, включая Facebook и WordPress. Язык используется исключительно для веб-приложений.

Напротив, язык PHP демонстрирует некоторые низкокачественные работы, созданные в отрасли, с множеством примеров плохого кода в Интернете.

Для начала прочтите эти книги:

Продвинутое PHP-программирование

23. Расширенное программирование на PHP

Глава первая PHP и MySQL

24. Head First PHP и MySQL: руководство для мозга

Современные новые функции PHP и передовой опыт

25. Современный PHP: новые функции и передовой опыт

PHP Мураха и MySQL

26. PHP и MySQL Мураха, 2-е издание

PHP и MySQL от новичка до ниндзя

27. PHP и MySQL: от новичка до ниндзя : простой способ создать собственный веб-сайт на основе базы данных

питон

Python — популярный интерпретируемый язык, известный быстрой автоматизацией повторяющихся задач. Это экономит много времени на разработку для профессиональных программистов. Согласно TIOBE, известному указателю языков программирования, Python является 4-м по популярности языком программирования по состоянию на декабрь 2016 года.

Python считается немного медленным, когда речь идет о времени компиляции по сравнению с другими современными языками программирования. Есть также некоторые проблемы с безопасностью, поскольку он динамически типизирован.

Python не так широко используется для разработки мобильных приложений. Но можно писать приложения для Android, iOS или Windows на Python, реализуя платформу Kivy.

Узнайте больше, увидев эти названия:

Изучение Python

28. Изучение Python, 5-е издание

Подумайте о Python

29. Think Python: как думать как компьютерный ученый

Поваренная книга Python

30. Поваренная книга Python, третье издание

Ускоренный курс Python

31. Ускоренный курс Python : практическое введение в программирование на основе проектов

Рубин

Ruby — очень популярный и «крутой» esp. в стартап-сообществе. Многие считают, что это превосходная альтернатива Java, когда речь идет о быстром создании веб-приложений.

Потенциальные недостатки включают тот факт, что это быстро развивающийся язык с большим количеством устаревшей онлайн-документации. Это не очень полезно для разработки приложений с графическим интерфейсом и действительно имеет отношение только к веб-приложениям.

Улучшите свои знания Ruby on Rails, прочитав:

Красноречивый рубин

32. Красноречивый Рубин (Addison-Wesley Professional Ruby)

Практическое объектно-ориентированное проектирование в Ruby

33. Учебное пособие по Ruby on Rails : Изучите веб-разработку с помощью Rails (3-е издание) (Addison-Wesley Professional Ruby)

Учебник по Ruby on Rails

34. Практическое объектно-ориентированное проектирование в Ruby : Agile Primer (Addison-Wesley Professional Ruby)

Если вы дочитали статью до этого места, то заметите, что мы рассмотрели все основные языки программирования и соответствующие материалы, которые, по нашему мнению, должны прочитать энтузиасты-программисты.

Удачи и приятного обучения!