Is Java Still Worth Learning in 2022?
Вставка
- Опубліковано 3 гру 2024
- Get your free 1st month of JetBrains Academy: jb.gg/academy/...
Complete the 1st stage of your project to receive your 2nd month free!
Complete your 1st project within this time to receive your 3rd month free!
-----------------------------------------------------------------------------------
Instagram: / keep_on_coding
Discord: / discord
Become a Member: www.youtube.co...
My Gear: amazon.com/sho...
-----------------------------------------------------------------------------------
CodeJams is out on all major streaming platforms!
Spotify - bit.ly/CodeJam...
Apple Music - bit.ly/CodeJam...
UA-cam - bit.ly/CodeJam...
Amazon Music - bit.ly/CodeJam...
-----------------------------------------------------------------------------------
#keeponcoding #tech #programming
Get your free 1st month of JetBrains Academy: jb.gg/academy/keep_on_coding
Shouldn’t you pin this comment so more people see it?
I'm in early stages of the Java Developer track and really like it so far. Lots of projects to choose from with different levels of difficulty. *Not* code-along style. Projects are broken up into several steps, and each step starts with a requirements document. There are a series of prerequisite lessons that teach you the things you need to complete the step, and you code your solution however you want based on what you've learned from the lessons. At the end, you have to pass all the provided unit tests to test your code meets all the requirements. You end up with an working application that's 100% your own code from your own brain (for better or worse).
Can you promote my VSCode extension? And what's the price?
How long before the coupon expires?
Sir I completed my college and learn jdk11 what should i do now
So as an aspiring Software DEveloper, I "learned" syntax and basic things from these languages: HTML CSS Python Kotlin C#. That being said I started looking for work and 4/5 job posts were specifically labeled as "Jr. Java Developer". Java is already running the world, that means companies would need to spend a whole lot of money to have everything rewritten in another language. Java isnt going anywhere. If you are like me and just starting out and have basic languages under ur belt, just learn Java. The Job market quadruples if you can write in Java.
Perfect!
Thanks for ur advice bro
Why did you learn HTML CSS but ignore JavaScript?
@@ponalvsiki2254 Good question. I'd like to hear this guy's answer as well.
@@jathebest2835 yeah. Front end is getting more complex and needs more devs than Java.
Learning Java, as someone who didn't know what OOP even was, was a great way to at least learn what it is, and looking at experienced Java developers' code and understanding it helped me understand how to use classes and methods efficiently.
Whilst java is a great language, oracle is possibly one of the worst companies.
Preach, bro. Was much better in the hands of Sun.
Nestle : hold my beer
@BabylonianDynamics not everyone is a native english speaker
@BabylonianDynamics idk lol, if it annoys u too much I can edit the comment
openjdk: bro
I Am writing Java for 10 years. 10 years I hear "java is going to die soon". And after 10 years, not only it didn't die but recently EU made java with spring boot it's official language (with reactjs on front) .
react is a cesspool
@@IvnSoft lol🤣🤣
actually java is so big and vast so its take time to die🤣🤣
Let haters in their stupidness ,java is not just a language but a ecosystem ,java is first in anaytics,1frst in Big data ,3d in artificial ,frst in Cloud ,first in industries ,java is the best one which has innvated in the two last decades
Java cannot die.
I hope so. I have already spent 3+ years developing in Java. Java was the first language my University taught us. I have used many other languages since such as python, html, javascript, C, etc. Still enjoy developing in java better than any other language I have tried thus far. Mainly because java has such good testing options and is not overly convoluted or complex like the C language for instance. The Java language just seems to click with me (probably because I have written most of my code in Java)
Java was the first language I was taught too (when I did CS as a secondary subject in the first two years of my maths degree). However the maths department taught us Maple, Matlab, and R. Array languages, especially ones with a REPL, make the kind of numerical work I do so much easier, and nowadays I tend to use just R or Julia. The only time I've really used Java since university was when I wanted to learn a bit of game programming, and the tutorial used Java. That said, I do know people who built a Bayesian framework for doing genetics and epidemiology in Java (called "BEAST"), so it does find some use in a mathematical context.
Exactly. Java just seems to click with me. Everything about it, its syntax, its flow, everything just makes sense and feels natural. I've tried other languages like Python, Javascript, Go, C#, C, C++ and most of them felt a bit **off**. C is way too manual, javascript initially seems easy but later on can get really convoluted with callbacks, and prototypes and a bunch of other things, c++ doesn't have automatic memory management, and Python feels like its abstracting almost too much away from me, c# feels nice though but it doesn't have tooling on the same level as Java...
Java is perfect for me.
Java is still widely used in enterprise. I’ve just started a job where the company’s existing platform is built in Java
exactly, java is not going anywhere. corporations are not going to restructure & rewrite 100's of billions of lines of code, just to change to Kotlin.
Because in the last decade, people have been jumping around language to language. corporations can NOT run that risk of jumping around like that,
when they have Billions of dollars on the line......
@@TwstedTV exactly, is like in my country, the banks works over Cobol that is older than Java and runs over mainframes, and the banks don't have the intention to rewrite to another language, the banks hire you and they teach you Cobol with the porpouse all the systems still working, things like that will happen with Java.
@@joseantoni034 😶😳Cobol for banking app...
I don't know Cobol, but even though such a old lang. Might have many vul. Right?
How can they put there customers at risk???
@@vaisakh_km they're not putting customers at risk, this is a false assumption. Mainfraimes are very well secured
@@vaisakh_km like Andy said, mainframes are well secure, and the main app on Cobol is like the core, not all the apps are code with Cobol, a teacher told us that is a strong language for these purpose.
I learnt the theory of programming with Java. It's a great start-up language. Now my knowledge is transferable to many languages. So if you are looking to start programming, find a language, put the theory into practice with that language and you should be okay.
Don't ever sleep on it. Java will still be running in the next 20 years. Most of the successful infrastructures and services that makes our life better was developed and being developed with Java.
and then replaced with nodeJS
Bro, I'm from 2030. It's still worth learning now.
I'm from 2030 and now robots do Coding for us, we just need to give algorithms to them
@@my_j.a.r.v.i.s. Have you seen "Back to the Future" , by that logic we should be having robots do everything for us by now
Variant!
Oh really? did you use Java to program your time machine?
Nepali bhaye pachi guff ta dina pari halyo ni ;)
Just a couple of things: 1) in Java not everthyng is an object: there are also primitives; b) Java is slower compared to C, but faster compared to Phyton: but there are very few applications where the better performance of C is really needed.
Aren’t compiled languages always faster because they’re directly translated BEFORE being ran vs translated AS it’s running?
@@thedumbestdoge881 Java is in the middle since it compiles to an intermediate representation which is then interpreted or in modern implementations it uses a JIT compiler .
Actually where performance matters Python is faster than Java, because it can fall back to C Implementations as it has a C compatible FFI
The same isnt nearly as easy for Java or other JVM applications.
Thats the very reason Python is used for Scientific computing and also btw why Java is horrible for proper 3D games.
Also often it's less about the Performance of the code as it's performance reliability, as well as the needs for the runtime environment.
Even Go, which is a good bit faster than Java, has similar issues because of its Garbage collector.
And Java just isn't ever going to be a real thing for embedded programming where the JVMs requirements and memory hunger is problematic. That btw is also a thing for Python, Micropython is okay for beginner projects and some tinkering but real products will always use something else with a very slim runtime.
@snow Is it slow though? Applications are faster than ever regardless of the language. We’ve made such huge bounds in hardware that companies can justify the use of more abstract languages which ultimately leads to a quicker development process ($$$)
The Java code at 6:06 would not run. the parameter past into the reverse method is called "str" but in the for loop they use a variable called "hello" which is not defined. Also StringBuilder has a reverse method, so you don't need the for loop at all. The Java example is over complicated. I could write this with 6 lines of code and it would be readable. Still 4 lines more than python though
hahaha yeah
Bro, I was literally thinking about this last night as a beginner, thank you.
I'm not a Java programmer but I still think it is a great first language to learn for programmers. Once you get competent at Java you can move into any language easily.
Nah, python is easier than java and the mindset of it can help you branch out to c# or c++ or even java
The fact that you can make bots or arduinos with it makes it useful as hell
@@deadpopcorn8523 Nah Java is good training for the beginner better than python. Python is easier and gets you thinking about concepts like OOPS right away.
@@funguy29 I started with Java and to be honest I think that it's a better choice for beginners. Having to be so explicit about types/classes keeps you accountable and makes it easier to debug. Also I think it being a bit more cumbersome than Python in some aspects can make you a better programmer in the end since Python just makes everything a bit too easy/magical, so when jumping to C or C++ is harder with Python imo. C# is very very similar in the surface, in my internship I started a c# project and I swear I had never used c# and just started writing in it using intellisense and my knowledge from Java hahaahha.
I think C++ should be the last language to learn, it's amazing but very complicated.
I don't understand the complaints about Java code being verbose, most of this tedious code is automatically generated by IDEs nowadays.
@@nicolascossio5961 Agreed. Couldnt have said it better.
@@deadpopcorn8523 just because its easier it doesnt mean its the better option. If you know java, you can learn python in like a week.
If you know python, it will take you a while to learn java
Java is so pleasant to work with. There is everything u can think of built in, its ridiculous and my lazyass loves it
Java with spring, I think the spring layer really brings along some nice abstractions and makes it easier to build applications using Java
yep, java without spring is just futile in entreprise world nowadays. Thank you spring(boot).
Log4j is awesome to create ramsomwares that can't be fixed for now...
I love Java, Please could you teach me the nuances of The Spring Framework .
no doubt the spring architecture is nice but what about so much boilerplate that java induces and it also derived from ruby on rails framework which first introduced the concept of MVC
6:15 Java is not slow. **Disclaimer**, I program in embedded C for ARM cortex M3 (specifically the STM32F103RCT6 chip), and not much more. I am a hobbyist and not a professional so take this with a grain of salt.
Java requires a runtime (written in C/C++) and is simply too large and too much overhead for effective embedded solutions. Embedded C is unbelievably faster than Java could ever be on an embedded chip. It compiles to straight machine code, and you really have to understand the chip's core architecture to program it properly (don't avoid malloc. Use it properly)
When used, encapsulated within an operating system, Java is actually wicked fast. Way faster than VB or Python. The JDK has so many libraries and tools, it's really amazing to use. I hate the "everything is an object" style of Java but I refuse to discredit it by calling it slow.
At work I don't have a C or C++ compiler, so I am forced to use Java to perform tasks. There's no feasible argument over Java VS C when it comes to speed, but Java is by no means a slow language. It has a huge developer toolkit, it is counterintuitive to write with but easy to understand (coming from C), and aside from embedded it is ultra portable. I'd argue it is the absolute fastest portable language.
Java will never go away until it is replaced by another ultra portable, faster, and easier to use language. Anybody who understands compilers and languages will most likely agree that it is not possible as long as computer architecture remains the same.
All that being said, Java is used on x86 arch and I only really know RISC stuff so I might be completely wrong, but I wholeheartedly think at this time that Java is here to stay and can't really be replaced.
Java will always be a important part of coding and in back-end Java is outstanding (Maybe that´s because i´m javadeveloper) but it´s also a good start for anyone is pretty easy to learn the concept of Java and when you know it then the world is open for you, you can easy and quick learn Rust, Ruby, Python, Kotlin and so on. You forgot in the video the "DRY"(Don´t repeat yourself) where you use classes and heritage with superclasses and subclasses. So a clean code is important in all coding but in Java you will learn this from the beginning. But i liked the video :)
Java is my favourite programming language
no
Nice , but nowadays I hear people talk a lot about Go Lang, any comments on it .
same here, screw Go its trash
why? any specific reason or just coz its the first language you learnt?
@@Mersal-uj5nh You can ask me whatever you want about Golang. Overall, Golang is very behind Java.
Glad to hear what the comments said below. I just started learning Java weeks ago as the Python course of my school are full and am annoyed to write so many codes to do so few things. Yet, after hearing you guys said I feel more comfortable.
if you want to get into other languages like c,c++,c# etc java is better to start of with as things like if(condition1)
{dosomething;} will already be familiar to you so your knowledge is more universal compared to python which whilst beeing easier to start with is harder to transfer to other languages
Reversing a string in java, even using a StringBuilder looks like this:
class Main {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder("Hello world");
System.out.println(sb.reverse());
}
}
So I don't know why you showed that example
@@jaredroussel chicken scratch ghetto LMAO :D
Yeah he said it was an exagerrated form
this is kind of an unfair example though, in a real application you would not have to create a class Main, every time so in reality the code needed to reverse a string is just:
String reversed = new StringBuilder("Hello world").reverse()
Which is not that bad
yeah they always use this example to compare java and python. But lets ask them to refactor variable name in a 1 million line codebase. I bet java and intellij will have a field day compared to python and any smart IDE(pycharm, vscode or any other paid ones as well).
@@blasttrash I didn't understand, which IDE would be better at refactoring?
The graph at 5:19 is comparing language use by all users on the left to language use by professional developers on the right.
Java being my first language really helped me understand programming and now I can learn any language with ease.
For new programmers, Java is more of a medimum than the destination. It helps to smooth the learning curve from Python to C++/Go or whatever.
I wouldn't compare C++ and Go, there's a world of difference between the two, and Go lacks a lot of feature you won't find outside other Enterprise supported languages like Java, here I'm thinking transaction management, support for various types of callstacks like older SOAP Webservices and so forth.
Go is great for almost all situations. C++ with a competent coder or team is also great for enterprise.
Ok, Great topic! I agree with the strengths and flaws of JAVA. It's difficult , nowadays, to understand why a languaje get used and rise in popularity. Of course the people backing them it's important, support for multiple platforms it's a factor, but what I think account more for that is the shape of the learning curve. Seems to be that the learning curve of python it's really fast compared to C# or JAVA. Kotlin and Go also are advertised as lean languajes, but we all know for experience that when doing something real, the amount of code will pile up like crazy in any languaje. said this, I'm still undicided on weather I should learn JAVA, comming from C#, I better join a JavaScript based stack like Node.Js.
I work with Java since 2001. Got an SCJP in 2004 and have worked for many companies like IBM, Accenture, Santander Bank, etc and well... Java for sure is one of the main languages and platforms to learn and invest your time/money for sure.
how much are you making per year?
i am not a coder or anything, but I have studied programming theory and fundamentals, and everything he
explained makes sense to me. basically he went down the basics that a book taught me to help people
understand the scope of programming languages and programming altogether.
I build java videogames on my channel. It is one of the best languages to learn in my opinion. I learned it when I was 14 and my college taught it for their CS degree. I got credited/skipped many of these classes because I was so far ahead and knew everything already because Java taught me when I was young.
6:15 "Java is pretty slow"
So are Python and JavaScript, which have gained more popularity than Java. And Kotlin, which also runs on JVM (not talking about Kotlin native).
Python is the king of slowness among the big languages. Java is good for high speed performance. C/C++ is the fastest.
@@akin242002 Actually, Python can be fast when you need it - since you can easily write C/C++ extensions. Numpy is a good example of this. Working with numpy arrays in Python is likely going to give you better performance than Java/JavaScript etc.
Java was slow more than 10years ago. Nowadays it’s 1.5 times slower than cpp on average. Python is 20 times slower than cpp.
@@tobiasbergkvist4520 you can also write native c/cpp and use it from Java - but is it Java programming?
speed is not the only factor to make one lang superior to other
Learning Java right now! I will say it can be tedious but after doing a small python class Java seems like a better starting point. I can learn the logic in Java and later can pick up other languages easier it seems!
did you learn java?
@@gawk494 yes
@@adrothemaster1568 was it your first language? and where did you learn from
@@gawk494 yes first language and now graduating from a boot camp. cydeo teaches java, selenium, cucumber, sql, jdbc, restapi, apachipoi. good school and well priced!!!
Guys what is the best platform for Core java that teaches concepts through coding problems?
what is it actually used for?
Simple answer: yes. Many businesses use it. It has powerful frameworks that connect in with it. If you know C# it is similar.
You should've mentioned abstract classes and single-inheritance as pros. These are very powerful features that are not fully appreciated by many people. Java can also be compiled for a hardware target. Java is good for DB connectivity and has lots of solutions for persistence. It's good for server-side tasks like web-services with the use of Tomcat.
Thanks for the free trial. Just the resource I was looking for learning JAVA
6:08 for that a little change to StringUtils would do the job, so I guess constant updates would help Java in that problem
Bro I lost it on the you vs the guy she tells you not to worry about meme lmfao.
The java code on 6:08 is wrong, variable hello in reverseString method is undefined and should be str
I've never encountered an "operating" performance problem in Java, the difference to C++ everyone is always comparing is within few percents. And in this range, it is just cheaper to either add native C++ routines for critical parts (very common), or just buy 10% faster hardware. Though I myself, even though Java was my first language 15 years ago, am drifting away from it. When I first seriously touched Python like 5 years ago, I can just never go back to that verboseness, which I ironically found as an advantage a long time ago. This is, what discourages me from catching up with all the new features (and lots of my friends too) - I just cant imagine myself to write all that stuff again to express simple things. Even though I find a Java ecosystem a lot more enterprise-ready than the Python one.
6:07 Couldn’t you just pass the string as a parameter of the StringBuilder, call the reverse() and toString() methods and return that?
Exactly what I thought. But i think the idea was to show how much extra code has to be written to do a simple task.
@@aaqibjavedz2569 Thought so, I’m just a coding nerd :)
A language that improves gradually and withstands the test of time. so yeah. Plus Java/Spring/IntelliJ is a match made in heaven.
Amen to that!
6:08 verbosity of Java is quite exaggerated in this example. This code below reverses a string in java.
public class Main {
public static void main(String[] args) {
System.out.println(new StringBuilder("Hello, World!").reverse().toString());
}
Granted it's more verbose than the python alternative but I would argue it makes it easier to understand. It's very clear from reading it that that we are building a new string using StringBuilder, reversing it using reverse() and converting it to String using toString(). With python, it's hard to parse out what's happening with hello[::-1] if you don't know python.
HTML/CSS in a top programming languages...
It's THE top programming language
For web development not software development
@@maruf7956 html/css aren't programming languages
Exactly, dude
These are my favorite languages, i hacked google with them 😎
this is the EXACT video I needed
thanks a lot!
I think you accidentally said that "embraces OOP" and "garbage collector" are good things.
Embraces OOP
1. Allows people to write bad OO-code easily
2. Promises re-usability but never delivers. OOP reusability needs to be earned, so components are basically just as reusable as in C (at best).
GC
1. Says programmers to stop worrying about memory leaks, just causes people not think about ownership of their objects (which means bad OOP-code)
2. Releasing dynamic memory still needs to be done typically somehow(you stop referencing to it)
3. If you need to release memory, you just need to hope that GC will do it.
4. Inability to write destructor is maddening, but having GC prevents this
5. Reusing resources is really difficult, though, as we already threw any hope for performance out, perhaps this is moot point.
But gotta say, I really like Java virtual machine. If you are not allowed to distribute your source code and want to run on multiple platforms easily, Java might be way to go.
This why Rust is better.
actually...why did you stop making java tutorials?!
C++ is better when it's used like C with classes.
Well... yeah...
I mean, it's better than it would be if you wrote straight C++ style code for some implementations, but it isn't better than any given coding language. I would say that it utterly depends on need. I use C++ in my C-style code specifically to enable encapsulation and to make altering multiple important values easier.
I mean it really depends. Java has the garbage collector which makes it a better introduction to coding and leads to less memory leaks.
@@alexmehta6070 you could make a good argument for C++ being a better intro because of just how hard it is to use. It really does make everything else easier
@@ITSecurityNerd ah yes you want to learn how to solve integrals before addition. Yes it makes things easier if you actually end up understanding before you give up.
java is the leader in enterprise, spring cloud is the base for micro-service, one of the most used architecture currently, and spring is powerfull and easy to learn, this is like a, is php dying, is ruby on rails dying
I just discovered you
He has good content
@@userpiero5359 Yea
Can people stop saying Java is slow. Please. We have an awesome JIT compiler with years of work put into it and even graalvm-nativeimage now. Yes, it's slower than C, obviously, but stop saying it's slow. You can easily make games with it or whatever you want.
Java is evergreen 🌲
It is worth learning if you’re watching this now, they are approaching a more data oriented programming design where they try to use for instance Optional in standard libraries more and more. Additionally in the light of several projects such as loom and valhalla which aim to increase performance for Java systems by allowing developers to use “light weight”-usermode threads for instance. Yes the drawbacks of Java is its garbage collector from time to time as well as nullability. However the language is still used so it might be worth to take a look at :3
java/C++ dev can learn any language, coz they just replace their bunch of code with a simple construct in their minds. It isn’t that seamless the other way around. Though I hate the fact that I need to write the code to calculate nCr and nPr in java just for a single calculation
Yeap thats whats going on, i started off in python. But i moved to java, than i got pretty good at it now i can pretty much understand most languages C, python, javascript. The pattern kinda just seems to get clearer
@@russeldioneo5187 yes. My reason is close to yours. Java looks like a well explained code. This builds your understanding more on the concepts you are implementing. Also Big tech companies still rely on java.
Try learning Haskell or APL with a Java background
Hey man, in 06:23 you are confusing the JVM with Hypervisors such as VMWare or Hyper-V, the JVM has nothing to do with that, you are showing a diagram of an actual Hypervisor (Virtualized machine) and stating that's what the JVM is. That is incorrect.
Not sure if it is worth learning or not , but after learning java as my first language I find other prog languages like python or JS very very very easy to work with .
So , for a beginner i highly recommend to learn Java as it will setup a solid base .
Or if you are a true masochist, start with x86 assembly, then learn C, and then Python. You will feel like a god when learning Python at that point.
@@tobiasbergkvist4520 true logic in your comment
'You vs the guy she tells you not to worry about' = amazing demotivational poster
the java example at 6:09 could have been done in 2 lines too (ignoring the main declaration): System.out.println(new StringBuilder(hello).reverse().toString())
Clearly this meme is created by someone who hate java
Quick question: how prevalent is Java in 2021? I know Google's API uses Java, but do most applications use Java to program their APIs?
(Sorry I don't know much about programming. I'm learning about Google vs. Oracle and trying to understand APIs)
Majority of enterprises today have Java in some shape or form within them, so I'd say it is very much relevant in 2021 and atleast for next couple of decades
I would say:
If you're a freelance, Single Developer, go with: Javascript, Python....and the interpreter is your team, ( Save You A Lot Of Time - Cross Platform )
If you want want to work for a large company go with a compiled language and aim for a specific role.
It depends on the value you want to deliver.
If i'm already getting the hang of python, is Java still worth learning?
Probably not
Just learn both, couldn't hurt really. I think if Python is your only language currently, then you should definitely learn a strong type language, it'll help you a lot. And well if you ever need some Java, you'll know what to do. Idk how much experience you have, if it's just a few months to a year, I'd probably continue using Python for now. If you're experienced in Python and you know what you're doing, then you can pick up Java relatively easy, honestly just knowing how to install it and run a program is worth something. You'll at least know what Java is and you won't feel completely clueless as to how Java files are created and ran. From there just build something small, doesn't really have to be anything great, just doing a text based RPG is easy enough and will get you used to Java syntax. I think having some experience in Java imo is always valuable, even if its' minimal, just knowing the syntax and knowing you can do it is helpful. And if you ever need to use it at your job, you can just Google how to do certain things if you don't know :).
@@pear4576 Thank you for the advice, appreciate it. Currently Python & R are my strong languages, picked up JS recently.
I recommend learning at least two languages, (e.g. python & java) that are pretty far in their applications, because you could greatly expand the field of things you can do. When you notice python getting to slow, you could use Java (or even C, if you really need every millisecond). Also, it would do great on your portfolio(when you want to code professionally) or just impress people even more (Wow, you can code in two languages?)
*pretty far AWAY in their applications
Really useful to hear your thoughts, thank you.
Java isn't a beautiful written language, but it's definitely an undying language.
New word?? "Undying"😂
Java developer 😂😂
@@vaisakh_km he is mean Undead like Arthas The Knight :)
you have a great way of teaching things, thanks !
Even if its 2050 the answer is YES if its in your Semester syllabus!
I love jetbrains, they are probably the best programming environment thingy, this is not a bot or smthing but its a genuine complement
Starting out with python will make you a script kiddy for life. Sure you may have some success in the start because its easier......but down along the road when projects get way more advanced and integrated or even reach hardware level the majority gets toast fast.
Incoming roasts bring em :
Agreed 💯
languages are just tools... pick the right tool for the right task and you've already covered 20% of the work. Also, python is great for statistics, machine learning and as a glue language. When you need more control over hardware, use C/C++. For the rest use python. Thats how a lot of large projects are done.
06:06 That's some dishonest bullshit.
Sure, java is still worth learning. Although it's a old language, there are A LOT of huge applications which use Java, and obviously many job opportunities for Java developers.
At last, remember about a point: despite that many recent languages, probably Java won't lose relevance in the next years, specially because those most important applications wouldn't change their whole structure overnight (it would be really difficult)
Thank you very much for your course.
Thanks
Java was the language that helped me get into IT, relocate to other country and it payed the bills for several years :)
For those who like Java and not afraid of it weird verbosity I started working on a playlist with Java interview Q&A: ua-cam.com/video/LeqNBbFi6Z0/v-deo.html
As much as I don’t like Java , it’s not gonna die , it’s probably one of the most in demand languages
Even without the performance indicator, for anyone who has programmed in both C++ and Java, it should be pretty obvious that C++ is far (and I mean FAR) superior in almost every aspect.
ok
lol what? :D were you high when writing your comment, Ric? :D
@@wawbagel do you even code son, that you should come up with a childish reply like that?
@@ric8248 oh yeah I do. And that’s why I commented your childish statement in such way. You have to be newbie or some dogmatic maniac to say what you said.
Btw - what’s that “son” style about? Did you have tough childhood or something?
@@wawbagel nothing wrong, just putting you in your place after your gratuitious, nasty comment, kid
Sam..can't get enough of your videos..thank you 😊
I loved learning java and I had to learn it when I was 15 for FRC. It's a awesome robotics platform that my highschool competed in
"The GC only takes a fraction of a second"
Running the GC in Minecraft: 2 seconds freeze
(during normal operation it uses the incremental GC or whatever it was called, but I modified the code)
no
Learning Java at the university was the most depressing days in my life , I never looked back at it once I finished my uni exams.
Reading the code after writing it is painful and the numerous curly braces aren't helping
I’m in financial industry specifically in core banking and fund services. Majority of the applications are in java based applications. Sure, new technologies emerge but Java seamlessly integrate to it. Frameworks like Spring Book and Quarkus are still famous for developing production level applications. I would still recommend Java to beginners along with new emerging technologies like cloud, containers, etc.
00:16 Where's the yellow legal pad?
Yes with Java is more coating but in example with reverse, there is a method which is more obvious 'StringBuffer sbf = new StringBuffer("Hello world"); System.out.println(sbf.reverse); ' and it seems not so complicated
Verbose doesn't mean declarative. In fact, it's the opposite. Verbose is usually imperative.
6:07 instead of "public static String reverseString(String str)" should be
"public static String reverseString(String hello)"
Or inside that method "str" instead of "hello"
:)
Nice video!
I searched for that comment.
6:08 Java apporach since Java 1.5
class Main {
public static void main(String[] args) {
System.out.println(new StringBuilder("Hello World!").reverse());
}
}
Is this video still relevant in 2021? Nope. Lots of cliche about Java. Doesn't mention anything has happened in the ecosystem in the past ten years.
Seasoned pros like yourself are an endangered species these days.
The ecosystem is overrun by script warriors.
my university taught me Java but I find it odd that they never got into the actually application of it.
We learned nothing about Java in back-end development, Spring, and didn’t do a single project in Java. Only exams/quizzes.
1st year ComSci student here, and currently learning Java(from senior high school to 1st year college). Our instructor told us why we're studying java is because our alumni said Java programming is highly on demand
It totally depends on what are you looking for. Example: If you are a developer who wants to learn the concepts of oop, I think it's a very good choice.
Yeah I've been learning python for a few months and just wanted to develop an Android app and have been struggling for weeks now to grasp OOP because it seems absolutely necessary in order to develop for Android using python and things like kivy.
So after struggling for a while I've decided to just learn Java and create a native app and finally fully grasp OOP. I've watched countless tutorials on OOP and python but still don't quite get how to accomplish my goal using objects.
I started learning to program in C about a year ago and after a few months I decided to jump to python to grasp the fundamentals. I was able to complete a few programming challenges in C before switching on the solo learn app but just the really basic ones.
I thought about kotlin but it seems that kotlin is more similar to python and a scripting language more than an actual programming language.
I was delighted to see that java looks very similar to C and C++ so I've decided to just go all in with Java. At least it won't be a far jump from Java to C or C++.
Me:
"You should declare similar variables pn the same line"
Everyone:
"He's out of line, but he is right"
I am sorry to say but I think that if you know java a good idea would be to switch to c# that it is similar
I love when people say "JAVA is slow". You are so wrong my friend. Java is as fast as native code thanks to the ability to be compiled at runtime for the platform specifics along with the tonts of optimization the JIT compiler has. If there is one thing that many benchmarks have proven, it's that the JVM is amazingly fast. In fact, it turns out that the JVM is so fast that only very carefully crafted benchmarks can illustrate any noticeable performance advantages for any other language.
Source?
@@KeepOnCoding our internal benchmarks at Google show over and over that Java and Go, for instance, have similar performance most of the time. There are only certain type of problems where native is slightly faster. However, for most people and most application that neither true nor required. Most modern applications don't use CPU that much, most of the time is spent on IO call/cycle. The JIT compiler and the hotspot are extremely well crafted pieces of software that are able to optimize the bytecode on the flight for the specific platform being target. Go/C++ compilers normally don't do this at all.
I think it is very wrongly to say java slower than native code, that is 99% of time wrong. Yes, there is again certain classes of problems where native is faster, but that is not the norm. Notice I am not saying native is bad, it is actually good too, and it is used when it is needed, everything depends on the problem on hand. However, learning Java in 2021, hell yeah, you should, the jvm is used everywhere with great success. The language has evolved quite a bit with the introduction of functional patterns and higher constructs. Verbosity is found on any language, as in some of our internal Go code today.
Java is very fast, but not as fast as native
Professionally I have used C#, F# for Windows apps, objective C for iOS, Java, Scala, Groovy, Python. C and C++ for devices. Pascal for competitive programming, SQL (make sure u learn sql!!!). Also Go once I joined Google. The point is that you will be constantly learning something new if you really want to be a software engineer. I will be surprised if you don’t have to touch Java ever, you probably will, so learn it, in fact, learn everything u can
@Jamie Walkerdine it really sounds like the source is his and his company's experiments and observations working with the language itself.
So, essentially *he is the source*
Can recommend Jetbrains Academy (Hyperskill). Very detailed and in-depth material. I spent a summer on it and it is amazing.
In my opinon Java is worth learning.Why?Even tho I am new to Java and I just started learning 9 months ago, I chose it because there are lots of jobs out there that require you to know Java.It's true that if there weren't so many jobs that require Java i would have definetely chosen C++.I must be honest and say that it was really hard to learn it in the beginning but once you start working on some projects it is actually kind of fun :D.Therefore i would definetely recommend Java to any begginers (at least in my area).By the way that discord channel is really cool :D.
Do you often find yourself writing generic methods and generic types when designing/building your projects?
@@thatoneuser8600 Well I think that there's not a single project where I haven't used them where I needed them even tho I am not working as a software developer yet.I'm hoping that i'll get my first job in the IT industry soon.
What are you using java for? what's your title?
@@yadullahkurt2189 I'm using Java for automation testing with Selenium/ Testng/Cucumber
@@David-fv3lb thanks mate!
5:41 this is why I hate Java. It's like a talkative girl that say a lot of nonsense and keeps repeating it.
C++ is not C with classes. They are completely two different languages now.
I mean he probably meant it as "At the time". And he technically isn't wrong, but now, yes, it is very different.
@@bwzie Do a try catch block in C and tell me how that works out 😂😂😂
@@kraljict ? Dude did you not read carefully? I agreed with you 😂 I said that yes they are, especially now, very different. But he obviously oversimplified it for the sake of the argument that Java at the time was built from the ground up with objects in mind.
@@bwzie I know xD I am just saying though ( not arguing with you)
@@kraljict In C, a function that can fail returns a status code, rather than a value. Typically, you use goto to deal with cleanup when an error occurs in C.
int my_procedure(char* result) {
int status;
int return_code = 0;
char* result1 = NULL;
char* result2 = NULL;
if ((status = subprocedure1(&result1)) != 0) {
return_code = 1;
goto cleanup;
}
if ((status = subprocedure2(&result2)) != 0) {
return_code = 2;
goto cleanup;
}
if ((status = combine(&result, &result1, &result2)) != 0) {
return_code = 3;
goto cleanup;
}
cleanup:
free(result1);
free(result2);
return return_code;
}
java and c++ will never die
Started learning Java because of APCS and really enjoyed using it, until I discovered shorter languages like go, typescript, kotlin.
Obviously, java is worth learning as it is a perfect fit for micro services development with spring reactive web flux.
people say this without having the exp of any other backend languages
Java in backend is ❤️ .. thanks to Spring boot ❤️❤️ .. spring boot fits to the cloud native & microservive architecture so well , most / new microservices are written using spring boot
spring boot was copied/inspired from ruby on rails framework and ruby is the language of backend
I don't get when software engineers mainly use an OOP language like Java or C# for some job but then go on saying they use Python (or a scripting language in general) to script away small things. Can anyone explain why use a scripting language in combination with some more heavy lifting language?
Could you pls recommend some of the best online courses/resources to learn Core Java (both paid and non-paid works) I saw your vid about top coding books, it was very helpful.
Google Java Mooc, I found it very detailed
Java masterclass by Tim Buchalka on Udemy is probably one of the best course available on the internet
Helsinki's mooc... quality
some months ago: I don't do sponsorships
now: JetBrains Academy, the sponsor of this video