В подборку попали книги как для детей, которые увлекаются компьютерами и, возможно, хотели бы узнать техническую сторону вопроса, написать свой первый код, создать простую игру, так и для взрослых, заинтересованных в новой профессии. Некоторые книги пойдут на пользу даже специалистам, прошедшим стадию новичка, чтобы обновить знания или добавить в копилку какие-то нюансы.
«Думай как программист. Креативный подход к созданию кода. C++ версия», Антон Спрол
![«Думай как программист. Креативный подход к созданию кода. C++ версия» «Думай как программист. Креативный подход к созданию кода. C++ версия»](https://resizer.mail.ru/p/d9e95268-d7dc-5c6c-9ff9-8f550da52da5/AQAK2UyoHPI_vT8k-mGyjKK9GrK-ccJWVatuWK1vOz1AQhWxhCRSZviWlZNm31ocsTQUZTOELVrSZbSLKNsJyQeBetA.jpg)
Книга для начинающих программистов, которые хотят научиться создавать свой код и креативно решать разные задачи. Готовых инструкций и шаблонов здесь нет — автор учит понимать процесс написания кода, мыслить и решать задачи, а не действовать по скрипту. Каждая глава рассказывает об одной концепции программирования: классы, рекурсия и так далее. Книга написана легким, живым языком, поэтому ее можно дать даже ребенку 11−12 лет, если он заинтересован в ИТ.
Кроме теоретического материала в книге много упражнений для тренировки. Но эта книга скорее первая ступенька для входа в профессию, а не полноценный учебник по C++: после нее считать себя готовым программистом не получится.
«JavaScript для детей», Ник Морган
![«JavaScript для детей» «JavaScript для детей»](https://resizer.mail.ru/p/e0f466f7-b2de-5b39-96e2-16f834be709c/AQAK3colgh3jLJ9jcndoI6jh1naXk9GasJuMxB_kKEg3wjfTl0uryqlBc22kV-NLS8xR6TgJ4JkXdRuyNKWhjRONI0g.jpg)
Самоучитель по программированию для детей от 10 лет, которым нравятся компьютеры и которые хотели бы попробовать свои силы в ИТ. Книга разбита на три части — базовые элементы JavaScript, более продвинутые техники и работа с Canvas для добавления графики.
Благодаря книге читатель получит азы программирования в целом и познакомится с JavaScript, научится кодить и даже сможет написать несколько простых игр. Детальные инструкции, яркие иллюстрации и забавные примеры делают путешествие в мир ИТ и JavaScript особенно увлекательным. А для тех, кто захочет глубже погрузиться в тему, в конце книги есть рекомендации по обучающей литературе и по тому, в каких направлениях можно двигаться.
«Программирование для детей», Кэрол Вордерман, Джон Вудкок, Шон Макаманус
![«Программирование для детей» «Программирование для детей»](https://resizer.mail.ru/p/3939c04f-7a66-5e26-a03c-a9ca6ba116bf/AQAK765CbAZLQFzgohxgSonpxENXoeiIp-FJ-H4K3Osbxn0ioUkALW0ZJwbOE1wKNmySP6NDbGR2N7G2J4smnxehq4c.jpg)
Руководство по двум распространенным языкам — Scratch и Python — рассказывает об их возможностях и учит создавать с их помощью анимацию и игры. Поданная простым языком теория с иллюстрациями и советами программистов подкрепляется большим количеством практики. Причем проходить знакомство с кодом и выполнять начальные задания можно даже без доступа к компьютеру.
Примеры и скриншоты даны на английском языке, чтобы стимулировать будущих айтишников к его изучению.
Несмотря на то, что книга обозначена «для детей», она подойдет и взрослым, которые ничего не знают о программировании.
«Чистый код: создание, анализ и рефакторинг», Роберт Мартин
![«Чистый код: создание, анализ и рефакторинг» «Чистый код: создание, анализ и рефакторинг»](https://resizer.mail.ru/p/8b7fe9fd-d207-574f-beb9-77e3e0312aa0/AQAK44qaFaL2DnYKh32Wr_FJw5BSdd9vy9thvArNcsmU3TSLYF6QPzHyrwKieMccyQS6IpHd9_yY7Rflp_IPUeVz8FM.jpg)
Одна из самых популярных книг для программистов. Она подходит как новичкам, так и продвинутым разработчикам в качестве настольного учебника с подсказками. Роберт Мартин пошагово знакомит читателя с принципами и приемами написания кода, предлагает практические сценарии разного уровня сложности для его чистки или преобразования проблемного в более точный. А в финальных главах читатель получает эвристические правила хорошего кода. Много внимания уделено мелочам и тому, почему код «портится». Максимум пользы от книги получат разработчики, которые пишут на Java.
«Чистая архитектура. Искусство разработки программного обеспечения», Роберт Мартин
![«Чистая архитектура. Искусство разработки программного обеспечения» «Чистая архитектура. Искусство разработки программного обеспечения»](https://resizer.mail.ru/p/886de67b-a523-5431-88a7-04d42775ee77/AQAK1SkmwlIe49w9VZVC8YmzMTVGCJTcRIe956HFiQGyty9pZMDbTfLlvmWSChGgOH7MiRQYbpkY5k8Ovwi72qOBZxM.jpg)
Еще один «базовый учебник» от Роберта Мартина, но уже по дизайну и архитектуре программ. Как и предыдущая книга, эта тоже подходит не только новичкам, но и опытным специалистам, которые хотят разобраться, как грамотно строить структуру разрабатываемой программы. В книге описано много нюансов и принципов проектирования архитектуры. При этом фокус сделан скорее на теории, чем на практических примерах и схемах.
«Алгоритмы для начинающих», Панос Луридас
![«Алгоритмы для начинающих» «Алгоритмы для начинающих»](https://resizer.mail.ru/p/fb130a8f-991c-5107-a75a-8e04cafb4bc1/AQAKV-D27pfcaybVwLcdA1UoyYt0SO6CL-s1aFrriP2salqprTdxIinOsEOFpP2jHKtE9TUaF6nXtghz-q5hBqeZNkk.jpg)
Книга простым языком рассказывает желающим войти в профессию айтишника о сложных терминах и фундаментальных вещах. Рассказано, какими бывают алгоритмы, что такое структуры данных, на чем строятся основные языки программирования, по каким принципам они работают, можно ли овладеть всеми языками, и многое другое. Помимо большого пласта теории, автор также предлагает в конце каждой главы упражнения, которые помогут закрепить полученные знания.
«Идеальный программист. Как стать профессионалом разработки ПО», Роберт Мартин
![«Идеальный программист. Как стать профессионалом разработки ПО» «Идеальный программист. Как стать профессионалом разработки ПО»](https://resizer.mail.ru/p/05537b89-c725-541c-a934-93f1a7fc7259/AQAKorpOJyR-vNwX8JPS-l3jOQ7hQGz_MaW8Nbok8BYIntmvFmf7bENBep9e1BPJdLEEvHutOod-CQYxMvBcrfhFokc.jpg)
Эта книга — не учебник с правилами «как делать», а сборник методик, практики и инструментов для разработки программного обеспечения. Советы есть, но многое подается через истории и мысли Роберта Мартина о том, каким должен быть специалист и какие навыки должен иметь, помимо профессиональных. Поэтому книга читается не столько как образовательный материал, сколько как увлекательный рассказ с моралью или личными выводами автора.
«Программист-прагматик. Путь от подмастерья к мастеру», Эндрю Хант, Дэвид Томас
![«Программист-прагматик. Путь от подмастерья к мастеру» «Программист-прагматик. Путь от подмастерья к мастеру»](https://resizer.mail.ru/p/ffc5608b-b183-5179-9e7a-fe39b08f38ee/AQAKzqI7Svy2cXFfQI3ZkbzcE1xemhabSCalKgLaVyhkITBoofE546bDaGK0czNFCh9VSPcHdDDOIgjFjQx3ie-R4g0.jpg)
В этой книге охвачен широкий набор тем, помогающий начинающему айтишнику глубже понять ИТ-сферу как с технической, так и с личностной точки зрения. Авторы описывают разные подходы к разработке и тестированию, архитектурные методики для создания идеальной программы, правила эффективного тестирования, принципы работы с командой и взаимодействия с аудиторией. И это только часть ключевых моментов, которые есть в книге. Хотя некоторые технические нюансы сегодня уже не актуальны, в книге много базовых вещей.
«Выразительный JavaScript», Марейн Хавербеке
![«Выразительный JavaScript» «Выразительный JavaScript»](https://resizer.mail.ru/p/9cd1eb31-0121-527a-ad51-3b8da8ee26c7/AQAKsFjMaL1nK8joFf4uvbBYnj7ioa2Ssu2htoJpPAT7yVgPoeV5U1cRtKd03mXvaAVV1-ibwL18ydMAqdz0IakwY_0.jpg)
Книга подойдет и только заинтересовавшимся ИТ-сферой, и тем, кто уже начал в нее погружаться. Автор просто и понятно раскрывает базовый синтаксис JavaScript, функции, модульность и асинхронное программирование. Он учит писать красивый код, смешивая теорию с примерами из своего опыта и практическими заданиями. На выходе получается учебник, который новичкам стоит держать всегда под рукой, чтобы в процессе работы возвращаться к нему для решения возникающих вопросов.
«Кровь, пот и пиксели», Джейсон Шрейер
![«Кровь, пот и пиксели» «Кровь, пот и пиксели»](https://resizer.mail.ru/p/4f1211d2-9f24-5b41-b498-8faf58dc71b2/AQAKWEON9e-pgUEgoc2PKrXYE9i1FXV1hzyDiM3WW1DG3OOoCaYR6zDob_OUEFApxRVw20vhVPj1pCowYpUDG0zwHvY.jpg)
Эта книга не расскажет о том, как написать игру с нуля и какими инструментами это сделать будет быстрее. Ее цель — погрузить заинтересованного читателя в индустрию видеоигр и в историю рождения культовых проектов вроде Diablo III или The Witcher 3. С ней можно узнать, через что проходят создатели, прежде чем игра окажется на полке магазина, почему откладываются релизы. Для кого-то это будет просто увлекательное развлекательное чтение о любимых играх, а кто-то задумается, хочет ли погружаться в гейм-индустрию уже как разработчик.