This site is from a past semester! The current version will be here when the new semester starts.

Using this WebsiteWeekly Schedule


Module Expectations

Here are some important expectations of the module from you.

Prior Knowledge: Java and OOP

This module requires you to write Java code almost every week, starting from the very first week. If your Java skills are rusty, do brush up your Java programming skills.

In particular, you may want to have a look at the new Java features such as streams, lambdas, Optionals, that may not have been covered in previous Java modules.

CS2103 students: This module assumes a reasonable prior knowledge of Java and OOP because most students taking this module have taken two Java modules before. If you are totally new to Java, you may be better off switching to CS2113 (Software Engineering & Object-Oriented Programming) instead.

Workload

As 70% of this module is based on CA (see grade breakdown), it can appear to be heavy. However, it is not expected that you will spend more time on this module than its e.g., if this module is core for you, it should not take more time than other core modules at the same level in your programpeer modules.

  • Note that the module contains more things than a typical students can do, in order to provide enough things for even the strongest students to learn as much as they wish to.
  • This means it is perfectly OK if you don't have time to learn everything the module offers. Control your workload based on time you spend for the module in a week e.g., 1-1.5 days per week.
  • We have provided a star rating system to guide you when prioritizing which things to do.

Star Rating System

We use a star rating system to indicate the importance of module components. Start with things that are rated one-star and progress to things with more stars. Things rated four stars are optional.

Star ratings for topics (and textbook sections):

  • One-star topics are essential to keep up with the module. We recommend you to learn these topics if you want to pass the module (i.e. up to a C grade).
  • Two-stars topics can get you up to a B+.
  • Three-stars topics can get you up to an A.
  • Four-stars topics : OPTIONAL can push you beyond the limits of the module, and help you get into a level above those who merely limit themselves to the topics of the module. They are not examinable here means can affect the grade during evaluation of various components, not necessarily limited to the final exam (if any)examinable.
  • Topics marked with two icons e.g., : , : , : are relevant topics you are expected to have learned in prerequisite modules. They are given for reference, but are examinable. The number of stars indicates the progression of topics, similar to the star rating system above i.e., one-star prerequisite topics are the most basic and the most important. Four-star pre-requisite topics can be ignored without affecting CAP.

Star ratings for other things e.g., admin info sections:

  • The module uses a similar star rating system to indicate the importance of other info in this website. i.e., information rated as one-star are the most essential. Info rated four stars are non-essential and can be ignored without affecting your ability to follow the module.

Rewards for exceeding expectations

This module deliberately avoids giving extra credit for exceeding the expected bars, in order to keep the workload manageable (of course, doing more will have their own rewards in terms of learning).

If you are a strong programmer wishing to push yourself beyond the expectations set by the module, you can consider applying for CS2103R, to earn an extra 1MC of graded credit.


Using this WebsiteWeekly Schedule