The most reasonable question you can ask when you start learning something is that why should I learn
this, why it is good for me and why it is better than the others to answer these questions.
I can tell you what features advantages Java has.
The first Java is a high level language, which means it is very close to natural English language,
simple and easy to learn.
If you understand the basic concepts of object oriented programming, then it is easy to get to advanced
level.
Second, it has been among the best programming languages for more than 20 years for a very good reason.
Third, it has massive enterprise usage, so easier to find a well-paid job.
As I mentioned before, most of the Fortune 500 companies are using Java.
Moving on to the next one.
Java community has over nine million developers.
If something goes wrong and you need to find an answer for your problem, this community can provide
a good support.
Also, Java is a strongly taught language, which means that you must define the types of almost every
data element in exchange.
It makes the code more understandable and robust.
Besides these, Java is also secure, more secure than most of the other programming languages.
Memory segments are not accessible and it has built in security code base.
As I mentioned before, Java is platform independent.
So you write your code once, then you can run it everywhere.
It is also portable, which is connected to the platform in dependency.
So the same code runs the same way on mobile, desktop or on tablet.
Another huge advantage is that it is used in Android development, so you don't need to learn a completely
new language to be able to write mobile apps next.
Very important point here is Java is frequently updated.
It has a lot of tools, libraries, frameworks.
In addition, it is an evolving language like real languages, and thus it has the unique ability to
combine innovation with stability and a code that was written way back during the beginnings of Java.
We are still run on today's machines and last Java has a lot of features from other languages, which
makes it easier to switch to other languages if you or your company decides to change.
All right.
Now let's move on to disadvantages.
Like any other programming languages, Java also has its own flaws.
Now, let's see, what are those?
So first, as I said, it is easy to learn Java, but it takes time to master it.
It has a lot of features, very useful frameworks and libraries.
Second one, Java has a longer runtime.
It is worse than C or C++, but it is still faster than Python.
Java is not the best in memory usage, so in case of a company, it might increase the hardware costs
and lost the main point.
Java is not a silver bullet.
Some things can be done much better with other languages.
For example, Python is much better in A.I. and data science in opposition.
Java is very good in web development.
For example, Spring Framework is the most commonly used framework for web development.
In conclusion, Java has its own flaws.
But I think it is the best programming language you can start with and its advantages overtake other
languages.
So that's it.
See you in the next lecture.