Rambler's Top100 Service калинин.ru / комментарии / книги /  << 22.08.00 >>

Java 2: руководство разработчика

    Иллюстрация
    Обложка книги.
    Обложка книги.

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

Все книги по Java, как мне кажется, отличаются одним и тем же недостатком: они все рассчитаны на начинающих программистов (каким бы самомнением эта фраза не отдавала бы). Причем, начинающих программировать не конкретно на Java, а "вообще". Я решил купить именно "руководство разработчика" по нескольким причинам: во-первых, это единственная книга по Java 2, остальные все рассчитаны на JDK 1.1.x. Во-вторых, она достаточно "толстая" и в твердом переплете, это мне всегда нравилось в книгах ;) В третьих, мне понравились некоторые пункты содержания, например: "высокоуровневые сетевые операции с использованием ORB-серверов" или "проектирование с использованием языка UML".

Тем не менее, мне потребовалось два дня на то, что бы понять окончательно, что книгу я купил совершенно напрасно. Потому что в "руководстве разработчика" никак не может быть подобных фраз:

  Цитата
 

В Mac OS не существует режима командной строки. Что бы запустить приложение, написаное на Java, перетащите пиктограмму файла класса на пиктограмму интерпретатора Java.

Я более чем уверен в том, что "разработчику" такие комментарии ни к чему. Потому что какой он "разработчик", если не умеет запустить приложение в своей операционной системе? Конечно же, этот комментарий расположен на 33 странице, в самом начале книги и можно делать поправку на то, что это, все-таки, вводные главы... тем не менее "разработчик" вполне способен обратиться к документации на операционную систему для того, что бы узнать как ему запускать приложения. Следующая "врезка" тоже стоит цитирования:

  Цитата
 

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

Это просто смешно. Меня можно, конечно же, обвинить в том, что я уж очень сильно придираюсь, но это все-таки показатель. Вся книга далее примерно такого же "сопливого" содержания.

Я совершенно не понимаю, зачем в "руководство разработчика" по Java включены главы, посвященные объектно-ориентированному анализу при помощи UML. Существуют очень хорошие книги по UML, к ним и надо, в принципе, отсылать читателя, а не мусолить эту тему лишний раз --- все-таки, книга посвящена Java 2? Т.е., если бы в книге была бы описана специфика применения UML к проектированию программных комплексов, написанных на Java, то это было бы понятно. Но "вводные главы" можно прочитать и отдельно.

В принципе, я понмаю, почему книга вызывает у меня такое неудовольствие. Скорее всего, это не недостаток самой книги, а особенности Java как языка программирования. Ведь, если сравнивать его с C++, то Java будет значительно проще. Именно как язык программирования. Из Java удалены практически все "тонкие" моменты C++ --- т.е., в принципе, конструкции языка, которые пишет человек, только что начавший использовать Java, и профессионал, друг от друга будут отличаться в меньшей степени, чем если использовать C++. Упрощено все: вплоть до того, что не надо заботиться о том, что бы определение функции (к примеру) предшествовало ее использованию. Еще раз повторю --- сам по себе язык программирования Java прост в использовании.

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

Таким образом, любая книга по Java будет ориентирована на людей, которые по большому счету не знакомы с программированием. Именно поэтому в них так много "воды". "Руководство разработчика" не стало исключением из этого правила.

Резюме

Я так думаю, что для изучения Java (конечно же, если уже хорошо знаком какой-либо другой язык программирования) книга не нужна вообще --- документации, поставляемой с JDK хватает за глаза. Самое лучшее, что можно придумать для изучения Java это попытки его реального использования. В нем меньше ньюансов, чем в C++, поэтому сам язык не доставит особенных неприятностей (кроме привыкания к характерным особенностям), а стандартная библиотека выстроена в достаточной степени логично для того что бы с ней разобраться по документации.


Версия для печати


  Ссылки по теме:
http://java.sun.com
   Сайт разработчика языка программирования Java, на котором можно скачать последнюю версию JDK.
  Рядом в разделе:
C & C++: правила программирования (27.08.00)
   Еще одна книга по C и C++, о которой мне хотелось бы рассказать. Она совсем тоненькая и маленькая, всего 270 страниц....   >>>>
C++: библиотека программиста (16.08.00)
   Первая глава этой книги так и называется: "Зачем нужна еще одна книга о C++?" и начинается со следующих слов: По последним...   >>>>
  Рядом по дате:
Свойства (23.08.00)
   Я уже говорил о и хотя эта заметка не будет посвящена ему, тем не менее я о нем вспомню. Когда только...   >>>>
Использование конечных автоматов (21.08.00)
   Я не хочу давать формальных определений, цель этой заметки --- показать "на пальцах" использование конечных автоматов (КА) для решения различных задач...   >>>>
  Содержание:
Заглавная страница
Мой блог
Мое резюме
Дайджест
Программирование
   C&C++
Сети
Unix
Алгоритмы
Оптимизация
Соревнования
Отвлеченно
XML
TeX
Просто так
Студенческое
Туризм
  Байки
Фотографии
Комментарии
   Книги
Web-ресурсы
Фильмы
Интернет
Программное обеспечение
Жизнь
Благодарности
Форум
Хронология
 
  В этом разделе:
High Perfomance Computing, second edition. (05.07.01)
   Название книги можно перевести как "Высокопроизводительные вычисления" и эта тематика в русскоязычной литературе не освещена совсем. Традиционно считается, что самой важной...   >>>>
Плагиат (19.06.01)
   В последнее время мне стало казаться, что с моим сайтом что-то не в порядке. Вроде, текст есть, живые люди тоже иногда...   >>>>
TCP/IP Illustrated, volume I. The Protocols (22.04.01)
   И опять, книга, о которой мне хочется рассказать, насколько мне известно, отсутствует в русском переводе. Тем не менее, в разделе сетевого...   >>>>
Decline and Fall of the American Programmer (28.02.01)
   Эдвард Йордон является одним из самых известных специалистов в области создания больших программных систем. Широко известна его нотация, предназначенная для структурного...   >>>>
Unix internals: the new frontiers (03.12.00)
   Хочу сразу же предупредить, что эта книга, насколько мне известно, в переводе на русский язык не существует, поэтому прошу прощения, если...   >>>>
Операционная система Unix (31.10.00)
   Unix получил очень широкое распространение в современном компьютерном мире. При этом, даже если большая часть домашних компьютеров работает под управлением операционной...   >>>>
Язык UML, рукводство пользователя (29.09.00)
   UML (Unified Modeling Language, унифицированный язык моделирования) является еще одной популярной аббревиатурой, которой очень часто пользуются, не понимая того, что за...   >>>>
Содержание раздела полностью...
   Примерно в тоже время
Свойства (23.08.00)
   Я уже говорил о и хотя эта заметка не будет посвящена ему, тем не менее я о нем вспомню. Когда только...   >>>>
Использование конечных автоматов (21.08.00)
   Я не хочу давать формальных определений, цель этой заметки --- показать "на пальцах" использование конечных автоматов (КА) для решения различных задач...   >>>>
Хронология полностью...
   Содержание
Заглавная страница
Мой блог
Мое резюме
Дайджест
Программирование
  C&C++
Сети
Unix
Алгоритмы
Оптимизация
Соревнования
Отвлеченно
XML
TeX
Туризм
  Байки
Фотографии
Комментарии
  Книги
Web-ресурсы
Фильмы
Интернет
Программное обеспечение
Жизнь
Студенческое
Просто так
Благодарности
Форум
Хронология
© 2000-2008, Andrey L. Kalinin
mailto:andrey@kalinin.ru
Rambler's Top100