Подробное руководство по программированию на Java

         

Подробное руководство по программированию на Java

Почему вам нужно изучать новый язык программирования Java?
Если ответить на этот вопрос кратко, то потому, что он специально ориентирован на самые передовые технологии, связанные с сетью Internet. Растущая популярность Internet и, в особенности, серверов Web, создает для программистов новые возможности для реализации своих способностей.
Огромное преимущество Java заключается в том, что на этом языке можно создавать приложения, способные работать на различных платформах. К сети Internet подключены компьютеры самых разных типов - Pentium PC, Macintosh, рабочие станции Sun и так далее. Даже в рамках компьютеров, созданных на базе процессоров Intel, существует несколько платформ, например, Microsoft Windows версии 3.1, Windows 95, Windows NT, OS/2, Solaris, различные разновидности операционной системы UNIX с графической оболочкой X­Windows. Между тем, создавая сервер Web в сети Internet, вы бы наверняка хотели, чтобы им могло пользоваться как можно большее число людей. В этом случае вас выручат приложения Java, предназначенные для работы на различных платформах и не зависящие от конкретного типа процессора и операционной системы.
Программы, составленные на языке программирования Java, можно разделить по своему назначению на две большие группы.
К первой группе относятся приложения Java, предназначенные для автономной работы под управлением специальной интерпретирующей машины Java. Реализации этой машины созданы для всех основных компьютерных платформ.
Вторая группа - это так называемые аплеты (applets). Аплеты представляют собой разновидность приложений Java, которые интерпретируются виртуальной машиной Java, встроенной практически во все современные браузеры.
Приложения, относящиеся к первой группе (мы будем называть их просто приложениями Java), - это обычные автономные программы. Так как они не содержат машинного кода и работают под управлением специального интерпретатора, их производительность заметно ниже, чем у обычных программ, составленных, например, на языке программирования C++. Однако не следует забывать, что программы Java без перетрансляции способны работать на любой платформе, что само по себе имеет большое значение в плане разработок для Internet.
Аплеты Java встраиваются в документы HTML, хранящиеся на сервере Web. С помощью аплетов вы можете сделать страницы сервера Web динамичными и интерактивными. Аплеты позволяют выполнять сложную локальную обработку данных, полученных от сервера Web или введенных пользователем с клавиатуры. Из соображений безопасности аплеты (в отличие от обычных приложений Java) не имеют никакого доступа к файловой системе локального компьютера. Все данные для обработки они могут получить только от сервера Web. Более сложную обработку данных можно выполнять, организовав взаимодействие между аплетами и расширениями сервера Web - приложениями CGI и ISAPI.
Для повышения производительности приложений Java в современных браузерах используется компиляция "на лету"- Just-In-Time compilation (JIT). При первой загрузке аплета его код транслируется в обычную исполнимую программу, которая сохраняется на диске и запускается. В результате общая скорость выполнения аплета Java увеличивается в несколько раз.

Введение в Java
Первое приложение
Первый аплет
Рисование в окне аплета
События

Компоненты


Работа с системой Layout Manager
Работа с панелями
Окна и диалоговые панели
Многопоточность

Сетевые средства Java

Для посылки дейтаграмм отправитель и получатель создают сокеты дейта-граммного типа. В Java их представляет класс DatagramSocket. В классе три конструктора:
* DatagramSocket ()
— создаваемый сокет присоединяется к любому свободному порту на локальной машине;
* DatagramSocket (int port)
— создаваемый сокет присоединяется к порту port на локальной машине;
* DatagramSocket(int port, InetAddress addr) — создаваемый СОКСТ присоединяется к порту port; аргумент addr — один из адресов локальной машины.
Класс содержит массу методов доступа к параметрам сокета и, кроме того, методы отправки и приема дейтаграмм:
* send(DatagramPacket pack)
— отправляет дейтаграмму, упакованную в пакет pack;
* receive (DatagramPacket pack)
— дожидается получения дейтаграммы и заносит ее в пакет pack.

Работа в WWW
Переход к Swing
JFC: Почему именно так?
Преобразование XML в HTML на сервере
Можно создать многострочную кнопку!

Массивы массивов
Firewall tunneling
Семафоры
Небылицы?
Help tips в Swing
Использование нитей в Java

Минимизирование окна
Конструктор апплета
Как заменить кофейную чашку
Горячие клавиши
Статические классы
Динамическая память; классы Vector и StringBuffer

Язык и архитектура Java
Доступ к базам данных из Java программ и проблемы русификации
Немного Java - и страница ожила
Методы и функции JavaScript
Непрофессиональное введение в JAVASCRIPT
Фреймы и JavaScript

Закрытие окон
Таймауты
Math-объект
Проверка на некоторые символы
Загрузка новых изображений

Создание слоёв
Вложенные слои
Объект Event
События провоцируемые мышью в JavaScript 1.2
Семь уроков по PostScript
Кратко о HTML, JavaScript и WWW

Java

Основная идея, лежавшая в разработке технологии Enterprise JavaBeans -- создать такую инфраструктуру для компонент, чтобы они могли бы легко ``вставляться'' (``plug in'') и удаляться из серверов, тем самым увеличивая или снижая функциональность сервера. Технология Enterprise JavaBeans похожа на технологию JavaBeans в том смысле, что она использует ту же самую идею (а именно, создание новой компоненты из уже существующих, готовых и настраиваемых компонент, аналогиично RAD-системам), но во всем остальном Enterprise JavaBeans -- совершенно иная технология.

Как заставить AJAX читать между строк
Метод getTime
Объект Math
Прецеденты использования системы

Java 2: второй шанс вавилонской башни
Многозадачная Java: наступление на системном фронте
Контекстное меню для Netscape Navigator и Internet Explorer
JavaScript: создаем Человека
Средства разработки Java-приложений

Хранение данных на клиенте. DOM Storage и его аналоги
Несколько простых примеров составления сценариев на JavaScript
Создание динамических форм с помощью JavaScript
Project Looking Glass: новое измерение пользовательского интерфейса
Интеграция Tomcat с Apache. Развертывание веб-приложений Java2 на Linux-платформе

Настройка доменов контроля доступа в JBoss 3.х.х
Сборка сервера JBoss 3.x из исходного кода
Sun: от CDE к Java Desktop
Java наконец-то стала Mobile
.NET vs. Java

Сортировка таблицы средствами JavaScript
HTML Help ActiveX control: всплывающие окна
Развертывание приложения с помощью Java Web Start
Текущая дата на страничке. Использование массивов

Формы по шагам

Формы являются одним из важных элементов любого сайта и предназначены для обмена данными между пользователем и сервером. Область применения форм не ограничена отправкой данных на сервер, с помощью клиентских скриптов можно получить доступ к любому элементу формы, изменять его и применять по своему усмотрению.
Любая форма характеризуется следующими параметрами.
Элементы формы, которые представляют собой стандартные поля для ввода информации.
Кнопку отправки данных формы на сервер (кнопка SUBMIT).
Адрес программы на веб-сервере, которая будет обрабатывать содержимое данных формы.

Добавление формы

Обработчики событий JavaScript

Событие blur происходит когда поля формы select, text или textarea теряют фокус. Обработчик событий onBlur выполняет программу JavaScript, когда происходит событие blur

Обработчик событий onBlur

Microsoft Visual C++ и MFC. Программирование для Win95 и WinNT

В предыдущих томах серии “Библиотеки системного программиста” мы ориентировались в первую очередь на язык программирования Си. Даже если некоторые программы были написаны на Си++, то богатые возможности этого языка практически не использовались.
Сегодня уровень сложности программного обеспечения настолько высок, что разработка коммерческих приложений Windows с использованием средств одного только языка Си значительно затрудняется. Программист должен будет затратить массу времени на решение стандартных задач по созданию многооконного интерфейса. Реализация технологии связывания и встраивания объектов - OLE потребует от программиста еще более тяжелой работы.
Чтобы облегчить работу программиста практически все современные компиляторы с языка Си++ содержат специальные библиотеки классов. Такие библиотеки включают в себя практически весь программный интерфейс Windows и позволяют пользоваться при программировании средствами более высокого уровня, чем обычные вызовы функций. За счет этого значительно упрощается разработка приложений, имеющих сложный интерфейс пользователя, облегчается поддержка технологии OLE и взаимодействие с базами данных.

Microsoft Visual C++
Класс CTime - дата и время
Создание нового документа

Новые версии Visual C++
Новая кнопка в панели управления
Ресурсы приложения Dater

CISCO internetworking technology overview

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

Введение
Компоненты маршрутизации
Сравнение устройств для объединения сетей
Архитектура управления сети
Основы технологии

Сравнение Token Ring и IEEE 802.5
Технические условия FDDI
Компоненты UltraNet
Библиографическая справка
Компоненты PPP

Компоненты ISDN
Форматы блока данных
Формат блока данных
Дополнения LMI
Адресация
Доступ к среде

Архитектура цифровой сети (DNA)
Сетевой уровень
Доступ к среде
Услуги с установлением соединения
Протокол корректировки маршрутизации (RTR)

Транспортный уровень
Формат таблицы маршрутизации
Формат пакета
Иерархия маршрутизации
Типы сообщений

Сообщения о корректировке
ES-IS
Петли в сетях, объединенных с помощью мостов
Алгоритм SRB
Трансляционное объединение с помощью мостов (TLB)

Типы команд
Функциональные области управления

Photoshop for WEB

Все больше людей обращаются к Всемирной паутине. Некоторые ищут необходимые для работы научные данные, другие — результаты футбольных матчей, электронные варианты художественных книг или рефераты. Спектр представленной в Интернете информации очень широк. Однако в большинстве случаев доступ ко всему многообразию ресурсов осуществляется одним и тем же образом — через web-сайт, на котором представлены какие-либо сведения.
Число пользователей Интернета постоянно растет, и многие из них уже не хотят довольствоваться аскетичным оформлением первых сайтов, появившихся в научных центрах и военных организациях. Тогда основную ценность представляло их содержание — информация, а до оформления многим просто не было дела. Теперь все по-другому — пользователей так много, что относительно небольшая их часть ищет научные или технические сведения о технологиях или фундаментальных исследованиях.

Введение
Форматы исходных и промежуточных изображений
Форматы web-графики
Цветовые режимы и модели
Сканирование и коррекция изображений

Выделение фрагментов изображения
Подготовка графических элементов web-страниц
Подготовка макета web-страницы в Adobe PhotoShop
Сохранение файлов в форматах GIF и JPEG

Подготовка и оптимизация изображений
Создание анимированных изображений
Карты-изображения в ImageReady
Подготовка анимированных кнопок
Экспорт изображений

Дополнительные возможности ImageReady
Краткий обзор возможностей HTML
Структура HTML-документа и форматирование текста
Использование списков и таблиц
Использование изображений

Ресурсы Интернета и ссылки на них
Использование фреймов
Размещение web-страниц в Интернете и их реклама

WEB Анимация

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

Введение
Особенности GIF-анимации
Интерфейс Animation Shop 3
Интерфейс Adobe ImageReady 3.0

Интерфейс Macromedia Flash 5
Интерфейс Corel R.A.V.E. 2.0
Интерфейс After Effects 4
Заключение