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

       

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

Несколько лет назад книгу по 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
Разобравшись с механизмами СОМ, вам наверняка захочется "испытать радость общения" с объектами, имеющимися в составе ОС. Microsoft уверенно идет к тому, чтобы все составные части своих операционных систем, как и прочих продуктов, превратить в СОМ-объекты. В этом направлении сделаны большие шаги, и оболочка Windows, и ее файловая система предоставляют интерфейсы СОМ. В Windows 2000, судя по заверениям представителей фирмы, все новые возможности представлены и доступны в виде интерфейсов.

Раздел - Биржевой анализ - Математика

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

Биржа
Риск
Рынок
Самоучитель по Mathematica
Алгебра в Mathematica

Самоучитель по Matlab
Программирование MathCAD
MathCAD 7.0
Система MathCAD Plus 6.0 Pro
Редактор MathCAD

Основы MathCAD 7.0
Синее и черное
Матричные вычисления в Mathcad
Софт
Форекс
Экономика
Компьютерная алгебра
Матричная лаборатория MatLab

Математика в MathCAD 12
Самоучитель по Maple
Математический анализ в Maple 9
Анализ функций в Maple
Научно-технические задачи

Компьютерная математика
Математические пакеты Maple

Разработка приложений для Internet

В этом томе мы продолжим изучение библиотеки классов MFC и ее возможностей. Теперь мы расскажем о использовании Microsoft Visual C++ и библиотеки MFC для разработки приложений Internet и Intranet. Мы также затронем технологию ActiveX и расскажем о том как использовать в своих приложениях готовые органы управления OLE и ActiveX. В приложениях, представленных в данной книге, мы будем активно работать с диалоговыми панелями. На примере списка с пиктограммами и линейного индикатора вы научитесь использовать стандартные органы управления Windows 95 и Windows NT. Мы также приведем начальные сведения о использовании мультизадачности в приложениях MFC. Одно из наших приложений будет создавать дополнительную задачу, выполняющую загрузку файлов с сервера FTP в фоновом режиме.
До недавнего времени создание приложений, которые могут работать с ресурсами сети Internet или Intranet, являлось достаточно сложной задачей. Программист должен был использовать интерфейс сокетов Windows или программировать на более низком уровне протокола TCP\IP.
Чтобы облегчить тяжелый труд программиста, Microsoft разработала новый программный интерфейс Win32 Internet, получивший красивое название WinInet. С использованием WinInet значительно облегчается создание приложений, работающих с протоколами HTTP, FTP и системой Gopher. При этом программист избавляется не только от необходимости программирования на уровне сокетов Windows или протокола TCP\IP, но и от самостоятельной реализации протоколов HTTP и FTP.

Интерфейс WinInet
Метод DoDataExchange

Дистанционное управление на ИК лучах

Модуляция Pulse-distance. Сначала идут младшие биты, потом старшие.При нажатии кнопки на дистанционке выдается одна полная посылка, а затем через промежутки идут одиночные импульсы, говорящие о том, что кнопка еще нажата. Перед посылкой (первой полной и одиночными импульсами) идет один длинный импульс синхронизации.
В посылке адрес и команда идут два раза - сначала просто, затем с инверсией (что-то не совпало - команда не принята). Кроме того, основная посылка идет только один раз при нажатии на кнопку. Вероятность того, что она пройдет правильно с первого раза, не очень высока.

Дистанционные остановка и обратный ход электросчетчика
Комплект дистанционного управления IRLink.3
Электроника в автомобиле
Проверенные пульты ДУ

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

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

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

DVD Authoring 1.0 DVD своими руками

DVD постепенно завоевывает рынок и вопросы применения программ и аппаратных решений для работы с DVD становятся все более и более интересными для многих и многих людей. С аппаратной составляющей все более-менее ясно – есть пишущие DVD приводы двух конкурирующих стандартов, есть аппаратные кодеры MPEG для тех, кто не может ждать часами результатов работы программных кодировщиков. Осталось только понять, какие программы можно и/или нужно использовать для создания DVD-Video дисков.

Коротко о многом
Работа с PGC на примере меню PGC

Искусственный интеллект и экспертные системы

Типичное изучение математики (как и любой формальной теории) в школе, в вузе сопровождается ощущением растерянности, недоумения. Определения и доказательства преподносят как настоящую реальность, но причины явлений никогда не объясняются. Казалось, что большую часть доказательств преподаватели получают с помощью магических манипуляций с кусочком мела у доски. Как можно было связать воедино все эти линии и не выпустить из поля зрения ни одну из них от самого начала доказательства до его чудесного конца? И над всем этим: "А для чего все это надо?".
Ответ приходит через несколько лет активной жизни. На самом деле все это ни для чего не надо, потому что предметы, которые вы изучаете, вносятся в школьные и вузовские программы достаточно произвольно. По правде говоря, эти знания служат лишь поводом для перехода к более серьезным вещам, таким как учиться понимать, учиться решать задачи, учиться познавать. Но любопытно, что эти "вещи" не признаются и не преподаются. Можно сказать, что существует определенный вид интеллектуального терроризма, когда некоторых учеников называют "нуль в математике", хотя их единственная вина состоит в том, что они не понимают то, о чем … никогда не говорится. Некоторым удается это избежать, потому что они раньше сумели познакомиться с неявными правилами этой игры. Есть и такие, кто учит все наизусть…

Искусственный интеллект
Предмет "Искусственный интеллект"
Искусственный интеллект как эмпирическая проблема
Искусственный интеллект: его истоки и проблемы
Искусственный интеллект: различные взгляды на проблему
Кибернетика и сознание проблема искусственного интеллекта
Нечеткая логика - новая мощная технология

Компьютерные игры. Как это делается

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

Игровые жанры и типы перспективы
Создание персонажей, эскизов и проектной документации
Идеи и исполнение
Как найти свое место в игровой индустрии

Пособие по практике программирования

Приходилось ли вам когда-нибудь:

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

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

Стиль
Алгоритмы и структуры данных
Проектирование и реализация

Интерфейсы
Отладка
Тестирование

Производительность
Переносимость
Нотация

Компьютерная математика и пакет Maple

Программа Maple корпорации Waterloo Maple Inc. — патриарх в мире систем компьютерной математики. Эта система, снискавшая себе мировую известность и огромную популярность, является одной из лучших среди систем символьной математики, позволяющих решать математические задачи в аналитическом виде. Эта книга познакомила читателей с новейшей версией Maple — Maple 7. Она вобрала в себя не только обширные и мощные возможности- предшествующих реализаций системы, но и предоставила в распоряжение пользователя ряд новых возможностей. Прежде всего это целый букет пакетов: CurveFitting, PolynomialTools, OrthogonalSeries и др.
Maple как система компьютерной математики развивается по ряду характерных направлений. Одно из них — повышение мощности и достоверности аналитических (символьных) вычислений. Это направление представлено в Maple наиболее сильно. Maple 7 уже сегодня способна выполнять сложнейшие аналитические вычисления, которые нередко не под силу даже опытным математикам. Конечно, Maple не способна на «гениальные догадки», но зато рутинные и массовые расчеты система выполняет с блеском. В новой версии ее возможности существенно расширены, особенно в области решений дифференциальных уравнений. : Другое важное направление — повышение эффективности численных расчетов. И тут успехи налицо — начиная с версии Maple 6 в систему включены эффективные алгоритмы группы NAG, лидирующей в области численных расчетов. Повышена эффективность и алгоритмов самой системы Maple 7. В результате этого заметно возросла перспектива использования Maple в численном моделировании и выполнении сложных численных расчетов — в том числе с произвольной точностью.
Интеграция Maple с другими программными средствами — еще одно важное направление развития этой системы. Ядро символьных вычислений Maple уже включено в состав целого ряда систем компьютерной математики — от систем «для всех» класса Mathcad до одной из лучших систем для численных расчетов и моделирования — MATLAB. Имеется целый ряд автоматизированных рабочих мест для математиков на основе ядра системы Maple: Math Office, Scientific Word, Scientific Workplace и др.

Краткая характеристика систем класса Maple
Работа со справочной системой
Операции с файлами
Управление видом интерфейса и документа

Maple язык и его синтаксис
Операторы и операнды
Функции пользователя
Приложение

Система автоматизации библиотек ИРБИС

Система ориентирована на работу в локальных вычислительных сетях любого типа без ограничения количества пользователей при условии, что клиентской платформой является Windows 95/98/2000/NT и обеспечивается доступ к файл-серверу.
Система полностью совместима с международными форматами UNIMARC и USMARC на основе средств двухсторонней конверсии данных. Система также поддерживает Российский коммуникативный формат RUSMARC.
Система позволяет создавать и поддерживать любое количество баз данных, составляющих Электронный каталог (ЭК) или представляющих собой проблемно-ориентированные библиографические базы данных (БД).
Система предлагает технологию автоматического формирования словарей, на основе которых реализуется быстрый поиск по любым элементам описания и их сочетаниям.
Средства каталогизации позволяют обрабатывать и описывать любые виды изданий, включая нетрадиционные, такие как аудио- и видеоматериалы, компьютерные файлы и программы, картографические материалы, ноты и т.д.

Техническое обеспечение
Строковые функции
Удаление/перенос БО
Информационное обеспечение
Техническое обеспечение

MS Excel 2000 для начинающих

Активная ячейка выделяется рамкой. Чтобы сделать ячейку активной, необходимо клавишами управления курсором подвести рамку к этой ячейке или щелкнуть в ней мышью.
Для выделения нескольких смежных ячеек необходимо установить указатель мыши в одну из ячеек, нажать левую кнопку мыши и, не отпуская ее, растянуть выделение на всю область. Для выделения нескольких несмежных групп ячеек следует выделить одну группу, нажать клавишу Ctrl

Массивы формул

Руководство по продвинутым файловым системам

В некотором царстве, некотором государстве (а конкретно - в солнечной Невадщине) жил да был парень один. Звали его Дэниел Роббинс. Учился он в местном университете, а на досуге занимался всякими Unix'ами: поучаствовал в разработке FreeBSD, был одним из разработчиков проекта Stampede Linux... А потом взял и изобрел свой дистрибутив, который назвал Gentoo, быстро ставший очень популярным.
Впрочем, о Gentoo знают все, имевшие дело с Linux (а кто не знает - может узнать о нем на официальном сайте, , там и по русски немало написано). А вот о том, что Дэниел был еще и талантливым техническим писателем, нынешнее поколение линуксоидов начинает забывать. И писал он о массе вещей, интересных как IT-специалисту, так и конечному пользователю: о командной оболочке bash и о программных RAID-массивах, о программе awk и об управлении логическими томами (LVM), о редакторе sed и политике управления дисковыми разделами (полный список его статей можно найти на , поиском по ключевому слову Robbins).

Восстановление удаленных файлов под Linux
Второе рождение утерянных данных под LINUX'ом
Руководство программиста для Linux
Базовые концепции UNIX

Учебник PostgreSQL 7.3.3

В данной главе мы будем ссылаться на примеры, которые можно найти на Chapter 2 для того, чтобы попробовать изменить или улучшить их так, чтобы они помогли вам, когда вы прочтЈте эту главу. Некоторые примеры из данной главы можно также найти в advanced.sql в каталоге tutorial. Этот файл также содержит некоторые данные для загрузки, которые не будут повторяться здесь.

Продолжение