Delphi для профессионалов

         

Delphi для профессионалов

Несколько лет назад книгу по Delphi 2 или 3 надо было начинать с азов объектно-ориентированного программирования (ООП). Многие только переходили к Delphi из DOS, многие использовали Borland Pascal for Windows и работали с Windows API напрямую. Объекты еще были в диковинку, и полное разъяснение новых принципов было просто обязательно.
Но и сейчас писать об этом вполне актуально. Конечно, выросло поколение программистов, которые "с молоком матери" впитали новые понятия. Но от понимания объектов до их грамотного использования — дистанция огромного размера. Для создания более или менее сложных приложений нужны навыки объектно-ориентированного дизайна, а для приложений в свою очередь — четкое знание возможностей вашей среды программирования. Поэтому в данной главе мы постараемся акцентировать внимание читателя на применение ООП в среде Delphi 7.
По сравнению с традиционными способами программирования ООП обладает рядом преимуществ. Главное из них заключается в том, что эта концепция в наибольшей степени соответствует внутренней логике функционирования операционной системы (ОС) Windows. Программа, состоящая из отдельных объектов, отлично приспособлена к реагированию на события, происходящие в ОС. К другим преимуществам ООП можно отнести большую надежность кода и возможность повторного использования отработанных объектов.

Объектно-ориентированное программирование
Библиотека визуальных компонентов VCL и ее базовые классы
Обработка исключительных ситуаций
Кроссплатформенное программирование для Linux
Элементы управления Win32

Элементы управления Windows XP
Списки и коллекции
Действия (Actions) и связанные с ними компоненты
Файлы и устройства ввода/вывода
Использование графики
Архитектура приложений баз данных

Набор данных
Поля и типы данных


Механизмы управления данными
Компоненты отображения данных
Процессор баз данных Borland Database Engine

Технология dbExpress
Сервер баз данных InterBase и компоненты InterBase Express
Использование ADO средствами Delphi
Технология DataSnap. Механизмы удаленного доступа
Сервер приложения

Клиент многозвенного распределенного приложения
Компоненты Rave Reports и отчеты в приложении Delphi
Визуальная среда создания отчетов
Разработка, просмотр и печать отчетов

Отчеты для приложений баз данных
Стандартные технологии программирования
Динамические библиотеки
Потоки и процессы
Многомерное представление данных
Использование возможностей Shell API

Советы по Delphi

Я обнаружил, что открытый Data Desktop, даже без открытых объектов, может создавать "помехи". Также мудрит открытая сессия Delphi, если вы запускаете собранное приложение вне IDE. Я допускаю, что если вы закрываете все объекты под DD, конфигурация BDE быстро себя не очистит. Наверное мне следовало бы запустить мое приложение пару недель спустя, но я реально предполагаю, что множество сеансов Paradox блокируют бедный BDE.

Медленный доступ к таблице при 1 обращении

Уроки Borland Delphi

Допускаю, что вы пока еще не слышали этого названия. Хотя, быть может, и слышали. Delphi - это греческий город, где жил дельфийский оракул. И этим именем был назван новый программный продукт с феноменальными характеристиками. Шесть месяцев назад компания Borland представила на суд программистской общественности новый программный продукт, о котором к моменту его выхода ходило множество слухов. Первая версия продукта явилась результатом разработки, которая велась компанией в обстановке строжайшей секретности в течение двух с половиной лет.
Hадо отметить, что к моменту выхода продукта обстановка вокруг компании Borland складывалась не лучшим для нее образом. Поговаривали о возможной перепродаже компании, курс акций компании неудержимо катился вниз. Сейчас, по прошествии полугода, уже можно без всяких сомнений утверждать, что период трудностей позади (даже несмотря на то, что российская пресса нет-нет, да и вынет на свет божий залежалый перевод статьи полугодовой давности). Hеверно, конечно, было бы говорить, что только Delphi явился причиной восстановления компании; кроме Delphi, у Borland появились и другие замечательные продукты, так же, как и Delphi, основывающиеся на новых, появившихся недавно у компании Borland, технологиях. Я имею в виду новые BDE 2.0, BC++ 4.5, Paradox for Windows 5.0, dBase for Windows 5.0, BC++ 2.0 for OS/2.
Тем не менее, именно Delphi стал тем продуктом, на примере которого стало ясно, что у Borland есть еще порох в пороховницах, и что один единственный продукт может настолько удачно сочетать несколько передовых технологий.

Уроки 1-19

Руководство начинающего разработчика Debian

Depends Данный пакет не может быть установлен, если пакеты, указанные в списке зависимостей Depends, также не установлены. Используйте этот тип зависимости, если ваша программа гарантировано не будет работать (или вызовет какие-нибудь серьезные проблемы), если соответствующий пакет не установлен.
Recommends Программа dselect не установит ваш пакет, если пакеты, указанные в списке зависимостей Recommends, не установлены. Однако программы dpkg и apt-get должны позволить сделать это. Используйте данный тип зависимостей для пакетов, которые бы не использовались вместе с вашим пакетом только в нестандартных случаях.
Suggests Когда пользователь устанавливает ваш пакет, программа dselect предложит ему также установить пакеты, перечисленные в списке зависимостей Suggests. Программы dpkg и apt этого делать не будут. Используйте данный тип зависимостей для пакетов, которые могут расширить функциональность вашего пакета, и, таким образом, увеличить его полезность.

APT - Утилита управления пакетами Debian
Введение в создание пакетов для дистрибутива GNU Debian Linux
Русский Debian 3.0 FAQ 0.3
Обязательные файлы в каталоге debian

Справочник по Debian
The Linux kernel under Debian
Примеры скриптов
Руководство по Debian

Руководство начинающего разработчика Debian - Другие файлы в каталоге debian
Руководство начинающего разработчика Debian - Завершающие шаги
Руководство начинающего разработчика Debian - Изменение исходных текстов

Краткая инструкция по использованию програм для сканирования книг

Данная инструкция предназначена для людей, которые хотят сэкономить свое время, автоматизируя процесс перевода текстового материала (книг, рукописей и др.) в электронный вид.

ABBYY FineReader 8.0
Методическое руководство по OCR
ABBYY FineReader 8.0

Сканеры и сканирование
Элементы языков HTML и JAVASCRIPT
Сканируя пространство

Введение в Perl

Прежде чем приступить к последовательному ознакомлению с не знакомым для вас языком, должен оговориться и сказать, что все примеры да и сам язык описанию которого посвящена эта книга это Perl версии 5.003 для операционной системы FreeBSD версии 2.01. Существуют реализации этого языка для операционных систем OS/2 , MS-DOS и Windows NT но они немного отстают по возможностям от оригинала, рожденного в недрах Unix.

От простого к сложному
Конструкторы и деструкторы
My список
Print файл список print список
Sort подпрограмма список

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

Язык Perl создан системным программистом Ларри Уоллом (Larry Wall) как средство UNIX, позволяющее "склеивать" из программок, выполняющих отдельные функции, большие сценарии для решения комплекса задач, связанных с администрированием, обработкой текста и т. д. В дальнейшем он вышел за эти рамки, превратился в настоящий язык программирования, в котором нашли отражение многие тенденции, обозначившиеся в технологии программирования за последнее десятилетие, и получил широкое распространение в связи с развитием Inernet. Perl является основным средством создания приложений CGI, удобен для решения задач администрирования Web-серверов, электронной почты и других систем. Благодаря быстроте и легкости написания сценариев на этом языке он распространился и на другие платформы: DOS, Windows, OS/2, Mac, VMS и пр. Одно из основных достоинств языка Perl — его открытость и доступность. В сети Internet можно получить совершенно бесплатно исходные тексты интерпретатора perl (язык Perl — интерпретируемый, что в некоторых случаях является преимуществом) и модулей его расширения.

Структура раздела
Системное администрирование - это ремесло
Perl приходит на помощь
Информация о пользователях в Unix
Управление процессами в MacOS

Файлы узлов
Что такое каталог?
Взаимодействие с SQL-сервером из Perl
Отправка почты
Текстовые журналы
Обращаем внимание на неожиданные или несанкционированные изменения

Ссылки на подробную информацию
Организация данных в LDAP
XML - это язык разметки
Создание/удаление баз данных и таблиц
Автозагрузка подпрограмм модулей

PERL - статьи

Популярность Internet растет с каждым днем, однако если раньше клиенты провайдеров в основном хотели получить доступ к системам электронной почты, то в последние два года наметилась тенденция к расширению спектра требуемых услуг. Теперь интересы пользователей не ограничиваются электронным почтовым ящиком и поиском какой-либо информации в WWW, они стремятся создавать собственные Web-страницы или даже Web-узлы. Новички организуют простые HTML-страницы, не обращая особого внимания на стиль и дизайн. Но со временем у них появляется желание сделать нечто эффектное и интересное для определенной части Internet-сообщества. И тогда новоявленному Web-мастеру приходится более полно изучить язык разметки гипертекста (HTML) и языки создания клиентских сценариев (VBScript1 и JavaScript)*.
Впоследствии у него могут появиться и новые запросы, — например пообщаться с посетителями своего узла. И в этом случае его уже не удовлетворит, если в тело страницы просто добавится
Webmaster. Так, он решит, что неплохо было бы получить достаточно полную информацию о посетителях узла (имена, e-mail, телефоны, факсы и адреса), подсчитать количество посещений, собрать различные мнения и, наконец, создать базу данных, чтобы пользователям сеансов связи предоставить какие-либо определенные услуги. Но для всего этого знания HTML, VBScript1 и Java Script становится явно недостаточно, так как они описывают только технологию взаимодействия сервера и клиента.

Постраничный вывод новостей с разбиением по датам
Массивы хэшей
Переменные среды CGI
Библиотека GTK+
Защищаем Perl

Perl для системного администрирования

Perl - это мощный язык программирования, уходящий корнями в задачи традиционного системного администрирования. В течение многих лет он адаптировался и расширялся для работы с новыми операционными системами и новыми задачами. До сих пор, однако, не было ни одной книги, посвященной использованию Perl исключительно для системного администрирования, тем самым признавая факт глубокой исторической связи.
Если вы уже немного знакомы с Perl и вам необходимо выполнять задачи системного администрирования, то эта книга для вас. Читатели с различным уровнем опыта как в Perl, так и в системном администрировании, найдут в этой книге что-то для себя полезное.
В некоторых главах предполагается, что у вас уже есть знания по определенным темам, в то время как этого может и не быть. Для тех, кто не знаком с отдельными темами этой книги, есть несколько мини-руководств, которые помогут быстро разобраться в их основах. В число этих руководств входят введение в систему контроля версий (RCS), введение в протокол LDAP (облегченный протокол доступа к каталогам), введение в SQL, XML и протокол SNMP.

Введение
Файловые системы
Учетные записи пользователей
Действия пользователей
Службы имен TCP/IP

Службы каталогов
Администрирование баз данных SQL
Электронная почта
Журналы
Безопасность и наблюдение за сетью

Пятиминутное руководство по RCS
Десятиминутное руководство по LDAP
Пятнадцатиминутное руководство по SQL
Двадцатиминутное руководство по SNM

Perl практика

Практические примеры применения различных свойств языка

Список и массив
Модификаторы выражений
Простейшая CGI-программа
Блоки операторов
Доступ к каталогам
Открытие и закрытие дескрипторов файлов

Определение пользовательской функции
Что такое хеш
Ввод из STDIN
Программа Hello
Основные понятия
Скалярные типы данных

Изучаем Perl

Слово Perl является аббревиатурой выражения Practical Extraction and Report Language (практический язык извлечений и отчетов), хотя иногда его называют Pathologically Eclectic Rubbish Lister (патологически эклектичный мусорный листер). Не стоит спорить о том, какое из этих названий более правильное, потому что оба они принадлежат Ларри Уоллу, создателю и главному архитектору, распространителю и опекуну языка Perl. Ларри создал этот язык, когда пытался формировать отчеты из иерархии файлов системы оповещения об ошибках, похожей на Usenet-новости, а возможности применявшегося в то время обработчика потоков данных awk оказались исчерпанными. Будучи настоящим (то есть ленивым) программистом, Ларри решил вырвать данную проблему с корнем, применив для этого какой-нибудь универсальный инструмент, который он надеялся использовать и в дальнейшем. В результате появилась первая версия языка Perl.
Позабавившись немного с этой версией, добавив кое-что, Ларри предложил ее сообществу читателей материалов телеконференций Usenet, известному также как "Сеть" (the Net). Пользователи, имеющие доступ к входящим в систему Usenet компьютерам, разбросанным по всему свету (а их в то время было несколько десятков тысяч), обеспечили для создателя Perl эффективную "обратную связь", спрашивая, как делать одно, другое, третье. Многие из этих задач Ларри даже и не собирался ставить перед своим маленьким новым языком программирования.

Назначение языка Perl
Полулокальные переменные, созданные при помощи функции local
Телеконференции Usenet

Первый сайт на Perl

Язык Perl создан системным программистом Ларри Уоллом (Larry Wall) как средство UNIX, позволяющее "склеивать" из программок, выполняющих отдельные функции, большие сценарии для решения комплекса задач, связанных с администрированием, обработкой текста и т. д. В дальнейшем он вышел за эти рамки, превратился в настоящий язык программирования, в котором нашли отражение многие тенденции, обозначившиеся в технологии программирования за последнее десятилетие, и получил широкое распространение в связи с развитием Inernet. Perl является основным средством создания приложений CGI, удобен для решения задач администрирования Web-серверов, электронной почты и других систем. Благодаря быстроте и легкости написания сценариев на этом языке он распространился и на другие платформы: DOS, Windows, OS/2, Mac, VMS и пр. Одно из основных достоинств языка Perl — его открытость и доступность. В сети Internet можно получить совершенно бесплатно исходные тексты интерпретатора perl (язык Perl — интерпретируемый, что в некоторых случаях является преимуществом) и модулей его расширения.

Введение в мир Perl
Структура программы
Типы данных
Операции и выражения

Операторы
Операции ввода/вывода
Работа с файлами
Форматы
Ссылки

Работа со строками
Подпрограммы и функции
Пакеты, библиотеки, модули
Объектно-ориентированное программирование в языке Perl
Запуск интерпретатора и режим отладки

Язык Perl и CGI-программирование
Ресурсы Perl

Создание серверных приложений на языке PERL

Прежде чем приступить к последовательному ознакомлению с не знакомым для вас языком, должен оговориться и сказать, что все примеры да и сам язык описанию которого посвящена эта книга это Perl версии 5.003 для операционной системы FreeBSD версии 2.01. Существуют реализации этого языка для операционных систем OS/2 , MS-DOS и Windows NT но они немного отстают по возможностям от оригинала, рожденного в недрах Unix.

Постраничный вывод новостей с разбиением по датам
Вывод хеша в порядке вставки с использованием Tie::IxHash
От простого к сложному
Массивы и списочные данные

Apache
Библиотеки и модули
СGІ-программирование
Упражнения

Получение данных методом GET
Функция Sleep
Почтовые рассылки

Регулярные выражения Perl и их применение

Если на компьютере у читателя еще не установлена система программирования Perl, то самое время это сделать. Дистрибутив Perl под Windows можно скачать с сайта. Это все дается бесплатно. Поставка осуществляется в дистрибутиве MSI (MicroSoft Installer). Вы можете запустить его, найдя этот файл через "Мой компьютер" и дважды щелкнув на нем. Также можно использовать инсталлятор msiexec.exe, находящийся в подкаталоге system32 каталога Windows. Если запустить его без параметров, он в окне выдаст справку на русском языке.
Регулярные выражения обычно используются как операнды операторов поиска m/…/ и замены s/…/…/. Слово регулярные означает "составленные по правилам". То, что стоит вместо многоточия в операторе m и вместо первого многоточия в операторе s, - это и есть регулярное выражение. Буква m означает match (соответствие), а буква s означает search (поиск).

Общее знакомство с регулярными выражениями
Текущая позиция поиска

PERL: Библиотека программиста

Итак, поваренная книга не готовит пищу за вас (она этого не умеет) и даже не учит вас готовить (хотя и помогает в этом). Она лишь передает различные куль­турные фрагменты, которые оказались полезными, и, возможно, отфильтровыва­ет другие «культуры», которые выросли в холодильнике по беспечности хозяев. В свою очередь, вы поделитесь этими идеями с другими людьми, пропустите их че­рез собственный опыт и личные вкусы, ваше творческое мышление и дисципли­ну. У вас появятся собственные рецепты, которые вы передадите собственным де­стям. Не удивляйтесь, когда они придумают что-то свое и спросят, что вы об этом думаете. Постарайтесь не корчить недовольную гримасу.

Строки

Язык программирования Perl

Язык программирования Perl создал американский программист Ларри Уолл (Larry Wall) в 1987 году, когда он работал системным программистом в компании Unisys. Цели, которые преследовал Ларри при разработке нового языка программирования, отражены в его названии - PERL, которое позднее стало расшифровываться как Practical Extraction and Report Language, то есть "практический язык извлечения "данных" и "создания" отчетов". (Нетрудно заметить, что первые буквы всех слов названия составляют слово PEARL - "жемчуг". Одна из легенд о происхождении Perl гласит, что в то время уже существовал язык с таким названием, поэтому Ларри сократил название на одну букву, не изменив произношения. По иронии судьбы, сегодня тот язык не помнит никто, кроме историков, а Perl известен всему миру. Хотя, по другой версии, Ларри назвал созданный им язык по имени своей невесты.

Создание Perl
Списки и списочные литералы
Отчеты
Базы данных

Как перестать беспокоиться и начать программировать

Хочу обратить внимание читателей, что никаких откровений или мыслей, блистающих особой глубиной/новизной, вы здесь не найдёте. Просто прикладной программист среднего (или чуть выше) уровня излагает свои соображения, рождённые опытом работы, и иллюстрирует их конкретными примерами работающего инструментария.
Ещё раз подчёркиваю, что по всем вопросам изложена моя личная точка зрения. Я открыт для конструктивной дискуссии и с радостью восприму все замечания, исправления и дополнения к исходным текстам.
Предполагается, что читатель знаком с основными принципами объектно-ориентированного программирования и разработки приложений.
Последовательность изложения: вначале будет описана совокупность инструментов. Это займёт несколько статей (глав) – вместе с исходными текстами и примерами использования.

Выживание в системах с жестоким квотированием
Гонки на вымирание, девяносто пятые выживают
Длительность реакции системы

Зарождение криптографии

О важности сохранения информации в тайне знали уже в древние времена, когда с появлением письменности появилась и опасность прочтения ее нежелательными лицами.

Есть ли формальные критерии стойкости
Когда наступит время подбирать ключи
Жизнь после BSOD
Звездная сила обращается в пыль

Копирование Star Force по методу AlB
Руководство МИТ по открыванию замков отмычкой
Секреты кернел хакинга
Скоростной лохотрон

О скрытых каналах
Пиратство как прогрессивный налог
Как подделывают CRC16-32

Непрерывность бизнеса в нештатных ситуациях

Цикл от возникновения бедствия до полного восстановления нормальной работы имеет четыре этапа:
Первоначальное реагирование
Подготовка к временной работе в резервном помещении
Полностью налаженная работа в резервном помещении
Восстановление основного производственного помещения и возвращение в него

Уведомление ГУЧС других групп
Организационная структура ОИТ
Процедуры эксплуатации серверных помещений