0% found this document useful (0 votes)
57 views

OOP Lab Manual

This document provides information about the CSE1100 Object Oriented Programming lab manual at TU Delft for the 2020-2021 academic year. It outlines the responsible teachers, announcements and deadlines, schedule, computer network access, 5 programming assignments and their due dates, coding guidelines, use of unit tests, the Weblab online programming environment for assignments 1-3, and how to use the IntelliJ IDE for assignments 4-5 and exams. It also provides instructions for downloading and configuring Java, creating and running JUnit tests, and getting started with projects in IntelliJ.

Uploaded by

Alexandra
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views

OOP Lab Manual

This document provides information about the CSE1100 Object Oriented Programming lab manual at TU Delft for the 2020-2021 academic year. It outlines the responsible teachers, announcements and deadlines, schedule, computer network access, 5 programming assignments and their due dates, coding guidelines, use of unit tests, the Weblab online programming environment for assignments 1-3, and how to use the IntelliJ IDE for assignments 4-5 and exams. It also provides instructions for downloading and configuring Java, creating and running JUnit tests, and getting started with projects in IntelliJ.

Uploaded by

Alexandra
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

CSE1100 — Object Oriented Programming

Lab Manual

August 24, 2020

1 General remarks
Responsible teachers A.Zaidman ([email protected]) &
Thomas Overklift ([email protected])

Announcements See Brightspace.

Deadlines See Brightspace.

Period Week 1.1 until week 1.9.

Schedule Times and rooms where the practical sessions are being held are available on https:
//mytimetable.tudelft.nl

Computer and network You can use your own laptop. When on campus you can connect
to the wireless network (SSID: Eduroam). Use your TU Delft provided netID and password.

Assignments There will be 5 assignments. The first three can be implemented on Weblab
https://weblab.tudelft.nl/cse1100/2020-2021. The other two can be downloaded and
need to be implemented using a local IDE (we recommend the latest version of IntelliJ IDEA).
Note the importance of Assignments 4 & 5, which we consider crucial for mastering the
computer exam of this course.

Feedback on assignments. There is no obligation to have your assignments signed off,


although we strongly recommend it. If you have a question about an assignment or if you want
feedback on an assignment which you consider complete, put your name on the queue during
a shared lab, see https://queue.ewi.tudelft.nl. You can only request feedback at the lab
sessions.
Before requesting feedback from a TA, please make sure that you understand your own code,
that your code is properly formatted and that your unit tests succeed. The TA will discuss
your implementation with you at your laptop and ask questions about why you implemented
things a certain way.
For feedback on assignments there are deadlines in place so the workload is
somewhat evenly distributed for the TA’s (and you!). We want to encourage you to
spend time practicing throughout the quarter rather than starting days before the exam!

1
Assignment Final Week Process
1 1.3 Finish on WebLab before queueing for review by TA
2 1.4 Finish on WebLab before queueing for review by TA
3 1.6 Finish on WebLab before queueing for review by TA
4 1.7 Finish in your IDE before queueing for review by TA
5 1.9 Finish in your IDE before queueing for review by TA

Coding guidelines. Make sure to follow the guidelines of each of the assignments. Also,
please adhere to the coding style conventions as mentioned during the lectures and in the book
“Java in Two Semesters” by Charatan & Kans.

Unit tests. Make sure all unit tests pass before signing off your solution with a TA. In the
first few assignments, unit tests are given to you. After that, you should write your own unit
tests.

2 Weblab
The first three assignments, the mid-term exam as well as one of the final exams will offered
through Weblab. Weblab is an online learning system where you can make small programming
assignments. You can access Weblab via https://weblab.tudelft.nl/. Navigate to the
CSE1100 course in the course catalog and enroll to get started.

3 Integrated Development Environment


An “Integrated Development Environment” (IDE) is a fancy term for a text processor with
specific tools for a software developer. From assignment 4 onward and during the final computer
exam you will be writing code using an IDE. There are many different IDE’s out there that
support different languages but in this course we recommend the newest version of IntelliJ
IDEA (https://www.jetbrains.com/idea/). You are in essence free to choose whether you
make use of IntelliJ or something else, but do take into account that we may not be able to
assist you when you encounter any issues with different IDE’s.

Java You will also need Java, more specifically the Java Development Kit which contains
the runtime and compiler. The JDK can be found here: https://jdk.java.net/. We recom-
mend the latest stable version, which is Java 14 (or Java 15 after September 15th 2020), but
any version from Java 11 contains all tools you will need for this course. Mind you, download
the JDK, not the JRE!

Detail If you have a Java source code file and you save this as MyProgram.java and you
invoke the compiler, it will translate your program to byte code and save the byte code in the
file MyProgram.class (if your source code is free of mistakes of course!)

Configuring It may be necessary to configure your operating system (OS) further so that
your OS (and other pieces of software) know where Java is installed. Have a look here if
everything doesn’t work out of the box: https://docs.oracle.com/en/java/javase/14/

2
4 Working with IntelliJ
IntelliJ, the first time When IntelliJ starts up for the first time, it will ask you to configure
some settings, you can change these settings if you want, but the defaults are just fine. After
this you will see a screen where you can create projects. See Figure 1; select ”new project”.

Figure 1: Project selection screen

After this you will have to configure your new project. Make sure you select the Java SDK
you installed before as the Project SDK, see Figure 2. You don’t need to select any additional
frameworks.
Subsequently you can click next twice, and skip over the template (since we do not need to use
a template, see). Finally you can choose the name and location of your project and click finish,
see Figure 3.

Package Explorer At the very left you will see an overview of the workspace and the projects
contained (see Figure 4). Click on a project to expand it and see what’s inside.

Your first Java program Within your project there will be a folder src. This is where you
can create Java classes. Do a right click on the src folder and select New → Class. Give this
class the name HelloWorld. You have now created an empty class.

3
Figure 2: Creating a new project

Figure 3: Creating a new project III

4
Figure 4: IntelliJ overview, on the left, the project overview.

5
5 Working with jUnit tests
Once you’ve implemented some methods you should write tests for your code. Start by creating
a test class, you can easily do this by right-clicking in a class of your choice, and selecting the
menu option "Generate" → "Test...". You can then configure the methods you want to test
in a new class (see Figure 5). When you create your first test class, make sure you add JUnit
5 to the procect (see Figure 6)! Then you can continue to create tests from there.

Figure 5: Creating a test class.

6
Figure 6: adding jUnit 5 to the project.

You might also like