Крис Андерсон. Основы Windows Presentation Foundation
Не смотря на то, что я до сих пор пишу под .NET Framework 2.0 и перехода на более новые версии платформы пока не предвидится, давно поглядываю в сторону библиотеки Windows Presentation Foundation (WPF), которая до релиза называлась Avalon. Для ознакомления с новой библиотекой от MS я и приобрел когда-то книжку Криса Андерсона «Основы Windows Presentation Foundation«.
Книга является хорошим пособием для тех, кто только собрался изучать WPF или хотя бы пощупать что она из себя представляет. Те, кто уже имел дело с этой библиотекой, скорее всего смогут найти более продвинутую книгу. Эту книгу можно рассматривать как большой обзор возможностей библиотеки WPF, в котором нет подробных описаний отдельных классов и внутреннего устройства библиотеки, но зато подробно рассматриваются примеры использования, после которых становится понятно в какую сторону копать MSDN. Вся книга по сути состоит из одних примеров, причем одну и ту же программу автор часто пишет несколькими способами, постепенно изменяя исходный пример.
Автор книги является одним из архитекторов библиотеки WPF и поэтому часто пишет почему та или иная возможность сделана именно так, как сделана, причем он не стесняется говорить и о проблемах, связанных с WPF, в том числе и про проблемы с производительностью.
Кратко перечислю основные темы, которые рассмотрены в книге:
- Основы WPF и какие цели приследовали разработчики, ее создающие.
- Использование классов WPF из C# и XAML.
- Основные принципы использования элементов управления.
- Способы размещения элементов управления в окне и менеджеры размещения.
- Двумерная и трехмерная графика.
- Анимация и мультимедия.
- Привязка к данным и шаблоны данных
- Обработка событий, триггеры
- Стили.
И некоторые другие темы.
Все примеры, написанные на языке XAML и разобранные в книге, пишутся вручную, без использования каких-то визуальных редакторов, хотя Андерсон иногда и пишет, что некоторые участки кода в жизни никто сам писать не будет, а возложит это на стороннюю программу. С одной стороны это большой плюс, потому что книга не превращается в учебник по нажиманию кнопок в дизайнере, но в то же время в конце книги хотелось бы почитать про визуальные редакторы, какие они бывают и что из себя представляют.
А еще «Основы WPF» является отличным примером того, как не надо переводить книги. Такое ощущение, что издатели поставили перед собой цель поставить рекорд по концентрации ляпов в одной книжке, причем подключили к этому процессу испаганивания весь свой персонал, от переводчика до оформителя и редактора. Мало того, что в переводе появились ошибки, которых не было в оригинале (я специально скачал эту книгу в электронном виде, чтобы посмотреть кто же это так накосячил), пропали несколько картинок и участков кода, кое-где пропало оформление исходников (автор в каждом участке кода выделяет наиболее важные места полужирным шрифтом). Кое-где под картинками остались крики редактора «Нет текста!!!», прямо с тремя восклицательными знаками. Я уже не говорю о, мягко выражаясь, спицифическом переводе некоторых, казалось бы уже устоявшихся, фраз (например, «Caret» переводится как «каре»), а когда я увидел фразу «класс A наследует классу B», то подумал, что я перестал понимать русский, хоть и программерский, язык. Когда заглянул в оригинал и увидел на этом месте вполне безобидное выражение «A derive from B», то понял, что с русским языком проблемы у переводчика.
Но то, что они сделали с исходниками, не лезет ни в какие ворота. Вы себе можете представить, что эти изверги вместо обычных двойных кавычек (» «) везде понаставили елочки (« »), мало того, эти елочки где хотят открываются, а где хотят закрываются. За такое надо отрывать руки на медленном огне.
Книга читается легко, если привыкнуть к некоторым фразам из перевода, язык написания ее довольно легкий, иногда разбавленный шутками. В целом, книга сама по себе достойна пятерки, а вот перевод на 3-. Не двойка, потому что даже с таким переводом понять суть книги можно. Но, если у вас есть возможность читать книгу в оригинале, то ну его на фиг такой перевод — читайте на английском языке.
PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.
Leave a comment