Cамоучитель по Java



   forex review        

Краткий курс по Нечеткой Логике и Нечеткому Управлению

Нечеткая логика применяется как выгодный инструмент для управления систем подземки и комплексных индустриальных процессов, также для домашнего хозяйства и электроники развлечения, систем обнаружения ошибок и других экспертных систем. Хотя, Нечеткая Логика была изобретена в Соединенных Штатах,  быстрый рост этой технологии начался в Японии и теперь снова достиг США и Европы также.
Нечеткая Логика все еще быстро развивающаяся в Японии, количество патентов увеличивается по экспоненте. Основная часть имеет дело довольно с простыми приложениями Нечеткого Управления.
Нечеткость стало ключевым словом для маркетинга. Электронные статьи без нечеткого компонента постепенно, окажется,  мертвая акция. Пример, который показывает,  популярность Нечеткой Логики, даже существует туалетная бумага с " Нечеткой Логикой " напечатанный на ней.

Нечеткая логика - новая мощная технология
Решение прикладных задач на компьютере
Нечеткое сравнение коллекций: семантический и алгоритмический аспекты
Классификация коллекций
Сравнение списков
Сравнение упорядоченных множеств
Сортированные последовательности
Коллекции прямых и инверсных ассоциаций

Cамоучитель по Java

Как вы знаете, программа, написанная на одном из языков высокого уровня, к которым относится и язык Java, так называемый исходный модуль ("исходник" или "сырец" на жаргоне, от английского "source"), не может быть сразу же выполнена. Ее сначала надо откомпилировать, т. е. перевести в последовательность машинных команд — объектный модуль.
Но и он, как правило, не может быть сразу же выполнен: объектный модуль надо еще скомпоновать с библиотеками использованных в модуле функций и разрешить перекрестные ссылки между секциями объектного модуля, получив в результате загрузочный модуль — полностью готовую к выполнению программу.
Исходный модуль, написанный на Java, не может избежать этих процедур, но здесь проявляется главная особенность технологии Java — программа компилируется сразу в машинные команды, но не команды какого-то конкретного процессора, а в команды так называемой виртуальной машины Java (JVM, Java Virtual Machine).

Java в Internet
Оказалось, что на Java можно создавать полноценные приложения. Их графические элементы стали оформлять в виде компонентов — появились JavaBeans, с которыми Java вошла в мир распределенных систем и промежуточного программного обеспечения, тесно связавшись с технологией CORBA.

Выполнение Java-программы
Выполнение Java-программы - 2
Выполнение Java-программы - 3
Что такое JDK
Что такое JDK - 2
Что такое JRE
Как установить JDK
Как использовать JDK
Интегрированные среды Java
Особая позиция Microsoft

Логический тип
Значения логического типа boolean возникают в результате различных сравнений, вроде 2 з, и используются, главным образом, в условных операторах и операторах циклов. Логических значении всего два: true (истина) и false (ложь). Это служебные слова Java.

Логические операции
Целые типы
Операции над целыми типами
Арифметические операции
Приведение типов
Операции сравнения
Побитовые операции
Сдвиги
Вещественные типы
Комментарии

Принципы объектно-ориентированного программирования
Первые, даже самые простые программы, написанные в машинных кодах, составляли сотни строк совершенно непонятного текста. Для упрощения и ускорения программирования придумали языки высокого уровня: FORTRAN, Algol и сотни других, возложив рутинные операции по созданию машинного кода на компилятор. Те же программы, переписанные на языках высокого уровня, стали гораздо понятнее и короче. Но жизнь потребовала решения более сложных задач, и программы снова увеличились в размерах, стали необозримыми.

Абстракция
Абстракция - 2
Абстракция - 3
Иерархия
Иерархия - 2
Ответственность
Модульность
Модульность - 2
Модульность - 3
Принцип KISS

Права доступа к членам класса
Чтобы создать пакет надо просто в первой строке Java-файла с исходным кодом записать строку package имя; , например: package mypack; Тем самым создается пакет с указанным именем mypack и все классы, записанные в этом файле, попадут в пакет mypack

Пакет и подпакет
Права доступа к членам класса
Права доступа к членам класса - 2
Права доступа к членам класса - 3
Размещение пакетов по файлам
Размещение пакетов по файлам - 2
Импорт классов и пакетов
Java-файлы
Интерфейсы
Интерфейсы - 2

Числовые классы
В каждом из шести числовых классов-оболочек есть статические методы преобразования строки символов типа string лредставляющей число, в соответствующий примитивный тип: Byte.parseByte(), Double.parseDouble(), Float.parseFloat(), Integer.parselnt(), Long.parseLong(), Short.parseShort()

Числовые классы
Числовые классы - 2
Класс Boolean
Класс Character
Класс Character - 2
Класс Character - 3
Класс Biglnteger
Класс Biglnteger - 2
Класс Biglnteger - 3
Класс Big Decimal

Как найти подстроку
Поиск всегда ведется с учетом регистра букв.Первое вхождение подстроки sub в данную строку this отыскивает метод indexof (String sub). Он возвращает индекс первого символа первого вхождения подстроки sub в строку или -1, если подстрока sub не входит в строку this

Как изменить регистр букв
Как заменить отдельный символ
Как убрать пробелы в начале и конце строки
Как преобразовать данные другого типа в строку
Класс StringBuffer
Конструкторы
Как добавить подстроку
Как вставить подстроку
Как удалить подстроку
Как создать строку

Класс Vector
В классе vector из пакета java.uti i хранятся элементы типа object , а значит, любого типа. Количество элементов может быть любым и наперед не определяться. Элементы получают индексы 0, 1, 2, .... К каждому элементу вектора можно обратиться по индексу, как и к элементу массива.

Класс Stack
Класс Hashtable
Как создать таблицу
Как заполнить таблицу
Как получить значение по ключу
Как узнать наличие ключа или значения
Как получить все элементы таблицы
Как удалить элементы
Класс
Интерфейс Collection

Взаимодействие с системой
Восемнадцать статических методов сортируют массивы с разными типами числовых элементов в порядке возрастания чисел или просто объекты в их естественном порядке.

Абота с массивами
Абота с массивами - 2
Взаимодействие с системой
Локальные установки
Локальные установки - 2
Работа с датами и времене
Часовой пояс и летнее время
Класс Calendar
Подкласс GregorianCalendar
Представление даты и времени

Иерархия классов AWT
Как видите, библиотека графических классов AWT очень велика и детально проработана. Это многообразие классов только отражает многообразие задач построения графического интерфейса. Стремление улучшить интерфейс безгранично. Оно приводит к созданию все новых библиотек классов и расширению существующих. Независимыми производителями создано уже много графических библиотек Java: KL Group, JBCL, и появляются все новые и новые библиотеки.

Компонент и контейнер
Компонент и контейнер - 2
Компонент и контейнер - 3
Компонент и контейнер - 4
Иерархия классов AWT
Заключение

Преобразование координат
При создании контекста в нем задается текущий цвет для рисования, обычно черный, и цвет фона области рисования — белый или серый. Изменить текущий цвет можно методом setcoior (Color newCoior), аргумент newcoior которого — объект класса Color. Узнать текущий цвет можно методом getcolor (), возвращающим объект класса color.

Преобразование координат
Класс AffineTransform
Класс AffineTransform - 2
Класс AffineTransform - 3
Рисование фигур средствами Java2D
Класс BasicStroke
Класс BasicStroke - 2
Класс BasicStroke - 3
Класс GeneralPath
Классы GradientPaint и TexturePaint

Класс Cursor
Класс component — центр библиотеки AWT — очень велик и обладает большими возможностями. В нем пять статических констант, определяющих размещение компонента внутри пространства, выделенного для компонента в содержащем его контейнере: BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT, И ОКОЛО СОТНИ МеТОДОВ

Класс Cursor
Как создать свой курсор
Как создать свой курсор - 2
События
Класс Container
События
Компонент Label
События
Компонент Button
События

Менеджер BorderLayout
Все менеджеры размещения написаны полностью на языке Java, в состав SUN J2SDK входят их исходные тексты. Если вы решили написать свой менеджер размещения, реализовав интерфейс LayoutManager или LayoutManager2, то посмотрите эти исходные тексты.

Менеджер FlowLayout
Менеджер BorderLayout
Менеджер BorderLayout - 2
Менеджер GridLayout
Менеджер Card Lay out
Менеджер Card Lay out - 2
Менеджер GridBagLayout
Менеджер GridBagLayout - 2
Менеджер GridBagLayout - 3
Заключение

Событие ItemEvent
Это простое событие означает, что надо выполнить какое-то действие. При этом неважно, что вызвало событие: щелчок мыши, нажатие клавиши или что-то другое.

Событие ItemEvent
Событие AdjustmentEvent
Событие AdjustmentEvent - 2
Несколько слушателей одного источника
Диспетчеризация событий
Диспетчеризация событий - 2
Создание собственного события
Обработка действий мыши
Обработка действий мыши - 2
Обработка действий мыши - 3

Всплывающее меню
Его команды зависят от компонента, на котором была нажата кнопка мыши. В языке Java всплывающее меню — объект класса Рорирмепи. Этот класс расширяет класс Menu, следовательно, наследует все свойства меню и пункта меню Menultem. Всплывающее меню присоединяется не к строке меню типа MenuBar или к меню типа Menu в качестве подменю, а к определенному компоненту. Для этого в классе component есть метод add(PopupMenu menu).

Всплывающее меню
Всплывающее меню - 2

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

Передача параметров
Передача параметров - 2
Параметры тега applet
Параметры тега applet - 2
Сведения об окружении апплета
Изображение и звук
Слежение за процессом загрузки
Класс MediaTracker
Класс MediaTracker - 2
Защита от апплета

Изменение составляющих цвета
В библиотеке AWT применяются две модели обработки изображения. Одна модель реализует давно известную в программировании общую модель "поставщик-потребитель" (Producer-Consumer). Согласно этой модели один объект, "поставщик", генерирует сам или преобразует полученную из другого места продукцию, в данном случае, набор пикселов, и передает другим объектам. Эти объекты, "потребители", принимают продукцию и тоже преобразуют ее при необходимости. Только после этого создается объект класса image и изображение выводится на экран.

Модель обработки "поставщик-потребитель"
Модель обработки "поставщик-потребитель" - 2
Модель обработки "поставщик-потребитель" - 3
Изменение составляющих цвета
Создание различных эффектов
Анимация
Анимация - 2
Улучшение изображения 2-ой буферизацией
Улучшение изображения 2-ой буферизацией - 2
Улучшение изображения 2-ой буферизацией - 3

Часть заголовка метода throws
Обработка исключительных ситуаций стала сейчас обязательной частью объектно-ориентированных программ. Применяя методы классов J2SDK и других пакетов, обращайте внимание на то, какие исключения они выбрасывают, и обрабатывайте их. Исключения резко меняют ход выполнения программы, делают его запутанным. Не увлекайтесь сложной обработкой, помните о принципе KISS.

Блоки перехвата исключения
Блоки перехвата исключения - 2
Блоки перехвата исключения - 3
Часть заголовка метода throws
Часть заголовка метода throws - 2
Оператор throw
Иерархия классов-исключений
Порядок обработки исключений
Создание собственных исключений
Заключение

Синхронизация подпроцессов
Технология Java по своей сути — многозадачная технология, основанная на threads. Это одна из причин, по которым технология Java так и не может разумным образом реализоваться в MS-DOS и Windows 3.1, несмотря на многие попытки.

Класс Thread
Класс Thread - 2
Класс Thread - 3
Класс Thread - 4
Синхронизация подпроцессов
Синхронизация подпроцессов - 2
Синхронизация подпроцессов - 3
Согласование работы подпроцессов
Согласование работы подпроцессов - 2
Согласование работы подпроцессов - 3

Печать в Java
Для вывода на консоль мы всегда использовали метод printino класса Pnntstream, никогда не определяя экземпляры этого класса. Мы просто использовали статическое поле out класса system, которое является объектом класса PrintStream. Исполняющая система Java связывает это поле с консолью.

Консольный ввод/вывод
Консольный ввод/вывод - 2
Консольный ввод/вывод - 3
Печать в Java
Печать в Java - 2
Печать средствами Java 2D
Печать средствами Java 2D - 2
Печать средствами Java 2D - 3
Печать средствами Java 2D - 4
Печать средствами Java 2D - 5

Работа по протоколу TCP
Среди программного обеспечения Internet большое распространение получила информационная система WWW (World Wide Web), основанная на прикладном протоколе HTTP (Hypertext Transfer Protocol). В ней используется расширенная адресация, называемая URL (Uniform Resource Locator).

Работа в WWW
Работа в WWW - 2
Работа в WWW - 3
Работа в WWW - 4
Работа по протоколу TCP
Работа по протоколу TCP - 2
Работа по протоколу TCP - 3
Работа по протоколу TCP - 4
Работа по протоколу UDP
Работа по протоколу UDP - 2

Архиватор jar
Для упаковки нескольких файлов в один архивный файл, со сжатием или без сжатия., в технологии Java разработан формат JAR. Имя архивного jar-файла может быть любым, но обычно оно получает расширение jar. Способ упаковки и сжатия основан на методе ZIP. Название JAR (Java ARchive) перекликается с названием известной утилиты TAR (Tape ARchive), разработанной в UNIX.

Создание архива
Создание архива - 2
Файл описания MANIFEST.MF
Файл INDEX.LIST
Компоненты JavaBeans
Компоненты JavaBeans - 2
Связь с базами данных через JDBC
Связь с базами данных через JDBC - 2
Связь с базами данных через JDBC - 3
Связь с базами данных через JDBC - 4

Платформа программирования J2ME для портативных устройств

Глава 1 познакомит вас с компьютерной платформой J2ME. В ней приводится большинство терминов, связанных с J2ME, и дается общая ориентация в понятиях, которые связаны с устройством и организацией платформы J2ME.
В главе 2 описывается процесс разработки приложений на J2ME. Вы узнаете, как создавать, компилировать, подготавливать, выполнять и отлаживать приложения на J2ME. В этой главе не описывается инструментарий или API. Описание этих элементов начинается в главе 3.
В главе 3 описывается платформа J2ME MIDP с точки зрения разработчика программного обеспечения. Здесь вы познакомитесь с организацией API, базовыми обобщенными понятиями программирования и моделями, характеризующими платформу MIDP.
Глава 4 продолжает тему главы 3. В ней затронут высокоуровневый программный интерфейс приложения (API) в MIDP, который заключает в себе набор компонентов UI, определяемых MIDP. Вы узнаете, как манипулировать различными компонентами UI, а также как выполнять обработку событий, называемую command processing в терминологии MIDP.
В главе 5 описа'ны компоненты пользовательского интерфейса (UI) MIDP. После изучения базовых обобщенных понятий, определяемых MIDP и описанных в главе 4, вы готовы к изучению того, как использовать компоненты, которые строятся на основе этих обобщений.
В главе 6 описывается низкоуровневый программный интерфейс приложения (API) в MIDP, который реализуется остальными компонентами UI MIDP, не описанными в главе 5.
В главе 7 описываются механизмы постоянного хранения, доступные вам благодаря MIDP.
Глава 8 посвящена организации сетей и коммуникаций. Здесь вы узнаете, как использовать службы организации сети и распределенной обработки данных и функциональные возможности, определяемые CLDC и MIDP. Вы также получите некоторое понятие о решениях создания и поддержки служб связи в J2ME.
Глава 9 знакомит вас с интернационализацией. Это вопрос значительной ширины и глубины, который требует даже более, чем отдельной посвященной ему книги. Здесь вы узнаете о некоторых проблемах, с которыми вы столкнетесь при создании практически применимых приложений MIDP. В этой главе описывается степень поддержки интернационализации в CLDC и MIDP и показано несколько примеров того, как использовать эти свойства. Вы также узнаете, как сконфигурировать ваше устройство для поддержки интернационализации и локализации.
В главе 10 описываются управление приложениями и системы инициализации. Теоретическое знакомство с этими системами важно для разработчика приложений на J2ME, особенно MIDP-разработчиков, поскольку эти системы влияют на ваше взаимодействие с поставщиками приложений и оперативной информации, поставщиками беспроводных сетей и даже с конечными пользователями.
В главе 11 описывается среда беспроводного Интернета. В ней описывается интеграция между беспроводными и стационарными сетями, беспроводной Интернет с точки зрения разработчика приложений, и среда, в которой выполняется приложение. Вы получите представление о беспроводных шлюзах Интернета, интерфейсах интернет-порталов, а также интерфейсах и службах беспроводных приложений - все, с чем вы, вероятно, столкнетесь как разработчик беспроводных приложений. Эта глава также знакомит разработчика приложений J2ME с базовыми понятиями об архитектуре и тем, как они действуют.

Введение
Знакомство с платформой Java 2 Micro Edition (J2ME)
Процесс разработки приложений MIDP
Программная структура приложений MIDP
Программная структура приложений MIDP
Компоненты пользовательского интерфейса MIDP
Низкоуровневый программный интерфейс приложения (API) MIDP
Поддержка постоянного хранения в MIDP
Организация сетей и коммуникации в MIDP
Интернационализация
Инициализация приложений
Среда беспроводного Интернета
Приложение