воскресенье, 29 сентября 2013 г.

Книги

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


JAVA

Когда я начинала писать под андроид, по своей основной работе я писала на с++. И хотя по синтаксису и общему принципу эти языки очень похожи, были вещи, которые рвали мой сиплюсплюснутый мозг в клочья (например безымянные внутренние классы). Поэтому не ведитесь на схожесть языков и если хотите писать на Java, то ее сначала надо изучить. Принцип «по ходу дела разберусь», конечно, работает, но времени для этого понадобиться гораздо больше.

1. Изучаем Java

1004121257 Автор: Кэти Сьерра, Берт Бейтс
Издательство: Эксмо
Год: 2012
Страниц: 720 стр
OZON.ru
С этой книги я рекомендую начинать. Более простой и понятной книги по языку программирования Java даже сложно представить. Несмотря на пугающие 720 страниц, эта книга очень легко читается. Здесь в картинках и схемах с минимумом текста объясняются все основы языка. Главная прелесть этой книги в ее наглядности - авторы подробно разжевывают каждую тему, выделяют основные тезисы. Всех тонкостей языка она не раскрывает, но уж базисные вещи вы будете знать на отлично.

2. Философия Java

1005797926 Автор: Брюс Эккель
Издательство: Питер
Год: 2013
Страниц 640 стр
OZON.ru
Это более серьезная книга, не зря она считается одним из лучших пособий для программистов Java. Читается она уже гораздо сложнее, но и описывает более серьезные вещи. К сожалению, российское издание иногда содержит опечатки и ошибки в примерах кода, их немного, но они есть. Но все-таки это лучшая книга по Java, которая дает четкое понимание именно «философии» языка. Я читала эту книгу параллельно с предыдущей. То есть читаю главу из «Изучаем Java», потом главу по той же теме из «философии».

3. Java. Эффективное программирование

1007126934 Автор: Джошуа Блох
Издательство: Лори
Год: 2013
Страниц: 310 стр
OZON.ru
Этой книгой можно отполировать свои знания. Она состоит из 57 статей, описывающих наиболее тонкие и проблемные места языка Java и дает советы, как надо и как не надо поступать в этих случаях. После прочтения двух предыдущих книг принципиально нового она не дает, но помогает не наступить на те грабли, на которые до вас наступали множество раз.

ПАТТЕРНЫ

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

4. Паттерны проектирования

1005904797 Автор: Эрик Фримен, Элизабет Фримен, Кэтти Сьерра, Берт Бейтс
Издательство: Питер
Год: 2013
Страниц: 656 стр
OZON.ru
Это книга из той же серии,что «Изучаем Java». Наглядно, на примерах и картинках рассказывается про почти все основные шаблоны проектирования. Очень хороша для первого знакомства с паттернами, но после нее обязательно надо прочитать следующую книгу.

5. Приемы объектно-ориентированного проектирования. Паттерны проектирования

1005902167 Автор: Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес
Издательство: Питер
Год: 2013
Страниц: 368 стр
OZON.ru
Это классика. Библия от «банды четырех». После этой книги понимаешь всю мощь и красоту объектно-ориентированного программирования. Читать ее надо обязательно.

ANDROID

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

6. Программирование игр под Android

1005673706 Автор: Марио Цехнер
Издательство: Питер
Год: 2012
Страниц: 688 стр
OZON.ru
Говорю сразу, это книга не для новичков и браться за нее следует только если вы уже достаточно уверено пишите приложения. В ней на примере трех игр, рассматриваются основные принципы разработки игр, работа с графикой и openGL.

РЕФАКТОРИНГ

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

7. Чистый код: создание, анализ и рефакторинг. Библиотека программиста

1007098845 Автор: Роберт Мартин
Издательство: Питер
Год: 2013
Страниц: 464 стр
OZON.ru
В этой книге автор делится принципами написания хорошего кода, устойчивого к изменениям и легкого в поддержке. И хотя мысли, высказанные в книге, часто бывают простыми, очевидными а иногда и спорными, но они всегда четко аргументированы. Почитать ее будет полезно даже опытным программистам. А уж новичкам, планирующим писать что-то большее чем тестовые программки, читать в обязательном порядке. В книге очень много примеров кода, в исходном виде и после улучшения, читается она очень легко и даже увлекательно.

8. Рефакторинг. Улучшение существующего кода

1000038279 Автор: Мартин Фаулер
Издательство: Символ-Плюс
Год: 2008
Страниц:432 стр
OZON.ru
Рефакторинг это процесс улучшения исходного кода, не изменяя внешнего поведения программы, с целью облегчения понимания её работы. Конечно, искусство рефакторинга приходит только с практикой. Книга будет особенно полезна людям уже имеющим опыт поддержки своих и чужих программ, она поможет систематизировать, то что раньше делалось интуитивно. В ней проблемы кода и какими способами его можно улучшить.

ДИЗАЙН И ПРОЕКТИРОВАНИЕ

9. Дизайн привычных вещей

1005721383 Автор: Дональд Норман
Издательство: Манн, Иванов и Фербер
Год: 2013
Страниц: 272 стр
OZON.ru
Эта книга не имеет прямого отношения к программированию, но я советую прочитать ее всем, кто производит что-то чем будут пользоваться другие люди. Она скорее даже не о дизайне, а о психологии человека в освоении новых технологий и вещей.

10. Психбольница в руках пациентов

1001304045 Автор: Алан Купер
Издательство: Символ-Плюс
Год: 2009
Страниц: 336 стр
OZON.ru
Эта книга в какой-то степени продолжает предыдущую. И если в «дизайне привычных вещей» автор рассказывает о вещах в целом, то тут рассказывается как применять эти идеи при разработке программного обеспечения. После прочтения книги понимаешь, что богатый функционал программы, это еще далеко не залог ее успеха у пользователей.

РАБОТА ПРОГРАММИСТА

11. Балдеющие от адреналина и зомбированные шаблонами. Паттерны поведения проектных команд

1001476009 Автор: Том Демарко, Тимоти Листер
Издательство: Символ-Плюс
Год: 2010
Страниц: 288 стр
OZON.ru
Долго думала включать ли эту книг в список и решила все-таки про нее рассказать. В книге собраны шаблоны поведения людей в проектной команде. Советую прочитать ее не только программистам, но и всем причастным к разработке ПО — тестировщикам, проектировщика и т. д. В книге очень точно и с юмором описываются проблемы с которыми сталкиваются люди, работающие в команде и даются советы как можно их избежать. Мне эта книга помогла по другому взглянуть на свою работу, как-то более по философски :)

ЗАДАЧИ

12. Карьера программиста. Как устроиться на работу в Google, Microsoft или другую ведущую IT-компанию

1005902859 Автор: Г. Лакман Макдауэлл
Издательство: Питер
Год: 2013
Страниц: 416 стр
OZON.ru
Эта книга оставила у меня очень приятное впечатление. Я купила ее скорее случайно, когда собиралась менять работу и не ждала от нее ничего особенного. Первые страниц 60 действительно дают советы как вести себя на собеседовании и понравится работодателю. Советы эти по большей части или очевидные или абсолютно неприменимые к нашей суровой российской действительности. Но для общего развития почитать можно.
А вот дальше в книге идут задачи для подготовки к собеседованию. Задачи разбиты по темам (массивы, связанные списки, битовые операции), в конце дается полное решение с объяснением. Причем задачи действительно интересные, для решения которых порой надо изрядно пошевелить мозгами. Решение задачи как правило короткое и весьма элегантное. Эту книгу можно рассматривать как учебник по алгоритмам. Я советую ее новичкам, которые изучили основные конструкции языка и не знают, что делать дальше и опытным для проверки собственных знаний.

Комментариев нет:

Отправить комментарий