For ICS 211 and the rest of your ICS career it is highly recommended that you set up a good software development environment. In this experience you will begin the process of creating a high quality software engineering environment on your computer.
This is an optional experience.
Preferred hardware is a laptop with >= 2 Ghz processor, >= 2 GB RAM, >= 20 GB free disk space, and wireless access. As noted in the lecture, a Dell Laptop satisfies these requirements for $500-$1000. Note that “netbooks” are not suited for professional software development: while more portable, their screens are too small and they generally have less RAM and slower CPUs.
An up to date release of Mac OS/X or a Linux-based OS are the preferred operating systems for this class. If you must use Windows, you should use the latest release.
Most of the time, you will need to install a new version of Java for this course. To see whether you will need to do so, open a command shell and type java -version
:
$ java -version
java version "9.0.1"
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
If the ‘java’ command does not work, or if the version is not 9.0.x, then you will need to install a new version of Java JDK following the directions at the Java SDK Downloads Page.
You must download and install the JDK version of Java, not just the JRE.
Some of you might need to switch back and forth among different versions of Java. For example, you might need to use Java 9 for this course and Java 8 for your research project (because, for example, it requires a library that only runs on Java 8).
There are a variety of ways to switch between Java versions:
You can program in Java just using a text editor and the Java compiler and virtual machine. Please don’t. Modern IDEs make you a vastly more productive developer. There are many popular IDEs available:
Install your chosen IDE and learn how to use it. Follow the tutorials and become proficient with your IDE.
Since Eclipse is installed in the labs so you might want to use Eclipse. We have some Eclipse configuration tools to help you write code the follows the Java Coding Standard.