SERVICES - Software Training

C,C++      Java      SAS      .NET      Unix Administration      Data wareHousing      SQL

C, C++
Why Learn C?
There are an awful lot of programming languages available right now -- everything from the extremely high level (such as Visual Basic) to the low level power of assembly, and a good variety of specialized options in between (Perl, Ruby, and Python are good choices for many tasks). Java has also become quite the hot programming language for some tasks, in part because of its large API and in part because the virtual machine provides some elements of security.

Nevertheless, there are some good reasons to learn to program in C. First, age has its advantages: C has been around for 30 years, and there is a ton of source code available. This means there's a lot to learn from, and a lot to use. Moreover, many of the issues with the language have been clearly elucidated -- it's well understood, and you can find a lot of tutorials available. Plus, with C, you get lots of strong opinions mixed with insights that you can understand.

As a result of its age and its use as the language of system programming for Unix, C has become something of the lingua franca of programming. C is a great language for expressing common ideas in programming in a way that most people are comfortable with. Moreover, a lot of the principles used in C -- for instance, argc and argv for command line parameters, as well as loop constructs and variable types -- will show up in a lot of other languages you learn so you'll be able to talk to people even if they don't know C in a way that's common to both of you.

Third, C is reasonably close to the machine. When you're working with pointers, bytes, and individual bits, things like optimization techniques start to make a lot more sense. There's also utility in knowing exactly how something works underneath the hood -- this helps a great deal when something you're trying to do in a higher level language seems way slower than expected, or just doesn't work at all. You also tend to get a better picture of advanced topics like exactly how networking works. A higher level language will make it a little bit simpler, but it'll be harder to understand what's going on, and when things stop working, it's much better to know exactly what's going on so you can fix it. Additionally, if you like computer science as a discipline, or just like knowing how things work learning the details of the system is great fun.

In fact, a lot of fun programming is done in C -- for instance, system software and data managers such as Berkeley DB. If you want to be able to do more than write a simple web app, C is a great language. If you want to write a great, fast game, C is again a great choice. You can write an entire OS in C. It'll be much harder to do so in Java, and nearly impossible in a scripting language. And the language, being succinct as C is, will probably make your fun program more elegant looking to boot.

What is C++?
C++ is a programming language. It literally means "increased C", reflecting its nature as an evolution of the C language.

Is it necessary to already know another programming language before learning C++? Not necessarily. C++ is a simple and clear language in its expressions. It is true that a piece of code written with C++ may be seen by a stranger of programming a bit more cryptic than some other languages due to the intensive use of special characters ({}[]*&!|...), but once one knows the meaning of such characters it can be even more schematic and clear than other languages that rely more on English words.

Also, the simplification of the input/output interface of C++ in comparison to C and the incorporation of the standard template library in the language, makes the communication and manipulation of data in a program written in C++ as simple as in other languages, without losing the power it offers.

How can I learn C++?
There are many ways. Depending on the time you have and your preferences. The language is taught in many types of academic forms throughout the world, and can also be learnt by oneself with the help of tutorials and books. The documentation section of this Website contains an online tutorial to help you achieve the objective of learning this language.

What is OOP: Object-oriented programming? It is a programming model that treats programming from a perspective where each component is considered an object, with its own properties and methods, replacing or complementing structured programming paradigm, where the focus was on procedures and parameters.

Is C++ a proprietary language?
No. No one owns the C++ language. Anyone can use the language royalty-free.

What is ANSI-C++?
ANSI-C++ is the name by which the international ANSI/ISO standard for the C++ language is known. But before this standard was published, C++ was already widely used and therefore there is a lot of code out there written in pre-standard C++. Referring to ANSI-C++ explicitly differenciates it from pre-standard C++ code, which is incompatible in some ways.

How can I make windowed programs?
You need a C++ compiler that can link code for your windowing environment (Windows, XWindow, MacOS, ...). Windowed programs do not generally use the console to communicate with the user. They use a set of functions or classes to manipulate windows instead, which are specific to each environment. Anyway the same principles apply both for console and windowed programs, except for communicating with the user.

What is Visual C++? And what does "visual programming" mean?
Visual C++ is the name of a C++ compiler with an integrated environment from Microsoft. It includes special tools that simplify the development of large applications as well as specific libraries that improve productivity. The use of these tools is generally known as visual programming. Other manufacturers also develop these types of tools and libraries, like Borland C++, Visual Age, etc...

Course contents:
C – Topics:

  • Introduction to C and its basic structure
  • Data Types in C, tokens, variables
  • Control Structures
  • Functions & Pointers
  • Strings and Arrays
  • Structures and Unions
  • File Management in C
  • Graphics using C
  • Project in C


C++ - Topics:
  • Introduction to C ++
  • Basic Knowledge of Object Oriented Programming System(OOPS)
  • Objects and Memory
  • Data Encapsulation and Abstraction
  • Inheritance, Virtual Methods, and Polymorphism
  • Streams and File I/O
  • Preprocessor directives
  • Operator Overloading
  • Assertions / Exceptions
  • Macros
  • Project in C ++


Careers:
  • C is going strong in the embedded/systems space.
  • C++hre and there, though has largely been replaced by Java or .NET stuff.
  • C is still going strong in the embedded/systems space.
  • C++ lingers here and there, though has largely been replaced by java or .NET stuff.
  • C++ is also still used a lot for Windows programming by software companies and on Unix.
  • C++ is the dominant language of game programming