I was browsing at Kinokuniya the other day on the programming section. Interestingly, I found some book regarding design pattern. Well, I have learned about design for IT in my college years, (Usually about creating forms or database design.) but this topic really catches my eyes. By the way, those books on the shelves at Kino are tightly wrapped and I was lazy to take the book to the counter for unwrap. Therefore, I just read the cover for some brief information and try to remember the book title.
Back at home, I did some research on the internet on what I have discovered. To my surprise, all this information was available back in 1995. Till today, none of these terminology was apply in my working years.
Perhaps I can say that, these design patterns was not that crucial or important enough to practice in real world. So, why do I need read all these stuff and talk about it here? The big advantage of design pattern is that it reduce software maintenance and adapt to change. (In IT world, a software application has to adapt to change else it will die or outdated. This also mean out of job for programmers. :D) Well, I have seen company putting in a lot of investment just to maintain an application and it doesn't adapt to change either. (Maybe that's how I and everybody else could get a job and put the food on the table. I would disagree with this because that means we lose a competitive edge to our competitor due a lot effort was spend in maintaining the software instead of moving forward for new functionality, scalability, usability and improve performance. Competition not in term just for local but applies to global competition as well)
So, what so special about it? Well, for people who interested in the Object-Oriented Programming, here a sample chapter of Decorator Pattern and it was described in Java programming. I believe this also can be done on dot Net technology since it is a OOP also.
If you have started talking in OOP language, that's great. Perhaps you can try out talking in Pattern language, trust me, that's even exciting.
Back at home, I did some research on the internet on what I have discovered. To my surprise, all this information was available back in 1995. Till today, none of these terminology was apply in my working years.
Perhaps I can say that, these design patterns was not that crucial or important enough to practice in real world. So, why do I need read all these stuff and talk about it here? The big advantage of design pattern is that it reduce software maintenance and adapt to change. (In IT world, a software application has to adapt to change else it will die or outdated. This also mean out of job for programmers. :D) Well, I have seen company putting in a lot of investment just to maintain an application and it doesn't adapt to change either. (Maybe that's how I and everybody else could get a job and put the food on the table. I would disagree with this because that means we lose a competitive edge to our competitor due a lot effort was spend in maintaining the software instead of moving forward for new functionality, scalability, usability and improve performance. Competition not in term just for local but applies to global competition as well)
So, what so special about it? Well, for people who interested in the Object-Oriented Programming, here a sample chapter of Decorator Pattern and it was described in Java programming. I believe this also can be done on dot Net technology since it is a OOP also.
If you have started talking in OOP language, that's great. Perhaps you can try out talking in Pattern language, trust me, that's even exciting.