Rupam Jha
JavaMadeTranquil
Published in
3 min readSep 27, 2020

--

lets keep our knowledge’s root stronger!

…Why Java !

Hello Comrades,

In the coming decades we will be teaching programming just like reading and writing… and wondering why we didn't do it sooner! But as the saying goes “Its never too late to be what you might have been!”

…to begin with ! Just make sure you, as an individual are aware of one fact, for why should you understand any programming language? The mindset you create today, while starting your journey into the Computer Programming is very important, as it is going to be the driving force towards your goal of excelling in Computer Programming!

So let us analyse and understand why are we boarding onto this journey of learning any programming language, take a pause from this article and analyse why you want to be one among the million aspirants who wish to excel in Programming… It can be any reason… be it that your interested in creating an application that helps your parent keep a track record of their Sugar levels every month or be it a GUI fascinating your little siblings help learn mathematics or be just a meme generator as per the weather forecast in your location, you name it… and its all achievable…. This goal, passion and determination is what will keep you driven in this never ending journey of learning programming!

So now that you know what it is that you want to create in this programming world, lets begin to dive deep into why we choose Java over rest of the languages !

This Core Java tutorial is designed for beginners as well as intermittent level programmers. It will help you understand and acquire a good knowledge and clarity on every concept of Java as a programming language.

Commencing with the facts to be known about Java, lets understand some characteristics that make Java an user friendly language.

  • As many a times you would have come across the terminology of Java being an Object Oriented Programming language[OOPs]. Well, what it actually means is that Java as a programming language is organized around objects and data rather than functions and logic. Making it further more simpler for you folks, OOP certainly is inclined towards the object that the developers would manipulate rather than the logic needed to manipulate them. It serves various benefits such as re-usability of Code, scalability and efficiency.
  • Adding to your general awareness, Simula was the first ever Object Oriented Programming language this Programming world could witness. Although today we have many Object Oriented Programming languages in market such as C++, Java, JavaScript, Python, Ruby, Scala, PHP; Java certainly better in its own ways.
  • Java is a Platform independent programming language, i.e. you can run the code on all the available Operating Systems with respect to its development and compilations done. To elaborate on this, when we install a Java Development Kit [JDK] into our Systems, implicitly Java Virtual Machine [JVM] is also installed. For every Operating System we have a separate JVM which is capable to read the bytecodes [.class files]. Now when we compile our code, a bytecode is generated by our javac compiler, which is further processed to JVM. Every Operating System has its own JVM , thereby making JVM platform dependent. Java then recognizes the platform it is running the code on and converts these bytecodes to the native machine code; making a Java program run on any platform.

SourceCode →Compiler →ByteCode → JVM →NativeMachineCode

  • Java is simple, robust, secure and Architecture neutral, meaning that Java uses a strong memory management[will cover in detail in upcoming post]. Unlike C++ , Java does not support pointers, hence avoiding the security problems. Java becomes an architecture neutral language by not having any implementation dependent features, for eg. the size of the primitive data types remains fixed, Unlike C where int data type occupies 2 bytes of memory for a 32-bit architecture and 4 bytes in a 64-bit architecture.
  • Java supports multi threading , i.e. we can perform many tasks simultaneously, thus allowing us to develop interactive applications.
  • Java with the use of Just In Time Compiler enables a high performance. It is considered to be more dynamic than C/ C++ as it can carry out an extensive amount of run-time information.

That’s it on this article. Lets tighten our shoelaces to be on board all set to be the best versions of programmers we can be!

Peace out!

Rupam Pawan Jha

--

--

Rupam Jha
JavaMadeTranquil

DevOps Engineer. Automation Enthusiast. Sharing my experiences on CI/CD, Docker, Kubernetes, and IaC.