Здравствуйте, уважаемые читатели моего блога. Сегодняшней темой
будет рецензия на популярные книги по подготовке к сертификационному экзамену
компании Microsoft Exam
70-483. Перед тем, как начать писать данную рецензию, я долго раздумывал
над тем, могу ли я (= имею ли право) поддавать такие источники критике. По
статусу я ни Microsoft Certified Solutions Developer (MCSD), ни MVP (Most Valuable Professionals), и даже не
архитектор программного обеспечения. Я обычный разработчик программного
обеспечения, для которого программирование - не только работа, но
и образ жизни. И поскольку книги, которые будут описаны в данной статье,
предназначены для таких ребят, как я, J, думаю, это оправдывает субъективный анализ.
Буду стараться максимально придерживаться рекомендации Джона Скита
удерживаться от острой критики, но, к сожалению, не уверен, получится ли это у
меня. Надеюсь, я вас немного заинтересовал, поэтому начнем разбор. Представлю к
вашему рассмотрению рецензию на книгу Wouter de Kort, Exam Ref 70-483: Programming in C# и книгу Tiberiu Covaci, MCSD Certification Toolkit
(Exam 70-483): Programming in C# (Wrox Programmer to Programmer).С самого
начала была задумка написать две отдельных рецензии, но затем я решил их
объединить, чтобы найти всю необходимую информацию в одном материале, а также
ввиду свежести впечатлений о главных моментах, касающихся книг.
Для общего
представления - вот как выглядят
рассматриваемые книги:
Обзор книги Exam Ref 70-483: Programming in C#
Начнем обзор из
книги Wouter de Kort, Exam Ref 70-483: Programming in C#., а именно - из положительных
моментов, которые в ней встречаются.
- Краткость и лаконичность приведенного материала
- Стиль изложения материала
- Листинги кода, которые приводятся на протяжении всей книги
Пожалуй, больше
выделить интересных концептуальных особенностей данной книги не могу.
Переходим к негативным моментам, с которыми мне пришлось
столкнуться. Например, та же краткость описания материала создает другую
проблему. Если Вы не стыкались с какой-то областью из книги, то материал в ней
не будет достаточно информативным, чтобы понять эту область. Большинство тем
рассмотрено "вскользь". Единственное объяснение, которое приходит в
голову в связи с этим, - недостаточно
глубокие знания автора в некоторых областях, которые он рассматривает. Вам
нужно будет уделять много времени на изучение той или иной области из других
источников. После того, как в сотый раз приходится смотреть MSDN, начинаешь задумываться о весомости и пользе этой книги. Чтобы
понять некоторые аспекты из этой книги, нужно иметь достаточно глубокие
познания языка C#, потому
что здесь Вы не найдете объяснений, почему так, а не иначе, а только краткое описание.
Для меня такая краткость была преимуществом, так как перед чтением данной книги
я освежил свои знания книгой Jeffrey
Richter, CLR via C# (Microsoft, Developer Reference) и читал эту книгу для сравнения и
определения полезности ее как таковой. Стиль изложения в книге напоминает стиль
Рихтера, Скита и других топ-авторов по языку C#, что, в
свою очередь, подкупает.
Если у Вас достаточно информационного багажа и Вы
хотите освежить свои знания перед сертификацией, то эта книга довольно
неплохая. Она читается очень легко, небольшая по объему и включает интересные
сертификационные вопросы для сдачи экзамена. Вдумчивое ознакомление с данной книгой у меня заняло порядка пяти дней. Но поскольку сейчас я рассматриваю
негативные моменты данного источника, то одним из них является то, что с данной
книгой Вы не сможете подготовиться к достойной сдаче экзамена.
Обычно такие книги покупают, чтобы
посмотреть вопросы, которые будут на экзамене. Книга покрывает эту нишу,
наверное, только в 4%. Вопросов немного, но радует то, что в них не так много
ошибок, хотя они есть. Код написан неплохо. В некоторых примерах есть небольшие
неточности, связанные с некорректным использованием кода (один из них - пример из WeakReference). В целом книге можно поставить объективную оценку "удовлетворительно".
Книга хорошо подходит для освежения и для закрепления материала неплохими
примерами и тестами. Но это не уровень книги для сертификации. Я ожидал от авторов
большего количества вопросов и более глубокого раскрытия некоторых аспектов, а
не описания, например, тасков несколькими предложениями.
Обзор книги MCSD Certification Toolkit (Exam 70-483) Programming in C#
Разница этой книги, в отличие от рассмотренной
выше Wouter de Kort, Exam Ref 70-483: Programming in C#, по цене отличается почти в два раза. Эту книгу писали сразу 4 автора: это Tiberiu Covaci, Rod Stephens, Vincent Varallo и Gerry O'Brien.
Начнем из позитивных моментов в данной книге.
Начнем из позитивных моментов в данной книге.
- Обилие разнообразных тестов
- Детальное описание базовых данных, необходимых для успешной сдачи экзамена.
- Ссылки по каждой главе на источники, с которых можно почерпнуть больше информации по рассмотренной теме.
А теперь пройдемся по негативным моментам насчет данной книги, один из которых - это обилие ошибок в примерах, текстах и фактах.
Если Вы знаете английский на том уровне, чтобы читать комментарии, рекомендую почитать отзывы об этой книге на Амазоне. Множество разработчиков, включая меня, с трудом
заставляют себя прочитать такую книгу до конца. Одна из мыслей, которые
меня терзали в процессе чтения, - это
то, что информация, которую я почерпну из данной книги, позволит мне
написать эту статью.
С первых глав книга пестрит ошибками в коде. Поэтому если Вам тяжело читать такие книги, возможно, посмотрите в строну спецификации по языку C#. Там нет таких ошибок, как в данном источнике. Возможно, это слишком резкое замечание к данной книге, но это ощущение не покидало меня все время, пока я читал данный шедевр. По поводу кода, есть еще одно замечание, которое заметит любой специалист который, долгое время работает с языком C# и у которого выработался стиль написания программного кода. Когда смотришь на примеры кода, не покидает ощущение того, что три программиста, один из которых программирует на Java, второй на C++, а третий - на языке C#, решили написать книгу по сертификации. Здесь изобилие наименований констант с С++, описания методов с Java, и изредка заметно вмешательство в текст материала разработчика C#. Для меня это было довольно непривычно. Дело в том, что такой стиль до этого я встречал в книге Боба Мартина "Принципы, паттерны и методики гибкой разработки на языке C#". У этого автора такой стиль был из-за того, что он много времени писал на Java и этот стиль перешел на C#. Здесь же наблюдается аналогичная проблема.
С первых глав книга пестрит ошибками в коде. Поэтому если Вам тяжело читать такие книги, возможно, посмотрите в строну спецификации по языку C#. Там нет таких ошибок, как в данном источнике. Возможно, это слишком резкое замечание к данной книге, но это ощущение не покидало меня все время, пока я читал данный шедевр. По поводу кода, есть еще одно замечание, которое заметит любой специалист который, долгое время работает с языком C# и у которого выработался стиль написания программного кода. Когда смотришь на примеры кода, не покидает ощущение того, что три программиста, один из которых программирует на Java, второй на C++, а третий - на языке C#, решили написать книгу по сертификации. Здесь изобилие наименований констант с С++, описания методов с Java, и изредка заметно вмешательство в текст материала разработчика C#. Для меня это было довольно непривычно. Дело в том, что такой стиль до этого я встречал в книге Боба Мартина "Принципы, паттерны и методики гибкой разработки на языке C#". У этого автора такой стиль был из-за того, что он много времени писал на Java и этот стиль перешел на C#. Здесь же наблюдается аналогичная проблема.
Также негативным
моментом является стиль изложения материала.
Приведу пример: представьте себе ситуацию, в которой Вам нужно описать для какой-то статьи тип данных string. Представили? Большинство, надеюсь, пробовали бы писать, как, например, пишут авторы, упомянутые выше, а именно - Скит, Рихтер, Барт де Смет и другие. Такой стиль легкий для понимания и запоминания, это проверено на практике. Авторы данной книги решили пойти другим путем. Для того же типа string они берут описание всех функций с документации и приводят их в книге. В итоге получается, что почти каждый класс пестрит изобилием методов, которые ему доступны. В результате для каждого класса почти 3-4 страницы занимает описание методов. Не знаю, чем руководствовались авторы, но такой стиль изложения точно не способствует запоминанию. Человек не может запомнить больше 7 функций за один раз. Поэтому в компании Майкрософт не рекомендуют создавать методы с более чем семью параметрами.
Например, что можно написать о коллекциях? Авторы не ищут сложных путей. Зачем напрягать извилины, если можно по каждому классу, будь-то List<T>, Stack<T> и т.д., привести полную простыню доступных для них методов. Рейтинг данной книги на Амазоне - 4 звезды, но она их заслуживает с трудом. Данную книгу из пропасти спасает только обилие вопросов, которые неплохо подкрепляют базу, необходимую для получения сертификата MCP - Microsoft Certified Professional. Учитывая все плюсы и минусы, этой книге можно поставить заслуженную оценку "неудовлетворительно". Для себя я отнес эту книгу в категорию "never read" и не хочу к ней когда-либо возвращаться.
Приведу пример: представьте себе ситуацию, в которой Вам нужно описать для какой-то статьи тип данных string. Представили? Большинство, надеюсь, пробовали бы писать, как, например, пишут авторы, упомянутые выше, а именно - Скит, Рихтер, Барт де Смет и другие. Такой стиль легкий для понимания и запоминания, это проверено на практике. Авторы данной книги решили пойти другим путем. Для того же типа string они берут описание всех функций с документации и приводят их в книге. В итоге получается, что почти каждый класс пестрит изобилием методов, которые ему доступны. В результате для каждого класса почти 3-4 страницы занимает описание методов. Не знаю, чем руководствовались авторы, но такой стиль изложения точно не способствует запоминанию. Человек не может запомнить больше 7 функций за один раз. Поэтому в компании Майкрософт не рекомендуют создавать методы с более чем семью параметрами.
Например, что можно написать о коллекциях? Авторы не ищут сложных путей. Зачем напрягать извилины, если можно по каждому классу, будь-то List<T>, Stack<T> и т.д., привести полную простыню доступных для них методов. Рейтинг данной книги на Амазоне - 4 звезды, но она их заслуживает с трудом. Данную книгу из пропасти спасает только обилие вопросов, которые неплохо подкрепляют базу, необходимую для получения сертификата MCP - Microsoft Certified Professional. Учитывая все плюсы и минусы, этой книге можно поставить заслуженную оценку "неудовлетворительно". Для себя я отнес эту книгу в категорию "never read" и не хочу к ней когда-либо возвращаться.
Итоги
Подведем итоги после
прочтения данных книг, выпущенных для подготовки к сдаче сертификационного
экзамена. Эти книги - это попытка заработать деньги на ровном
месте. Все знают, что сертификация Майкрософт пока еще в цене, а некоторые
компании даже повышают денежное вознаграждение за труд специалистов с
сертификатом Майкрософт. К сожалению, эти книги можно отнести к категории книг
о том, "как быстро срубить денег". Из-за огромного количества недочетов и
ошибок, которые присутствуют в обеих книгах, не рекомендую платить за эти книги
деньги. Если у Вас не плохо с английским, намного большую пользу принесет просмотр
курса на http://www.microsoftvirtualacademy.com/,
который отвечает на часть вопросов по данному экзамену Ускоренный
курс "Программирование в C#". Это значительно сэкономит Ваше время
и деньги, если Вы надумали их вложить в покупку этих книг.
No comments:
Post a Comment