A Confused Java Programmer On Glasses, And Thinking Whether To Learn Java Or Python

Introduction To Java Programming language

Java programming language is an Oriented Programming language that is used on a wide range on the internet.

It is actually a high-level language that is easy to read and understand.

It can be used for mobile application, console, Graphic user-interface, making embedded systems and game development .

Java programming language has a wide range of uses as it can also be used in electronics like washing machines, air conditioners e.t.c

In fact, without Java there wouldn’t be  e-commerce or e-banking.

 

Content

 

  • History of Java Programming Language
  • Main Concepts In Java Programming Language
  • Pros And Cons Of Java
  • Could Python Overtake Java Programming Language?
  • Conclusion

 

 

 

History Of Java Programming Language

 

Java is a computer based programming language that it’s history dates back to 1991,

As Java was invented by James Gosling and Sun Micro Systems in 1991.

 

An Image Of The Founder Of Java Programming Language, James Gosling.

Image Source: TalkAndroid

 

James Gosling’s aim while creating Java programming language was “write once and run anywhere”.

This actually means right from the history of java,

 it’s aim is to be written only once, but it can actually be used anywhere.

Java’s original name was “Oak” and it was named because of an Oak tree outside Gosling’s office. 

Later the name was changed to “Green”  and then “Java Coffee” , which was actually named after the coffee from Indonesia.

Finally, the name was changed to Java in 1995

Since the history of java programming language there are actually three editions of Java,

These editions are used based on the application a programmer wants to make while working on a program.

Firstly, we have Java Standard Edition, this first edition of Java actually contains core libraries like java.util, java.lang e.t.c.

Secondly, we have Java Enterprising Edition, this edition actually have APIs like JSPs,JMS Servlets e.t.c

Lastly, we have Java Micro Edition, this is actually used to program Java in hand-held,cellphones e.t.c

Java is actually an Object Oriented programming OOP based on C and  C++

Java is actually improved and simplified to solve the errors in Programming. 

The entire Java codes is run on the  Java Virtual Machine which provides a run time environment.

Compilation in Java happens on byte code as it is platform Independent.

 

 

Main Concepts In Java Programming Language

 

  • Methods 
  • Classes

 

Methods

A method can actually be defined as a block of code that performs a task only when it is called.

For example on your mobile phone you play any song you want only when you click a musical application,

on your phone like Boomplay, your phone won’t do this for you. This is the same with methods. 

A method in Java programming language can actually be used to convert kilometers to meters e.t.c

 

Class

A group of methods actually makes a class.

classes are used to organize codes the same way products in a grocery shop are organized in different sections.

 

 

 

Pros And Cons Of Java

 

Pros

 

1. Maturity:

 

It has been available for some decades now with a huge community and notably being backed by Oracle.

And Java is up to date with features of competing languages like Kotlin.

This means when newer language like Kotlin brings a new feature, Java creates something similar.

Frameworks and Libraries of Java have been well tested, this means Java is not fading away anytime soon.

 

 

2. Platform Independent: 

 

We believe you know the famous saying in Java which says ” write it once or write it anywhere”.

Java actually runs on top of a virtual machine called Java Virtual Machine 

This means as long as JVM is installed on a machine you can actually run Java codes.

Which means when you write a Java code on a windows machine, 

You can take that same code and work with it on Linux  or Mac.

And technically, you don’t need the original source code.

 

 

3. Java Embraces Object Oriented Programming OOP

 

Java is actually a rebuild of C++.it’s important to understand, classes in C++ is a bit weird,

because it was never meant for C++. 

In essence C++ was built without classes in mind.

Unlike C++, classes was created in mind with Java, everything is an object and it’s just a more cleaner implementation.

And this allows developers to easily reuse objects in thier programs and it helps with maintainance.

We suggest you check out our article on: A Beginner’s Guide To Object Oriented programming OOPto understand better.

 

 

 

4. Automated Memory Management:

You might not see this as a big deal, especially if you code with Python.if you code with Python.

But this means, if your program is running you might need extra memory.

And programming languages like C and C++ once you done with the memory, you need to deallocate the space back.

And doing this will cost a lot of memory leaks in your program. 

But in Java there is something called a Garbage collector and it automatically deallocate that for you.

 

 

Cons

 

1. Verbose:

Java is a very verbose language, this actually means you have to write a lot of code to do a little.

Most languages like Python is pretty much straightforward and someone reading your code is able to know what you doing.

But with Java, this is not case, as the codes is mostly cluttered and harder to read.

Most programmers familiar with Java might not see this as a big deal anymore,

but when you write Java codes everyday, 

you will get to understand it is a big deal especially when you compare to Python.

 

 

 

2.Java Is A Very Slow Language:

 

We believe you remember, when we talked about “JVM” . Well, most virtual operating system runs on other operating system.

And the further away the software is from the hardware,

the slower the performance. Unlike Java, C++ is very close to the hardware. 

If you need real time operations like online gaming

then,Java is not going to be the best option, as it is very slow.

Although Java is a high performance language than both C++ and C .

But you wouldn’t want to use it to make games like Mortal Kombat,

Instead you use C++ like we discussed in this article: Learn C++ Programming Online For Beginners ?- In Depth Analysis

The most annoying thing is when the garbage collector runs, your entire program suspends for a fraction of a second,

but if you calculate each fraction of second on a long project,

you will get to understand you losing minutes if not hours.

 

3. Losing Popularity:

Java is a programming language that is slowly losing popularity,

 and such loss would be very visible in the next few years or end of this decade. 

This is because android applications that is well known to use Java for it’s development, now programmers uses Kotlin .

According to a survey in Stackoverflow, in 2017, it was the 3rd most popular language but in 2021,it went down to 5th. See image below

An Image Of Stackoverflow survey of programming languages in 2021

Image Source: Stackoverflow

 

 

Could Python Overtake Java Programming Language?

 

Firstly, the largest open-source community in the world, GitHub

GitHub actually comes out with its ranking of the most popular programming languages each year.

An An Image Of GitHub Ranking Showing Python Is More Popular Than Java

Image Source: GitHub

 

And the most recent result shows Python is now more popular than Java programing language 

We believe the reason why Python is getting popular is,

because the founder of Python Guido Van Rossum who created the language in 1991, 

created Python because he wanted developers to write fewer codes to express the same functions,

compared to languages like Java and C. 

But, it’s important to understand that the best of all other Object Oriented Programming Language OOP must be included in Java.

Secondly, if you looked at the Stackoverflow survey for programming languages in 2021, you can easily see Python Overtake Java programming.

 

Conclusion

 

When it comes to Java, it depends on what you getting into whether a beginner,

or an experienced developer trying something new. Because overall, 

We believe Java is a good Programming especially because of it’s tested Frameworks and Libraries and large online community.

Lastly, Even though Python overtake Java programming language,it is backed by a big company, Oracle.

 

You can also check out:Top Mistakes To  Avoid As A Beginner Web Developer-With Updated Solutions 

Or

you can check out: Best Programming Languages For Freelancing- With In Depth Analysis

 

Spread the love
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments