Поиск:

Ответ в темуСоздание новой темы Создание опроса
> переход с BCB 6 на BCB 2007, Есть ли значительные улучшения? Какие? 
:(
    Опции темы
ksili
Дата 26.7.2007, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



Я тут недавно сказал своему начальнику, что C++ Builder самый новый, самый последний стоит меньше $1000. На что он мне: "Так это не сильно много. Может даже сможем купить".
И вот я в связи с этим хочу спросить людей знающих, что появилось хорошего в 2007 по-сравнению с шестым Билдером? Значительны ли эти преимущества? Нет ли каких-то мегапроблем при переводе проектов с BCB 6 на BCB 2007? 
Я использую сторонние компоненты - FIBPlus и JVCL. Пашут ли они под 2007?
Ещё я читал где-то на этом форуме, что в версиях Билдера позже шестой заметно увеличена скорость компиляции. Так ли это? А-то уже надоело долго ждать компиляции, т.к. у меня экзешник больше 2.5 Мб.
В чём преимущества регистрации и поддержки (сейчас то у меня незарегистрированная версия, да ещё и с хелпом закосяченным)?

Это сообщение отредактировал(а) ksili - 26.7.2007, 08:58


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
Lazin
Дата 26.7.2007, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 18
Всего: 154



Не знаю про 2007, а 2006 компилит быстрее.
Цитата

А-то уже надоело долго ждать компиляции, т.к. у меня экзешник больше 2.5 Мб

Используй прекомпиляцию заголовочных файлов, и будет тебе счастье. smile 
PM MAIL Skype GTalk   Вверх
ksili
Дата 26.7.2007, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



У меня стоит Cache pre-compiled headers. Всё равно очень долго


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
Alexeis
Дата 26.7.2007, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 26
Всего: 459



  Насколько я слышал что разницы большой нет при переходе CB2006 и CB2007. Там в основном сделана вистовская совместимость. Это я к тому что достаточно знать в чем разница между CB 6 и CB2006. 
  Мне показался CB2006 очень тормознутым. Даже на быстрой машине все операции слишком длительные (по сравнению с тем же Delphi 2006). Думаю редактор кода можно юзать только если отрубить большинство новых фич. А так среда стала намного более функциональной и удобной.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Lazin
Дата 26.7.2007, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 18
Всего: 154



Цитата

Думаю редактор кода можно юзать только если отрубить большинство новых фич.

На быстром компе нормально.
Цитата

У меня стоит Cache pre-compiled headers. Всё равно очень долго

Долгая компиляция получается из за того что Н файлы компилируются столько раз , в скольких срр файлах они подключены. Борландовский компилятор может их кэшировать но ему нужно немного помочь.
Процедура такая:
создаёшь h файл в котором инклудиш все стандартные заголовочные файлы, которые не меняются (файлы не должны содержать код, только определения).
Вот мой:
Код

#ifndef PCH_H

#define PCH_H

#define INC_VCLDB_HEADERS

#define INC_VCLEXT_HEADERS

#include <vcl.h>
#include <windows.h>
#include <SyncObjs.hpp>
#include "SysUtils.hpp"
#include <assert.h>
#include <deque>
#include <map>
#include <list>
#include <set>
#include <vector>
#include <algorithm>
#include <functional>
#include <string>
#include <memory>
#include <fstream>
#endif

Дефайнить INC_VCLDB_HEADERS и INC_VCLEXT_HEADERS надо обязательно, но я уже не помню зачем.
затем в опциях проекта указываешь csm файл (свой) например у меня: pch.h и pch.csm. 
Далее в каждом файле проекта (cpp) есть директива: #pragma hdrstop которая говорит компилятору что заголовчные файлы подключенные ниже кэшировать не надо.
В общем в начале каждого срр файла должна быть такая приблуда:
Код

#include "pch.h"//по умолчанию сдесь подключается vcl.h
#pragma hdrstop
#include <vcl>//это удалять не надо так как время компиляции не увеличивает
#include "MyFile.h"

Директивы #include которые подключают то что уже подключено в pch.h удалять не надо так как это документирует код + можно вырубить прекомпиляцию в любой момент (короче при удалении #include "pch.h" все должно собираться) благо на время компиляции это особо не влияет (из-за стражей повторного включения в каждом хедере).
Далее во время компиляции смотришь какой срр файл долго компилится (по количеству строк кода), в этом файле должен быть хедер который нужно тоже подключить в psh.h
В результате в папке с проектом должны лежать ф-ы pch.h, pch.csm psh.#00 (#01... в некоторых случаях)
 
PM MAIL Skype GTalk   Вверх
vivat
Дата 27.7.2007, 03:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 6.4.2006
Где: Томск

Репутация: 2
Всего: 2



Есть компонент IDECompilerSpeedFix, который у меня увеличил скорость компиляции на BCB6 почти в три раза. Где я его брал не помню, прошло уже два года. ИМХО в поиске можно найти.
Есть у меня официальный BDS2006, но пишу всё равно на BCB6, а на BDS изредка балуюсь - не очень нравится.

Это сообщение отредактировал(а) vivat - 27.7.2007, 03:48
PM   Вверх
ksili
Дата 27.7.2007, 04:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



vivat, необходимо ли как-то настраивать этот компонент после установки. Я кое как нашёл в сети bcc32pchide255. Вроде это не последняя версия, но сайт разработчика http://andy.jgknet.de/cpp сейчас недоступен

И это вообще компонент или нет? После установки добавились пункты в меню Project, Run и Tools.  Но вот ничего нового на палитре компонентов я не увидел

Добавлено через 9 минут
А нет, доступен! скачал теперь версию 2.75. Сейчас попробую


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
ksili
Дата 27.7.2007, 06:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



Хорошая штука, этот Bcc32pch IDE. Стало ли с ним быстрее компилироваться, ещё понаблюдать надо, но вот от одной проблемы я с его помощью избавился: проект не компилился, если убрать галочку Build with run-time packages, то линкер писал ошибку, что не видит несколько файлов с расширением RES, относящимся к некоторым сторонним компонентам, которые я использовал, несмотря на то, что пути к ним были прописаны в настройках проекта. Я уже об отм писал в темах
http://forum.vingrad.ru/index.php?showtopi...t&p=1174176
http://forum.vingrad.ru/index.php?showtopi...t&p=1201677
Так вот после установки Bcc32pch IDE проект откомпилился и без Build with run-time packages. Видимо этот компонент смог нормально разглядеть все пути. 

Вот только exe-шник мой из 2-х с лишним мегабайт превратился в 6 с лишним :-(

Это сообщение отредактировал(а) ksili - 27.7.2007, 06:09


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
dumb
Дата 27.7.2007, 06:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Цитата(ksili @  27.7.2007,  06:09 Найти цитируемый пост)
Вот только exe-шник мой из 2-х с лишним мегабайт превратился в 6 с лишним
потому что раньше куча кода, необходимого для работы твоей программы, содержалась в .bpl'ях, а теперь, так как ты снял галку, оно зашивается в один .exe. преимущество: чтобы твоя прога работала на других компьютерах, не нужна "нести с собой" кучу .bpl - все внутри одного .exe.

Цитата(ksili @  27.7.2007,  06:09 Найти цитируемый пост)
ещё понаблюдать надо

вообще то, сразу видно отличие в скорости. чтобы в разы ускорить процесс сборки большого проекта, нужно сделать pch-файл(Project-Create PCH) и втащить туда все основные(а можно и вообще все) инклуды - содержимое должно получиться типа как в посте Lazin'а.
пример из жизни: проект собирался на средней машине около 10 минут, стал - около 25 секунд.
PM MAIL   Вверх
ksili
Дата 27.7.2007, 06:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



Всё-таки скажите мне кто-нибудь точно:
вот установил я сейчас эту приблуду, пока я ничего не менял, pch-файл не создавал. Оно уже работает? Или чтобы заработало, надо обязательно создавать этот файл и везде его инклудить?

Ну и вообще хотелось бы ещё комментариев непосредственно по топику


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
Lazin
Дата 27.7.2007, 07:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 18
Всего: 154



У меня проект который собирался на СВ6 в среднем 25 минут стал собираться примерно за 3 - 5 минут, а на БДС 2006 ещё быстрей.
PM MAIL Skype GTalk   Вверх
ksili
Дата 27.7.2007, 07:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



Цитата(Lazin @  27.7.2007,  12:27 Найти цитируемый пост)
У меня проект который собирался на СВ6 в среднем 25 минут стал собираться примерно за 3 - 5 минут, а на БДС 2006 ещё быстрей.

Просто после установки, или после генерации pch-файла?

Сейчас кстати попробовал проект из ВСВ4 открыть в BCB6 (с этим проблем не было) и откомпилить его с использованием Bcc32pch IDE. Не получилось. Получил какое-то ужаснейшее сообщение об ошибке. Пришлось отключать Bcc32pch IDE. Без него всё ОК.


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
Lazin
Дата 27.7.2007, 07:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 18
Всего: 154



Цитата

Просто после установки, или после генерации pch-файла?

Я ничего не устанавливал, просто сделал так как описано выше, имхо никакие компоненты не заменят моск smile
Короче, при первой компиляции компилятор сгенерит pch.csm и pch.#00 файлы, если в файле pch.h подключается  заголовок содержащий код (например тело функции) , то разобьёт pch.#00, pch.#01 итд. И даже в первый раз компиляция проходит быстрее. А потом, файлы уже не генерятся, и компиляция работает ещё быстрее. В окне которое билдер паказывает в процессе компиляции число строк для каждого срр файла (CurrentLine) не превышает нескольких тысяч(всё зависит от размера файла), а с выключенной прекомпиляцией - сотни тысяч (тоесть компилит одни и те-же хидеры каждый раз). 
ЗЫ 
самое приятное, то что это работает как с 6м так и с 2006м
PM MAIL Skype GTalk   Вверх
ksili
Дата 27.7.2007, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



Спасибо за информацию. Если опять будет долго компилироваться, сделаю так как вы тут написали.


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
ksili
Дата 27.7.2007, 09:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2069
Регистрация: 3.11.2005
Где: Красноярск

Репутация: 1
Всего: 17



И всё же... Что насчёт преимуществ BCB2007 перед BCB6? Неужели почти нету? А может он чем-то хуже?


--------------------
Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с)
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0571 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.