Introduction to AngularJS

AngularJS is the JavaScript framework for developing Single Page Applications (SPA).  It is an open source framework maintained by Google.  "Single page applications load the entire HTML on first load and then use AJAX to retrieve data from the server." AngularJS extends HTML with ng-directives attributes.  <html ng-app=”webapp&rdquo...

Continue Reading

Introduction to Design Patterns

Design patterns is an essential concept in software engineering. Every developer should know about Design patterns and how to apply these patterns in your project. Design Patterns are solutions to some common software design problems. These problems are the recurring design problems that software developers often faced during the development. Design patterns descri...

Continue Reading

Mediator Design Pattern

In object oriented programming, we have lots of objects interacting with each other. As project continues more objects are introduced and the interaction between these objects becomes dependencies between each other. We modify one object and we have to modify another object too because of dependency with each other. Mediator design pattern provides easy&n...

Continue Reading

Memento Design Pattern

Memento design pattern provides the ability to store and restore object's internal state without breaking encapsulation. This pattern is useful when we have to support undo or redo operations over an object. In OOPS, every object has internal state. To support undo/redo operations, we must save the state to somewhere. But due to encapsulation, ob...

Continue Reading

Nested Forms - AngularJS

Nested Forms provides a great way to apply grouping of form controls. Because HTML does not allow you to nest forms so AngularJS provides support for nested forms using ng-form directive. Nested Forms is useful for creating grouping of form controls so that their validition can be implemented separately. Nested Forms Example <html> <head> <t...

Continue Reading

Strategy Design Pattern

Strategy design pattern provides a family of algorithms. Each algorithm implements a single interface and all the algorithms are interchangeable. Client use the interface of the algorithm and can change the algorithm at runtime. Strategy pattern provides loosely coupling between the client and the algorithms. Structure Participants IStrategy: Defines an...

Continue Reading

Template Method Design Pattern

In Template Method design pattern, we define our specific algorithm in the base class. A algorithm can compose of several methods. At designing the base class, we don't know the implementation of some methods and we mark these methods as abstract so that subclasses can implement these methods. A method in the base class which use abstract methods are cal...

Continue Reading

Validations - AngularJS

AngularJS provides great support for implemeting validations in Forms. Validation is performed by States properties and Validators directives. There are four States in AngularJS Forms. $invalid : This state describes that form is in invalid state. $valid : This state describes that form is in valid state. $dirty :This state describes that form is in dirty state ...

Continue Reading

Visitor Design Pattern

Visitor design pattern allows you to add new behaviors to an existing object without changing the object structure. Visitor pattern separates the non-related behaviors from the object and put them into a separate object. Visitor pattern creates a separate object for each new functionality. This pattern supports both single responsibility and open/close...

Continue Reading

WCF Architecture

WCF provides a runtime environment for developing distributed services that are interoperable, secure, and reliable. A service is a reusable unit of functionality that performs a particular task. A WCF Service exposes Web Service Definition Language (WSDL) file contains the available functionality and the communication methods supported by the service. A client can import th...

Continue Reading

Join our newsletter and get an occasional email with a technology and DotNetPattern.com news update.