Thursday, August 16, 2018

Introduction


In this digital age, computers are observing everywhere. The digital computers need application program to work, and skilled programmers or system developers write such programmes.

What is a program?

A program is a set of instructions written in pre-defined manner, which will be understand by intended system.

Why learn C?

C is one of a large number of high-level languages designed for general-purpose programming, in other words, for writing anything from small programs for personal amusement to complex industrial applications.

 

C has many advantages:

 

C, however, was designed to give access to any level of the computer down to raw machine language, and because of this, it is perhaps the most flexible high-level language.

_ C has features that allow the programmer to organize programs in a clear, easy, logical way.

_ C is succinct. It permits the creation of tidy, compact programs. This feature can be a mixed blessing, however, and the C programmer must balance simplicity and readability.

_ With C, you can use every resource your computer offers. C tries to link closely with the local environment, providing facilities for gaining access to common peripherals like disk drives and printers. When new peripherals are invented, the GNU community quickly provides the ability to program them in C as well. In fact, most of the GNU project is written in C (as are many other operating systems).

For the reasons outlined above, C is the preeminent high-level language. Clearly, no language can guarantee good programs, but C can provide a framework in which it is easy to program well.

Ref: The GNU C Programming Tutorial, Edition 4.1

How to learn C language, where to find help?

Coding, as the word suggests, is involved in writing code. A coder translates the requirements into the programming language of his choice and writes lines of codes.

Programming, on the other hand, is a much broader term that involves coding AND other tasks like problem solving, critical thinking, conceptualising, and understanding algorithms and data structure.

Before learning C let’s see the three work layers any computer programming language have.

C language

Here you learn about language elements and their usage, mechanisms, structures, syntax-rules etc.

Here your role is call as coder-because you do coding.

-take the algorithm or concept and convert it into code or program. Usually single source file work. Simple command prompt or shell is sufficient along with suitable compiler.

C programming

Here you learn about general libraries supplied with compiler, tools, debugging, testing etc.

Here your role is call as programmer-because you do programming not merely coding.

-you are not only coding but also documenting, testing, debugging for errors and making a fully working program or application. Usually multiple source files work. Simple command prompt or shell is sufficient along with suitable Text Editor + compiler + debugger + test library.

C Development

Here you know about language in-depth, IDEs or Integrated Development Environments usage, deploying created software or program, system requirement-maintain work etc.

Here your role is call as developer-because you do coding + programming + documentation + much more.

-here systems are creating and are built upon multiple number of projects. Here you need IDEs and system specific tools, libraries, as issuing commands, building projects is very tedious and time consuming.

 

Usually it is hard to write or cover all the aspects of the any programming language [such as listing all library files or all function implementation details, Coding Guidelines details, how to… about IDE, compiler, 3rd party library etc – for this refer other resources/articles is advised] in one form: Text Book, eBook, tutorial, Article, Forum, Blog posts etc.

It is best chose tutorial, learn the basic or refresh basics, try code if any given in tutorial and then become programmer. Next, try to program some projects, concepts into application for intended operating system/client. Finally chose any suitable IDE, 3rd party libraries and start developing working application for any intended operating system/client.

Where to find help?

Search the internet for resources, if any doubt or problem occurs during learning process or at programming level or during development process.

The following are the keywords, which used to search the help topics in internet. They are not specific as resources may vary/not available/goes obsolete after certain time interval.

-          C Tutorials, (including this)

-          C Forums

-          IDE specific sites, forums

-          Compiler specific sites, forums

-          3rd Party libraries sites, forums

-          Other tools or plugins for IDE specific sites, forums

-          Text Books, eBooks, Articles related with C language sites, forums

-          C language reference sites, Blogs

Environment Setup

To learn C language you need digital computer installed with suitable operating system and following tools:

-          C compiler + Shell/Command Prompt for coding

-          C compiler + Shell/Command Prompt + Text editor for programming

-          C compiler + IDE or Integrated Development Environment + 3rd party tools/lib for development

 

In C language terminology, you need 32/64-bit computer installed with Windows/Linux/Mac flavoured operating system and following tools:

-          GCC compiler + for coding

-          GCC compiler + Text editor for programming

-          GCC compiler + any IDE or Make utility+ 3rd party tools/lib for development

 

As command prompt or shell and Text editor comes with operating system or Cygwin compiler, they are not need additionally.

How to gather/install these tools?

We are trying to gather freely available or open source tools rather than limited edition proprietary tools.

For any type of operating system [32 or 64-bit, Windows/Linux/Mac] user needs below mentioned anyone tool in his/her computer to learn C language.

-MinGW Compiler or Cygwin + GCC or Code::Blocks IDE + mingw setup

For installation process and testing the setup refer respective tools website, forum or else search the internet for latest version installation details on your computer. If learner does not know how to download and install tools, he may ask help of any computer institute/college lab instructor or Internet Browsing centre people.

Another way to learn C tutorial is by using free online IDEs available over internet with limited capability. Visit them & know how to use them prior start reading further tutorial. Note that they need internet connection while code checking or running code.

Lastly just read the tutorial, as it comes with code and its output on terminal for reader information sake. Just grasp the idea and know how to use the C language effectively to write any kind of program.

Why Open Source tool for learning C language?

Open Source Family is having following advantages [take it with pinch of salt!]:

 

·         Tool is available freely, and you can modify it, dismantle it, study it, sell it without paying any royalty and needs no permission. That is, acquire an operating system at little or no apparent cost.

·         They have historic value, which is essential while learning any language.

·         They are good object for study

·         They support both Command Line Interface [CLI] and Graphical User Interface [GUI].

·         They support all programming concepts to bring in action.

The LINUX like environment [shell/command prompt] + GCC pair provides good set of Interpreter and compiler for study purpose. They have all the required qualities as mentioned above.

So learn C for fun, acquire knowledge and earn money!


Previous Page Main Contents Next Page

No comments:

Post a Comment