So I tried to learn both C# and C++ on my own but I failed it. As soon as I started university I had to forcr myself to learn C and C++. I still use C++ for uni stuff, because I got that new understanding of concept how to work with oop language I switched to C# and I am amazed. I literally used it for a few days and I made working Discord bot with voice functions.
@@AY-oi3hv Impressive denaxx, congrats. How much time you invested in your first programming language and getting good at it before learning a second language?
C# still has a strong Windows only feeling. Yes it is possible to make cross platform C# but 90% of examples you find in C# will assume you're running Windows and you have to take extra steps to ensure portability. On the other hand most Java examples are cross-platform by default.
I hear what you're saying, but Microsoft has been taking huge strides to capture more developers and bring them to the .NET side. The recent announcement of .NET 5 basically makes it pointless to code in anything else. IOS devices, Andoid, MacOS, Linux, and Windows can all be targeted by .NET (you can already do that, they're just going to make it simpler). Not to mention Webassembly which IMO is a game changer. They're also releasing a full Linux kernel as a VM that you can run in the background with full Docker support. Meaning Windows containers are probably going to be a thing of the past. I don't know what more they could possibly do to change your mind. :)
@@TheBuzzSaw Not everything works though. I tried. I wanted to use it for my personal project so bad, but need GPU access, CUDA, etc. The only library that allowed it refused to work on Linux, despite it supposedly supporting it. It worked on Windows, but also hasn't been updated in three years. I have no choice but to use Python . PyCuda is active and updated regularly, and there are a few other solid GPU accelerated libraries.
cs is a pretty excellent language with it's capability of handling big games and also perfect for indie games but the flaws you said is wrong, everyone should start at lua it is very easy to understand and has simple syntax nor it's not fast but it's powerful.
I’m also biased but building a strong coding foundation in an easy language like Python is also a good way to go. Honestly, any language is a great first language. It’s more of a matter of putting the work in to learning the language. I’m learning C# now but I gotta say, googling help for Python questions is much easier than googling questions for C#.
I have coded on both Java and C#, C# is a blatant love letter to Java, It follows what has been Microsoft mantra since the beginning of time "good artists borrow, great artists steal".
11:03 if some one wondering how. The trick is you first you build your compiler using other languages like c/c++. once your hit a stable version of the language. then you port all your c/c++ into c# (or in your own language). since you already have working compiler that was written in c/c++. you can compile new compiler. that's what Go and rust did. Go was written in c then they ported c code into go. Rust was written in oCaml.
I just started going down the Java route mainly to get better at OOP fundamentals...I think is guaranteed to be around for longer than any other language, so it is a safe investment to learn...
C++ was my first language but then my teachers went yolo and did not teach us object oriented programming in c++ but swapped to Java instead. I was really pissed off at the beginning but then i learnt that c++ was considered one of the hardest languages by far (apart from brainfuck and stuff like that, programming with errors and such that are there just for the lolz) Yet with C++ you are actually going to do real science while with C# and Java it is more likely that you will work for some big company and satisfy users and such.
That are become a video game developer. C++ is the go to for video games. You're spot on point though when it comes to C#/Java. Very business oriented and built for application development.
Chris, I now made learning to code with JavaScript for one year. How different or how far apart is JavaScript to C#? I am really interested in large corporate jobs for software development. Any thoughts?
ok, liar detected :) but seriously.. create me a gui app with c# for linux... good luck.. oh and it needs to be part of the language stl no third party gui toolkits. :)
I used to be a big Microsoft person and started learning C# but over the last 10 years I have despised them more and more. They treat their customers like crap. They treat their development community like crap. These days I am more of an open source Python and Java person.
They didn't sue Google for using Java. They sued them for using a specific Java framework. Not every framework in every open source language is free. People and companies have the right to make money on their hard work. If they want to open their framework up for help from the broader open source community that is their choice. Microsoft regularly treats customers like crap by giving horrible service and you can't trust them in the development community because they might not do what they said they going to do. In Java world you don't even need to deal with Oracle any more with OpenJDK. @@billyburton123
So I think that C# definitely has a lot of language features that Java is slowly introducing. Some will never be, such as the "elvis operator", but Java 11 has type inference. A lot of C# language features are really nice, they just put their brackets in the wrong place. I think my largest problem with C# is that it basically came after Java and fixed a lot of the problem with that language and continued forward. It basically has a head start, plus Java has a MASSIVE ecosystem with some of the biggest companies working on the OpenJDK, the upstream for the OracleJDK. C# lack of adoption helps it and Microsoft willingness to pull the rug from it and shift it. Another issue is that Microsoft has such tight control on it that it just results in, "dumb" developers. My company has teams that code in both and I would say are C# devs, regardless of experience are ill-equipped to do anything outside of the MS way. Some of them can barely use the command-line. They don't have a strong understanding of what is going with their applications, build process etc. You could say it is the quality of the developer, but I work in an area that is a "C# stronghold" and I have only met a handful of C# devs that have an understanding beyond the bear minimum needed to create a functioning DLL. Its not like you need to be some "rockstar", but holy shit have you ever looked at another solution in your life? Its a side effect of ease of use. C# does benefit enterprises with its hand holding nature toward development, because you can just swap people in and out and use cheap talent. An experienced Java developer has likely worked with multiple solutions to core processes in development, Linux familiar and a host of other skills picked up along the way. C# devs, not so much since the answers are already provided. The JVM is just too efficient at this point and that is why so many languages run on it. Because of how sensitive to backwards compatibility Java is, I don't think it will be going anywhere. I think Java should be the first language you learn between the two, because you are forced to learn about building an application, versus just writing code. Now with the cloud wars, Microsoft has recognized this and has started to release the chains in hopes of getting adoption up, with .Net Core on Linux. The dirty secret is they had to do it because Windows containers are poop.
100% correct. I "move" from Java to C# in 2006, and I was using OSS mvc, orm, IoC contairs (castle project stack) years before MS mvc, entity... It's sad but true, most of C# devs are limited to MS libraries, architecture and procedures.
Hi Chris, what was your experience for learning your first programming language? How long did it take you to become good in one language? I know everyone learns at a different rate. I ask because I am trying to come up with a goal in mind for myself. Would you say 18 months is a good length of time in becoming competent in a language before learning a second language? I code every day and I plan to continue to do so. I am learning JavaScript at the moment alongside HTML and CSS. My end goal is to learn C# alongside JavaScript. I think if you know both of these languages, they complement each other very well. My end goal is to become a full stack developer, if possible, within the next 5 years or so.
I don't get the hate for Java. I am not a professional developer but I mostly used VBA, Python and some C# until recently I avoided Android development for years because Android studio seemed intimidating, but I have a fast desktop now so it doesn't seem as bloated, and it seems to have improved over the years, so I'm getting into it. I kinda like it. Actually maybe better than Python. The very explicit nature of Java makes autocomplete/intellisense work beautifully. Yes the code looks messier than Python, not really much different from C# though. With the strong explicit type system it makes development really easy when the IDE can tell you exactly what class/type everything is. So far as a beginner, I find nothing difficult or burdensome with Java, not even compared to Python. I don't get the hate.
I miss a ton of features in Java. Like unsigned integers, operator overloading, writing multiple classes in a single file (i know it's messy but sometimes it's useful -> usecase important). operator== overload on Strings, etc.
Java hater here. In my opinion, i think java sucks because it is too verbose, uses too much ram, too much oop and crappy abstractions, every Java UI that i’ve seen is horrible and even the download of java is annoying
Game engines that support Java: 1. jMonkeyEngine Game engines that support C#: 1. Unity 2. Godot 3. CryEngine 4. Xenko 5. WaveEngine 6. Banshee 3D 7. NeoAxis 8. FlaxEngine
wow, Sun Ceased operation: Jan 27, 2010, I had no idea, 9 years and Im just now finding out. Well, glad i never invested in them lol. What about Oracle? Phew at least they are still in business. How much different is C# from C? I learned programming in C a couple years ago and want to get back into learning programming for fun. yeah, spending 4 hours looking for an out of place semicolon to me is FUN OK! I programmed in HTML and java back in the 90s and it was also fun. I still have my old HTML4, java, javascript, and pearl books from the 90s I haven't opened them in 20 years lol.
I agree that C++ in all places so If you learning frameworks it depends on problem so if you write C++ code you feel small difference but if you learn fundamentals then you feel really C# or Java 10 times easier to use, understand.
I think this comparison is made within a "black box". Java is better when dealing with mobile dev (Android) and C# is better for web development at a smaller scale but since Microsoft is very business oriented you have to pay here and there for support (and the support is pretty good). Also a large application is almost always done in Java. For gaming (3d fps etc) I would go straight to C++. I know both and like both for each thing so I don't think one is better than the other.
eh idk how i feel about what you're saying about gaming. unity is a very capable engine, and there's also monogame for c# which is the spiritual successor to microsoft's XNA framework. i think if you want to make games you don't necessarily have to do it in C++. but with shooters it's perhaps different, even though there are good examples of FPS games coded in unity (escape from tarkov)
@@crittercel Fine, C# can be a very competent language for game dev, I'm actually doing Unity games right now but I do feel that C++ gives you more control in the case that you want to handle heavier graphics, specific audio etc. But yeah Unity is very well developed that it allows you to develop pretty complex games.
Sir Would Java be of no use in future because of growing use of Python in web dev, data science, ML, AI and Growing Use of KOTLIN, DART flutter in Android dev side? If it is not so plz do explain in detail the advantages of Java and it's uses in comparison to python
Java would probably stay relevant because of momentum. Even if Python will overtake it. Personally I prefer C#, but I would learn Java again if the job required it. Look at the jobs in your area first and after that prepare for the future
Uber has converted some of their Python to Java for speed/performance. There is also the frustration of developers trying to maintain Python code and it taking forever to understand without types clearly dictated. There are type hints but I don't know if that fixes the maintenance issue.
C# on it's own isn't even that bad as a game engine language. You can AOT compile it and you can implement your own malloc() and free() (just to start out) with unsafe code almost trivially, freeing you from garbage collection. IT EVEN HAS ASSEMBLY INTRINSICS :D Like hello? Unity proved it - they are currently rewriting their entire engine in C# and get better codegen from their in house "Burst Compiler" than with the equivalent C++ source.
@Epoch plus5 Because a lot of Fortune 500 companies back ends started with Java when it came out. Java made a lot of things possible. So to this day the legacy of Java still goes strong because if it ain't broke, don't fix it. On the other hand, C# is absolutely gonna take over some day. These companies make billions and aren't gonna change there backend unless they absolutely have too.
I decided to start learning Java as I came from a full stack JavaScript background and only used functional programming. It seems as though Java has always been the OOP language and I really wanted to get into OOP so I just recently started learning Java.
Those things vary from country to country, but the net that you're hunting with from a C# perspective is much much broader, you can do everything that Java does and more, with better language support.
When it comes to the language, yeah this is 100% true, C# is simply faster and has better syntax However one major thing Java has is Android dev. A lot of android apps (especially FOSS projects) use Java, it's still a great option for making android apps and even reverse engineering them (such as using jadx, frida, apktool, etc) and forking currently existing projects. C# has Xamarin for android dev but let's face it, it sucks But yeah in an ideal world you'd be able to use C# as a drop in replacement for Java when it comes to android dev
Regardless of whether C# or Java is better, people need to make sure they know WTF they are talking about. I'm taking a class in C# and a bunch of arrogant Java programmers are in there using terms that are not even used in the Microsoft documentation! I try to tell them C# doesn't use super classes they use a base class and it's not the same. They keep porting over their terminology and Java approaches into C# and it makes their code crappy and it makes them sound stupid to me when they use the wrong terms. CHRIS!! Please can you chime in on this topic? What's it like when a programmer starts working for a company and acts like he knows what he's doing but uses all the wrong terms and you tell him what terms to use but he can't get his brain to accept something different. It's like talking to someone who is an old-school Visual Basic 6 programmer and you're explaining how classes are not the same in VB6 right?
Working in C# for around 8 years now have to write Java in school. It's a pain. Atleast i know what im talking about as i also use different languages frequently like C++, JS, PHP etc.
C# is basically Java, but 2 times better. Especially after .NET 6, I don't think that's even a competition. MAUI will dominate React-Native and Flutter. While Blazor destroying JS libraries. You guys have no idea about C# .NET. Most reliable, balanced, systematical language ever.
Nowadays with just Java background doing C# for the first time you'll not use async/await properly and other cool features from C# 7, 8. So yes your programs would probably work, but that wouldn't be full C# potential So no.
Because Java came out 20 odd years ago .There are already new languages being invented like rust Julia etc. which are better than the languages we already have it's just the case of how and to what degree will these languages get adopted.
i think that video is heavily biased by your opinion, altough it's a great video again as all your others, i especially disagree with the part that beginners have it easier with C#, c# with visual studio is easier to setup than java, that for sure, but as soon as they are in the language and have it running, beginners often get sidetracked by several small distractions like the brackets of namespaces and stuff like u are able to create a struct in a class and stuff, thoes are personal experiences from teaching both java and c# altough my opinion is biased for sure too :)
and intellij is a bigger help than visual studio, often for beginners i recently started to code c# in an enterprise environment and altough we use vs enterprise, in some aspects visual studio is even worse than notepad++ 😬😭 and again thanks for your videos x3
I personally learned C,C++ and Java and some web programming languages. To be honest Java is the ONLY language from which I HAVE LEARNED NOTHING but some useless abstract,java based tons of garbage class definitions.Most people think Java is a good language just because its SE edition but actually its real usage area is business world and its EE version along with some frameworks. Worst thing about Java EE is that you can learn no logic,not the real staff that will make you a good programmer but just Java's abstract garbage implementations,definitions etc...And most of things you learned will be based on unrealistic abstract Java implementations.It seams easy to code but hard to remember and afterwards you try to remember tons of things to make a simple Job.A programming language must be concise like real king C. Java just teaches you Java itself ,not the real stuff.Something is clearly wrong with its DESIGN as if it was created to make you only Java programmer not a real programmer but a SLAVER. If you want to learn Web learn it from PHP,ASP,JavaScript etc... If you wanna learn general programming learn C# or C++ .C# is much realistic than Java and it is best option for beginners and C,C++ programmers to go along with. I honestly think Java was just a waste of time for me and i am not a Microsoft fan.
Spring Framework and all of its components are more mature and stable than .NET Core rubbish that keeps changing even from Version 1 to 2. How Microsoft kills its own frameworks and try on people new things such as MVC 4 and 5 Really these were prototypes for .NET Core in my opinion. Java 11 and even 8 has since Lambda expression many features like Linq with some libraries. Hibernate more stable and easier to learn than entity framework 6 or core which still immature in my opinion. STS 4 IDE and Intelji Idea are lighter comparing to visual studio. The eco system of the JVM and its languages such as Kotlin which is modern java much diverse. Codename one mobile platform alternative to Xamrine is great. No good game engines true coz all of them rubish unless u use C++ and engine like Unreal. Sorry but Microsoft and its open source fake movment is too little too late (C# /ASP.NET CORE) open source but buy VS 2017/2019 cost thousands and VScode not good unless u use it for scripting language , I Wil not use to build enterprise application, I will have to buy VS. Just sharing summary of little thoughts u may have missed. Cheers.
You can say C# is multi-platform, but it's support for linux is nothing but a joke, no dedicated ide for linux, yeah rider exists but it isn't free, on vscode if i remember correctly auto completion was made through kite and on many other distros that are not ubuntu or debian variants, you gotta make some "tricks" just to make it work
I don't think so, the language that has wrapper classes just so people can use it as generic parameters because they cannot use primitive types as generic parameter, shows how design of language has bee broken!
So I tried to learn both C# and C++ on my own but I failed it. As soon as I started university I had to forcr myself to learn C and C++. I still use C++ for uni stuff, because I got that new understanding of concept how to work with oop language I switched to C# and I am amazed. I literally used it for a few days and I made working Discord bot with voice functions.
So c++ gave you a better understanding and made C# easier to learn??
@@AY-oi3hv Impressive denaxx, congrats. How much time you invested in your first programming language and getting good at it before learning a second language?
C, asm ==> Comp science + system dev
Python ==> Data / ML
Java/C#==> Enterprise
JS==> Web development
@Game Over no, c++ is gaming, c# has dirty garbage collecting which is something you really wanna control for best performance
@@jacobschmidt cough cough *unity*
Unity C# UNREAL C++
Shekhar don’t put python near Assembly and c
Python is a snail compared to asm and C. I don't know what is C science
C# still has a strong Windows only feeling. Yes it is possible to make cross platform C# but 90% of examples you find in C# will assume you're running Windows and you have to take extra steps to ensure portability. On the other hand most Java examples are cross-platform by default.
I agree
I hear what you're saying, but Microsoft has been taking huge strides to capture more developers and bring them to the .NET side. The recent announcement of .NET 5 basically makes it pointless to code in anything else. IOS devices, Andoid, MacOS, Linux, and Windows can all be targeted by .NET (you can already do that, they're just going to make it simpler). Not to mention Webassembly which IMO is a game changer. They're also releasing a full Linux kernel as a VM that you can run in the background with full Docker support. Meaning Windows containers are probably going to be a thing of the past. I don't know what more they could possibly do to change your mind. :)
With .NET Core, that is no longer the case. I dev in C# in Linux, and it is wonderful.
I build wep apps with asp.net core and mysql/mariadb on ubuntu 16.04/18.04. I also host them on ububtu server. They are very stable and blazing fast.
@@TheBuzzSaw Not everything works though. I tried. I wanted to use it for my personal project so bad, but need GPU access, CUDA, etc. The only library that allowed it refused to work on Linux, despite it supposedly supporting it. It worked on Windows, but also hasn't been updated in three years.
I have no choice but to use Python . PyCuda is active and updated regularly, and there are a few other solid GPU accelerated libraries.
Well I'm definitely bias but I personally would encourage anyone looking to become a programmer to pick C# as their first language.
cs is a pretty excellent language with it's capability of handling big games and also perfect for indie games but the flaws you said is wrong, everyone should start at lua it is very easy to understand and has simple syntax nor it's not fast but it's powerful.
Everyone should start with C! Honestly!
I’m also biased but building a strong coding foundation in an easy language like Python is also a good way to go.
Honestly, any language is a great first language. It’s more of a matter of putting the work in to learning the language.
I’m learning C# now but I gotta say, googling help for Python questions is much easier than googling questions for C#.
everyone should start with machine code(joking)
I have coded on both Java and C#, C# is a blatant love letter to Java, It follows what has been Microsoft mantra since the beginning of time "good artists borrow, great artists steal".
11:03 if some one wondering how. The trick is you first you build your compiler using other languages like c/c++. once your hit a stable version of the language. then you port all your c/c++ into c# (or in your own language). since you already have working compiler that was written in c/c++. you can compile new compiler. that's what Go and rust did. Go was written in c then they ported c code into go. Rust was written in oCaml.
I just started going down the Java route mainly to get better at OOP fundamentals...I think is guaranteed to be around for longer than any other language, so it is a safe investment to learn...
It will be around for sure
i use C# mostly to do game development in unity
That is awesome
C# is by far the better one,
Microsoft has done a really great job with .NET.
It's a very well designed language from the ground up. I think it was able to learn a lot from some of the mistakes with Java early on.
You don't need java if you have C#.
C++ was my first language but then my teachers went yolo and did not teach us object oriented programming in c++ but swapped to Java instead. I was really pissed off at the beginning but then i learnt that c++ was considered one of the hardest languages by far (apart from brainfuck and stuff like that, programming with errors and such that are there just for the lolz)
Yet with C++ you are actually going to do real science while with C# and Java it is more likely that you will work for some big company and satisfy users and such.
Thank you for sharing!
That are become a video game developer. C++ is the go to for video games. You're spot on point though when it comes to C#/Java. Very business oriented and built for application development.
Chris, I now made learning to code with JavaScript for one year. How different or how far apart is JavaScript to C#?
I am really interested in large corporate jobs for software development. Any thoughts?
Java started sucking after it was bought by Oracle.
Are you sure? Java 8 kicks ass. Subscription costs for updates sucks though.
As a professional Java developer... I agree
ok, liar detected :) but seriously.. create me a gui app with c# for linux... good luck.. oh and it needs to be part of the language stl no third party gui toolkits. :)
@@mr_don_key 99.9% of times if you are making a GUI for business solution then it will probably run on windows machine .
@@mr_don_key .NET Core (C#). It's very easy.
I used to be a big Microsoft person and started learning C# but over the last 10 years I have despised them more and more. They treat their customers like crap. They treat their development community like crap. These days I am more of an open source Python and Java person.
right, and the company(Oracle) that owns java didn't sue google for using java.
They didn't sue Google for using Java. They sued them for using a specific Java framework. Not every framework in every open source language is free. People and companies have the right to make money on their hard work. If they want to open their framework up for help from the broader open source community that is their choice. Microsoft regularly treats customers like crap by giving horrible service and you can't trust them in the development community because they might not do what they said they going to do. In Java world you don't even need to deal with Oracle any more with OpenJDK. @@billyburton123
@@theredneckalien5964 it's not the same when you have one and ten customers.
C# is owned by a foundation, not Microsoft.
@@TheBuzzSaw who owns the foundation?
So I think that C# definitely has a lot of language features that Java is slowly introducing. Some will never be, such as the "elvis operator", but Java 11 has type inference. A lot of C# language features are really nice, they just put their brackets in the wrong place.
I think my largest problem with C# is that it basically came after Java and fixed a lot of the problem with that language and continued forward. It basically has a head start, plus Java has a MASSIVE ecosystem with some of the biggest companies working on the OpenJDK, the upstream for the OracleJDK. C# lack of adoption helps it and Microsoft willingness to pull the rug from it and shift it.
Another issue is that Microsoft has such tight control on it that it just results in, "dumb" developers. My company has teams that code in both and I would say are C# devs, regardless of experience are ill-equipped to do anything outside of the MS way. Some of them can barely use the command-line. They don't have a strong understanding of what is going with their applications, build process etc. You could say it is the quality of the developer, but I work in an area that is a "C# stronghold" and I have only met a handful of C# devs that have an understanding beyond the bear minimum needed to create a functioning DLL. Its not like you need to be some "rockstar", but holy shit have you ever looked at another solution in your life? Its a side effect of ease of use.
C# does benefit enterprises with its hand holding nature toward development, because you can just swap people in and out and use cheap talent. An experienced Java developer has likely worked with multiple solutions to core processes in development, Linux familiar and a host of other skills picked up along the way. C# devs, not so much since the answers are already provided. The JVM is just too efficient at this point and that is why so many languages run on it. Because of how sensitive to backwards compatibility Java is, I don't think it will be going anywhere.
I think Java should be the first language you learn between the two, because you are forced to learn about building an application, versus just writing code.
Now with the cloud wars, Microsoft has recognized this and has started to release the chains in hopes of getting adoption up, with .Net Core on Linux. The dirty secret is they had to do it because Windows containers are poop.
100% correct. I "move" from Java to C# in 2006, and I was using OSS mvc, orm, IoC contairs (castle project stack) years before MS mvc, entity... It's sad but true, most of C# devs are limited to MS libraries, architecture and procedures.
I advocate to use the proper language to the problem, now it's more easy with docker and microservices
Interesting
What killed me the most is that a byte in Java is signed. Like wtf call it something else.
What is The Best in big Companey and The best in terms of money ( Spring boot or .Net Core or Node JS ) reply me please ??
Hi Chris, what was your experience for learning your first programming language? How long did it take you to become good in one language? I know everyone learns at a different rate. I ask because I am trying to come up with a goal in mind for myself. Would you say 18 months is a good length of time in becoming competent in a language before learning a second language? I code every day and I plan to continue to do so. I am learning JavaScript at the moment alongside HTML and CSS. My end goal is to learn C# alongside JavaScript. I think if you know both of these languages, they complement each other very well. My end goal is to become a full stack developer, if possible, within the next 5 years or so.
I don't get the hate for Java. I am not a professional developer but I mostly used VBA, Python and some C# until recently
I avoided Android development for years because Android studio seemed intimidating, but I have a fast desktop now so it doesn't seem as bloated, and it seems to have improved over the years, so I'm getting into it.
I kinda like it. Actually maybe better than Python. The very explicit nature of Java makes autocomplete/intellisense work beautifully.
Yes the code looks messier than Python, not really much different from C# though. With the strong explicit type system it makes development really easy when the IDE can tell you exactly what class/type everything is.
So far as a beginner, I find nothing difficult or burdensome with Java, not even compared to Python. I don't get the hate.
Some beginners get the "everything is a class in Java" concept. Some don't.
I miss a ton of features in Java. Like unsigned integers, operator overloading, writing multiple classes in a single file (i know it's messy but sometimes it's useful -> usecase important). operator== overload on Strings, etc.
@@SimonNitzsche c++ overloading operators will blow your mind :0
Java hater here. In my opinion, i think java sucks because it is too verbose, uses too much ram, too much oop and crappy abstractions, every Java UI that i’ve seen is horrible and even the download of java is annoying
Hadoop is based on Java,
Spark is based on Scala(JVM).
So yes Data Science is also done with Java.
Game engines that support Java:
1. jMonkeyEngine
Game engines that support C#:
1. Unity
2. Godot
3. CryEngine
4. Xenko
5. WaveEngine
6. Banshee 3D
7. NeoAxis
8. FlaxEngine
Monogame is pretty cool too
@@CeasiusC Monogame has no level editor, so most consider it a game framework, not a game engine.
@@bexplosion Oh yes, makes sense.
You forgot libgdx ;)
Just learn openGL
wow, Sun Ceased operation: Jan 27, 2010, I had no idea, 9 years and Im just now finding out. Well, glad i never invested in them lol. What about Oracle? Phew at least they are still in business. How much different is C# from C? I learned programming in C a couple years ago and want to get back into learning programming for fun. yeah, spending 4 hours looking for an out of place semicolon to me is FUN OK! I programmed in HTML and java back in the 90s and it was also fun. I still have my old HTML4, java, javascript, and pearl books from the 90s I haven't opened them in 20 years lol.
I agree that C++ in all places so If you learning frameworks it depends on problem so if you write C++ code you feel small difference but if you learn fundamentals then you feel really C# or Java 10 times easier to use, understand.
I think this comparison is made within a "black box". Java is better when dealing with mobile dev (Android) and C# is better for web development at a smaller scale but since Microsoft is very business oriented you have to pay here and there for support (and the support is pretty good). Also a large application is almost always done in Java. For gaming (3d fps etc) I would go straight to C++. I know both and like both for each thing so I don't think one is better than the other.
eh idk how i feel about what you're saying about gaming. unity is a very capable engine, and there's also monogame for c# which is the spiritual successor to microsoft's XNA framework. i think if you want to make games you don't necessarily have to do it in C++. but with shooters it's perhaps different, even though there are good examples of FPS games coded in unity (escape from tarkov)
@@crittercel Fine, C# can be a very competent language for game dev, I'm actually doing Unity games right now but I do feel that C++ gives you more control in the case that you want to handle heavier graphics, specific audio etc. But yeah Unity is very well developed that it allows you to develop pretty complex games.
@@arturfil yea, true. of course
It would be nice to revisit this topic with the release of .net 9 (.net core 5)
Good idea!
.NET 6. is pretty enought to dominate JAVA
Sir Would Java be of no use in future because of growing use of Python in web dev, data science, ML, AI and
Growing Use of KOTLIN, DART flutter in Android dev side? If it is not so plz do explain in detail the advantages of Java and it's uses in comparison to python
Java would probably stay relevant because of momentum. Even if Python will overtake it. Personally I prefer C#, but I would learn Java again if the job required it. Look at the jobs in your area first and after that prepare for the future
Uber has converted some of their Python to Java for speed/performance. There is also the frustration of developers trying to maintain Python code and it taking forever to understand without types clearly dictated. There are type hints but I don't know if that fixes the maintenance issue.
Shots fired
C# on it's own isn't even that bad as a game engine language.
You can AOT compile it and you can implement your own malloc() and free() (just to start out) with unsafe code almost trivially, freeing you from garbage collection. IT EVEN HAS ASSEMBLY INTRINSICS :D Like hello?
Unity proved it - they are currently rewriting their entire engine in C# and get better codegen from their in house "Burst Compiler" than with the equivalent C++ source.
Java was a nice departure from C++ 25 years ago, but ideas have moved so far past it, the age really shows.
Have you seen the modern releases and Lombok?
@Epoch plus5 Because a lot of Fortune 500 companies back ends started with Java when it came out. Java made a lot of things possible. So to this day the legacy of Java still goes strong because if it ain't broke, don't fix it. On the other hand, C# is absolutely gonna take over some day. These companies make billions and aren't gonna change there backend unless they absolutely have too.
I decided to start learning Java as I came from a full stack JavaScript background and only used functional programming. It seems as though Java has always been the OOP language and I really wanted to get into OOP so I just recently started learning Java.
I would learn assembly code if the job market demanded it. I see more Java jobs so I have started learning Java. I could be wrong.
You ain't wrong. I'm learning Java. There's a lot of jobs in Java
Those things vary from country to country, but the net that you're hunting with from a C# perspective is much much broader, you can do everything that Java does and more, with better language support.
Why is it so hard to find videos that just explain the differences? I don't care which one's "better" (what a nebulous term).
No matter how much I love C#, I just can't hate java, I start programming eith java hahahaha
Its all just opinion. I wish you the best!
Robert Jif java with make you hate programming .better start with c# c or c++
No performance comparison :/ also the overall development experience
Thanks for the input
I am trying out C.
Anything is better than Java
I'm a JavaFX developer and I wear thick glasses because I don't see sharp. 8-)
When it comes to the language, yeah this is 100% true, C# is simply faster and has better syntax
However one major thing Java has is Android dev. A lot of android apps (especially FOSS projects) use Java, it's still a great option for making android apps and even reverse engineering them (such as using jadx, frida, apktool, etc) and forking currently existing projects. C# has Xamarin for android dev but let's face it, it sucks
But yeah in an ideal world you'd be able to use C# as a drop in replacement for Java when it comes to android dev
Regardless of whether C# or Java is better, people need to make sure they know WTF they are talking about. I'm taking a class in C# and a bunch of arrogant Java programmers are in there using terms that are not even used in the Microsoft documentation! I try to tell them C# doesn't use super classes they use a base class and it's not the same. They keep porting over their terminology and Java approaches into C# and it makes their code crappy and it makes them sound stupid to me when they use the wrong terms. CHRIS!! Please can you chime in on this topic? What's it like when a programmer starts working for a company and acts like he knows what he's doing but uses all the wrong terms and you tell him what terms to use but he can't get his brain to accept something different. It's like talking to someone who is an old-school Visual Basic 6 programmer and you're explaining how classes are not the same in VB6 right?
Working in C# for around 8 years now have to write Java in school. It's a pain. Atleast i know what im talking about as i also use different languages frequently like C++, JS, PHP etc.
C# is basically Java, but 2 times better. Especially after .NET 6, I don't think that's even a competition. MAUI will dominate React-Native and Flutter. While Blazor destroying JS libraries. You guys have no idea about C# .NET. Most reliable, balanced, systematical language ever.
GRENADE!!!
Lol
anyone who can program in java, can program in c# and vice versa
Nowadays with just Java background doing C# for the first time you'll not use async/await properly and other cool features from C# 7, 8.
So yes your programs would probably work, but that wouldn't be full C# potential
So no.
I agree with that
I strongly disagree. 8yrs+ experience in C# and completely lost and disgusted at Java.
Why the plague is better than ebola.
Computers are not getting more ram memory with time. Java apps freaking eats all my ram! I hate it!
Ignore the fact that your Data can be grabbed by the language you use.. Stupid Humanity
No way.
But why?
C# may be better...but Windows?....no
Does java has operating system ?
Wisnu 77 no...c# only works on windows
@@AnonymousAccount514No, .net core works on pretty much every platform
Jonas Jämtberg true...but no one uses it other platforms
You are right about that mostly. Its still really though
Why is everything better than java?
One day, everything will be better than Python.
True
Because Java came out 20 odd years ago .There are already new languages being invented like rust Julia etc. which are better than the languages we already have it's just the case of how and to what degree will these languages get adopted.
some of the points are really petty, but +1 nonetheless as I hate java way more than c#
I don't even remember what I said
@@realchrishawkes lol.
Raw C > C++ > C# > all other slow high level interpreted crap
i think that video is heavily biased by your opinion, altough it's a great video again as all your others, i especially disagree with the part that beginners have it easier with C#, c# with visual studio is easier to setup than java, that for sure, but as soon as they are in the language and have it running, beginners often get sidetracked by several small distractions like the brackets of namespaces and stuff like u are able to create a struct in a class and stuff, thoes are personal experiences from teaching both java and c#
altough my opinion is biased for sure too :)
and intellij is a bigger help than visual studio, often for beginners
i recently started to code c# in an enterprise environment and altough we use vs enterprise, in some aspects visual studio is even worse than notepad++ 😬😭
and again thanks for your videos x3
my tipp for every beginner would be, learn java, then programm in c# :D
Can we all just agree. C# is better than Java.
Lol
I personally learned C,C++ and Java and some web programming languages. To be honest Java is the ONLY language from which I HAVE LEARNED NOTHING but some useless abstract,java based tons of garbage class definitions.Most people think Java is a good language just because its SE edition but actually its real usage area is business world and its EE version along with some frameworks. Worst thing about Java EE is that you can learn no logic,not the real staff that will make you a good programmer but just Java's abstract garbage implementations,definitions etc...And most of things you learned will be based on unrealistic abstract Java implementations.It seams easy to code but hard to remember and afterwards you try to remember tons of things to make a simple Job.A programming language must be concise like real king C. Java just teaches you Java itself ,not the real stuff.Something is clearly wrong with its DESIGN as if it was created to make you only Java programmer not a real programmer but a SLAVER. If you want to learn Web learn it from PHP,ASP,JavaScript etc... If you wanna learn general programming learn C# or C++ .C# is much realistic than Java and it is best option for beginners and C,C++ programmers to go along with. I honestly think Java was just a waste of time for me and i am not a Microsoft fan.
Strongly agree.
If u wanna learn web learn it from php, asp. You got a point
Spring Framework and all of its components are more mature and stable than .NET Core rubbish that keeps changing even from Version 1 to 2. How Microsoft kills its own frameworks and try on people new things such as MVC 4 and 5 Really these were prototypes for .NET Core in my opinion. Java 11 and even 8 has since Lambda expression many features like Linq with some libraries. Hibernate more stable and easier to learn than entity framework 6 or core which still immature in my opinion. STS 4 IDE and Intelji Idea are lighter comparing to visual studio. The eco system of the JVM and its languages such as Kotlin which is modern java much diverse. Codename one mobile platform alternative to Xamrine is great. No good game engines true coz all of them rubish unless u use C++ and engine like Unreal. Sorry but Microsoft and its open source fake movment is too little too late (C# /ASP.NET CORE) open source but buy VS 2017/2019 cost thousands and VScode not good unless u use it for scripting language , I Wil not use to build enterprise application, I will have to buy VS. Just sharing summary of little thoughts u may have missed. Cheers.
They couldn't figure out their naming strategy at all. That was annoying
You can say C# is multi-platform, but it's support for linux is nothing but a joke, no dedicated ide for linux, yeah rider exists but it isn't free, on vscode if i remember correctly auto completion was made through kite and on many other distros that are not ubuntu or debian variants, you gotta make some "tricks" just to make it work
I don't know about the kite part but its microsoft what did you expect?
Kotlin is edging out Java on the Android scene. I think C# will replace Java once it goes open source
C# is open source long time ago
Who says kotlin gonna edge out 😂 Java.
It has gone open source
Java is better than C#
Thanks for sharing.
But java doesnt have delegate and property getter and setter..
I don't think so, the language that has wrapper classes just so people can use it as generic parameters because they cannot use primitive types as generic parameter, shows how design of language has bee broken!
Yes, in your dreams.
All I hear is mimimi. We're living in 2019, so many great languages are out there, why bother with language idealism. Fuck.
No one really cares any more. So many cool lanuguages are now out there who are way better than both C# and Java.
Java & C# is the most used language for entreprise.
Way better in what aspect??
2nd lol
🔥 If you're learning to code, check out my website 👉 codehawke.com/all_access.html 🔥
Learn more 👉 ruclips.net/video/fpp215OSRV0/видео.html
Asp .net sucks
Why? It looked rather neat when I tested it