Software design patterns (IV): behavioral patterns
Jan 12th
We’ve already been through a brief introduction to design patterns, and a description of the most important creational design patterns and structural design patterns. In this article we’ll take a look at the last category of design patterns: behavioral patterns.
Behavioral design patterns are concerned with the relationships among communications using different objects. They identify common communication patterns and provide a well-known solution to implement this communication, offering a higher degree of flexibility.
The most used behavioral patterns are:
Software design patterns (III): structural patterns
Jan 5th
We already saw what design patterns are and took a look at creational patterns in earlier articles. Today we’ll deal with the second category: structural patterns.
These design patterns are all about class and object composition. Class-creation patterns use inheritance to compose interfaces, whilst object patterns define ways to compose objects to obtain new functionality. All of these patterns aim to ease the design by identifying a simple way to realize relationships between entities.
The most common structural patterns are:
Software design patterns (II): creational patterns
Dec 15th
In an earlier article we saw what design patterns are and how they can help us. Today we’re going to take a look at the first category: creational patterns.
Creational design patterns deal with class creation and instantiation, and how to use those instances. Basic class creation could result in design problems or added complexity to the design. These patterns solve these problems by controlling this object creation.
Some examples of creational design patterns:
Software design patterns (I)
Dec 8th
Design patterns are solutions to common software development problems, and aim to facilitate the development of a software project. A solution must have proven effectiveness and be highly reusable (can be applied to different design problems in different circumstances) to become a design pattern.
A pattern describes a problem that happens over and over again in our environment, and then explains the core of the solution to that particular problem. Since it is just a scheme of the solution, the application of this pattern is not literal: it requires adaptation. You could use the same pattern a thousand times, and never repeat the way you applied it.
CSS 3: one more step in the evolution of the web
Dec 1st
CSS 2 was released in 1997, and after more than 10 years it needs to be updated to reflect the new uses and trends we’ve been seeing in the web. This new version of Cascading Style Sheets brings new features long awaited that will make web development easier. Alongside with HTML 5, this new version represents the evolution of the web, and aims to take the concept of semantics into the core of the web.
CSS 3 has quite a few new concepts. Let’s take a look:
HTML 5: dramatic improvements in the web language
Nov 24th
HTML 5 is a new revision of the standard language that moves the web. The increase in needs has brought new uses in HTML and new tags to support them, paying special attention to the semantic web. There are quite a few elements added to the new HTML standard to encapsulate different types of information:
The Semantic Web
Nov 17th
Semantics, as defined in Wikipedia:
Semantics is the study of meaning, usually in language. The word “semantics” itself denotes a range of ideas [...]. It is often used [...] to denote a problem of understanding that comes down to word selection or connotation.
The Semantic Web is an extended web, with a greater meaning, in which users will be able to find answers to their questions faster and easier due to a better-defined information. This meaning-based web is supported by a set of standardized languages that solve the problems the semantic-less web has, in which access to some information is a difficult and frustrating task.
Open Source Software
Oct 5th
There’s no doubt that nowadays open source software is everywhere you look at… including this same blog. One could say that Information Technologies have gotten to where they are now partially because of open source software. Either if you are an active open source programmer or you think that open source software is the reincarnation of the Devil on Earth, a good outlook and a small synthesis of what it means is always good to have.

