Click here to Skip to main content
15,889,931 members
Please Sign up or sign in to vote.
1.24/5 (3 votes)
See more:
When I go through the sourcecode for some opensource Projects i.e, Asterisk.NET, It seems so complex and making me afraid... I know I can accomplish the same with some classes, and limited coding... But when I open these type of projects, I realize, I dont know even anything on it...
It seems I cannot ever change anything on it... Why people make it so complex with thousands of classes and interfaces ....
Posted
Comments
z3ngew 18-Aug-13 5:52am    
if you can accomplish the same with limited coding, then your solution is better.
the more simple ... the better,

Good Luck,
z3ngew
Yesudasan Moses 18-Aug-13 8:35am    
Thanks dear friend :)
z3ngew 18-Aug-13 8:46am    
you're welcome

1 solution

Generally, to make it less complicated than the alternative!

We don't normally make things more complex than they have to be without good reason. Sometimes, that reason is "we didn't know any better", but generally speaking we make things more complex than they seem to need on the surface because they aren't as simple as they seem, or we want to allow for future changes. We also do it because it is a lot easier to work on as a team, rather than as a single individual.

You can do anything without classes, without interfaces, you can even do it in assembler or machine code, but then the complexity of the code actually increases, because the interconnections between things increases as well. Adding classes and interfaces organises code better, so it is more reliable and understandable than a monolithic piece of code.

And anyway: it depends on what the end product is. Some things look really, really simple in principle, but in practice are hideously complicated. Take a rocket: fuel in, light, lift off! Simple, right? Now have a look at a Saturn V launcher and tell me that is simple! :laugh: And trust me, NASA didn't add anything they didn't have to because the launch costs go up exponentially with mass...
 
Share this answer
 
Comments
Yesudasan Moses 18-Aug-13 6:13am    
You ignite a spark in my brain..... :) Thanks friend :)
OriginalGriff 18-Aug-13 6:15am    
You're welcome!

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900