Рецензии
PC Week Labs снимает сливки с летнего урожая увесистых томов
Java, представляющий собой редкое явление, - язык, который одновременно интересен с технической точки зрения и важен с коммерческой, - постепенно продвигается к широкому признанию, что приводит к появлению множества изданий, попадающих сейчас в книжные магазины.
Даже если бы эти книги были дешевыми (что совсем не так), время, необходимое для прочтения нескольких сотен страниц, является крупным вложением дефицитного ресурса.
Поддерживая веки зубочистками и потребляя в ходе процесса слишком много кофеина, центр PC Week Labs пережил марафонский сеанс изучения полуметровой стопки руководств, чтобы помочь читателям отделить зерна от плевел.
Особую опасность представляют книги, которые просто игнорируют целые темы, оставляя ложное впечатление, что Java не в состоянии справиться с определенными потребностями. Одним из примеров этого может служить взаимодействие с кодом низкого уровня с помощью так называемых естественных методов (native methods) - область, которая в некоторых книгах в лучшем случае упоминается, а в других рассматривается глубоко.
Далее издания рассматриваются приблизительно в порядке уменьшения широты охвата технических вопросов. Определить этот порядок было непросто, потому что существуют конкретные области, в которых даже лучшие из этих книг оказываются удивительно слабыми.
______________________
Специальное издание: Использование Java (Special Edition Using Java); Newman et al.; Que; $49,99; ISBN# 0-7897-0604-0)
В наиболее технической (и самой длинной)
из всех книг, которые мы рассматривали,
Special Edition Using Java также много
упущений
Эта огромная книга содержит 830 страниц, не считая указателя и прилагаемого к ней CD-ROM. Две важнейшие области, которые рассматриваются в этой книге, но отсутствуют в часто восхваляемой Core Java, - это интерфейс между Java и Си и дополняющая роль более "легких" языков, таких, как JavaScript.
Большой объем книги дал возможность авторам глубоко рассмотреть вопросы обеспечения безопасности, подробно разобрать использование интерфейсов в Java и обсудить такие полезные для следующего поколения интерактивных приложений темы, как JDBC (интерфейс баз данных для Java) и значение VRML (язык моделирования виртуальной реальности) .
В то же время нам действует на нервы частое отсутствие в этой книге должного внимания к деталям. Например, twos-complement (дополнение до двух) в ней постоянно пишется как twos-compliment (комплимент двум) - мелкая, но бросающаяся в глаза ошибка, которая вызывает подозрение в поспешном редактировании.
Кроме того, язык с сильной системой типов в книге определяется как язык, в котором типы данных проверяются во время компиляции. Хотя такое определение встречается часто, оно в действительности не является определением этой характеристики. Язык с сильной системой типов - это просто язык, который не позволяет использовать переменную одного типа так, как будто она имеет какой-то другой тип.
В книге также радостно заявлено, что поскольку "90 процентов работающих сегодня программистов используют Си [сомнительная статистика], то, если вы программист, вы уже знаете, как использовать Java". Конечно, если не считать использования в Java жесткой иерархии объектов, интерфейсов (вместо множественного наследования), истинных массивов (вместо арифметики указателей) и множественных потоков выполнения. Короче, говорить так было глупо.
______________________
Программирование на Java для Internet (Java Programming for the Internet; Thomas, Patel, Hudson, Ball; Ventana Communications; $49,95; ISBN# 1-56604-355-7)
Java Programming for the Internet
содержит лучшее обсуждение связанных
с серверами вопросов из всех, которые
нам удалось найти
Если вы хотите использовать Java в потребительской электронике или других приложениях для встроенных систем, сильные стороны этой книги окажутся для вас бесполезными, а слабости - существенными. Но если ее название характеризует именно те проекты, о которых вы думаете, эта книга окажется вне конкуренции. Хотели бы мы, чтобы она попалась нам до того, как мы истратили коробку маркеров на изучение других книг, которые могли дать нам гораздо меньше.
В частности, эта книга содержит лучшее обсуждение связанных с серверами вопросов (таких, как использование Java в сочетании с другими серверами, помимо HTTP, или приложениями единого интерфейса шлюза CGI) изо всех, которые нам удалось найти.
Книга идет также гораздо дальше простых мини-приложений Java, глубоко рассматривая расширения естественных методов с использованием Си и подробно обсуждая многопоточные программы.
______________________
Только Java (Just Java; van der Linden; Sunsoft Press / Prentice Hall; $34,95; ISBN# 0-13-565839-X)
Эта книга хотела бы быть такой же краткой и авторитетной, как книга Арнольда и Гослинга, и столь же соответствовать потребностям относительно случайных читателей, как рассматриваемая ниже книга Нафтона, но при этом быть более развлекательной, чем они обе.
Многим читателям, вероятно, понравится этот необычный подход, но нас возмущала частота и чрезмерная длина юмористических отступлений. Мы в состоянии сами делать перерывы в работе, и нам не нужно отвлекаться на эти отступления в книге, которую мы читаем ради ее технического содержания.
Just Java все-таки содержит весьма неплохие примеры и пояснительные рисунки, а также нетривиальное рассмотрение таких вопросов, как потоки, но уделяет мало внимания вопросам, существенным для корпораций, например обеспечению безопасности, интеграции с базами данных и расширениям с использованием естественных методов. Требуется, однако, немало усилий, чтобы не замечать карикатуры, эксцентричные примечания и всю остальную дребедень, которая путается под ногами.
______________________
Справочник по Java (The Java Handbook; Naughton; Osborne McGrow-Hill; $27,95; ISBN# 0-07-882199-1)
The Java Handbook окажется хорошим
выбором для программиста, который
хочет получить общее представление
о Java, но не может тратить время
на жуткие подробности
Эта книга окажется более подходящей, чем книга Арнольда и Гослинга, для менеджера или менее опытного программиста, который хочет получить общее представление о Java, но у которого нет времени или желания углубляться в такие жуткие подробности, как естественные методы.
Такой подход в общем неудивителен. Когда Джеймс Гослинг создавал язык Java, Патрик Нафтон участвовал в разработке программы просмотра HotJava, так что он смотрит на все с точки зрения восторженного пользователя. Учитывая пропаганду Нафтоном новой модели вычислений, которую представляет Java, неудивительно, что опущены расширения с помощью естественных методов, так как они противоречат фундаментальным целям Java в области переносимости и обеспечиваемой самим языком безопасности выполнения.
Но эта книга превосходит остальные в объяснении, почему Java вообще существует, и включает очаровательное практическое исследование по социологии корпораций, которое украшает техническое изложение, но не мешает ему.
______________________
Переполнение Java
Целый ряд книг по Java представляет собой в основном собрание мини-приложений для тех, кто хочет использовать Java сейчас, а понять его позже. Наряду с готовыми библиотеками они содержат обучающие пояснения разного уровня. Мы познакомились со следующими изданиями (в порядке уменьшения глубины изложения):
- Java by Example. Jackson, McClelan; Sunsoft Press / Prentice Hall; $34,95; ISBN# 0-13-565763-6;
- Instant Java. Pew; Sunsoft Press / Prentice Hall; $29,95; ISBN# 0-13-565821-7;
- Hooked on Java. van Hoff, Shaio, Starbuck; Addison-Wesley; $29,95; ISBN# 0-201-48837-X.
Базовые справочные руководства для программиста, который будет постоянно заниматься созданием производственного кода с использованием стандартных библиотек классов Java, написанные в том же интеллектуальном стиле, что и книга Арнольда и Гослинга:
- The Java Application Programming Interface, Volume I. Gosling, Yellin; Addison-Wesley; $44,95; ISBN# 0-201-63453-8;
- The Java Application Programming Interface, Volume II. Gosling, Yellin; Addison-Wesley; $38,95; ISBN# 0-201-63459-7.
Рецензии на другие попавшиеся нам издания мы подготовим вместе с рецензиями на следующую серию книг по Java:
- Java Primer Plus. Tyma, Torok, Downing; Waite Group Press; $39,99; ISBN# 1-57169-062-X;
- Java Programming Basics. Au, Makower, Pencom Web Works, MIS: Press; $34,95; ISBN# 1-55828-469-9;
- Programming JavaScript for Netscape 2.0. Ritchey; New Riders Publishing; ISBN# 1-56205-585-2;
- Exploring Java. Niemeyer, Peck; O’Reilly & Associates; $24,95; ISBN# 1-56592-184-4.
Питер Коффи
С Питером Коффи, ведущим техническим аналитиком, можно связаться по адресу: 3571756@mcimail.com.
Новые версии инструментов Symantec и Metrowerks демонстрируют высокую скорость развития рынка инструментальных средств Java