10 Most Common Java Developer Mistakes
HTML-код
- Опубликовано: 5 июн 2024
- In this video, we'll be discussing the top 10 most common mistakes that Java developers make and how to avoid them. As a Java developer, it's important to stay on top of your game and avoid these common pitfalls to ensure your code is efficient, effective, and bug-free.
So, whether you're new to Java development or a seasoned pro, this video is a must-watch. Don't let these common mistakes hold you back from writing high-quality, efficient code.
Tune in now to learn how to avoid these top 10 most common Java developer mistakes.
Don't Forget to
===========================================
💯 Subscribe to Amigoscode - bit.ly/2HpF5V8
💯 Courses Available for free here - amigoscode.com/courses
💯 Join Private Facebook Group and Discord - amigoscode.com/p/join-community
⭐ Table Of Contents ⭐
===========================================
00:00 - Intro
00:21 - Deleting inside Loop
03:12 - Generics
05:08 - Equality
06:19 - If Statements
07:36 - Ternary If Statement
08:39 - Static
09:43 - Switch Statements
10:51 - Try with resources
12:15 - Excessive Garbage Allocation
13:09 - Nulls
14:36 - Libraries
🙊 Here are the goods for all my videos video 🙊
► Recommended Books
===========================================
- Clean Code - amzn.to/2UGDPlX
- HTTP: The Definitive Guide - amzn.to/2JDVi8s
- Clean Architecture - amzn.to/2xOBNXW
► Computer and Monitor
===========================================
- New Apple MacBook Pro - amzn.to/3464Mmn
- Dell 27 INCH Ultrasharp U2719D Monitor - amzn.to/2xM3nW1
- Double Arm Stand Desk Mount - amzn.to/3aYKKfs
- USB C Hub Multiport Adapter - amzn.to/2Jz7NlL
► Camera Gear
=============================================
- Sony ILCE7M3B Full Frame Mirrorless Camera - amzn.to/346QIJn
- Sigma 16 mm F1.4 DC DN - amzn.to/2wbic3Q
- Sigma 33B965 30 mm F1.4 DC DC - amzn.to/39G37Fd
► IDE & Tools I use for coding 💻 🎒
===========================================
- ITerm
- VsCode
- GoLand
- IntelliJ Ultimate
- Sublime
P.S
===========================================
💯 Don't forget to subscribe | bit.ly/2HpF5V8
💯 Join Private Facebook Group and Discord - amigoscode.com/p/join-community
💯 Follow me on Instagram | bit.ly/2TSkA9w
❤️ Thanks for watching - Наука
I'm a senior software engineer and I didn't need to listen to this video, but I did. I positioned myself as a beginner and I found your video really interesting. The method of iterative corrections (in the "bool == true" example) is awesome. People learn and retain better this way (from my experience).
I would like to express an amelioration you could do: give reasons why this or that is better and I also would tell in which circumstance. Example: In the ternary example, I do prefer one liner too, but only if it is short. And moreover, why there was a mistake (because, in fact, in terms of code execution, there is no difference at all)? (This is not a question to answer here, I already have the answer).
That's it! Great video!
i too prefer one liner as long as it is readable else give me an if-else
Since java 14 (i think) we can write switch statement using ->. for example:
switch (caseIndex) {
case 0 -> System.out.println("zero")
case 1 -> System.out.println("one")
default -> System.out.println("sth")
}
and using that we don't have to add break statement
that's not too bad. Is it ever really necessary to have a switch statement in the first place though? I suppose it allows you to skip the step of having a table if you're truly just processing a unique output
Good Information! The only thing I think is important to mention additionally is that in the first example, you should also check for null values to avoid a NullPointerException. In general I think just comparing Strings with equals without considering null values is one of the most common beginner mistakes!
Exactly. NullPointerException is one of the most common exceptions in the language.
Man i just love watching ur videos, learnt a lot of standards from ur code review videos. Currently i am planning to change jobs and quite afraid that i am not up to the level. :(. Keep posting these videos, i learn a lot from you, Thank u for everythiing
thanks for the info. But I think it would have been much easier to use the "new switch expression" available since java 12, if we used that our code would have been
switch (caseIndex) {
case 0 -> sout("zero");
case 1 -> sout("one");
case 2 -> sout("two");
case 3 -> sout("three");
default -> sout("default")
}
Cool! I didn't know that! Is it only when the case is a one-liner?
@@moromann1 not only. Just use curly braces if code is longer than one line
yes! same thing came to mind immediately I saw the switch
From my side its can be better by return ning the value and apply the sout outside the switch. Because in this actual case thé switch is doing two things so its not single responsibility. If after you need only the values without print them you would have to create à New method to do the same thing. Or you would have to refacto your code to what I proposed before.
I wouldn't even use a switch for this, just a simple array.
String[] numbers = {"zero","one","two","three"};
if(index < 0 || index > numbers.length) {
return "default";
}
return numbers[index];
Good format mate, knew some but certainly not all... fun to follow along.
I am very new programmer, I took Amigoscode Java Master Class and I can proudly say that I am not doing not even one of these mistakes because the course taught we well. Thanks buddy! Now I see how the powerful your teaching really is
Is it paid?
i started learning java 5 months ago and just found your channel
5 Months ago, I started studying cs in university, i still have no clue about coding... (lol)
Afters seeing your video, i got smarter. Nice teaching!
Really amazing, man! As junior developer I really want to thank you for the tips.
Thanks for sharing such nice quick tips. Can you please make detailed video on garbage collector in java and optionals topics, please? Appreciate your explanations 👍
Many things looks similar to JavaScript, I'm thinking of learning Java after mastering JavaScript
Hey @Amigoscode, I have been watching your channel for a while and I think it's the best Java programming channel on RUclips. Keep up the hard work and wish you all the best.
Thanks for this, comrade! Excellent summary
Thanks for the lessons man. May Allah reward you abundantly.
keeeeep doing theeeese short clips. I love them. Thanks
great content amigo!!!! hope you are doing great!!!
Learned a lot, thanks Nelson
Salam Bro,
This is very helpfull, barak allah fikom, eid mubarek
12:09
you can write do-while loop
instead the while loop to make it good concepts of loops
4:45 Worth stressing how important it is to use interfaces. This is a very simple example, but if it’s being passed around your codebase as the concrete implementation, that’s a lot of places you’ll need to change if you decide to use a different implementation… The same is true for when you use third party libraries, database etc. You will usually want some interface to that code
Sounds like 2 sec job using any decent code editor
Thanks for the video and Ramadan Mubarak, brother!
Asalamu aliakum wr wb. MashaAllah.. Love the content. May Allah make you Mufti Menk in programming. Love to hear your advices.
Very helpful in fact at the right time against cosc211 Java OOP exams we'll have tomorrow.
nice to hear you, maestro :)
wow realy good work thanks a lot i love to see tips and optimisations
Can you please make a video about event-driven architecture with Spring Boot and Axion Framework please ? and thank you
Can you make separated playlist for same videos, pls?
Also thank for video i will share this with some collogues which cant write good code
Hai brother, very useful your videos thank you so much... Please make video relate to Java Design patterns
Very usefull tips. Thank's!!
Great piece of info for Java developers.
I think I could consider myself as a senior developer because whatever you explained in this video i know all of these.
Thank you a lot for your video. I am interested in your course master class, but it is a little high course. Do you provide any ways to get coupons?
really helped me thanks a lot
thanks for the nice tips!!!
Thanks for your videos! BTW, I was thinking about this situation: there's an enum for statuses - and I was writing a method, that would make something depending the enum and then return enum.toString - but formatted to a more common format - first letter capital, than all letters in lower case, and _ replaced with spaces. What would be a better way - using StringBuilder, or getting substring(0,1) + substring(1).toLowerCase().replaceAll etc.?
might as well use streams...
Arrays.stream(Status.values())
.map(s -> s.getVal().substring(0,1).toUpperCase() + s.getVal().substring(1))
.map(c -> c.replace("_", " "))
.forEach(System.out::println);
enum Status {
ON("available"), OFF("offline"), BUSY("brb"), CALL("in_a_meeting"), DND("do_not_disturb");
final String val;
Status(String s){
this.val = s;
}
String getVal(){
return val;
}
}
1:30 surprised that you didn't touch on .removeIf() method that is present on all Collection subclasses. It's much less cumbersome than using Iterators and basically a one-liner. Functional trumps imperative style.
He mentioned .removeIf() on 3:08 but yeah it was quite short explanation and can easily be overseen.
Thanks for the video
Top tips! 💡
بارك الله فيك!
A very useful video! Can you make one with common mistakes in Spring boot?
Literally it's the video before this one..
God bless you brother 🙏
Thank You man
Amazing content as usual
MashaAlloh.
JazakAllohu xoyron
For next Video can you Kindly show us how to make our spring docker images connect and communicate with non-dockerized applications or databases
Thanks Amigos
Hi bro i am writing an ecommerce site using Java for backend. What better way to store product images.
Awesome!
I literally laughed for 5 mins after seeing the thumbnail 😂😂
I was staring at it a few seconds thinking "Who in the world compares a datatype and a value??" 😂
@@Starchaser38 In Java it's boolean, you probably thought about some other language like C :D
@@pyroandi6797 Yes, I come primarily from C/C++ 😅
Those were very hilarious few seconds, before I realised about the different type names 🤣
وعليكم السلام! جزاك الله خيرا!
Awesome content
Thanks bro
Pushing the algorithm ❤
Interesting that Java does not let you get a reference to the iterator in a for loop that internally uses an iterator.
Huge bait that you have a switch statement and the approach is "don't forget to make the syntax the same" rather than bleach your code
Please make more such videos
Very help full video,
your explanation very easy to learn n understanding.
Sir amigoscode you mostly use intelji idea but now which editor is this?
this is nice because we can see all method in the class very easily.
please let me if every person know about that
thanks
still intellij idea,but use [structure] window instead of default [project] window,u can find it on the top of ur intellij idea menu,choose Views -> tool window -> structure
you can also use Vscode
I start watching Nelson's videos after I smash the likevbutton first😆.
thanks brother
Amazing your java programming videos
I have one doudt of oops concepts
Give me one real time examples video , like gaming topics example on oops
👇👇🙏🙏🙋♂️🙋♂️👇👇
Need clear video on how to store date and time seperately into Database table columns
For example: patient take appointment for doctor on particular day and time and also update them
Can you make a spring boot angular app explaining this
And also how to store date and time seperately using rest API
My grandfather used to wear that type of cap😅😅❤❤…. Love from kashmir❤❤❤❤
great content amigos, well done
Optional blew my mind
superb you are
BTW, new UI's default dark theme is different only on MacOS, Windows and Linux have the same color scheme. Unsure why.
my intelliJnew UI is much darker tho. Windows 11
I think I know why, "Edit color scheme -> Dracula Contrast"
"Don't return null, it's bad"
JavaScript: Invent undefined
great video!... but i wouldnt really agree with the ternery example
return age >= 18 ? "Adult" : "Child" -> it is a very short way of writing the right logic
but just isnt simple even if you are familiar with this expression
i prefer the "if else" variant its easier to read
write less and do more
@@alexisantonindioulo4225 and therefore be more cryptic ... If you are writing the code for machines yes... But usually human beings will read the code
what is your intelliJ theme in this video?
Kareem Ramadaan. Thanks bro
Awesome
awesome
good to know that I don't do these mistakes.
The thumbnail def looks like something you'd expect from Java devs 😂
my company started migrating all java code to kotlin, is that a great decision?
Yes, kotlin is java on steroids
Kotlin and Java are almost 100% interoperable, aside from a kotlin module for some libraries to work with it, you'll enjoy it a lot
Bro is it possible to build a website using Java .
Yes
@@alienwarex51i3 how
@@deadw1nter679 ohh okie thank you
@@17_hariprasath.j41 Spring Boot, JPS.. Apache Tomcat. Lots of ways
@@alienwarex51i3 okie
How can I communicate with you brother directly thanks
My dear ahi, please, dont forget about اَلسَّلَامُ عَلَيْكُمُ 🤗❤
isnt arraylist heterogenous?
No, if you define a type all information in the ArrayList must be the same type
how can i change my inntellij build loading animation with different color. I saw that yours is like rainbow🌈.
plugin:nyan progress bar
is that ok to state in our portifolio that we used chat gpt to refactor the code?
Amigo are you cold, whats with a cap on ?
I wish some RUclipsr to spring/Java like Phillip lackner on Android, cuz he teach something that is reaaaally problems, not this simples thinks
15:10🤨🤔🥴😁
It's a joke with switches? Why don't just use "->" syntax?
Not everyone using latest version of Java
Many projects are java 8.
@@amigoscode yes i'am agree with this almost people dont know the last version of java, so in the demo he used the basic version to explain how to use Switch case correctly.
where is the " assalamou allaykoum amigoscode " ?
I finally heard it at the end of the first part ❤
وعليكم السلام
1. in the first example you don't even have to use any explicit loop, just use .filter(), it's thread-safe as well
2. doesn't really someone use generics? is it java 4 or what?
3. I second that, string pool and equality are literally the basics of that language, but still a lot of people doesn't understand it
4. intellij screams "if statement can be simplified", I'd rather give an piece of advice: "listen to your linter!"
5. the ternary's cool :)
6. when it comes to static fields, I'd rather pay attention to not allocate any particular amount of memory to them since they won't be garbage-collected
7. the proper use of switch statements are good, but the switch expressions are better :)
8. agree
9. generally I recommend to get familiar with the jcmd tool, you can check memory dumps thanks to it and many many more
10. optional is a good step forward, but vavr option is even better
This was helpful. I knew most of what he covered but your points are a step further. Did you find this in the "Effective Java" book?
I think the advice about using List instead ArrayList does not apply when working with local variables, by doing so you limit yourself to use only interface that List provide (without casting). Generally your device is good but the way you change the code is is a bad practice :|
It depends on the implementation you are using. Speaking of List and ArrayList, there is no reason to use ArrayList because it doesn't really provide any additional functionality that you would need to use. If the specific implementation provides additional functionality, then yes you are right :)
Number 1: Develop anything in Java
1st mistake: started a Project in Java xP
I honestly dislike new ui. It became too minimalistic, less functional and comperhensive, now every button only has icon instead of icon + name, so you cant say what is what without clicking on it, the color is also more blue, so it hurts my eyes
I really love the new UI, you can change the theme of the editor too just in case. I never clicked on things and usually have everything at the reach of keyboard shortcuts so its very nice to remove the clutter in my opinion.
Switch to New UI pls. Classic UI sux.
Bro, if you’re having to explain to someone how .equals work, you probably shouldn’t be telling about string optimization on memory poll
java or jewa
Judging by the cover, one gets the impression that Java is programmed by people with Down syndrome and cerebral palsy at the same time
LMAO so true 😂😂
👍👍
8:17 I beg to differ. That's less readable, more cryptic. Especially for someone who is new to coding.
I like your previous approach better, just remove the else condition.
The topics you talk about are interesting and you never fail to make me click, but i can never finish your videos because you are way way too slow, you always lose me halfway through. Please speed it up a little more