Skip to main content

Posts

Showing posts with the label object oriented

OO concept and software development practices

I attended a 5-day Design Pattern class last year, and the summary that I published then, was the initial thought of this k-db site. I am revising them and put them here. :) Day 1 : OO concept and software development practices OO concept revised. Normally these are discussed : inheritance composition encapsulation polymorphism Discussed in class : abstraction encapsulation generalization specialization Type of errors compilation syntax contextual linking runtime logical Example to show the best way to code to avoid error : if (x == 0) if (0 == x) <– using this coding style, missing a "=" in the condition statement will alarm error during compilation. Why it is a good practice to use static for variable declaration? for information hiding. so people won’t use extern to access to it in other file, to ensure the value is not overwritten by unknown. error prone during linking. Software quality measurement : reusability : code, function, user exper...

Object oriented concept

Have been kept this post in draft for quite some times. Not sure when I'll start with my next topic. So, I decided to post this first. Here's the first chapter, object oriented concept. Let’s go through an example before explore the object oriented jargons. Say, there is a book shelf. We have some books, a pen holder, pens, pencils, sharpener in the book shelf as illustrated below. These objects are related to each other in some ways. The bookshelf contains books, pens, pencils, pen holder and sharpener. The sharpener is used to sharpen the pencil. The pen holder holds the pens and pencils. There is variety of books in the bookshelf. How is this related to object oriented concept? Class A class is a collection of objects that has something in common. Say, we have a class of book. All books are classified in the class of book. Object Object is something real that exists. It is classified with other objects that share some common attributes into class. We can ...