среда, 30 марта 2011 г.

[ANN]ounce книг 3’2011

Уже прошло достаточно времени с момента последнего книжного анонса, так что за это время накопилось достаточно новинок, о которых мне бы хотелось рассказать, а широкой общественности, надеюсь, об этом услышать. Формат анонса остается неизменным, я подобрал несколько книг, выпущенных отечественными и иностранными издательствами за последнее время, с которыми я немного познакомился. Степень моего знакомства с этими книгами, как обычно может отличаться в значительных пределах, от «я редактировал перевод этой книги на русский язык, так что я знаком с ней очень хорошо» до, «вот блин, классная тема книги и отзывы отличные, обязательно добавлю в свой бесконечный список книг, которые я хочу прочитать». Так что по каждой конкретной книге принимать решение вам самим, но можно с уверенностью сказать, что каждая из приведенных ниже книг, как минимум, достойна вашего внимания.

Фриман и др. Паттерны проектирования. Питер 2011

untitled

(Оригинал: Freeman et al. Head First Design Patterns. O’Reilly Media, 2004)

Аннотация

В мире постоянно кто-то сталкивается с такими же проблемами программирования, которые возникают и у вас. Многие разработчики решают совершенно идентичные задачи и находят похожие решения. Если вы не хотите изобретать велосипед, используйте готовые шаблоны (паттерны) проектирования, работе с которыми посвящена эта книга. Паттерны появились, потому что многие разработчики искали пути повышения гибкости и степени повторного использования своих программ. Найденные решения воплощены в краткой и легко применимой на практике форме. Особенностью данного издания является уникальный способ подачи материала, выделяющий серию «Head First» издательства O'Reilly в ряду множества скучных книг, посвященных программированию. Книга будет интересна широкому кругу веб-разработчиков, от начинающих до профессионалов, желающих освоить работу с паттернами проектирования.

Мнение

Мое изначальное отношение к этой книге было весьма скептическим. Почему-то серия Head First у меня ассоциировалась с серией типа «Выучи что-нибудь за 24 часа», однако оно очень сильно изменилось, когда я посмотрел на количество положительных отзывов на эту книгу на различных сайтах, включая небезызвестный stackoverflow. Там вообще, эта книга входит в десятку наиболее известных и популярных книг и считается наиболее предпочтительным источником для знакомства с темой паттернов проектирования. При этом никто не умаляет заслуги «банды четырех», но многие признают, что с точки зрения обучения этой теме, книга Эриха Гаммы и компании является не самым лучшим вариантом из-за чрезмерной сухости изложения.

С содержимым русскоязычного варианта я познакомился лишь по десятку страниц, доступных на сайте издательства, но при этом впечатление от работы отечественных переводчиков у меня весьма положительное. Что касается содержимого книги, то даже беглого знакомства достаточно, чтобы понять причину столь огромного количества положительных отзывов. В книге чувствуется принципиально другой подход к изложению материала: если банда четырех – это скорее справочник, то эта книга – это учебник, в котором читателю даются задачи, которые решаются, прежде всего, с точки зрения канонов ООП, а уж потом натягиваются на это решение паттерны. Кроме того, в книге просто огромное количество рисунков, большая часть из которых весьма забавны, причем забавны в хорошем смысле этого слова; они скорее помогают передать замыслы авторов, нежели отвлекают и надоедают, так что объем в 650 страниц не должен вас пугать, поскольку книга даже в оригинале читается очень быстро и легко.

Дополнительные ссылки

Купить: amazon.com, piter.com, books.ru

Крис Смит. Программирование на языке F#. Символ-Плюс, 2011

(Оригинал: Chris Smith. Programming F#: A comprehensive guide for writing simple code to solve complex problems. O'Reilly Media, 2009)

Programming F#

Аннотация

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

Это исчерпывающее руководство, написанное Крисом Смитом, одним из основных разработчиков F# компании Microsoft, знакомит с синтаксисом языка, реализацией асинхронных и параллельных вычислений, с расширенными концепциями языка F#, такими как цитируемые и вычислительные выражения.

От читателя не требуется знание конкретных технологий, хотя общий опыт программирования, безусловно, желателен. Единственное требование - это желание воспользоваться преимуществами функционального программирования при разработке своих проектов, будь то реализация численных алгоритмов, анализ данных или сценарии для личного использования. В этом случае издание послужит хорошей отправной точкой на пути изучения фундаментальных и расширенных концепций языка F#.

Мнение

С этой книгой я знаком наиболее близко, поскольку занимался научным редактированием ее русскоязычного варианта. Более того, я даже написал рецензию, а здесь просто хочу сообщить, что книга уже доступна в продаже. Если же говорить о пользе этой книги для широкой общественности, то здесь все довольно просто: если вам нужна книга по языку F# на русском языке, то альтернатив на данный момент у вас просто нет; пока что это единственная книга по этому языку программирования на русском языке. Книга отлично справляется со своей задачей, в ней описываются не только конструкции языка F#, но, что самое главное, даются основные понятия функционального программирования. Кроме того, автор прекрасно понимает целевую аудиторию книги, большей частью которой являются «объектно-ориентированные» программисты с опытом работы с другими языками на платформе .Net, поэтому изложение зачастую ведется именно в этом ключе.

Дополнительные ссылки

Купить: amazon.com, books.ru

Рецензия: Книга Криса Смита «Программирование на языке F#».

Роберт Мартин. Принципы, паттерны и методики гибкой разработки на языке C#. Символ-Плюс, 2011

(Оригинал: Robert C. Martin. Agile Principles, Patterns, and Practices in C#. Prentice Hall, 2006)

Agile_C#_cover.indd

Аннотация

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

Мнение

«Дядя» Боб Мартин является одним из самых известных современных авторов в области качества кода и методологий разной степени гибкости. Как он сам признается, он много читает, много кодирует и планирует заниматься программированием до конца своих дней. «Дядюшка Боб» является автором многих статей, он хороший писатель и просто отличный докладчик. Помимо чтения его замечательных книг я очень рекомендую посмотреть на него «вживую»; чего только стоит его игра на барабанах в начале его выступления на конференции RailsConf 2010!

Что касается этой конкретной книги, все же речь идет о ней, а не только об ее авторе, то ее нельзя назвать очень уж новой, ведь оригинальное издание вышло «аж» в 2006, и за это время язык C# претерпел огромное количество изменений. Но поскольку эта книга не о языке C#, а о «принципах, паттернах и методиках», то наличие в примерах множества преобразований типов и отсутствие использования обобщений (generics) хотя и режет глаз, но, тем не менее, не мешает отличному описанию принципов S.O.L.I.D., паттернов проектирования или основ гибкой разработки. В любом случае, это одна из наиболее значимых книг в истории гибкой разработки и познакомится с ней из «первых рук» в любом случае будет очень полезно.

Дополнительные ссылки

Купить: amazon.com, ozon.ru, books.ru

Выступления Боба Мартина:

Craftsmanship and Ethics, Bad Code, Craftsmanship, Engineering, and Certification, RailsConf 2010, RailsConf 2009,

Питер Сейбел. Кодеры за работой. Размышления о ремесле программиста. Символ-Плюс, 2011

(Оригинал: Peter Seibel. Coders at Work: Reflections on the Craft of Programming. Apress, 2009)

Coders at Work

Аннотация

Программисты - люди не очень публичные, многие работают поодиночке или в небольших группах. Причем самая важная и интересная часть их работы никому не видна, потому что происходит у них в голове. Питер Сейбел, писатель-программист, снимает покров таинственности с этой профессии. Он взял интервью у 15 величайших профессионалов: Кена Томпсона, создателя UNIX, Берни Козелла, участника первой реализации сети ARPANET, Дональда Кнута, Гая Стила, Саймона Пейтон­Джонса, Питера Норвига, Джошуа Блоха, Брэда Фицпатрика, создателя Живого Журнала, и других. Все они "подсели" на программирование еще в школе. Тогда, на заре зарождения отрасли, лишь в немногих учебных заведениях читались курсы по компьютерным наукам. Поэтому будущим гуру приходилось покорять профессиональные вершины самостоятельно, но всех их отличает творческое горение и полная самоотдача любимому делу.

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

Мнение

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

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

Дополнительные ссылки

Купить: amazon.com, books.ru

Mark Russinovich. Zero Day: A Novel. Thomas Dunne Books, 2011

Zero Day

Аннотация

An airliner’s controls abruptly fail mid-flight over the Atlantic. An oil tanker runs aground in Japan when its navigational system suddenly stops dead. Hospitals everywhere have to abandon their computer databases when patients die after being administered incorrect dosages of their medicine. In the Midwest, a nuclear power plant nearly becomes the next Chernobyl when its cooling systems malfunction.

At first, these random computer failures seem like unrelated events. But Jeff Aiken, a former government analyst who quit in disgust after witnessing the gross errors that led up to 9/11, thinks otherwise. Jeff fears a more serious attack targeting the United States computer infrastructure is already under way. And as other menacing computer malfunctions pop up around the world, some with deadly results, he realizes that there isn’t much time if he hopes to prevent an international catastrophe.

Written by a global authority on cyber security, Zero Day presents a chilling “what if” scenario that, in a world completely reliant on technology, is more than possible today—it’s a cataclysmic disaster just waiting to happen.

Мнение

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

Марк Руссинович (Mark Russinovich) – один из основателей Sysinternals, автор множества полезнейших утилит, автор таких замечательных книг, как «Внутреннее устройство Microsoft Windows», решил немного поменять стиль и написал … кибертриллер. Сама идея написания художественной или околохудожественной литературы «технарями» далеко не нова; классическим примером является небезызвестный Том ДеМарко со своим «романом об управлении проектами». И если у ДеМарко литературная составляющая была, мягко говоря, не на высоте, знакомство с первыми двумя десятками страниц этой книги говори о том, что Марк сделал шаг вперед, по сравнению со своим коллегой по цеху.

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

Дополнительные ссылки

Купить: amazon.com

Дополнительные ссылки: Zero Day is Here!, официальный сайт книги

А вот еще одну новую и просто замечательную книгу, причем по языку C#, я оставил на закуску и расскажу о ней отдельным постом. Так что, не скучайте (интересно, многие ли читатели добрались до конца этой заметки? :) )

16 комментариев:

  1. Большое человеческое спасибо, Сергей, за первую книгу.

    Даешь быстрее пост про "новую и просто замечательную книгу, причем по языку C#", чтоб можно было сразу обе книги заказать.

    ОтветитьУдалить
  2. Ага! Значит кто-то таки дочитал (или как минимум долистал) до конца сообщения! :)

    Речь идет о паре дней, а не о неделе:) Нужно еще мысль об этой книге выразить в более персистентой форме:)

    ОтветитьУдалить
  3. Уже приобрел труд Смита, отличный перевод, читается легко, порой затягивает. :)

    ОтветитьУдалить
  4. Ну, с содержанием я ничего сделать не мог:)) А вот если найдешь баги в переводе - пиши!

    ОтветитьУдалить
  5. Ага, кодеры, значит, таки вышли. Поздравляю всех нас!

    К слову, я тоже далеко не всё довычитывал, где-то только 5 глав. Остальное передал жене. Поэтому у книги аж трое научных редакторов :-).

    ОтветитьУдалить
  6. Иван, спасибо за комментарий! Я поправил немного сообщение, чтобы отразить историю с переводом соответствующим образом.

    З.Ы. Вы с Аленой молодцы, что таки добили эту книгу!

    ОтветитьУдалить
  7. Как-то не обнаружил "Паттерны проектирования" на сайте издательства Питер. Ни в новых, ни в серии, ни через поиск по названию. На озоне да - есть...

    ОтветитьУдалить
  8. Сергей, а откуда ты узнал, что книжка вышла? Нам, просто, Пётр ничего не писал. Я только из твоего поста и узнал.

    ОтветитьУдалить
  9. @Степаныч: хм... А чем не угодила ссылка, которая в статье находится? Да и при поиске на сайте Питера, она, вроде как, первой ссылкой идет. Искать так.

    @Иван: да мне тоже никто о выходе "Кодеров" не писал, я просто мониторю периодически издательства на их сайте новинки, и книги, готовящиеся к выходу. Вот пару дней назад и заметил, что Кодеры, оказывается уже вышли:)

    ОтветитьУдалить
  10. Хотел спросить на счет книги Фрмиман и др. Паттерны проектирования. Питер 2011
    На сколько я понимаю это не первое издание на русском на сколько оно отличается от предыдуших изданий?

    ОтветитьУдалить
  11. @Сергей: Кажется, это первое издание. Я как-то совсем не натыкался на эту книгу ранее на русском языке. Да, оригинал вышел давно, но вот перевели ее только сейчас.

    ОтветитьУдалить
  12. @Сергей Тепляков: Точно хм... Тогда не понятно зачем существует сайт http://www.piter-press.ru/ На нём книги нет.

    ОтветитьУдалить
  13. @Степаныч: Я вообще не знал о существования такого сайта:) Я всегда на piter.com смотрю.

    ОтветитьУдалить
  14. Приятно знать что наконец-то такие отличные книги наконец-то (пусть и с большим запозданием) переводятся на русский язык.

    Я читал "Паттерны Проектирования" от Фримэна и "Принципы, паттерны и методики гибкой разработки на языке C#" Роберта Мартина на английском языке - всем рекомендую!

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

    ОтветитьУдалить
  15. @nightcoder: Спасибо за отзывы! Причем судя по беглому знакомству с русскоязычными вариантами, с переводом в этих книгах тоже, более или менее все нормально.

    ОтветитьУдалить
  16. Спасибо Сергей.
    Купил Фриман и др. Паттерны проектирования. и Принципы, паттерны и методики гибкой разработки на языке C#.
    Читается очень легко))))

    ОтветитьУдалить