Many people around me always said computer is difficult thing to do. Especially when they want to learn how to programming. Here is a little step to learn. I don’t have to study to expensive university or course. Remember that the only purpose of programming is Solve the Problem.
First of all choose the operating system and platform to study. For easy way I use Windows and Visual Studio. I can use either C/C++, VB, C# or other language. Don’t forget to install MSDN as documentation or others. See the language reference for the syntax.
Then try to codes and show on the screen like hello world or something. Don’t worry it looks ugly. Try to understand on looping, branching, subprogram, integral type like what is integer, char or float; logic and a little about input/output. Don’t worry on object oriented mechanism like inheritence, type casting
. Make a little code to solve a little problem.
Example :
I need a little program to get some data about party. The program can register who is attended and report it. The program can be done when user choose exit.
OK. The program is already built, but it strange that is only like that. So I want to add capabilities like sorting by name or searching by name. So I learn basic data structures like stack, queue and list/linkedlist, sorting (for easy way try to understand bubble sort) and search (just easy like binary search). I add the program above.
I need who is attended to be sort by name and I can search it by name.
Next steps I need to understand OOP. There are many books tells about it. I just take concept of inheritence, polymorphism, encapsulation, aggregation, composition, abstraction, class, object, method, and binding. The program above can be rewrite to many class that represent the object. The problem is what object do and what object can communicate each other. Just a simple example I have a class person that has attribute of name and a class of attender that inherit from person that has attribute like the attender is a family. The class need communicate to party class.
Next steps I can learn about building user interface for the someone who use the program. It is used as a input from user and output to user. The program can be redesign by just dropping some label, textbox, and button. I don’t need complex control now such as report control like crystal report or sql server report.
When the computer is shutdown, the data is gone; So I need to store the data. I learn a little about database. I can use many database software like simple MS Access or SQL Server; or I can use csv file (comma separated value). There are basic concept s of database need to be understood like table, field, record, domain/field type, view and basic sql syntax(create table, select without join, insert, update and delete) . I need connection string to connect from the program to database.
From here I can make a small program to solve the problem.