On Tue, 2004-05-18 at 20:14, Alexei Roudnev wrote:
I am sure, that people over-estimates benefits of object-orienting and modular software. Cisco IOS is a very good example of old fashioned, VERY SOLID software. If it was written on C++ with templates and other tricks, it will have 10 times more bugs (good example - MS Windows, full of small bugs, which are not so important in GUI software but are fatal for the router).
Every software has bugs and I think that IOS is a great example of it ;)
It is not an occasion, that Cisco did not release modular IOS yet. Of course, you _must_ know, how to program on plain C and plain F77, instead of knowing only VC wizard and GUI studio (the worst thing I ever saw was old MS visual studio). So, it can be very useful..
(It does not mean, that object orienting programming is bad - it is just one more solid programming approach, tool - but it is not the only tool in the world.)
As you cut away my message you probably didn't read it correctly as I have not mentioned object-orientation nor C++ or anything related in any way. "Cutting into pieces and keeping things seperate" is another way to describe modularisation. It is also one of the things where many UNIX kernels have a problem with where everything is sticking to everything and having a relation with each other. But that is of course a mentality and design issue in picking a nano- over a micro- or over a monolithic kernel. General thought about design issues have changed a lot and will always be changing, that is what we call evolution ;) This still has nothing to do with C++ or Visual anything, also trying to go into the "MS makes bad code" direction is really lame, every single vendor makes mistakes and most of them also fix them, some are just more popular and in common use than others and thus they get noticed better. Every tool has it's own purpose, you will just have to use the right tool or just an even bigger hammer. In the IOS case though even the biggest hammer isn't good enough to slam it into something good ;) But that is why Cisco evolved to the new IOX thingy. </end of history lesson> ;) Greets, Jeroen