Delphi 3.Библиотека программиста



   Factoring        

Delphi 3.Библиотека программиста

Программисты (особенно начинающие) любят задавать вопросы типа: «Скажи, на чем ты пишешь?..» Когда-то этот вопрос выглядел вполне логично. Компиляторы, отладчики, серверы, системы управления базами данных и все остальное только-только выходило из каменного века. Программные инструменты разительно отличались друг от друга по качеству и возможностям. Стоило сделать ставку на неудачный инструментарий, и работа становилась излишне тяжкой, а качество результата - низким.
Сегодня стал актуальным другой вопрос: «А чего стоишь ты сам?» Благодаря непрерывной конкуренции современные средства разработчика стали невероятно мощными и качественными, так что среднему программисту вряд ли удастся выжать из них все возможное. Скорее всего, вы спасуете намного раньше, чем ваш инструментарий - если только не узнаете о нем абсолютно все и не доведете свое мастерство программиста до подлинного совершенства.
Книги этой серии предназначены для углубленного изучения программных инструментов. В них рассматриваются нетривиальные возможности, которые невозможно описать в простейшем учебнике. Полноценные проекты заставляют читателя мыслить на уровне эксперта - напрягать серое вещество, лежащее в основе всего, что мы называем «мастерством».
Конечно, это не единственный путь - например, можно добросовестно набивать шишки обо все острые углы новых технологий и наобум пробовать все подряд, пока что-нибудь не заработает. А можно воспользоваться опытом наших авторов, которые уже прошли стадию обучения и попутно сделали кое-какие заметки на память. Мы тщательно отобрали темы, авторов и методику изложения, чтобы читатель не путался в ненужных вступлениях или редких технологиях, которые ему все равно не понадобятся.

32 разрядные консольные приложения
Большинство этих людей либо вообще ничего не знали о Паскале, либо прошли начальные курсы под руководством других «попугаев», для которых переносимость кода стала высшим достижением во всей компьютерной науке. Так что в учебных заведениях обычно преподавался выхолощенный Паскаль, пригодный разве что для перебора элементов массива или работы с командной строкой. На самом деле C обладает ничуть не большей переносимостью, чем Паскаль, но…, впрочем, довольно - все эти разговоры попросту смешны, поскольку переносимость была и остается мифом.

Консольные приложения
Фильтры
Консольные приложения на Delphi
Hello Delphi
Программа Hello Delphi
Консольный ввод/вывод
Программафильтр на Delphi
Базовая программафильтр
Обработка командной строки
Программа Params

Вопросы безопасности
В групповом поле gbSecurity можно указать, какие действия разрешаются FTP-клиентам, а какие нет. Например, вы можете запретить клиентам удалять каталоги на сервере, для этого следует лишь снять флажок cbDeleteDir. Если вы не хотите, чтобы программа KEEPER32 разрешала клиентам передаватьFRcvBuffer свои файлы на сервер, снимите флажок cbUpload. Внесенные изменения сохраняются кнопкой Save, при нажатии которой вызывается процедура SaveSecure Settings.

Список нежелательных IPадресов
Где и как хранится конфигурация
Процедура LoadSettings
Открываемся!
Вывод списка каталогов и файлов
Процедура GetDirList
Создание прослушивающего сокета
Метод CsSocket GetServer
Как вас обслуживают?
Вход строго по одному

Применение иерархических данных в запросах
Возможности иерархических и реляционных моделей по части запросов сильно расходятся. Реляционная модель хорошо подходит для поиска записей по атрибутам (полям) или объединения таблиц по общим значениям. На SQL такие запросы часто записываются в виде коротких, очевидных выражений.

Использование SQL для поиска среди потомков
Целостность структуры
Использование SQL
Использование SQL
Проблема произвольной вложенности
Использование сохраненных процедур
Процедуры выборки в InterBase
Компоненты TreeData
Работа со свойствами элементов TreeData
Свойства компонентов TreeData

DirectX Графика в проектах Delphi

Ключевым понятием операционной системы Windows, позволяющим понять любую технологию, использующуюся в ней, является понятие библиотеки динамической компоновки (DLL, Dynamic Link Library). Любое полноценное приложение этой операционной системы (32-разрядное приложение, имеющее собственное окно) использует DLL-файлы. По мере необходимости приложение обращается к библиотекам, вызывая из них нужные функции. Например, выполнимый модуль приложения не содержит кода по отображению окна, вывода в окно и реакции на большинство событий. Перечисленные действия реализуются в системных DLL. В частности, использованием такой технологии удается экономить драгоценные ресурсы, один и тот же код не дублируется многократно, а размещается в памяти единожды. К одной библиотеке, как правило, может обращаться одновременно несколько приложений. Библиотеку в такой схеме называют сервером, а обслуживаемое им приложение - клиентом. Сервером и клиентом в общем случае могут являться и библиотека, и приложение. В частности, это означает, что некоторая библиотека, в свою очередь, может "подгружать" функции из другой библиотеки.

Библиотеки динамической компоновки
Технология, основанная на динамических библиотеках, является очень эффективной, потому и стала основой программной архитектуры операционной системы. Однако ей присуще ограничение, не позволяющее использовать парадигму объектно-ориентированного программирования (ООП): библиотеки могут содержать код функций и процедур, а также ресурсы, но не способны содержать описания классов. Это утверждение верно отчасти, я говорю пока о DLL "в чистом виде". По мере развития программирования как технологии, возникла необходимость поддержки ООП на уровне операционной системы.

СОМ-модель
Контроль версии
СОМ-объекты
Интерфейсы
Интерфейсы - 2
Интерфейсы - 3
Интерфейсы - 4
Интерфейсы - 5
Что вы узнали в этой главе
Поверхности

Полноэкранный режим
Конечно, для многих ваших приложений потребуется именно полноэкранный режим, поэтому мы изучим нюансы, связанные с использованием Direct3D в таком режиме. Как обычно для этой книги, рассмотрим особенности на конкретном примере (проект каталога Ех28) модифицированного варианта вращающейся звезды. Теперь звезда вращается в полноэкранном режиме.

Альфа-составляющая цвета
Альфа-составляющая цвета - 2
Альфа-составляющая цвета - 3
Альфа-составляющая цвета - 4
Работа с переменным числом вершин
Работа с переменным числом вершин - 2
Работа с переменным числом вершин - 3
Текстура
Текстура - 2
Текстура - 3

Справочное руководство по Delphi

Внешний вид среды программирования Delphi отличается от многих других из тех, что можно увидеть в Windows. К примеру, Borland Pascal for Windows 7.0, Borland C++ 4.0, Word for Windows, Program Manager - это все MDI приложения и выглядят по-другому, чем Delphi. MDI (Multiple Document Interface) - определяет особый способ управления нескольких дочерних окон внутри одного большого окна.
Среда Delphi же следует другой спецификации, называемой Single Document Interface (SDI), и состоит из нескольких отдельно расположенных окон. Это было сделано из-за того, что SDI близок к той модели приложений, что используется в Windows 95.
Если Вы используете SDI приложение типа Delphi, то уже знаете, что перед началом работы лучше минимизировать другие приложения, чтобы их окна не загромождали рабочее пространство. Если нужно переключиться на другое приложение, то просто щелкните мышкой на системную кнопку минимизации Delphi. Вместе с главным окном свернутся все остальные окна среды программирования, освободив место для работы других программ.

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

Дополнительные элементы
Инструментальные средства
Инструментальные средства - 2
Стандартные компоненты
Стандартные компоненты - 2
Подробнее об Инспекторе Объектов
Подробнее об Инспекторе Объектов - 2
Сохранение программы
TButton, исходный текст, заголовки и
TButton, исходный текст, заголовки и - 2

Создание таблиц с помощью компонента TTable
Параметр Name, имеющий тип string, определяет имя индекса. Параметр Fields (также имеющий тип string) обозначает имя поля, которое должно быть индексировано, т.е. имя индексируемого поля. Составной индекс, использующий несколько полей, может быть задан списком имен полей, разделенных точкой с запятой “;”, например: ‘Field1;Field2;Field4’.

Основные понятия о TQuery
Свойство SQL
Свойство SQL - 2
TQuery и Параметры
TQuery и Параметры - 2
TQuery и Параметры - 3
Передача параметров через TDataSource
Выполнение соединения нескольких таблиц.
Выполнение соединения нескольких таблиц. - 2
Open или ExecSQL?

Отладка программы в Delphi

Delphi может включить в исполняемую программу инструкции контроля диапазона значений переменных. Чтобы инструкции контроля были добавлены в программу, нужно во вкладке Compiler диалогового окна Project Options (Рисунок 12.3) установить флажок Overflow checking (Контроль переполнения), который находится в группе Runtime errors (Ошибки времени выполнения).

Понятие рекурсии
Рекурсивным называется объект, частично состоящий или определяемый с помощью самого себя. Факториал — это классический пример рекурсивного объекта. Факториал числа п — это произведение целых чисел от 1 до п. Обозначается факториал числа п так: n!.

Окно программы вычисления факториала
Использование рекурсивной функции
Примеры программы вычисления факториала
Вкладка Compiler диалогового окна Project Options
Примеры программ
Рекурсивный алгоритм поиска файлов
Диалоговое окно Обзор папок
Программа поиск файлов
Кривая Гильберта
Кривые Гильберта первого второго порядков

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

Наблюдение значений переменных
Добавление имени переменной в список Watch List
Результат добавления имени в Watch List
Контроль значений переменных
Контроль значения без Watch List
Классификация ошибок
Сообщение об ошибке при запуске из Delphi
Сообщение об ошибке при запуске из Windows
Предотвращение и обработка ошибок
Таблица 13 1 Типичные исключения

Использование редактора Microsoft Word
Справочная система программ, работающих в Windows, в том числе и справочная система Delphi, представляет собой набор файлов определенной структуры, используя которые программа Winhelp, являющаяся составной частью Windows, выводит справочную информацию по запросу (требованию) пользователя.

Добавление закладки
Выбор точки документа для перехода по ссылке
Использование HTML Help Workshop
Основы HTML
HTMLтеги
Создание файла справки
Компиляция
Вывод справочной информации
Описание класса THhореn
Окно программы Использование ActiveX

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

Клетка игрового поля - элемент массива
Массив в начале игры
Форма приложения
Главная форма программы Сапер 2002
Компонент MainMenu
Структура меню программы Сапер 2002
Свойства объекта TMenuItem
Начало игры
Процедура NewGame
Процедура ShowPole

Удаление компонента
Delphi предоставляет возможность программисту создать свой собственный компонент, поместить его на одну из вкладок палитры компонентов и использовать при разработке приложений точно так же, как и другие компоненты Delphi

Выбор пакета для редактирования
Диалоговое окно Confirm
Окно редактора пакета
Выбор компонента удаляемого из пакета
Информационное сообщение о недоступности
Настройка палитры компонентов
Диалоговое окно Palette Properties
Выбор базового класса
Создание модуля компонента
Диалоговое окно New Component

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

Окно BDE Administrator
Диалоговое окно New Database Alias
Регистрация нового псевдонима
Создание таблицы
Тип поля определяет тип информации
Тип
Специальные символы при записи шаблонов
Программа управления базой данных
Поле
Памятники СанктПетербурга

Программа InstallShield Express
Современные программы распространяются на компакт-дисках. Процесс установки программы, который, как правило, предполагает не .только создание каталога и перенос в него выполняемых файлов и файлов данных с промежуточного носителя, но и настройку системы, для многих пользователей является довольно трудной задачей. Поэтому установку прикладной программы на компьютер пользователя обычно возлагают на специальную программу, которая находится на том же диске, что и файлы программы, которую надо установить.

Новый проект
Начало работы над новым проектом
В левой части окна проекта
Структура
Команды группы Organize Your Setup
Параметры команды General Information
Некоторые псевдонимы каталогов Windows
Псевдоним
Несколько элементов в группе Features
Команда Setup Types


Язык программирования C
Защищенный режим процессоров Intel
Adobe Illustrator 9.0
Справочник Novell Netware 4
Аппаратное обеспечение IBM PC
Учебник по созданию shareware программ
Электротехника и электроника
Уроки Iczelion'а
Amadeus Vista. Учебное пособие для пользователей
Интерфейс
Учебное пособие по PRO Engineer 2001
Протокол IGRP
Системы искусственного интеллекта
Безопасность компьютерных сетей
Безопасность IIS
Безопасность в Internet- Intranet
Спецификация HTML 4.01 + Спецификация CSS2
Работа с программой Adobe InDesign
Введение в реляционные базы данных
Индексирование Web-узлов