This site is from a past semester! The current version will be here when the new semester starts.
CS2103/T 2020 Jan-Apr
  • Full Timeline
  • Week 1 [Jan 13]
  • Week 2 [Jan 20]
  • Week 3 [Jan 27]
  • Week 4 [Feb 3]
  • Week 5 [Feb 10]
  • Week 6 [Feb 17]
  • Week 7 [Mar 2]
  • Week 8 [Mar 9]
  • Week 9 [Mar 16]
  • Week 10 [Mar 23]
  • Week 11 [Mar 30]
  • Week 12 [Apr 6]
  • Week 13 [Apr 13]
  • Textbook
  • Admin Info
  • Report Bugs
  • Forum
  • Instructors
  • Announcements
  • File Submissions
  • Tutorial Schedule
  • Java Coding Standard
  • Participation Marks List

  •  Individual Project (iP):
  • Individual Project Info
  • Duke Upstream Repo
  • iP Code Dashboard
  • iP Showcase

  •  Team Project (tP):
  • Team Project Info
  • Team IDs
  • Addressbook-level3
  • Addressbook-level 1,2,4
  • tP Code Dashboard
  • tP Showcase
  • iP: Week 4 iP: Week 6


    iP: Week 5

    1. Generate a new jar file extra
    2. Add Increments as PRs: A-Assertions, A-CodeQuality, A-Lambdas, A-Streams
    3. Add Increment: A-Travis
    4. Add an extension

    1 Generate a new jar file extra

    • We recommend that you re-generate a new jar file again and ensure it works. Note that you might have to use Gradle to generate the jar file this time as you need to bundle the JavaFX third-party library into the jar file. Refer to the Gradle tutorial provided (see the shadowJar task).

    2 Add Increments as PRs: A-Assertions, A-CodeQuality, A-Lambdas, A-Streams

    A-Assertions: Use Assertions

    A-Assertions

         Use Assertions

    Use assert feature (not JUnit assertions) to document important assumptions that should hold at various points in the code.

    A-CodeQuality: Improve Code Quality

    A-CodeQuality

         Improve code quality

    Critically examines the code and refactor to improve the code quality where necessary.

    A-Lambdas: Use Lambdas optional

    A-Lambdas

         Use Lambdas

    Use the Lambdas feature of Java in your code, if applicable.

    A-Streams: Use Streams optional

    A-Streams

         Use Streams

    Use the Streams feature of Java in your code, if applicable.

    3 Add Increment: A-Travis

    • We recommend that at least one member of the team attempt the following.
    A-Travis: Set up Travis optional

    A-Travis

         Use Travis for CI

    Use Travis (and GitHub) to perform Continuous Integration (CI).

    4 Add an extension

    • Add at least one extension of your choice, selected from category B, C, or D i.e., pick just one item from one category e.g., B-DoWithinPeriodTasks or C-Sort or D-Places

    Discuss with your team members to ensure that each member picks a different extension.

    You may want to pick an extension that is relevant to your tP so that the code can be reused in the tP later.


    iP: Week 4 iP: Week 6