13 November 2009

Creational Design Patterns

Creational Design Patterns abstracts the instantiation of the objects. A simple question may occur to you: Why can't I just create a new Object using the new keyword and be happy thereafter. The answer is Yes, you can create an object. But you need to ask a couple of important design questions before conclusively saying Yes.
  1. Is my design flexible?
  2. Will my design promote re-usability? 
More often than not, instantiating an object with a new keyword would not result in a good design. We need to see how we can design a system that is both flexible and that promotes reusability. There are totally five creational design patterns which we will see in details one by one. They are,
  1. Abstract Factory
  2. Builder
  3. Prototype
  4. Factory Method
  5. Singleton
More on each of them in the following posts.

03 January 2009

My Personal Blog

Check out my personal blog where I randomly discuss topics that cover society, people, computer games etc.,



Do check it out at bragadeesh.blogspot.com

Cheers,
Bragaadeesh.

02 January 2009

College flash presentation

I always wanted to post something off-topic. Now that this website has met the minimum popularity criterion, I thought I would share some of the fun stuff that I did during my college days. The following is the flash presentation that I developed when I was in college in 2004 which was some 8 years before!. View and leave some comments if you feel anything to say.


Cheers, Bragaadeesh.

01 January 2009

Free Mini project in C++ using LinkedLists

Folks,

This is one of the oldest mini projects that I did way back in 2004/05 in C++. Its a Medical database management using Indexed Sequential Sorting technique. Its 100% free to use and distribute. Its very old in terms of UI since it uses the classical DOS platform but surely its worth a learn. Free project report too included.

Project Report can be found here
Source Code can be found here

Just an abstract overview of the project follows

Maintaining Purchase and Sale Details for any company is a tedious job; hence we need an alternative in the field of Stock maintenance. Our Software will satisfy all the current needs for maintaining Stock details, Printing out bills, Statistical details with graphs.

The goods purchased are for selling. If the goods are not sold out fully a part of the total goods purchased is kept with the trader until it is sold out. It is said to be Stock. If there is Stock at the end of the accounting year it is said to be a Closing stock. This closing stock at the year end will be the Opening stock for the subsequent year.

At present Purchase and Sale Details are maintained separately. In order to know Stock information both has to be referred. At the end of an accounting year, any change in initial data (at the beginning of the year) will result in entire change of data which is a tedious job and time consuming.

The Purchase details are entered by the User and in turn stock details are manipulated and maintained by the System. The user has an option of entering details in any order. If the details are entered in different orders of date, they are sorted automatically by the system. Here changes can be made without any difficulties in a short time. The user can view the Stock details, Sale details and Statistics (by month, by year etc.,) as per his requirements. In addition to this, Purchase and Sale Details with Cash Details can be viewed with all above mentioned features. There is no need to enter the sale details as we have an automated billing system built-in with the software.


We have a lot of features in this project. Because we chose an efficient data structure i.e., indexed insertion sort, indexed sequential search, bucketing technique of handling files etc.,

We constructed a very strong basic data structure which is highly complex to implement, but highly efficient in case of memory management. After that strong foundation we were able to add features easily.

Also we completely used this in text mode. In text mode itself, we’ll be handling charts. Since we have used bucketing technique of handling files, a minimum of 32MB RAM is well sufficient to run our program. A computer of just rs.5000 and a dot matrix printer are all the investments if a medical shop is going to have this software. A DOS platform is sufficient enough to run this software.


Features at a glance.
  • Efficient memory handling.
  • Very low minimum requirements: only an old Pentium machine with 32MB of RAM and 1GB hard disk with a dot matrix are more than enough.
  • Efficient storage management achieved through bucketing.
  • High speed search achieved using Indexed sequential search.
  • Simplicity in entering, deleting and editing details of medicines. Data can be entered in any order.
  • Viewing past sales and purchase details is possible in both statistical and graphical mode.
  • Warnings whenever a medicine expires in the current stock.
  • Intelligent Billing system.

Cheers,
Bragaadeesh.