Разработка софта: подборка обучающих материалов

INOSTUDIO

Разработка веб-решений и мобильных приложений для малого и среднего бизнеса. Inostudio.com

Расскажите друзьям
INOSTUDIO
INOSTUDIO

C чего начался этот список? Недавно Таганрогское сообщество разработчиков проводило конференцию, посвященную front-end разработке. И они коснулись интересной темы – материалов, содержащих знания, которые лежат в основе труда разработчика программного обеспечения. Не секрет, что зачастую мы уделяем недостаточно внимания теоретической базе, чтобы целиком сосредотоиться на практике. И только опыт дает возможность осознать, что без фундаментальных знаний практика превращается буквально в ночную прогулку по полю граблей.

Поэтому мы решили опубликовать список материалов, которые, по мнению команды INOSTUDIO, будут очень полезны для укрепления фундамента знаний по разработке ПО.

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


  • Harvard

This is CS50


  • Caltech

Линейное программирование

Эффективные алгоритмы

Виртуальные машины

Параллельное программирование

Алгоритмы и структуры данных

Основы Java

Основы программной инженерии

Компьютерные сети

Математические основы Computer Science

Сложность вычислений и основы криптографии

Видеолекции «Школы Анализа Данных» Яндекса



Книги

Томас Кормен «Алгоритмы. Построение и анализ»

Брайан Керниган, Деннис Ритчи «Язык программирования C»

Харольд Абельсон, Джеральд Джей Сассман «Структура и Интерпретация Компьютерных Программ»

Генри Уоррен «Алгоритмические трюки для программистов»

Никлаус Вирт «Алгоритмы и структуры данных»

Альфред Ахо, Джон Хопкрофт, Джеффри Ульман «Структуры данных и алгоритмы»

Альфред Ахо, Моника Лам, Рави Сети, Джеффри Ульман «Компиляторы. Принципы, технологии и инструментарий»

Дональд Кнут «Искусство программирования. Основные алгоритмы». Том 1Том 2Том 3Том 4


II. Общие вопросы разработки ПО

Грэди Буч «Объектно - ориентированный анализ и проектирование с примерами приложений на С++»

Стив Макконелл «Совершенный код»

Роберт Мартин «Чистый код: создание, анализ и рефакторинг»

Эндрю Хант, Дэвид Томас «Программист-прагматик. Путь от подмастерья к мастеру»

Фредерик Брукс «Мифический человеко-месяц, или Как создаются программные системы»

Чад Фаулер «Программист-фанатик»

Эрих Гамма, Ричард Хелм, Ральф Джонсон, Джон Влиссидес «Приемы объектно-ориентированного проектирования. Паттерны проектирования»

Мартин Фаулер, Кент Бек, Джон Брант, Уильям Апдайк, Дон Робертс «Рефакторинг. Улучшение существующего кода»

Мартин Фаулер «Шаблоны корпоративных приложений»

Кент Бек, Мартин Фаулер «Экстремальное программирование: планирование»

Майкл Ховард, Дэвид Лебланк «Защищенный код»

Чарльз Петцольд «Код. Тайный язык информатики»

Джон Бентли «Жемчужины программирования»

Том ДеМарко, Тимоти Листер «Человеческий фактор. Успешные проекты и команды»

Питер Сейбел «Кодеры за работой. Размышления о ремесле программиста»

Кент Бек «Экстремальное программирование: разработка через тестирование»

Эрик Эванс «Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем»

Ричард Фейнман «Вы, конечно, шутите, мистер Фейнман!»

DavidKushner «MastersofDOOM»

Federico Biancuzzi «Masterminds of Programming: Conversations with the Creators of Major Programming Languages»

Линус Торвальдс, Дэвид Даймонд «Just for Fun. Рассказ нечаянного революционера»


III. Отдельные технологии


  • .NET


  • JavaScript

Дуглас Крокфорд «JavaScript: сильные стороны»

Addy Osmani «Learning JavaScript Design Patterns»

Nicholas Zakas «Maintainable JavaScript» 


Читайте на Rusbase:


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

Мы надеемся, что подборка окажется вам полезной. 

Фото на обложке: Shutterstock.



Комментарии

  • @brutemorse 11:50, 14.10.2015
    0
    И ничего про безопасность )
  • @brutemorse Anthony Marchenko 13:16, 14.10.2015
    0
    безопасность — это не про программирование )p.s. спасибо за митовский курс по покеру :)
  • Anthony Marchenko @brutemorse 13:33, 14.10.2015
    0
    еще как про программирование) безопасность - это про качество продукта. точно так же как перфоманс. есть много вещей которые если сразу не сделать, потом добавить или изменить очень дорого, а последствия от этих упущений бывают катастрофическими для бизнеса.
  • @brutemorse Anthony Marchenko 13:44, 14.10.2015
    0
    да, вы правы, безопасность — это всё таки про разработку софта, но не про программирование
  • @brutemorse Максим Демьянов (neon1ks) 10:11, 22.11.2015
    0
    Есть книга "Брюса Шнайера - прикладная криптография, протоколы, алгоритмы, исходные тексты на си"
  • Максим Демьянов (neon1ks) @brutemorse 19:23, 22.11.2015
    0
    Книга Шнайера хотя и культовая, но разработчикам совершенно не годится: нет конкретного гайда что можно использовать, чего нельзя. Плюс отсутствуют эпические атаки и методы борьбы с ними, которые появились в конце 2000х, середине 2010х. Есть просто замечательный курс на Coursera по Криптографии от Dan Boneh, его как раз очень рекомендую именно девелоперам (https://www.coursera.org/co....На MIT недавно появились курсы под Creative Commons. В том числе по безопасности: http://ocw.mit.edu/courses/...Мировая классика Security Engineering от Ross Anderson стала публичным достоянием (http://www.cl.cam.ac.uk/~rj.... Правда эта книга скорее для профессионалов в области безопасности.Еще именно для разработчиков из общедоступных: - много полезных материалов на http://safecode.org/ - OWASP https://www.owasp.org/ - классификация ошибок программирования на разных языках, связанных с безопасностью http://www.hpenterprisesecu... - можно еще набрать ссылок на конференции, где есть defensive track (в том числе российские ZeroNights, PHDays, YaC)
  • @brutemorse Svetlana Zykova 16:46, 14.10.2015
    0
    Сделаем отдельной подборкой, если интересно!
Комментарии могут оставлять только авторизованные пользователи.
Finopolis 2017
5 октября 2017
Ещё события


Telegram канал @rusbase