Hi John. Thank you for all your good videos. I am a Python developer and new to Java. I found Java API docs too ambiguous and uncomfortable for me, at least as a newcomer. Can you please make a video about how to read and work with Java API documentation?
What's great about Python though is that operations between types have to be explicitly defined, and the built-in cases are well-documented. Also, Python has operator overloading, so + and * don't necessarily mean add and multiply. They mean whatever they are defined to mean. In the case of sequences, these are referred to as the concatenation and repetition operators. This is not that different than how Java reuses the + character as a string concatenation operator.
Strong type languages are much better that weak ones, do you remember those days at elementary school when the teacher told you to do not mix apples with oranges when doing some math operation? Well a compiler is that teacher preventing you from trying to add an array with a map entry (and returning and string, yes, I am watching at U Javascript)
Showing proper examples of langauges that differ from Java (as opposed to just saying such exist) is a very good way to teach people something they may remember later once they start learning such a language. Thank you, awesome video as always.
i accidentally enrolled in an intermediate java class right out of intro to programming last semester and this channel has been a HUGE help. thank you!
Java and JavaScript are like 2 brothers, one very old and grumpy but gets the job done while the younger one is much more of a happy go lucky type and just giving everything a shot, you guess which is which 😂
That's probably just my noob has-only-really-coded-in-java ass speaking, but dynamic typing seems like such a mess. Why would you willingly do that to yourself, not using the strong safety net that is static typing, and instead having to deal with those kinds of errors?
Dear John, You have been an incredible source of inspiration and knowledge for me. Your passion for teaching and the way you convey complex ideas with such clarity and enthusiasm is truly remarkable. I am deeply grateful for your guidance and support. Thank you for being such an exceptional teacher and for making a positive impact on my life. Warm Regards.
Java : Strongly type language - Statically Type language - At CompileTime typing rules are enforced Python: Strongly type language - Dynamically Type language - At runTime typing rules are enforced JavaScript : weakly type language
I started learning Object oriented Java at Uni after Python. It took me 2 months to get around as its very different syntax and its idea on classes, objects etc. Now its a way of practicing it what we’ve learned so far. Glad to find your channel. Very informative videos. I will watch some previous uploads while I’m learning this language.
Explain the 1. Difference between Java 8 version and other Versions of Java 2. What is Memory Management and what are it's type 3. Difference between JDK,JRE,JVM 4. Why Java is partially OOP Language 5. What is Lambda Expression and how to use it 6. Difference between Abstraction and Interface
Nice, now i know what that means. Hey John, can you give a little explanation about standard folder structure in Java desktop applications? Like Spring boot folder structure which classes are organized in every folder like DTO, MODEL, SERVICE etc. I'm just really confused where to put my files or organize them. Thank you.
Your explanations are just amazing... I'm 12 years experienced Java developer. But still I am having fear about Data structures and algorithms which is blocking me to get selected in product based companies. So please start DSA playlist...
I loved this. After developing in Java for a long time, I was put on a project written in ("Whacky Crap") React. OMG and Holy Bleep! I'm heading back to a Java project and I have one big sigh of relief.
"Okay. I did my very best to multiply 3 * Burger, but because nothing made sense and it was pretty much impossible, I just came up with NaN. But I didn't throw any exceptions. Are you proud of me?" - JavaScript
java is strongly typed language since it strictly enforces data types of variables at compile time itself. python is dynamically typed language since it allows changing data type of variables, but isn't weakly typed at all since it does fail at 3 + "burger" but at runtime. javascript is weakly typed since it'll always try to find an answer to various operations like 3 + "burger" will give "3burger"
Yeah, that looks a lot like "statically typed" not "strong typed". If it was strongly typed, you could say "not only is this an int but it's values can only be 1,2,5 and 7"... that'd be STRONG typing.
hahahaha! moon landing, Roman empire, John codes. yes yes and yes. spot on. and yes, there are many reasons why I do not like Python. what the hell. no semi-colons? .
I've just imagined a personification of mr. Java giving me "that" stare when I wanted.... juuuust wanted to... maybe for a joke... or a cheap laugh... only suggest to try just once, a "burger" multiplication by 3. And you know, that thought gave a chill, sent shivers down my spine, and now my body is aching all the time! 😉😁 Great video John! Lots of laughs! Loved it! ❤😊 Now I can do my work - resolve issues after not very well thought out branch merge of Java code - with a badass smile on my face. 😎
I come from Java world and C# and I was shocked while learning Javascript. why does an array have to be dynamic wtf. I like it when it's static and has laws and with Javascript it doesn't matter. I mean in Javascript you don't even need to check anything, it's really stupid Exactly in Javascript there is no integer etc. just a stupid let or var. I love Java and C# for that. but let's be honest, software developers need to broaden their horizons (=
Javascript is known for being the stupid one for a long time, but... [int, float, double, long, longdouble, byte] vs number? you tell me which is cleaner.
Great video. I remember those crazy days, programming in pre-ANSI C language, without function prototypes, when the slightest modification to your code could lead to a real disaster. Thank you so much for highlighting and explaining the nature and the importance of “type safety”. I think that “null safety” is also fundamental; if you don’t have a video on that, you might as well consider the subject. Obviously, type safety and null safety come at a cost: you need a good degree of expertise in software design, otherwise those features will seem more like a burden to you.
Really enjoy your videos. Would you ever consider creating some videos on the more common/useful Design Patterns? You have a knack for clearly explaining things, so these would probably help a bunch of people. Either way, thank you for sharing all of these great videos.
Actually, Python can do static types now as part of its new gradual type system. And Java can permissively do integer + string. And it's possible to have a statically typed language that isn't manifestly typed, like Haskell.
Common Lisp (Steel Bank) is a dynamic strongly typed compiled language that doesn't crash on error it stays up and gives you an opportunity to correct the error and then continues. It doesn't just compile once, you actually program it while it runs and it compiles to machine code per function as soon as it gets a new/updated function definition. Pretty cool technology but I'm glad it's not popular because people would ruin it like they did with super popular languages.
I’ve been a software engineer for 40 years. Primarily worked in C for the first half of my career, mostly Java for the past 15. (And I’ve been forced to do some JavaScript, but I really don’t want to talk about it.) John, your videos have often given me ideas for interview questions and a few times led me to reconsider language features in a way I hadn’t before. I recognize your professionalism and greatly respect your dedication to your craft. But this was the first of your many videos that contained an insight so novel and penetrating that I nearly dropped my phone. Yes, JavaScript is a dog of a language while Java is a cat. Now I just have to figure out which animal represents C.