Главная
 
 
Главная
Новости
Статьи
Самоучитель по Delphi
Справочник
Поиск
Карта сайта
Контакты
Авторизация





Забыли пароль?
Вы не зарегистрированы. Регистрация

Новости
Эксперты сомневаются в успехе 3D-телевизоров
Другие компании, кстати, тоже не желают отставать в трехмерном мире: о новинках компании Samsung мы уже писали, а вот модели от Panasonic пока в тени.
Thu, 11 Mar 2010 08:45:27 +0300

Google запустила магазин бизнес-приложений Apps Marketplace
Таким образом разработчики ПО получили возможность добавлять свои решения к корпоративной версии пакета приложений Google.
Wed, 10 Mar 2010 09:52:53 +0300

В салонах МТС появились телефоны iPhone 3GS
Ранее президент "Евросети" Александр Малис говорил GZT .RU, что ретейлер планирует продать за квартал до 25 тыс. iPhone 3GS.
Thu, 11 Mar 2010 08:06:00 +0300

Нововведения RAD Studio 2007 (C++Builder 2007) Версия для печати Отправить на e-mail
Статьи - Статьи

C++Builder 2007

Следующие средства были введены впервые или значительно изменены.

  • MSBuild стала новым движком для компиляции проектов: Теперь при компиляции проекта на С++ MSBuild выполняет весь процесс компиляции (билда). Для этих целей была изменена структура файла проекта, он теперь является XML файлом и содержит все необходимые для MSBuild настройки. Расширение файла проекта изменено на .cbproj. Это позволяет производить компиляцию из командной строки используя синтаксис командной строки MSBuild.
  • Изменен порядок билда: MSBuild производит компиляцию файлов в соответствии с типом файла (расширением), вместо старого порядка, который определялся временем последнего изменения файла. Порядок таков Delphi .pas, C/C++ .c .cpp, Ассемблер .asm, затем ресурсы .rc. Внутри каждой папки или виртуальной папки, файлы компилируются в порядке соответствующем их типу.
  • Опции компиляции теперь более широкие: Новые опции можно устанавливать на вкладках раздела Project->Options. Опции хранят наборы настроек командной строки для билда, такие как настройки компилятора, компоновщика и MSBuild. Теперь стало возможным создание раздельных настроек для 3х режимов (основная, отладочная, и релизовая).
  • Новая система конфигурирования устанавливает текущий режим компиляции: Для изменения текущего режима билда достаточно перейти Project->Configuration Manager и выбрать конфигурацию, которую вы намереваетесь использовать для текущего проекта или группы проектов. Configuration Manager заменил старый метод установки конфигураций проектов C++ новым, позволяющим просто устанавливать режим работы.
  • Диалог Project Options был реорганизован Добавлены новые закладки в раздел Project->Options, и некоторые из существующих были переименованы для лучшей организации настроек. Добавлены такие опции как -Vb. Эта опция поддерживаемая конструкторами С++, но больше не входит в стандарт С++. Project Properties теперь позволяет указывать как компилятор С++ должен управлять путями к библиотекам для проверки зависимостей пакетов, показа зависимостей заголовочных файлов или системы автопроверки зависимостей.
  • Возможность объединения настроек проекта: Некоторые настройки проекта имеют галочку "Merge". Когда она установлена, то состояние текущей настройки переноситься также и в предыдущую конфигурацию. Опция не меняет состояние текущей конфигурации.
  • Новые проименованные настройки: Вы можете создавать и сохранять и применять проименованный набор настроек во вкладке build-related раздела Project->Options. Проименованные настройки сохраняются в файлы с расширением .optset.
  • Настройки событий компиляции: Вы можете установить команды, которые будут исполняться в различных точках во время процесса компиляции (Новые события производимые до компоновки(pre-link); Возможность создания событий до и после компиляции была введена ранее). Нужно сделать клик правый кнопкой мыши по файлу (из числа компилируемых) в Project Manager выбрать Build Events.
  • Стало возможным в проект добавление файлов .targets: Файл типа .targets представляет собой XML файл, который содержит скрипты MSBuild, подобные списку задач, которые нужно выполнить.
  • Изменилось расположение папки для демо кода: Она сейчас расположена MyDocuments\RAD Studio\Demos. Папка была перенесена в связи ограничениями Microsoft Vista.
  • Теперь вы можете откомпилировать пакеты С++ содержащие дельфийские модули: C++ Builder поддерживает компиляцию пакетов типа design-time packages содержащих исходные коды написанные на Delphi. Тем не менее, если дельфийские модули ссылаются на модули предназначенные для работы с IDE, такие как DesignIntf, DesignEditors, и ToolsAPI расположенные в DesignIDE100.bpl, вам необходимо принять меры для разрешения этих зависимостей в пакете.
  • Компилятор C++ стал строже относиться к возможным бинарным не соответствиям (типов):  Детально об этом можно прочитать тут http://dn.codegear.com/article/36648#CPPcompiler.
  • Unit-тестирование в C++

    Поддержка системы юнит тестирования интегрирована в DUnit Testing Framework. DUnit framework основан на JUnit test framework, и включает в себя большую часть его возможностей.

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

    Запуск теста производиться как при помощи консольного Test Runner так и системы DUnit GUI Test Runner. Консольный Test Runner выводит результаты вывода прямо в консоль, а DUnit GUI Test Runner отображает результаты теста в интерактивном режиме в GUI окно, выделяя текст результата разными цветами, благодаря чему можно сразу увидеть какие тесты пройдены успешно, а какие нет.

    Веб сервисы C++Builder теперь поддерживают расширения

    Веб сервисы C++Builder теперь включают следующее:

    • Неограниченные элементы
    • Опциональные элементы
    • nullable элементы
    • WSDL and схемы которые импортируют внешние схемы

    Эти улучшения позволяют веб службам C++Builder быть совместимыми современными службами, позволяя аналогично Delphi, взаимодействовать с более надежными веб службами, такими как eBay, Amazon, MapPoint, и т.д.

    IDE

    Следующие ключевые изменения были внесены в среду разработки (IDE):

    • Поддержка тем Vista и XP: IDE теперь поддерживает темы Windows Vista и XP. Темы теперь включаются по умолчанию, но оставлена возможность их отключения, как для конкретного проекта так и для всей среды.
    • Дубликаты имен файлов: Теперь стало возможным добавление в проект нескольких модулей с одинаковыми именами, например если включите в проект файлы Common\source1.cpp и Product\source1.cpp. IDE управляет генерацией имен обоих объектных файлов так чтобы не произошло конфликта, и было возможным использование объектов из обоих файлов.
    • Расширенные возможности менеджера памяти: Новый менеджер памяти, выпущенный с Borland Developer Studio 2006, теперь полностью задокументирован в релизе RAD Studio 2007 (C++Builder 2007). Справка включает: конфигурирование менеджера памяти, мониторинг менеджера памяти, а также использование ShareMem и SimpleShareMem для объединения менеджера памяти (Dll и программы). Описание новых функций и переменных см. ниже.
    • Возможность множественного выделения в Project Manager: Удерживая клавишу CTRL можно выбрать несколько файлов в диалогах Open, Save, Save As, и Remove from Project и вызывать команды контекстного меню Project Manager.
    • Новый файловый браузер: Для вызова File Browser и выполнения всех базовых команд или просмотра SVN статуса файла выбираем View File Browser.
    • Новый тулбар и окно просмотра структуры: Новый тулбар доступен только в С++ и позволяет сортировать элементы в алфавитном порядке, группировать по типу, видимости, показывать тип и видимость элементов.
    • Виртуальные папки в Project Manager: Виртуальные папки позволяют создавать связи внутри древовидной структуры, которые в свою очередь меняют порядок компиляции файлов.

    Debugger

    Следующие возможности были введены или значительно изменены:

    • Ограничение возможности прокрутки в логе событий: Новую опцию можно установить Tools Options Debugger Options Event Log. Она предотвращает авто прокрутку при появлении очередного события в логе.
    • Окно CPU: Окно было разделено на ряд панелей, которыми теперь можно управлять по отдельности. Введены следующие панели CPU, Disassembly, CPU Stack, и Registers. Как и все панели их можно переносить и скрывать по необходимости (так как сделано в Visual C++ :) ). Панель CPU автоматически скрывается по окончанию сессии отладки. Панель Disassembly содержит теперь две новые опции Show Opcodes и Show Addresses (Показ кодов команд и адресов).
    • Окно Call Stack: Теперь можно ставить брейкпоинты на любой строчке (в окне Call Stack).
    • Игнорирование всех точек останова кроме пользовательских: Эта функция позволяет игнорировать брекпоинты не установленные из IDE.
    • Путь к отладчику: Теперь это глобальная настройка которую можно установить на странице Project Options Debugger.
    • Новая кнопка на тулбаре: Команда Notify on Language Exceptions теперь доступна на странице View Toolbars Customize Commands Categories Run . Для удобства на нее можно кликнуть и перенести на одну из панелей тулбара.
    • Прозрачные tooltips: Для вклчения прозрачности tooltip, досточно удерживать клавишу CTRL во время показа tooltip. Прозрачность позволит читать текст, который закрывает tooltip при появлении.

    Together Modeling

    Впервые в С++ введена система Together modeling:

    • Поддержка быстрого моделирования для Together: В C++ Builder 2007 функция Together modeling, теперь полностью интегрирована в IDE и позволяет визуализацию кода, генерацию документации, построение диаграм.
    • C++ диаграммы класов Diagrams (Code Visualization): Диаграммы классов не доступны для редактирования. Можно создавать свои диаграммы, но создание диаграмм классов и интерфейсов в Model View недоступно.
    • Design Diagrams: Полный набор для построения design diagrams доступен только в версии Enterprise edition. Набор включает диаграммы-ряды, collaboration diagrams, диаграмму состояний, deployment diagrams, case diagrams, activity diagrams, и component diagrams.
    • Печать диаграмм и создание документации: Печать диаграмм доступна как Professional так и Enterprise версиях. Enterprise версия также поддерживает генерацию документации.

    Замечание:

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

    Database

    Для улучшения поддержки СУБД в C++Builder 2007 введено много изменений.

    dbExpress

    Поддержка юникода была добавлена в драйвера Oracle, Interbase, и MySQL dbExpress drivers.

    Новые клиентские драйвера были добавлены в Interbase 2007 и MySQL 4.1 и 5.

    Появился новый dbExpress framework. Данный framework может быть использован как интерфейс для существующих драйверов, так и для написания новых драйверов расширяя абстрактные классы dbExpress framework. Framework можно использовать напрямую как для native так и managed

    Делегированный драйвер - это драйвер между приложением и текущим драйвером. Делегированные драйвера позволяют производить действия как перед, так и после выполнения методов т свойств dbExpress 4 framework. Делегированные драйвера полезны также для создания пула соединений, driver profiling, трейсига, и auditing.

    API dbExpress VCL компонентов был значительно изменен. Однако эти изменения не повлияют на работу большинства приложений. Тем не менее некоторые из методов, свойств, событий, констант и перечислений били удалены и заменены другими с эквивалентной функциональностью.

    Возможно также использование компонентов dbExpress VCL верхнего уровня framework-а как для native так и managed приложений. Есть небольшие изменения в компонентах TSQLConnection (изменены методы), TSQLDataSet (новое свойство), и структурах данных (изменены или заменены на другие).

    The dbExpress driver framework:

    • Используются строго типизированный доступ к данным вместо использования указателей. Например, framework использует строковый тип вместо указателя на строку.
    • Для драйверов, соединений, команд, ридеров и т.д. используются только абстрактные базовые классы.
    • Метод обработки ошибок основан на механизме генерации исключений, вместо возврата кода ошибок.

    VCL и RTL

    AJAX: C++Builder 2007 поддерживает основанную на AJAX RAD VCL систему веб разработки

    Совместимость с Microsoft Vista: C++Builder 2007 содержит компоненты, классы, методы и свойства совместимые Вистой и выглядят так как это принято в Висте.

    Новые VCL компоненты: Следующие классы были добавленны в VCL:

    • TFileOpenDialog
    • TFileSaveDialog
    • TTaskDialog
    • TCustomFileDialog
    • TCustomFileOpenDialog
    • TCustomFileSaveDialog
    • TCustomTaskDialog
    • TFavoriteLinkItem
    • TFavoriteLinkItems
    • TFavoriteLinkItemsEnumerator
    • TFileTypeItem
    • TFileTypeItems
    • TTaskDialogBaseButtonItem
    • TTaskDialogButtonItem
    • TTaskDialogButtons
    • TTaskDialogButtonsEnumerator
    • TTaskDialogProgressBar
    • TTaskDialogRadioButtonItem

    Следующие новые функции и переменные были добавленны в новом менеджере памяти:

    • AttemptToUseSharedMemoryManager
    • GetMemoryManagerState
    • GetMemoryMap
    • GetMinimumBlockAlignment
    • RegisterExpectedMemoryLeak
    • SetMinimumBlockAlignment
    • ShareMemoryManager
    • UnregisterExpectedMemoryLeak
    • NeverSleepOnMMThreadContention
    • ReportMemoryLeakOnShutdown

     
    < Пред.   След. >
    work online