Moving Onward from Introductory Java

  • Context: Java 
  • Thread starter Thread starter mowgli86
  • Start date Start date
  • Tags Tags
    Introductory Java
Click For Summary
SUMMARY

To advance from introductory Java and prepare for a Computer Science degree, focus on learning C, particularly pointers, and assembler. Mastering a command line interface such as bash on Linux, Unix, or MacOS is essential for understanding operating systems and software architecture. Engaging with Linux, even when using a Unix-based OS like MacOS, is beneficial for practical experience. Additionally, studying formal algorithms and data structures is crucial for software engineering proficiency.

PREREQUISITES
  • Basic knowledge of Java programming
  • Familiarity with command line interfaces (bash, Unix, MacOS)
  • Understanding of operating systems concepts
  • Introductory knowledge of algorithms and data structures
NEXT STEPS
  • Learn C programming, focusing on pointers and memory management
  • Explore Linux distributions, such as Ubuntu or Linux Mint, using VirtualBox
  • Study formal algorithms and data structures through recommended textbooks
  • Practice using command line tools and scripting in bash
USEFUL FOR

Students pursuing a Computer Science degree, aspiring software engineers, and anyone looking to deepen their understanding of operating systems and programming fundamentals.

mowgli86
Messages
6
Reaction score
0
After learning the basics of Java, what should I be learning about to help me prepare for the rest of a Comp Sci degree?

I am running Mac OS X, so I was thinking of learning my way around the terminal/bash, or something else Unix-based. My ultimate goal is software engineering, so I know that I will need to have an understanding of operating systems and the deep recesses of the software architecture. Also, I'd like to mess around with Linux (I think I've been saying that since the 90's), but would it be pointless to run Linux when I already have a Unix-based OS?

I understand that any answer will be subjective, but I would appreciate any advice.
 
Technology news on Phys.org
Learn C, especially pointers, and maybe some assembler.

Learn a command line interface, bash on linux, unix, MacOs , or even cygwin on widows.

Learn some formal algorithms and logic.

Then depending on what strikes your fancy, databases, web servers, etc...
 
you should learn the unix like or maybe linux terminal , try ubuntu hehe
btw for fast progress in java visit this site :

http://download.oracle.com/javase/6/docs/"
 
Last edited by a moderator:
I'm in a similar position, maybe a year or so ahead of you, studying Comp Sci and learning Java, Linux, etc

The MacOS shell is similar to the shell(s) in Linux, but there's big and little differences all over the place. Learning one will help learn the other.

I run Windows but I do all my school work, and some of my playing, in Linux. I use Virtualbox to run Linux Mint 10 (based on Ubuntu) in a virtual machine. This is convenient as I often need to switch between OS's.

Get your hands dirty! :)

The more you do, the more you know. Linux is great fun and very powerful, you'll learn a lot about operating systems if you dig around, and there's a motherload of free software and libraries out there for you to use.

I've just completed my first proper course on Algorithms and Data Structures, core concepts for Computer Science / Software Engineering, and found it fun and very difficult! https://www.amazon.com/dp/0262033844/?tag=pfamazon01-20 which I found to be fantastic and includes many exercises.
 
Last edited by a moderator:
C/C++, Java(Core & Advanced) and Assembler
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
5K
Replies
3
Views
2K
Replies
3
Views
4K
  • · Replies 33 ·
2
Replies
33
Views
8K
  • · Replies 8 ·
Replies
8
Views
2K
Replies
35
Views
10K
  • · Replies 15 ·
Replies
15
Views
5K
Replies
60
Views
11K
  • · Replies 10 ·
Replies
10
Views
3K