Предлагаем вам ознакомиться с коллекцией книг, которые помогут вам сделать ваши первые шаги в программировании или же улучшить уже имеющиеся навыки.
Начинающим
Для меня изучение программирования началось примерно тогда же, когда я научился читать и писать. Я был любителем поиграть в видеоигры и всегда хотел научиться делать их самостоятельно. Различные магические истории, подобно играм, были моей пассией, и это было очень кстати, так как компьютер казался самым близким к чему-то магическому из всего, что у меня было. В то время многие компьютеры загружались непосредственно в среду программирования, и было очевидно, что если я хочу создать что-то на компьютере, то мне нужно научиться программировать. Тогда отец моего лучшего друга дал мне книгу, которая была направлена на то, чтобы научить детей программировать, а именно — создавать компьютерные игры.
Сегодня компьютеры очень распространены, и мы постоянно что-то создаём с их помощью. Однако если вы относите себя к тому типу людей, которые любят всё разбирать и смотреть, как оно работает, то вам, определённо, должно понравиться то, как работают приложения, которые мы используем ежедневно, а их разнообразие и то, с какой скоростью пополняется их количество, делает процесс изучения чего-то нового бесконечно увлекательным. И данная коллекция книг поможет вам в этом.
Половину своей жизни я гнался за своей мечтой. То, с чего я начинал — любовь к компьютерным играм, переросло в успешную карьеру, которая позволяет мне путешествовать вокруг света и каждый раз открывать для себя что-то новое. На своём пути я был также вдохновлён и другими шикарными книгами.
Мне хочется верить, что моя коллекция книг поможет кому-нибудь сделать что-нибудь магическое самому и исполнить свою мечту.
Начинающим и детям
- Super Scratch Programming Adventure! Learn to Program By Making Cool Games от проекта LEAD
- Video Game Programming for Kids от Джонатана С. Харбора
- JavaScript for Kids: A Playful Introduction to Programming от Ника Моргана
- 3D Game Programming for Kids: Create Interactive Worlds with JavaScript от Криса Сторма
- Adventures in Minecraft от Дэвида Уэйла и Мартина О Ханлона
- The Game Maker’s Apprentice: Game Development for Beginners от Джэйкоба Хабгуда, Марка Овермарса и Фила Вилсона
- Code: The Hidden Language of Computer Hardware and Software от Чарльза Петцольда
- Gödel, Escher, Bach: An Eternal Golden от Дугласа Р. Хофстедера
- Eloquent JavaScript: A Modern Introduction to Programming от Марижн Хэвербеке
Умельцам
- Coders at Work: Reflections on the Craft of Programming от Питера Сайбела
- Beautiful Code: Leading Programmers Explain How They Think от Энди Орама и Грега Вилсона
- The Pragmatic Programmer от Эндрю Ханта и Дэвида Томаса
- Clean Code: A Handbook of Agile Software Craftmanship от Роберта С. Мартина
- Code Complete: A Practical Handbook of Software Construction от Стива МакКонелла
- Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems от Дэвида Дж. Агнаса
- Seven Languages in Seven Weeks от Брюса Тейта
- Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement от Эрика Редмонда, Джима Р. Вилсона
- Seven Concurrency Models in Seven Weeks от Пола Бутчера
- The C Programming Language известная так же, как K&R от Брайана В. Кернигана и Денниса М. Ритчи
Функциональное программирование
- Professor Frisby’s Mostly Adequate Guide to Functional Programming от Брайана Лонсдорфа
- The Little Schemer от Даниеля П. Фридмана, Мэттиаса Феллайзена, Дуэйна Бибби и Геральда Дж. Суссмана
- Learn You A Haskell for Great Good от Мирана Липовака
- Purely Functional Data Structures от Криса Окасаки
- Basic Category Theory for Computer Scientists от Бенджамина Пирса
Академическая тематика
- The New Turing Omnibus: Sixty-Six Excursions in Computer Science от А. К. Дьюдни
- Design Patterns: Elements of Reusable Object Oriented Software от Ерика Гамма, Ричарда Хелма, Ральфа Джонсона, Джона Вилссайдса и Грэйди Буха
- How to Design Programs от Матиаса Феллайзена, Роберта Брюса Финдлера, Мэтью Флэта и Ширам Кришнамурти
- The Structure and Interpretation of Computer Programs от Гарольда Эбельсона, Геральда Сассмана и Джули Сассмана
- Introduction to Algorithms, 3rd Edition от Томаса Кормена, Чарльза Лайзерсона, Рональда Ривеста и Клиффорда Штайна
- Algorithms от Роберта Седжвика и Кевина Уэйна
- The Art of Computer Programming: Vol. 1 от Дональда Кнута
- The Art of Computer Programming: Vol. 2 от Дональда Кнута
- The Art of Computer Programming: Vol. 3 от Дональда Кнута
- Programming Pearls от Джона Бентли
- How to Prove it: A Structured Approach от Даниеля Велльмана
- The Annotated Turing: A Guided Tour Through Alan Turing’s Historic Paper on Computability and the Turing Machine от Чарльза Петцольда
- Introduction to Graph Theory от Ричарда Трудо
- Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp от Питера Норвига
- Artificial Intelligence for Humans: Deep Learning and Neural Networks от Джеффа Хитона
Компиляторы
- Compilers: Principles, Techniques, and Tools от Альфреда Ахо, Моники Лам, Рави Сеси и Джефери Ульмана
- Types and Programming Languages от Бенджамина Пирса
- Advanced Topics in Types and Programming Languages от Бенджамина Пирса
Продуктивность и принципы
- Rework от Джейсона Фрида и Дэвида Хайнемайера Ханнсона
- The Mythical Man-Month: Essays on Software Engineering от Фредерика Брукса мл.
- Continuous Delivery от Джеза Хамбла и Дэвида Фэрли
- AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis от Виллияма Брауна, Рафаеля Мэлво, Хэйса МакКормика и Томаса Маубрэя
- Refactoring: Improving the Design of Existing Code от Мартина Фаулен, Кента Бека, Джона Бранта, Вильяма Опдайка, Дона Робертса и Эрика Гамма
- The Clean Coder: A Code of Conduct for Professional Programmers от Роберта Мартина
- The Passionate Programmer: Creating a Remarkable Career in Software Development от Чада Фаулера
- Test Driven Development By Example от Кента Бека
- The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win от Джена Кима, Кевина Бера и Джорджа Спаффорда
- The Cathedral & the Bazaar by Eric S. Raymond (ESR) — Musings on Linux and Open Source by an Accidental Revolutionary, 2001
- The Art of Unix Programming от Ерика Рэймонда
Надеюсь, этот список книг будет для вас неплохим началом в изучении программирования, и в дальнейшем вы найдёте ещё больше материала, интересного вам.
Другие статьи по теме
5 отличных англоязычных книг по теоретическому Computer Science
Комментарии