SOLID Principles: Explanation and examples
SOLID is the short form of 5 important design principles when doing OOD. It helps to make software designs more understandable, easier to maintain and easier to extend. As an ideal …
tutorials | source code | tips & tricks
SOLID is the short form of 5 important design principles when doing OOD. It helps to make software designs more understandable, easier to maintain and easier to extend. As an ideal …
Adapter design pattern allows incompatible classes to work together by converting the interface of one class into another. It’s like a translator. When two heads of countries who don’t speak …
Composite design pattern is a tree structure containing individual objects mixed with compositions of objects. That means, objects that have other objects as their children. This pattern allows us to …
The one of the simplest design patterns is Singleton pattern. This pattern ensures that a class has only one instance in the whole application and provides a global point of …
Strategy Pattern is very interesting and easy design pattern. This pattern is generally used to change the algorithm or the common behavior of an object at runtime. Think of an …
In Facade pattern, a single class represents an entire complex system. It provides a simplified interface to a library, a framework, or any other complex set of classes. For example …
The prototype pattern creates a new object from the existing instance of the object. This pattern is used to create a duplicate object or clone of the current object to …
Software Architect and Software Engineer are different roles. But this two roles collaborate closely to make right software solutions for the business needs. Some key points abut software architect vs …
NET Dependency Injection Frameworks Some Dependency Injection frameworks for .Net is given bellow: Autofac Castle Windsor Dryloc Lamar LightInject Ninject SimpleInjector Spring.Net Unity LinFu Managed Extensibility Framework (MEF) PicoContainer.Net Simple …
Microservices are the smartest software development techniques. Let’s discuss some important points about Microservice architecture. Summary of the article: What is monolithic architecture? What is Microservices architecture? Why we need …
Object Oriented (OO) techniques can be applied in the phases of software life cycle (analysis, design, implementation, etc). This article describes about object oriented analysis, how to use OOA in …
Lot of software’s are available to handle the changes of computer files including documents and computer programs or source codes to make sure the system runs smoothly and efficiently. This …
In the field of Software Engineering, the UML or Unified Modeling Language is a standardized modeling language that contains a set of integrated diagrams, provides a standard way to visualize …
Object Oriented (OO) concepts can be applied in the phases of software development life cycle (analysis, design, and implementation). It is very important to understand the OO analysis and design …
Test driven development is an advanced technique that uses unit tests to drive the design of software. It is a technique for building software that guides software development by writing …
Domain Driven Design or DDD is a software development technique. This article explains about the basic overview of Domain Driven Design (DDD), some key features of DDD. Summary of the …
Design pattern is a guideline to find a solution for commonly occurring problems. Now a day’s design pattern and software design questions are essential part of any programming interview, especially …
In software engineering, design pattern is a written document that describes a general solution to a design problem that occurs repeatedly in many projects. Software developers use this pattern in …
Scrum is lightweight agile software development methodologies. Scrum is mainly used for software development, but it works well for any complex, innovative scope of work. It describes an iterative and …
Agile is as software development methodology. Where requirements are segregated into small portion and provide the solutions of each portion within a short time. Its main focus is on customer …
Once upon a time, software development consisted of a programmer writing code to solve a particular problem or automate a procedure. Now, systems are so big and complex that teams …