My names Thaddaeus Frogley, and I'm an experienced professional C++ programmer. I'm on the editorial team for Overload, the advanced C++ magazine of the Association of C & C++ Users.
I've been using ClassBuilder at my new job for around a month now, and to be honest, I'm not happy with it.
I hope the following will be taken as constructive criticism, and that it will contribute to making a better ClassBuilder for everyone.
1) There is no support for nested classes. This is an important concept and an unfortunate omission. Think about implementing container classes, with iterators using ClassBuilder.
2) There is no support for class scope typedef & enum. As above.
3) No support for free functions.
4) Binary file formats are no good for large / multi programmer projects. Think CVS!
5) ConstructorInclude and DestructorInclude functions are called for every object with a constructor or destructor, even when they do nothing.
6) Automatic, unconditional addition of virtual destructor - must be manually removed if not needed! This is C++ not Java!
7) ClassBuilder creates unnecessary dependencies (pushing up compile times), and has vile dependency handling in general.
8) extern classes version issues - there should be some way of linking CBD files to bring in changes to "extern" classes from there source files automatically.
9) Absolute paths are evil.
10) Poor support for use of templates (each specialisation must be manually declared).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
My names Thaddaeus Frogley, and I'm an experienced professional C++ programmer. I'm on the editorial team for Overload, the advanced C++ magazine of the Association of C & C++ Users.
I've been using ClassBuilder at my new job for around a month now, and to be honest, I'm not happy with it.
I hope the following will be taken as constructive criticism, and that it will contribute to making a better ClassBuilder for everyone.
1) There is no support for nested classes. This is an important concept and an unfortunate omission. Think about implementing container classes, with iterators using ClassBuilder.
2) There is no support for class scope typedef & enum. As above.
3) No support for free functions.
4) Binary file formats are no good for large / multi programmer projects. Think CVS!
5) ConstructorInclude and DestructorInclude functions are called for every object with a constructor or destructor, even when they do nothing.
6) Automatic, unconditional addition of virtual destructor - must be manually removed if not needed! This is C++ not Java!
7) ClassBuilder creates unnecessary dependencies (pushing up compile times), and has vile dependency handling in general.
8) extern classes version issues - there should be some way of linking CBD files to bring in changes to "extern" classes from there source files automatically.
9) Absolute paths are evil.
10) Poor support for use of templates (each specialisation must be manually declared).