On Sat, Jun 19, 2010 at 02:45, Hans-Peter Diettrich <[email protected]> wrote: > Alexander Klenin schrieb: > Actually I'm struggling with Mattias, about the many (obsolete) classes and > methods in the Lazarus IDE. IMO the IDE would profit from a general > refactoring, but who would do that, and who would make the result only work > again? Not to mention the many changes that are on the road with the new > (dockable) layout management.
This is a serious problem for Lazarus development, but the need for stability and backwards compatibility should not be underestimated either. I can make a few suggestions: 1) Take a small steps, one a a time. Really. First eliminate obvious duplicates and other most trivial design problems. Then *get those changes accepted*, after that, move to more serious refactorings. 2) Ask for forgiveness, not permission. My attempts to start a meaningful refactoring of some core IDE code were halted by core developers due to fear of potential backwards compatibility problems. Meanwhile, I quietly rewrote almost 100% of TAChart code, introducing some (hopefully minor) incompatibilities, and AFAIR got a single complaint on forum, which was promptly resolved, and not even by me. To access the magnitude of change, compare this: http://github.com/graemeg/lazarus/blob/4a181e6bda93a20797630f16a5103fff85ad46da/components/tachart/taseries.pas#L594 with that: http://github.com/graemeg/lazarus/blob/upstream/components/tachart/taseries.pas#L360 I have a nagging suspicion that if I'd just committed my attempted core refactoring, nobody would ever notice ;-) -- Alexander S. Klenin -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
