Experting C Language

Experting.. is it even a valid word in dictionary?? Or in any language ??

I don’t care if it is. I am not going to apologize for my bad English. I meant it to be wrong cause this article is not about English. It’s about programming language and WE are going to program the fucking world if we get a chance.

C language

c

 

When I was first exposed to object oriented concepts I was very happy that finally I am getting relieved from middle level language ie C. I knew how to program in C but never had full confidence that I can program everything in C. But the same thing can be done using OO concepts easily. If you compare the OO with C then obviously you will find the programming in OO is easy then in C. Now If you think C is easy language then tell me how you feel about assembly.

The whole point behind the development of high level language was to increase readability. If you run  ten rounds around a football ground for week, then tell me how you feel about running two rounds from next week.

It’s the same analogy with programming language. We could have achieved everything with assembly but it was hard so the high level languages were invented and people found it easier to code. The Unix and Linux Kernel was rewritten in C. C became the most popular choices among the developers with its many pros and some cons too.

Now, if you are normal programmer which means that you love C and there could be chances that you don’t know the deep Secrets of C. The whole thing that I am trying to say here is that no matter how much you are a efficient in java or python or php you just can’t ignore C. everything around us is in C or some part is. Even the Java Virtual Machine and python were invented using C.

 

Are you an Expert in C??

So how long have you been using C?? Are you an expert in C?? this is what you should ask yourself everytime. For any language to expert it takes time and C is very vast. I am using C from past 4 years, still I think I haven’t known all the secrets of C. If you think that you  are not an expert then it’s ok. C requires a lot of time to expert. We always learn new things and behavior in process problem solving. That doesn’t mean  you are not a good programmer. All I am trying to say that even if you master a language and do all the things with it there are always some loophole in the language itself and sometimes even confusing that we code something that was not meant to be. Have you ever realized that there are so many books in C. And these books are not only about the core programming but about only expected features of C or features of C. Now one thing I want to make clear is that you don’t need to learn the features of C unless you already are a programmer programming in C but if you are then you need to keep your code safe and vulnerable free.

For beginners

If you have never programmed in C or you are in learning process of C. then you should keep in mind that you are not supposed to know all the features of C. You are supposed to know the basic of how to program using C rather than becoming an expert in C. So if you are a beginner my suggestion would be don’t try to be expert, just learn the basics first. For the basics I would suggest any book which has written learning C, beginning C, etc kind of book. And of course we have a C programming book from the creator himself Dennis Ritche himself. It’s a good book to start and graps the basics of C. Although it’s a good way to learn programming I didn’t like the way the code was presented in the book. C with example by Noel Kalicharan is the best book to start programming in C. Don’t try to learn everything in the book. With time you will be expert but it takes time. You can learn a language basics and be a good programmer within weeks but to be an expert it takes years.

 

On the way to become expert

You now have the basics and you want more. It’s good to be wanting more we all want more in life. We want to know all secrets of life and we even want to know who is that women always screaming Thomas in Tom and Jerry.

The first thing is to understand is the way you are learning C. If you like to learn a programming language through Video tutorials then its fine but I think if you are trying to be an expert in a language then it could be difficult. You must look into the smelling pages of books which you hardly open. There are lots of writers and books which are available these saves a lot of time to make a researches in C and they basically give you the secrets of C. Let me tell you a secret “Gangadhar hi Saktimaan hai” now you are an expert. The books like Traps and falls in C, Understanding Pointers in C, Advance topics in C and my personal favorite Expert in C are good books to go with. And even after all these you think that you are not an expert programmer in C then also its OK, this means that you still want more and just as I told earlier it’s good to be wanting more you sexy beast.

Object Oriented and Procedural Programming

When you are into IT related topics one things you hear a lot is the word Object.

You must have heard something about Object Oriented Programming and that the concept has totally changed the way of programming which is true. Nowadays most of the application are developed by using Object Oriented Methodologies and it’s very important to understand about object.

This blog that I have created is about Object Orientation and how to understand an Object. For this topic you don’t need any Programming knowledge and even a person which is not from IT sector can understand. coding

what is this object?? What does it do?? How does it Revolution-rises the programming

So, what is an object? In some books you might found the definition like object is an instance of Class. Now after reading that definition you must be thinking what the hell is this Class?? Is it some thing our lecturer makes us sit and listen to the boring lectures. Well that was the first impression on a normal person who doesn’t know about programming. And I don’t know what with the academic books, they always find out the way to confuse us with some new definition all the times.

To understand about Objects first it is very essential to understand about the previous ways of programming. By previous I didn’t mean the assembly language though it comes under the same category. The old way of programming is call the procedural based programming such as C.

These languages are based on the concept that what a program should do and how would you expect a program to run. For this you have to provide step to step procedure to take steps and these steps can be further divided into sub modules. for e.g. in a student teacher relationship if we emphasis on developing a program based on the functions like teaching of a teacher where students and teacher are the constraints then the process is procedural process.

This approach had several shortcomings while compared to real world application such as in if we follow this approach the various functions like evaluation which is done by the teacher for every student will add many complexities to the problem.

The new approach used is OO methodologies in which rather then giving emphasis on procedure we give more importance to the real life object. for e.g if we take our previous example the students and teacher are the real world objects and teacher can have functions like teaching and evaluating as well and students can also have their own functionality.

Classes and Objects

Now lets get into the previous definition of object that we read. Now we have understood that we emphasis on real world objects rather then the functions, then what do we do with the functions and how are they implemented. These functions are kept within a Class. A class contains the members and member functions of an Object on which the operation is supposed to perform. So the functions like teaching and evaluation are kept inside a class. And that is what is meant by Object is an instance of Class as it provides the type definition of an Object.

Now, I think you have got some idea about Object. Don’t get afraid of it and use this amazing approach instead of traditional one to make your life more easy.

The Class, Labs and Girls.

Hmm.. so you have joined engineering, that means for four years you have to forget about all the fun and you must study like five hours and day. Man that must be tough. That’s the fact you must have heard about engineering  or  the fact that I had in mind when the first semester of Engineering begun. I literally thought that I must study like 4 hours a day at least to pass the exams. This was the plan that I had made during my first sem.

The days passes by, you make some friends and soon you realize how hard is to pay attention to the boring lectures. In simple words its like a torture, you can’t talk, you mind is somewhere else thinking about party and stuff or how you spent last nights with your friend. And suddenly you get hit with a question mark from your beloved lecturer.

Now you are totally blind, you just look at the lecturer face and they look like they are having a forth stage of cancer. Finally by asking your mates you anyhow answer the question but soon you realize that answer you just said is totally incorrect and your friends are giggling. If your lecturer is in good mood you are lucky and may sit or else you have a bad luck and you may have to hear something form your lecturer.

Labs will be fun, it’s the final place where you have t0 works on hands. And if you are lucky you might a good company of pretty girl in your group, which is like 1 in a thousand possibility. In engineering you must forget about all the greenary and pretty girls. Engineering is like a Sahara desert if you r searching for pretty girls. So if you are lucky you might get a girlfriend or be in relationship with your right hand. To be true the chances the you might get a girl will be quite low, the sex ratio will be like 1:8 (f/m) so, if you are ready to endure the pain of girlfriend which is getting too much attention in college by boys well congratulations son, you are in relationship. But like a dog for sure, have you seen that movie “Pyaar Ka Punchnama” you will be that guy I promise you that.

That’s all folks that’s how your life is going to get going in classes and with girls