The C computer programming language is one of the earliest languages to emerge and was the prevalent language in programming for years. It was developed at Bell Labs in the early 1970s as a programming tool for the UNIX platform. Later it expanded into wide uses on many different systems including DOS, the precursor to Windows. It is no longer the language of choice for most new developments, it is still found in many older software programs and its design has been borrowed for many subsequent languages. Later versions of C evolved, including ANSI – which stands for American National Standards Institute. It was one of the initial efforts at standardizing computer language to create one base version that could provide basic functions on all operating systems.
C is the predecessor to C++, which is a predominant language for many of today’s current software products. While C++ is a derivative of C, its basic design is fundamentally different. C programming takes a task and breaks it into a series of subtasks. C++ is object-oriented programming, a concept that utilizes abstractions of physical objects that are assigned characteristics and functional behavior in order to construct programming behavior. A little like working with building blocks, rather than strings of computations. C++ is widely used today: a quick look through job postings for computer or software engineers almost always requests experience in C++.
To some degree, C has been bypassed by its object-oriented successor, C++. Computer professionals will debate anything including whether or not it is necessary to learn C in order to move on to C++. Assuming that you are interested in learning the art and science of programming, it is probably good to know something about its history as well. Moreover, C is not just confined to the history bin. Its design is mimicked by many software programs and it is also the basis for portions of some of today’s operating systems. The theory and design for C is probably a valuable underpinning for the computer programming student.
You can find online tutorials for C programming that present the course in narrative form. A better choice might be an online school or technical academy that offers courses in C and other basic programming languages. Online colleges provide course materials and in most cases, a surprising amount of communications capability with the institutions’ faculty. If you’ve got questions, there are answers out there for you.
Everest College has an online course in computer information systems. One of the components is programming theory and will undoubtedly incorporate some information on C. The database component of this program will illustrate an application built around C or one of its derivatives.
Capella University has a bachelor’s program in information technology that includes core courses in the fundamentals of software development. As the curriculum moves along, there are courses in database design and management, and object-oriented programming. In all of these courses, you will encounter C programming uses and C++ as well. It is difficult to find a course specifically dedicated to C because it has become a legacy program in the eyes of many. C programming retains its value for today’s programming student as a historical perspective and an early model for many of the current programming tools.