This blog includes the principles that must be followed when designing a software and the way of approaching and implementing the solution,before going in-depth of the designing languages. "An application is a software library that provides a fundamental structure to support the development of applications for a specific environment not only for graphical user interface development but also for areas like web based applications." S.O.L.I.D There are 5 object oriented Principles that should be followed when designing a software. This is know as S.O.L.I.D I - Single responsibilities. Designing a class that has only one responsibility O - Open-Close. The application must be closed for modification and open for extension. L - Liskov Substitution. Sub-classes derived from the parent class must be able to substitute the parent class. I - Interface segregation. Clients should not be forced to implement methods they do not use.These unknown metho...