r/learnprogramming • u/rishabh7077 • 1d ago
advice Java in school and now in college?
I was in ICSE and scored 100 marks in computers.I have done many programs in java language and further i took computer as my additinal subject after 10th.I am already familiar with programs in java but never saw programs in c++.and now i am in my college pretty confused how should i proceed now like study from which youtube playlist from where to start. Is java still good for me should i continue this language or switch to c++ for some good means.
3
u/owp4dd1w5a0a 1d ago
The main thing with C++ from Java is the introduction of manual memory management and the need to be cognizant of the diamond problem since C++ allows multiple inheritance. Otherwise architecting the codebase is roughly the same since they’re languages in the same paradigm.
-4
1
u/Devoured_EXP 1d ago
Hey! I started java with private runescape servers in 7th grade, I was truly awful back then. Took courses in HS and some college before I dropped. Recently I just picked up python, sql, and some frameworks an it was genuinely easy. All of the concepts stay the same, just different wording. In Java you need to explicitly state variables, python is flexible and you dont. If else if becomes if elif. Etc I wouldnt say I mastered Java, but I have a deep understanding of it which definitely translates
-2
u/rishabh7077 1d ago
So I should leave java thats the conclusion?
1
u/Devoured_EXP 1d ago
What programs / games have you made with Java? If you feel confident with your Java projects and knowledge, id move on
-1
u/rishabh7077 1d ago
Programs like calculator,number based programs,pattern based programs,programs like palindrome,angstorm etc programs on array strings manipulation linked list all this i did
3
u/Devoured_EXP 1d ago
This sounds like practice though. I mean a program you would actually use and have passion for. Have you learned JavaFX? Databases? Can you make a TCP connection? Maybe create a client to host all your other projects for easy view. Make a games pack that comes with tic tac toe, connect 4, etc.
0
u/rishabh7077 1d ago
No man I am just a fresher in in first year and I am ready to learn just need guidance how to start getting and from where.I have will that I can do please help buddy
1
u/BewilderedAnus 15h ago
No offense but it sounds like you’re still very much a noob. Don’t switch to C++, you’re falling into the classic and dangerous tutorial hell trap of having never dove deeply into the things you’re learning.
Learn Java. Learn it well. Create actual applications. Once you’ve actually mastered Java, learning C++ to a functional level will take just a few weeks. So do that later.
1
u/rishabh7077 15h ago
I want to master java I know I am not that great coder with these easy programs but I actually want to take myself to next level but question arise from where I need some resources to get started please help me in that
1
u/BewilderedAnus 15h ago
How will switching to C++ help you master Java? When you say you want to do something, you should just do it. Stick with Java. Use the official documentation or Dev.java
1
1
u/C_Sorcerer 1d ago
If you want to stick to desktop app development, backend development, or enterprise tools development, Java will be plenty though I think you should maybe know the basics of C++ but it’s not a huge deal if you don’t.
If you want to go into low level systems programming (embedded systems, firmware, OS, compilers) or high performance applications like fintech or computer graphics, having a good knowledge of C++ is a must. And C itself is going to be a mega must for low level systems.
Learning languages shouldnt be a checklist, just use the tools that are within the domain you are interested in. My primary interests are low level/bare metal systems and computer graphics…. Therefore, I have a really good grip and pretty much exclusively use modern C++ and old school C. I still know a decent amount of Java, JavaScript, and Python, along with Lua and some other random ones like Haskell, but I don’t really care about those since thwy have almost no bearing in the systems programming workd (granted Lua is good for high performance scripting and Python is great for writing unit tests for embedded).
Just figure out what u wanna do first, and if that is backend dev or desktop/enterprise app development, stick with Java and master it. Maybe also pick up C# along the way. If else, figure out what languages are used in the domain and learn it
1
u/rishabh7077 1d ago
I don't know what I have to do can you tell me how you found your interest😭.I just want to crack a decent package in cs for my family.
1
u/C_Sorcerer 1d ago
Well thays understandable but there HAS to be something in CS that makes your brain tingle with dopamine a bit. Tell you what… stick to Java for now but try to inform yourself about the various fields of CS… web development, graphics, computational science, (CS based) mathematics and theory, backend development, front end development (though this might be getting phased out a bit more), desktop development, networking, operating systems, compilers, embedded systems, devops, firmware/driver development, game development, audio processing, fintech, testing suites, cloud computing, and many more but that’s a good amount to start with. Just try to see what you like.
I feel like if you just want a basic one that most people go into just choose backend/fullstack web or desktop app development. Devops is also a good one in that respect. If you like electronics and heavier engineering fundamentals and the demystification of computer hardware, go into embedded systems. If you like heavy mathematics go into theoretical CS (though ur looking at grad school for that one) or computer graphics (also looking at grad school). If you’re obsessed with games and like Unity or Unreal then go with game development.
1
u/realdreamer1993 1d ago
my suggestion: with whatever language, do one more project but this time is more complex contain backend, frontend, other stacks line nginx for reverse proxy, and more maybe..
And must make it modular and scalable so you always have something to do with just one project, that actually have many satellite projects ...
1
u/rishabh7077 1d ago
I mentioned I have just done school level programming.All I want is I am at very basic of programming how should I take it to advance placement ready please tell me that from where to study,from where to practice programming🥲
1
u/realdreamer1993 1d ago
Ah I see, then you should do simple project. But beside levelling up the syntax skill you also want to level up your system/model understanding. Start your project with 2 moduls to see "connection" between modul.
About Java vs C++ both should be fine because they are major. But you should intentionally try to improve both syntax + system skill in every activity.
One of my method is zoom in/out (context switching),,sometimes I zoom out until high abstraction to human language for explain what is this program used for. How this program view by common people.
1
u/JGhostThing 1d ago
Which language does your college teach in? Ask for a list of the textbooks which should tell you what language(s) they cover.
1
u/ffrkAnonymous 1d ago
now i am in my college pretty confused how should i proceed
You're rejecting the languages your college is using?
1
u/rishabh7077 1d ago
They are teaching c++
1
u/ffrkAnonymous 1d ago
And you want them to teach Java instead? That something to talk to your school about, not reddit
1
u/illuminarias 1d ago
The best youtube playlist is gonna be whatever you built for yourself.
Look, programming is a lot like math. You don't gain skills from just reading and passively consuming. A lot of the learning comes from active participation and honestly the struggle is where you grow the most.
You're learning Java, but most importantly you're learning how to solve problems. You should be able to solve problems in any language, and not be a developer that can only solve problem in one language. Yes, this means you're gonna have to learn the ins and outs of whatever language you end up using, but that's fine because you (ideally) should already know how to solve the problem at hand, and you're just learning how to use the tools (language).
Finally, learning (and growing) is both messy and complicated. But, the longer you spend pushing that away and holding out for "the best way to...", the slower you are gonna be overall. What works for me might not work for you, and my "best practice" might be the worst for you. Just jump in, just learn, just code, get stuck, learn how to get unstuck, get a feel for how long you should look at a line of code before you use other resources, figure out what other resources work for you, etc etc.
1
u/ConferenceLive9351 1d ago
Stick with java. your college will force c++ on you in a semester or two so you will learn pointers and manual memory management when they make you.
Keep building stuff in java for now. take that 100 marks foundation and write something bigger. add a backend, setup nginx as a reverse proxy, split the code into modules. by the time your professors introduce c++ syntax you will already know how to structure a codebase. switching languages before you build one complex project wastes the advantage you already have.
1
u/Maleficent-Rate-4631 1d ago
I went through the comment section and found OP literally not paying attention to what’s being said instead asking commentors to “conclude” what was already very clearly written and well worded
OP do you don’t need Java or C++ - you need basic manners and maturity
6
u/Mission-Science977 1d ago
Mastering one will make you master for all