Jump to content

Python vs C++ vs Java vs other

IMPERIUS
On 2/16/2015 at 11:09 AM, tangra said:

Do you want to write a compiler for a particular low level hardare, or some actual hardware implementation end possibly end up in a mental hospital?? Then learn assembly ...

I would highly disagree with this point. Someone who has no understanding of how to program or how computers work probably shouldn't try to learn assembly right out of the gate. I'd be too afraid that the very high learning curve would turn that person off programming forever. Even getting the tool chain up and running is somewhat difficult, compared to just installing a commercial IDE for one of the bigger languages like C#, python, or Java.

ENCRYPTION IS NOT A CRIME

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/13/2015 at 11:58 AM, IMPERIUS said:

Hi!

 

I'm looking into learning to programme programmes and from what I've read people were suggesting Python, C++ and Java for programmes.

What are the main differences? I'm a complete beginner, I don't have any experience. I want to start with something simple like a currency converter and then maybe move on to somethig bigger, maybe something like a bussiness programme. Which one would you suggest for me?

 

Thanks

Any. C++ is generally consider a bit more difficult than others. 

 

Do note that they are general purpose languages meaning you can program anything with it vs specific task oriented languages like matlab which can’t do everything but will do what’s its design for much more efficiently and with greater performance than any general purpose language.

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

Frankly, the only answer I think is appropriate when people ask what programming language should they learn first is "learn programming first, the choice of language comes second". 

 

What I mean by that is that no matter what language you choose, if you don't understand the logic behind, you won't get very far. 

 

Imho a good approach would be picking one (or all three, if you're feeling adventurous) and starting writing (not copy-pasting, writing) code and thinking about what that code does. 

Link to comment
Share on other sites

Link to post
Share on other sites

  • 1 month later...

Tbh if you could somehow get a concrete base in C, you'd get a head start when you learn Python. Everything in it kind of revolves around C. But it takes a lot of time to learn and master C as it has a lot of concepts and you need to practice a lot.

If you're not looking for that, just shoot Python in youtube or any other MOOCs and start learning. Its easy.

 [spoiler=CORMAC]CPU:Intel celeron 1.6ghz RAM:Kingston 400mhz 1.99gb MOBO:MSI G31TM-P21 GPU:Will add one later on! CASE:local ROUTER D-Link 2750U, D-LINK 2730U MOUSE:HP,DELL,ViP KEYBOARD: v7 SPEAKERS:Creative 245  MONITOR:AOC E970Sw HEADSET: Sony MDRx05s UPS:conex ups avr 500va PSU:idk OD:Samsung super writemaster STORAGE:80 gb seagate+ Seagate 1TB OS:Windows xp sp3 themed to Windows 7 + Linux |Rest all pc in my house will be updated from time-time

COMING SOON

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 13/02/2015 at 8:29 PM, eikast said:

Best used for shorter programs or programs that don't rely on complex computations (always chose algorithm with fastest run-time)..

Expect for the fact python is used extensively in data science 

                     ¸„»°'´¸„»°'´ Vorticalbox `'°«„¸`'°«„¸
`'°«„¸¸„»°'´¸„»°'´`'°«„¸Scientia Potentia est  ¸„»°'´`'°«„¸`'°«„¸¸„»°'´

Link to comment
Share on other sites

Link to post
Share on other sites

I vote for starting with Python. It's much easier to learn than C++ or Java. Also don't waste your time with Java, learn/use C# instead. Eventually you'll want to learn C++ since it's amazing but it can be pretty difficult to learn and even harder to master.

Link to comment
Share on other sites

Link to post
Share on other sites

15 hours ago, ElfFriend said:

Also don't waste your time with Java, learn/use C# instead.

Java is by no means my favorite language, but to say it's a waste of time is pretty flawed thinking in my opinion. There are SO many companies that use java. 

 

Regardless, the language isn't as important as learning the fundamental concepts behind them. Syntax between languages is easy. writing modular, maintainable, robust, and cohesive code isn't as simple as going through a language tutorial. Maybe avoid C++ if you are starting from 100% scratch, but otherwise focus on the algorithms and your code design as opposed to how many languages you know. I'd much rather hire a java dev who knows who to write good interfaces with maintainable implementations than a jack of all trades who can write anything from JS to C++, but hacks his/her code together in a "well it works" kind of way.

Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to comment
Share on other sites

Link to post
Share on other sites

8 hours ago, reniat said:

Java is by no means my favorite language, but to say it's a waste of time is pretty flawed thinking in my opinion. There are SO many companies that use java. 

 

Regardless, the language isn't as important as learning the fundamental concepts behind them. Syntax between languages is easy. writing modular, maintainable, robust, and cohesive code isn't as simple as going through a language tutorial. Maybe avoid C++ if you are starting from 100% scratch, but otherwise focus on the algorithms and your code design as opposed to how many languages you know. I'd much rather hire a java dev who knows who to write good interfaces with maintainable implementations than a jack of all trades who can write anything from JS to C++, but hacks his/her code together in a "well it works" kind of way.

My hope is that Java ends up like Basic rather than Objective-C. aka it eventually dies instead of being kept alive by major companies. Still you make good points, I just don't think java's worth learning when C# has the potential to completely replace it in the next several years.

 

As for hacking things together so it works. Not many self learned or even formally taught (university graduates) manage to write code that isn't in the "well it works" category to some extent. I've tried learning how to properly use C++ when I was using it for computer graphics, many of my friends/classmates didn't... They just happily stick everything in one giant 500-1000 line cpp file cause "well it works" and they don't know any better.

Link to comment
Share on other sites

Link to post
Share on other sites

21 hours ago, ElfFriend said:

I just don't think java's worth learning when C# has the potential to completely replace it in the next several years.

Sure MSFT has been getting more and more cross platform, but I simply don't see C# replacing Java in the near future. Both are fantastic languages to learn when looking to get hired.

Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to comment
Share on other sites

Link to post
Share on other sites

23 hours ago, ElfFriend said:

My hope is that Java ends up like Basic rather than Objective-C. aka it eventually dies instead of being kept alive by major companies. Still you make good points, I just don't think java's worth learning when C# has the potential to completely replace it in the next several years.

 

As for hacking things together so it works. Not many self learned or even formally taught (university graduates) manage to write code that isn't in the "well it works" category to some extent. I've tried learning how to properly use C++ when I was using it for computer graphics, many of my friends/classmates didn't... They just happily stick everything in one giant 500-1000 line cpp file cause "well it works" and they don't know any better.

I don't hate C# but I hate Microsoft's stewardship of it (almost as bad as Oracle's efforts to poison Java) and their licensing terms on Visual Studio. Compared to the *free and open* nature of web standards (*really free, not that GPL communist garbage), I hope that .Net and JVM both die in a fire and that some flavor or flavors of ECMAscript/JavaScript with frameworks/libraries on top become the de facto language of everything. If Electron/Cordova apps become efficient then you could write desktop, web, mobile, and server code all in JS - oh what a day, what a lovely day.

Web Developer and Java contractor

Link to comment
Share on other sites

Link to post
Share on other sites

I find oracle to be the lesser evil compared to Microsoft. Both have open sourced implementation like openJDK and mono but for cross platform, java runs circles around C#

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

14 hours ago, programmer said:

If Electron/Cordova apps become efficient then you could write desktop, web, mobile, and server code all in JS

As someone who very much prefers statically typed languages and fewer abstractions, oh god please no :D 

 

If this does end up happening, i hope at least something like typescript becomes the norm to give at least some semblance of type safety.

Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 4/18/2018 at 12:11 AM, programmer said:

I don't hate C# but I hate Microsoft's stewardship of it (almost as bad as Oracle's efforts to poison Java) and their licensing terms on Visual Studio. Compared to the *free and open* nature of web standards (*really free, not that GPL communist garbage), I hope that .Net and JVM both die in a fire and that some flavor or flavors of ECMAscript/JavaScript with frameworks/libraries on top become the de facto language of everything. If Electron/Cordova apps become efficient then you could write desktop, web, mobile, and server code all in JS - oh what a day, what a lovely day.

C# has been getting more and more cross platform. It's even got a really nice jetbrains ide now that can open visual studio solutions (I wish clion could open sln files so that I wouldn't have to rewrite everything in cmake if I want to work on a visual studio made C++ project...). Anyway Rider is amazing and you should check it out. There are still some features missing (ie nice wpf editor like in VS but most of it is there)

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×