 |
BorlandTalk.com Borland discussion newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
Randall Parker Guest
|
Posted: Tue Oct 12, 2004 12:10 am Post subject: What annoys you most in BCB v6? |
|
|
My top annoyances:
1) The top annoyance is the need to delete the .tds file and remake so that the
debugger will work. On a day of heavy debugging I have to do that 3-5 times a day.
2) The second biggest annoyance is when the IDE goes on "hourglass mode" where it is
probably reparsing stuff.
3) The third biggest annoyance is the failure to compile due to some internal error
where it stops on a generated source code line that I think has something to do with
Com/ActiveX support::
TComModule _ProjectModule(0);
For that one I find rebuilding the entire project fixes the problem.
4) One has to copy the project to a different directory to configure it for a
different build config. Trying to keep multiple project files in sync for module adds
and all that is out of the question. So you have to copy the project file and change
the build flags. At least BCBX v2 might handle this well assuming all the important
bugs there are fixed.
5) The Class Explorer is just totally lame. It ends up not knowing about classes that
are part of the project. I do most of my editing in Visual Slick Edit and the BCB
Class Explorer's lameness is one of the reasons I do that. Though it is hardly the
only reason.
|
|
| Back to top |
|
 |
Tamas Demjen Guest
|
Posted: Tue Oct 12, 2004 12:42 am Post subject: Re: What annoys you most in BCB v6? |
|
|
| Quote: | 1) The top annoyance is the need to delete the .tds file and remake so
that the debugger will work. On a day of heavy debugging I have to do
that 3-5 times a day.
|
Yes, the debugger stops working 3-5 times a day, I agree. However, I
just close the project and re-open it, and that's faster than rebuilding
it. This wouldn't be the number 1 for me, but it's certainly annoying.
| Quote: | 2) The second biggest annoyance is when the IDE goes on "hourglass mode"
where it is probably reparsing stuff.
|
I agree with this one too. If you have a certain number of source files
in the project, the IDE's speed is radically deteriorating as the number
of files grows. I'm thinking about two items here: 1. It may take 15
seconds to add a new file to the project after a while. 2. It may take
15 seconds after pressing Ctrl+F9 before the compiler actually starts
compiling the first unit. And these steps can not be cancelled out. The
complexity seems to be very heavily increasing with the number of files
in the project, without any apparent reason. Other than an inefficient
algorithm used in the project manager, it can not be explained why the
exact same files compile lightning fast in a smaller project, and in
complete slow motion in a larger one.
While I'm very quite happy with BCB with smaller and medium sized
projects, its problems are intensified with large-scale projects to such
a degree that I'm losing hours, sometimes days, with project management
related issues. It's also very nasty when the include path gets mixed up
randomly, and a previously working project starts crashing due to that
(I would prefer if the IDE wouldn't add items to my include path). Or
when the linker doesn't warn you about two functions with the same name
and signature, and randomly links either one of them (not so easy to
reproduce, but it happens). These problems are responsible for long
hours of unexpected delays.
Tom
|
|
| Back to top |
|
 |
Randall Parker Guest
|
Posted: Tue Oct 12, 2004 3:31 am Post subject: Re: What annoys you most in BCB v6? |
|
|
Tamas Demjen wrote:
| Quote: | Yes, the debugger stops working 3-5 times a day, I agree. However, I
just close the project and re-open it, and that's faster than rebuilding
it. This wouldn't be the number 1 for me, but it's certainly annoying.
|
I realize that for some people exiting and reentering BCB causes the debugger to
start working again. But that doesn't help for me. If I exit and reenter still no
debugging. If I exit, reenter and Build again still no debugger. I have to delete the
TDS file to make it work again.
| Quote: | While I'm very quite happy with BCB with smaller and medium sized
projects, its problems are intensified with large-scale projects to such
a degree that I'm losing hours, sometimes days, with project management
related issues.
|
Yes, BCB becomes much more problematic as your app size grows. That is our experience
as well. We are worried about this. Since I'm working on projects that are going to
grow and grow in the years to come this worries me. Build and IDE bugs as apps get
larger in size are the primary reasons why I want to see a new version of BCB
released. Most of all I always want to be able to build. Secondly, I always want to
be able to debug.
| Quote: | It's also very nasty when the include path gets mixed up
randomly, and a previously working project starts crashing due to that
(I would prefer if the IDE wouldn't add items to my include path).
|
I find that if I use short directory names then the total path is shorter and I avoid
problems. I've literally gone thru and copied libraries (e.g. DevExpress libs) to
shorter paths and then a build problem went away. Keep it in mind.
| Quote: | Or
when the linker doesn't warn you about two functions with the same name
and signature, and randomly links either one of them (not so easy to
reproduce, but it happens). These problems are responsible for long
hours of unexpected delays.
|
Haven't been hit by that one. The problem in that case as has been discussed here is
that duplicative function names happen naturally with many coding styles and people
count on linking to work in that case. I would like to see a linker option to at
least warn when the linker knows this is happening.
|
|
| Back to top |
|
 |
Boian Mitov Guest
|
Posted: Tue Oct 12, 2004 5:02 am Post subject: Re: What annoys you most in BCB v6? |
|
|
I actually have similar type of issues with VC++ 2003. The IDE gets
slower as the project grows. Indeed it gets slower than BCB in may
cases. It is frustrating to sit and watch as example how it slowly
populates the project tree when you open different project . It
seems to be not BCB only problem.
With bets regards,
Boian
Tamas Demjen wrote:
| Quote: | While I'm very quite happy with BCB with smaller and medium sized
projects, its problems are intensified with large-scale projects to such
a degree that I'm losing hours, sometimes days, with project management
related issues. It's also very nasty when the include path gets mixed up
randomly, and a previously working project starts crashing due to that
(I would prefer if the IDE wouldn't add items to my include path). Or
when the linker doesn't warn you about two functions with the same name
and signature, and randomly links either one of them (not so easy to
reproduce, but it happens). These problems are responsible for long
hours of unexpected delays.
|
|
|
| Back to top |
|
 |
Sean Hoffman Guest
|
Posted: Tue Oct 12, 2004 12:56 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
Before I reply, I have a couple of questions about your editor choice. Does
Visual Slick edit properly emulate Brief? I'm looking for a new editor, and
it has to have Brief support. Secondly, and this is the thing my current
editor (Multiedit) DOESN'T do that's inspiring me to look for a change, does
it correctly handle the new #region keywords that are in C# (and
back-propagated in other Microsoft languages?) If you're not yet familiar,
using the #region keyword allows you to expand or minimize code blocks that
you may or may not be interested in. Really aids in readability.
"Randall Parker" <STOPtechiepundit (AT) EVILfuturePOXpunditSPAM (DOT) com> wrote in
message news:416b2080$1 (AT) newsgroups (DOT) borland.com...
| Quote: | My top annoyances:
1) The top annoyance is the need to delete the .tds file and remake so
that the debugger will work. On a day of heavy debugging I have to do that
3-5 times a day.
|
Yeah, this is a pain, but I don' t have to do it quite as often as you,
probably because I've given up doing large projects in BCB6.
| Quote: | 2) The second biggest annoyance is when the IDE goes on "hourglass mode"
where it is probably reparsing stuff.
|
I hate the built-in editor so I rarely use it, so I don't see this very
often either.
| Quote: |
3) The third biggest annoyance is the failure to compile due to some
internal error where it stops on a generated source code line that I think
has something to do with Com/ActiveX support::
TComModule _ProjectModule(0);
For that one I find rebuilding the entire project fixes the problem.
|
I'm sick of the whole "internal error" thing altogether, though I must admit
I see them in Visual Studio a couple of times as week as well.
<snip>
| Quote: | 5) The Class Explorer is just totally lame. It ends up not knowing about
classes that are part of the project. I do most of my editing in Visual
Slick Edit and the BCB Class Explorer's lameness is one of the reasons I
do that. Though it is hardly the only reason.
|
I don't use the Class Explorer, and in fact, I typically don't use it in
visual studio, either. I tend to just go with the built-in grep in
Multiedit, along with global bookmarks.
My biggest gripe is just how often I get access violations, just running the
IDE. I suspect it's because I use Total Commander and Multiedit extremely
frequently in my development environment, and both of those are built with
Delphi, and have rev'd the version of the VCL since BCB6 was released
|
|
| Back to top |
|
 |
PaoloItaly Guest
|
Posted: Tue Oct 12, 2004 3:49 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
....
6) The project files are not sorted by name
7) The project link packages not required (and never used) by the
application,
to resolve the unresolved external we have to delete the
libraries/packages
manually from the bpr
in some projects, in the project treeview, i can see the filesi ncluded
by
the source files, in some othe nothing
9) The path where is located your source file is AUTOMATICALLY included
in the INCLUDE PATH (crazy!!!!)
10) In some projects in the component palette i can found VCL AND CLX
together
11) Due to changes in include files, some source file have to be changed
from
version BCB4-5 to version BCB6
12) Some libraries have to be manually linked in the project file,
in version BCB4-5 this are automatically linked
13) With IDE Classic keybord mapping, CTRL-K-W and CTRL-K-R
doesn't work, only a rude message "Cannot create file" and "Cannot
open file"
And now i've to work because if i spend my time listing Borland BCB6 bug,
i've
not enough time to debug my applications.
My customer don't pay me, i've paid Borland for something i've considered a
good
product.
Next time i will evaluate my programming tools downloading the full version
from
EMule...
I don't wont to offend nobody, so i apologize if my thoughts hurt someone of
TeamB.
|
|
| Back to top |
|
 |
Duane Hebert Guest
|
Posted: Tue Oct 12, 2004 4:40 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
"PaoloItaly" <paolot (AT) FAKETHESPAMMERsirius-es (DOT) it> wrote
| Quote: | 13) With IDE Classic keybord mapping, CTRL-K-W and CTRL-K-R
doesn't work, only a rude message "Cannot create file" and "Cannot
open file"
|
14) Build stops after encountering 1st .rc file.
15) Leaks in WinHelp reported in CG.
16) Two memory managers present causing conflicts with
memory tracking tools etc.
16a) To use CG in BCB you must enable "use dynamic rtl" to prevent
"resource from different dll" errors when using STL. And you must
enable "use debug libraries" to catch leaks on VCL objects even though
the leaks are not IN the libraries but a missed delete in source code.
17) Inablility to create VCL objects on the stack.
1 Screwey ctor/dtor order when dealing with Delphi based objects.
|
|
| Back to top |
|
 |
Tamas Demjen Guest
|
Posted: Tue Oct 12, 2004 5:35 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
| Quote: | 17) Inablility to create VCL objects on the stack.
|
This is not going to change anytime soon. While the VCL is here with us,
we have to live with these limitations. In .NET you can't create an
object on the stack either. To be fair, most VCL classes require
polymorphic pointers anyway; there's no way around it. Even if a GUI
framework is written in C++, it usually requires that controls are
created via new. The only difference is that in C++ we would use
shared_ptr<control>, instead of TControl*. But I agree, it's very stupid
that we can't create our own classes on the stack. Only records can be
created on the stack (known as value types in .NET), but they can't have
member functions, c'tor or d'tor. I consider this a serious limitation.
Too bad, but what can we do? I would prefer a C++-based approach with
shared_ptr, compared to the Delphi philosophy with garbage collection.
| Quote: | 1 Screwey ctor/dtor order when dealing with Delphi based objects.
|
There is nothing they can do about this either. VCL is not written in C++.
Tom
|
|
| Back to top |
|
 |
Andre Kaufmann Guest
|
Posted: Tue Oct 12, 2004 7:09 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
"Duane Hebert" <spoo (AT) zowie_flarn (DOT) com> wrote
| Quote: |
"PaoloItaly" <paolot (AT) FAKETHESPAMMERsirius-es (DOT) it> wrote in message
news:416bfd2e (AT) newsgroups (DOT) borland.com...
13) With IDE Classic keybord mapping, CTRL-K-W and CTRL-K-R
doesn't work, only a rude message "Cannot create file" and "Cannot
open file"
14) Build stops after encountering 1st .rc file.
15) Leaks in WinHelp reported in CG.
16) Two memory managers present causing conflicts with
memory tracking tools etc.
16a) To use CG in BCB you must enable "use dynamic rtl" to prevent
"resource from different dll" errors when using STL. And you must
enable "use debug libraries" to catch leaks on VCL objects even though
the leaks are not IN the libraries but a missed delete in source code.
17) Inablility to create VCL objects on the stack.
1 Screwey ctor/dtor order when dealing with Delphi based objects.
|
19) Const correctness (const member function (sometimes?) may call another non
const member function)
20) Environment variables not (always) supported for resource files / precompiled headers
21) Background compilation should be equally fast or even faster than foreground compilation
(make is faster)
22) No precompiled headers when data is initialized in an included header file ((((((
23) (single) Functions in header files behave like inline functions - may be corrected
by using -VA switch (but should be default) - should cause linker errors
when used from different CPP units
24) Most changes in the project configuration require a complete rebuild
25) No dependencies between projects (compilation order / same defines etc.)
26) No different project settings (debug / release) (((
27) No simple support for external tools - e.g. automatically generated code with
dependency checking (
2 No stack trace and incomplete debugging after an exception has occured (((
29) IDE sometimes hangs when application is closed during debugging
CBX has most of the missing features, so i would like to see the IDE features of CBX in a native
BCB IDE with full VCL support.
Andre
|
|
| Back to top |
|
 |
Andre Kaufmann Guest
|
Posted: Tue Oct 12, 2004 7:09 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
"Tamas Demjen" <tdemjen (AT) yahoo (DOT) com> wrote
| Quote: |
17) Inablility to create VCL objects on the stack.
This is not going to change anytime soon. While the VCL is here with us,
we have to live with these limitations. In .NET you can't create an
object on the stack either. To be fair, most VCL classes require
|
Yes. But in C++CLI the .NET objects can be used like stack objects, even if
they arenīt really located on the stack. I donīt see any reason why this
couldnīt be done with VCL objects in the same way.
Or why the objects memory cannot be located on the stack and the constructor
cannot be called for this object - if that makes sense for the most
VCL objects is another story.
| Quote: | polymorphic pointers anyway;
|
Iīm not an expert regarding the memory layout of VCL objects,
but what has polymorphism to do with the memory location of the object ?
I can use polymorphism with a stack allocated object too.
Andre
|
|
| Back to top |
|
 |
Duane Hebert Guest
|
Posted: Tue Oct 12, 2004 7:20 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
"Tamas Demjen" <tdemjen (AT) yahoo (DOT) com> wrote
| Quote: |
17) Inablility to create VCL objects on the stack.
This is not going to change anytime soon. While the VCL is here with us,
we have to live with these limitations. In .NET you can't create an
object on the stack either. To be fair, most VCL classes require
polymorphic pointers anyway; there's no way around it. Even if a GUI
framework is written in C++, it usually requires that controls are
created via new. The only difference is that in C++ we would use
shared_ptr<control>, instead of TControl*. But I agree, it's very stupid
that we can't create our own classes on the stack. Only records can be
created on the stack (known as value types in .NET), but they can't have
member functions, c'tor or d'tor. I consider this a serious limitation.
Too bad, but what can we do? I would prefer a C++-based approach with
shared_ptr, compared to the Delphi philosophy with garbage collection.
|
I don't see what this has to do with normal C++ polymorphism though.
I believe that it's this way because of the virtual constructors in Delphi,
not polymorphism per se. The way that Qt handles this is that the
objects derived from QObject are not copyable but you can create
local instances of them with no problem.
| Quote: | 1 Screwey ctor/dtor order when dealing with Delphi based objects.
There is nothing they can do about this either. VCL is not written in C++.
|
Well they could write VCL in C++ <g>
Someone asked what annoys me in BCB. In addition to those already
posted, I've added these. It doesn't annoy me any less because VCL is
written in Delphi.
|
|
| Back to top |
|
 |
Duane Hebert Guest
|
Posted: Tue Oct 12, 2004 7:25 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
"Andre Kaufmann" <##andre_no_spam_.kaufmann_ (AT) _x_t-online (DOT) de##> wrote
| Quote: | polymorphic pointers anyway;
Iīm not an expert regarding the memory layout of VCL objects,
but what has polymorphism to do with the memory location of the object ?
I can use polymorphism with a stack allocated object too.
|
Yep. If a class can be created polymorphically (via a base class pointer)
it doesn't prevent it from being created directly.
|
|
| Back to top |
|
 |
Chris Uzdavinis (TeamB) Guest
|
Posted: Tue Oct 12, 2004 7:32 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
"Duane Hebert" <spoo (AT) zowie_flarn (DOT) com> writes:
| Quote: | Someone asked what annoys me in BCB. In addition to those already
posted, I've added these. It doesn't annoy me any less because VCL
is written in Delphi.
|
Me too, however, it's probably best to pick battles that have at least
a miniscule chance of being addressed. :)
--
Chris (TeamB);
|
|
| Back to top |
|
 |
Tamas Demjen Guest
|
Posted: Tue Oct 12, 2004 8:02 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
| Quote: | Iīm not an expert regarding the memory layout of VCL objects,
but what has polymorphism to do with the memory location of the object ?
I can use polymorphism with a stack allocated object too.
Yep. If a class can be created polymorphically (via a base class pointer)
it doesn't prevent it from being created directly.
|
I guess the problem is that VCL assumes object ownership management.
Once an object is created, it will be destroyed by the framework, and
this is done by deleting the pointer. Quite a substantial redesign would
be needed to change this behavior.
I wonder if VCL could be rewritten at all in C++. Not without the
extensions. In fact, VCL internally uses a couple of tricks that even
the BCB flavor of the C++ language doesn't support, if I'm not mistaken.
I'm sure that VCL could be rewritten in C++, the question is how much
compatible it would be with the Delphi version after such a migration. I
think we could live with a C++-based VCL, even if it was not 100%
compatible with the current one. But those who use a lot of 3rd party
components, I don't know.
Isn't it a little bit too late to rewrite the VCL in C++? Today one
could write a more modern framework using namespaces, STL, and other
concepts. If they just do a pure re-translation, it will suffer from the
exact same problems. At least the terrible TList container should be
replaced with something more type safe. It's a tremendous effort to
develop and test a new framework.
Tom
|
|
| Back to top |
|
 |
Duane Hebert Guest
|
Posted: Tue Oct 12, 2004 8:31 pm Post subject: Re: What annoys you most in BCB v6? |
|
|
"Chris Uzdavinis (TeamB)" <chris (AT) uzdavinis (DOT) com> wrote
| Quote: | "Duane Hebert" <spoo (AT) zowie_flarn (DOT) com> writes:
Someone asked what annoys me in BCB. In addition to those already
posted, I've added these. It doesn't annoy me any less because VCL
is written in Delphi.
Me too, however, it's probably best to pick battles that have at least
a miniscule chance of being addressed.
|
Good point. Maybe it would disuade Borland from using
VCL in CBX (though that may not be a popular POV
in this group<g>)
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|