Skip to content

larioj/languages

Repository files navigation

Languages

C

I have most experience with C. In my opinion it is a very nice language. It is simple and powerful. My only beef with it is that it has no real support for generics. You can do pseudo-template stuff with the preprocessor but it gets bloated quickly. Also no overloading so function names tend to be less than obvious. The biggest advantage of C is that it doesn't hide too many things from you. The name of the game is performance and control.

The thing that I like best about C is that it is not a general purpose language, or at least it doesn't attempt to do everything and fall miserably short of its goal.

When do I use it?

Building operating systems, and small programs/algorithms where performance is critical.

When not to use it?

Input! Taking input in C is difficult if done correctly.

C++

Despite its name, I don't think C++ is very much like C. It inherits a lot of the syntax, but so do Java and other languages. The memory management model seems powerful, but pays for it by increasing complexity. Actually, an appropriate generalization of C++ is that it pays for everything with increases in complexity. Because of this it isn't very suitable for well structured small to medium sized projects.

My biggest issue with C++ is that it's a mammoth. It has accumulated a lot of elements throughout the years, and its difficult to know what does what, or what exactly each construct costs. It is also difficult to learn, and dealing with templates is less than friendly. The documentation is cryptic.

When do I use it?

When I need C performance but I'd like the object abstraction. Basically big, performance-critical programs.

When not to use it?

When there is something simpler that will get the job done.

Java

Opinion

Not bad.

When to use it?

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published