Java, C, C++: Top 18 Programming Languages for 2011
Java, C, C++: Top 18 Programming Languages for 2011
by Darryl K. Taft
Java continues to dominate the developer landscape as the No. 1 programming language in use today. It remains atop the TIOBE Index. According to Simply Hired, since April 2009, Java jobs increased 52 percent. With Oracle now the steward of Java and having shepherded two new Java Specifications Requests mapping out the next two versions of the language and platform—Java 7 and Java -the language is due for enhancements to "move Java forward," Oracle said. The language is used for a variety of things, including enterprise apps, as well as Web and mobile development.
C is one of the most popular languages ever. It is used as a systems programming language and also for applications—such as embedded systems applications. It ranks as the second most popular language on the TIOBE Index. According to Simply Hired, since April 2009, C jobs increased 11 percent.
C++ was developed as an enhancement of the C language (also at Bell Labs, where C itself came from) and was initially known as "C with Classes." It quickly became one of the most popular languages amongst developers. C++ is used for developing systems software, application software, device drivers, embedded software, high-performance server and client applications, and entertainment software such as video games. It ranks as No. 3 on the TIOBE Index. According to Simply Hired, since April 2009, C++ jobs decreased by 13 percent. However, because the pool of opportunities for C++ developers is so much greater than that for many less popular languages, it remains among the top languages developers seeking jobs.
Microsoft's C# was developed as a Java alternative and borrows from its predecessors: Java, C, C++ and Delphi—as it should, since Anders Hejlsberg, creator of C#, also created the Delphi programming environment while at Borland. Powered by Microsoft, C# has become very popular among developers and among Microsoft shops. It ranks as the No. 5 language on the TIOBE Index. According to Simply Hired, since April 2009, C# jobs increased 52 percent.
Perl is a high-level, general-purpose, interpreted, dynamic language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Perl ranks No. 9 on the TIOBE Index. According to Simply Hired, since April 2009, Perl jobs increased 33 percent.
PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML.PHP is a widely used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. It was originally designed to produce dynamic Web pages. PHP ranks as No. 4 on the TIOBE Index, According...
Visual Basic is the third-generation event-driven language and integrated development environment from Microsoft for its COM programming model. Microsoft designed VB to be relatively easy to learn and use, and it quickly became popular with developers, particularly those building departmental apps. VB ranks No. 7 on the TIOBE Index. According to Simply Hired, since April 2009, Visual Basic jobs increased 112 percent. VB is part of the Microsoft Visual Studio tool suite.
Python is a dynamic language that is used in a wide variety of application domains. Python is often compared to Tcl, Perl, Ruby, Scheme and Java. It enables developers to write code quickly. Python ranks No. 6 on the TIOBE Index. According to Simply Hired, since April 2009 Python jobs increased 69 percent.
Ruby is a dynamic, open-source language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. Ruby is catching on in the enterprise given the recent acquisition of Heroku, a Ruby and Rails app hosting/cloud service provider, by Salesforce.com. Ruby is No. 11 on the TIOBE Index. According to Simply Hired, since April 2009, Ruby jobs increased 78 percent.
Objective-C is a reflective, object-oriented language that adds Smalltalk-style messaging to the C programming language. It is used primarily on Apple's Mac OS X and iOS, two environments based on the OpenStep standard, though not compliant with it. Objective-C is the primary language used for Apple's Cocoa API, and was originally the main language on NeXT's NeXTSTEP OS. With the enormous popularity of the Apple platform, Objective-C is a good language to know. It ranks No. 8 on the TIOBE Index. According to Simply Hired, since April 2009 "Objective C" jobs increased 60 percent. However, a search for "Objective-C" showed a 207 percent increase.
Groovy is an agile and dynamic language for the Java Virtual Machine. It builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk. It can be used as a scripting language for the Java Platform. Supported by SpringSource, Groovy has a promising future among followers of the Spring platform.
Go is an open-source project to make programmers more productive. Go is expressive, concise, clean and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. With the power and might of Google behind it, Go should continue to gain popularity among developers.
Scala is a general-purpose language designed to express common programming patterns in a concise, elegant and type-safe way. It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive. The name "Scala" stands for "scalable language," signifying that it is designed to grow with the demands of its users.
Erlang is a general-purpose concurrent, garbage-collected language and runtime system. Erlang was designed by Ericsson and was originally a proprietary language within the company, but was released as open source in 1998. RabbitMQ, CouchDB and SimpleDB are three projects that use Erlang.
Clojure is a dynamic language that targets the Java Virtual Machine and the Microsoft Common Language Runtime. It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure compiles directly to JVM bytecode, yet remains completely dynamic. Clojure is a dialect of Lisp.
F# is a functional language out of Microsoft Research that is now part of the Visual Studio suite. It is a simple and pragmatic language, and has particular strengths in data-oriented programming, parallel I/O programming, parallel CPU programming, scripting and algorithmic development. Developers can access a huge .NET library and tools base and comes with a strong set of Visual Studio development tools. F# combines the advantages of typed functional programming with a high-quality, well-supported modern runtime system.