Автор: Пользователь скрыл имя, 23 Марта 2012 в 14:31, курсовая работа
В идеальном случае подход к разработке программы делится на три части: вначале получить ясное понимание задачи, потом выделить ключевые идеи, входящие в ее решение, и наконец выразить решение в виде программы.
Объект - это совокупность данных и способов работы с ними. Инкапсуляция - это механизм объединения и защиты данных и кода. Объект - это то, что поддерживает инкапсуляцию. Объединение кода и данных представляет собой "черный" ящик. Объект характеризуется свойствами. Свойства объекта - это данные, методы обра-щения с данными объекта, события, на которые объект может реагировать.
1. Ключевые положения объектно-ориентированного программирования.
2. Расширения файлов, принятые в среде разработки C++Builder 6.
3. Алгоритм создания программного кода на C++.
4. Создание и сохранение нового проекта.
5. Открытие и использование менеджера проектов.
6. Планирование работ - список to-do list.
7. Задание информации о версии программы.
8. Работа с формами.
1. Включение в проект новой формы.
2. Просмотр форм и модулей без включения их в проект.
3. Размещение компонентов на форме.
4. Repository - Депозитарий - Хранилище форм и проектов.
9. Инструментальные средства поддержки разработки кода.
1. Применение Code Insight - знатока кода.
2. Исследователь классов ClassExplorer.
3. Поддержка разработки, встроенная в окно редактора кода.
4. Справочная система C++Builder и программа ее конфигурирования OpenHelp.
10. Отладка приложений.
1. Компиляция и компоновка проекта.
2. Сообщения компилятора и компоновщика.
3. Выполнение приложения по шагам.
4. Точки прерывания.
5. Использование окна инспектора отладки bug Inspector.
11. Разработка графического интерфейса пользователя.
1. Требования к интерфейсу пользователя приложений для Windows.
Применять интегрированные средства в рамках среды достаточно просто. Используют разные приемы в зависимости от проявлений ошибки. Если получено сообщение об ошибке, то сначала уточняют, при выполнении какого оператора программы оно получено. Для этого устанавливают точку останова в начало фрагмента, в котором проявляется ошибка, и выполняют операторы в пошаговом режиме до проявления ошибки.
Аналогично поступают при «зависании» компьютера.
Если получены неправильные результаты, то локализовать ошибку обычно существенно сложнее. В этом случае сначала определяют фрагмент, при выполнении которого получаются неправильные результаты. Для этого последовательно проверяют интересующие значения в узловых точках. Обнаружив значения, отличающиеся от ожидаемых, по шагам трассируют соответствующий фрагмент до выявления оператора, выполнение которого дает неверный результат.
Для уточнения природы ошибки возможен анализ машинных кодов, флагов и представления программы и значений памяти в 16-ричном виде (рис. 4).
Рис. 4. Вид экрана при отладке программы в 16-ричном коде (режим CPU)
Причину ошибки определяют, используя один из методов, рассмотренных в предыдущем вопросе. При этом для проверки гипотез также можно использовать интегрированные средства отладки.
Отладка с использованием независимых отладчиков. При отладке программ иногда используют специальные программы — отладчики, которые позволяют выполнить любой фрагмент программы в пошаговом режиме и проверить содержимое интересующих программиста переменных. Как правило такие отладчики позволяют отлаживать программу только в машинных командах, представленных в 16-ричном коде.
Корпорация Inprise объявляет о выходе очередной версии легендарного продукта C++ Builder версии 4.
Действительно, язык программирования C++ царит в компьютерном мире. Есть масса причин для изучения этого языка – это продвижение по служебной лестнице, получение высокооплачиваемой работы. С другой стороны, изучение C++ может превратиться в настоящую каторгу, так как на самом деле это язык с множеством закавык и мудреных правил. Обилие инструментов для разработки программ на языке C++ с первого взгляда могут перепугать начинающего разработчика. Однако новая версия C++ Builder абсолютно дружелюбна к своим пользователям и теперь полностью направлена как на начинающего программиста, так и на повидавшего виды крутого разработчика приложений на C++. И так, начнем по порядку.
Средства быстрой разработки приложений RAD (Rapid Application Development) заняли прочное место в среде разработчиков программных продуктов. Те, кто освоили такое средство разработки, как Inprise Delphi4 давно поняли, что сроки разработки приложений теперь резко сокращаются. Это же самое можно сказать и о новой версии C++ Builder версии 4. Этот продукт, как и его родной брат – Delphi 4, устанавливает новые стандарты для среды разработки приложений. Визуальные средства разработки позволяют в десятки раз повысить скорость разработки интерфейса пользователя. Различные Wizards обеспечивают стандартные приемы общения между конечным пользователем и программой. Методы Code Insight позволяют разработчику не сосредотачивать внимания на синтаксисе языка, а отдаться полностью написанию бизнес логики приложения. Визуальная разработка распределенных систем на основе стандарта CORBA теперь становится такой же простой, как и создание различных форм приложения. Так же, как это было со всеми предыдущими версиями, новый продукт самым серьезным образом отличается от своих предшественников. Если "изюминкой" С++ Builder 3 была полнофункциональная поддержка ActiveX- и COM/DCOM технологий (MIDAS в том числе), то C++ Builder 4 в первую очередь - это CORBA, взаимодействие с Java и мощная поддержка Oracle 8.
C++ Builder версии 4 предусматривает новый интерфейс управления - так называемый Docking Windows; более того, предлагается его улучшение - Tabbed Docking Windows, что позволяет сгруппировать несколько окон (кода, форм, отладчика) в одно окно специального вида. Если же еще установить систему IntelliMouse, то удобство доступа к элементам разрабатываемого проекта произведет впечатление на самого капризного и придирчивого разработчика.
Если посмотреть на среду разработки C++ Builder 4, то можно сразу понять, что она в корне отличается от предыдущих версий
1. AppBrowser. Новая среда значительно увеличивает продуктивность разработчика, так как упрощает процесс чтения и написания исходного кода. Редактор кода упрощает навигацию внутри модуля. Нажатием правой кнопки мыши можно сразу перейти в раздел описания класса. Вот таким образом выглядит теперь AppBrowser. Браузер кода поддерживает обновляемое во времени древовидное представление модуля.
2. Нажав правую кнопку мыши в левом окне броузера мы попадаем в еще один замечательный диалог, с помощью которого можно создать метод или свойство класса. Программисты на C++ знают, насколько сложно понять синтаксис написания нового метода или свойства с различными модификаторами. Теперь это можно сделать, используя специальный Wizard С++ Builder.
Как видно из рисунка, программист теперь должен визуально указать все модификаторы метода, после чего будет автоматически сгенерирован исходный код для метода класса. Аналогичным образом создаются свойства и переменные класса, однако никто не запрещает продвинутым программистам использовать «рукопашные» способы формирования членов класса, ну и тут вездесущий браузер будет фиксировать все Ваши изменения.
3. Замечательная комбинация клавиш CTRL+SHIFT+C - при нахождении курсора в заголовке объявления метода или свойства, приводит к незамедлительному формированию реализации свойства. Быстрая навигация. Установив курсор на какой-либо метод заголовочного файла и нажав правую кнопку мыши, после чего выбрав пункт меню Find Declaration, попадаем на этот метод в секции модуля CPP. И наоборот – если курсор находится в секции CPP модуля, то при выборе выше указанного пункта меню попадаем на заголовок метода в файле HPP. Другой способ: в любом месте кода наводим курсор мыши на любой идентификатор, нажимаем и удерживаем клавишу Ctrl. После того, как идентификатор будет подсвечен, нажимаем левую кнопку мыши и попадаем на его обьявление. Открывается соответствующий модуль и находится строка с объявлением. С++ Builder 4 автоматически высвечивает в окне ToolTip параметры процедур, функций, методов и событий, когда они пишутся в тексте программы. Это экономит время, уменьшая навигацию в редакторе, делая информацию доступной в нужный момент. Это также уменьшает количество ошибок, связанных с заданием параметров.
4. Мастер завершения кода просто необходим как для начинающих разработчиков на C++, так и для профессионалов . Для тех, кто еще не совсем освоил синтаксис классов C++, этот мастер снизит рутинную работу по написанию методов и свойств классов с соблюдением регистров и правильности написания последних. Теперь достаточно написать имя объекта и указатель области действия в виде (->) или (.) соответственно, после чего нажать комбинацию клавиш CTRL+SPACE, или дождаться, пока отработает задержка, определенная в настройке Code Insight – Delay, как перед программистом возникнет список методов и свойств, доступных в текущем контексте. Таким образом сокращается число ошибок, и что очень важно – продуктивно программировать на C++ теперь может даже новичок.
5. Значительно улучшен менеджер проектов. Программист может одновременно вести несколько проектов. Это очень важно при создании многозвенных приложений или приложений, использующих разрабатываемые DLL. Группа проектов может быть одновременно вся перекомпилирована. Выбрать тот или иной проект из группы и активизировать его, например для запуска, можно с помощью специального ниспадающего меню на палитре быстрого запуска. Используя менеджер проектов и свойство Drag and drop copying производится быстрое копирование модулей из одного проекта в другой.
6. C++ Builder 4 позволяет отлаживать DLL непосредственно в среде IDE. Не возникает потребности в отдельной и дорогой программе отладки при создании сложных приложений, содержащих DLL. Просто установкой точки прерывания в DLL, разработчик сохраняет время при отладке DLL для использования их в Web-серверах и других инструментальных средствах.
1. Докинг. Поскольку приложения имеют тенденцию к усложнению интерфейса, возникает необходимость в настройке последнего самим пользователем. В этом и помогают разработчику свойства класса TWinControl::DockSite и TControl::DragKind. Установив их соответсвующим образом можно получить приложение, полностью поддерживающее последние требования GUI интерфейса. Так например, можно на компоненту TpageControl «набросать» все вновь открываемые окна. По желанию пользователя любая закладка TpageControl может быть обратно представлена обычным окном, достаточно извлечь ее за заголовок из компоненты TpageControl.
2. Специально разработан набор компонент, поддерживающий стандарты Windows 98
3. Службы Windows NT. Специальные Wizards позволяют создавать приложения, работающие в фоновом режиме и автоматически стартующие вместе с операционной системой.
4. На странице Standard палитры компонентов C++ Builder 4 появился новый компонент TActionList. Этот компонент предназначен для упорядочения обработчиков событий различных интерфейсных элементов (меню, инструментальных панелей, кнопок и др.). Нередко при использовании широкого спектра интерфейсных элементов и изменения их поведения на этапе выполнения (например, изменения доступности некоторых элементов меню) отслеживание связей интерфейсных элементов и имеющихся в приложении процедур становится затруднительным. Теперь можно имеющиеся в приложении процедуры сделать обработчиками событий компонентов TAction, коллекция которых может быть свойством Actions компонента TActionList.
7. Из других новых возможностей C++ Builder 4, связанных с созданием пользовательского интерфейса, следует отметить возможность ограничения размеров компонентов и форм. Теперь наследники компонента TControl в C++ Builder 4 обладают свойством Constraints, определяющим максимальное и минимальное возможное значение ширины и высоты компонента или формы, при этом это свойство передается компоненту-контейнеру, содержащему такой компонент, если последний имеет свойство Align, отличное от alNone.
8. Из дополнительных интерфейсных элементов особенно хотелось бы отметить TControlBar - компонент, служащий контейнером для любого интерфейсного элемента C++ Builder 4 и позволяющий пользователю перемещать внутри него интерфейсные элементы по своему усмотрению на этапе выполнения.
Благодаря открытому и опубликованному интерфейсу Oracle 8, появляется возможность описывать прямые вызовы Oracle Call функций. Это значительно повышает скорость доступа к данным и отказ от посредника - BDE (Borland Database Engine), но в то же время усложняется прикладное программирование. Академическая работа с базами данных в C++ Builder ведется через универсальный механизм доступа BDE. Архитектура BDE предусматривает взаимодействие с каждым конкретным источником информации через драйвер (SQLLinks - для серверов баз данных). C++ Builder 4 включает 32-битовые SQL Link для Oracle, Interbase, Sybase, МS SQLServer, Informix и DB2. C++ Builder 4 Client Server Suite включает неограниченную лицензию для редистрибуции любых имеющихся драйверов.
C++ Builder 4 – хорошее решение для масштабирования настольного Access до масштабов предприятия. Высокоскоростные драйверы баз данных для Microsoft Access обеспечивают возможность использовать средства RAD Delphi с наиболее популярной настольной базой данных.
В среде C++ Builder 4 имеется поддержка для баз данных FoxPro. Разработчики могут создавать приложения с помощью C++ Builder 4, используя существующие таблицы данных FoxPro и Clipper. Используя набор компонент Apollo, есть возможность полнейшей поддержки старых идеологий программирования данных. Разработчик программного обеспечения в Clippere или FoxPro теперь чувствует себя как «рыба в воде» благодаря этой компоненте. Синхронизация данных из DOS и Windows абсолютно прозрачна.
Для мультимедийных и других приложений, требующих неструктурированных данных, теперь можно работать с многочисленными двоичными объектами, каждый размером до 4GB, загруженными в единственную колонку таблицы базы данных. Поле Большого Объекта (LOB) располагается во внешней среде (файле). Вы можете оптимизировать использование новых двоичных типов, как например на время отложить перекачку LOB поля, пока пользователь не получит весь курсор, а затем уже, используя пакетные процедуры, получать необходимые большие данные. BLOB (Двоичный Большой Объект) является двоичным типом данных, который может использоваться, чтобы загрузить данные любого типа. Для управления документами или системами поиска текста может быть использован CLOB (Символьный Большой Объект). Вы можете сделать ссылку на внешние файлы, отредактированные другими приложениями (как, например, аудио- файлы, AVI, BITMAP, и другие) без дублирования, так как BFILE данные загружаются в файлы операционной системы вне базы данных, что естественно экономит табличное пространство сервера базы данных.
Библиотека Borland Database Engine (BDE) теперь поддерживает и Oracle8, при этом поддерживаются новые расширения Oracle 8.05 Entrprise edition, такие как абстрактные типы данных (ADT - Abstract Data Type), массивы, ссылки, вложенные таблицы. В соответствии с этим созданы новые классы объектов - потомков TField: TADTField, TReferenceField, TDataSetField, TArrayField. При настройке алиаса BDE необходимо указать поддержку Object Mode=True, так же в компонентах Ttable, Tquery появилось свойство ObjectView которое устанавливается в True при работе с объектными типами данных .
Компонент TDBGrid теперь может отображать вложенные таблицы. Вложенные таблицы допускают повторную группировку информации, которая должна загружаться непосредственно в существующую таблицу, не требуя ввода, который должен генерироваться для каждой строки.
Специальная компонента C++ Builder TnestedTable поддерживает вложенные таблицы.
В основе поддержки распределенных вычислений в C++ Builder, лежит следование двум направлениям: ориентация на стандарты и максимальное упрощение процесса разработки приложений. Старшие версии С++ поддерживали комплекс технологий для разработки многозвенных систем (middleware) под общим названием MIDAS (Multi-tier Distributed Application Services). Теперь же доступ к серверам приложений может осуществляться на основе Sockets – класс TSocketConnection, DCOM –класс TDCOMConnection, CORBA/IIOP – класс ТcorbaConnection, OLEenterprise – класс TOLEnterpriseConnection.
C++ Builder включает набор специализированных генераторов кода, предназначенных для разработки серверов приложений.
Информация о работе Практическая работа с компилятором С++Builder 6