This site is not ready yet! The updated version will be available soon.
CS2103/T 2020 Jan-Apr
  • Full Timeline
  • Week 1 [Aug 12]
  • Week 2 [Aug 19]
  • Week 3 [Aug 26]
  • Week 4 [Sep 2]
  • Week 5 [Sep 9]
  • Week 6 [Sep 16]
  • Week 7 [Sep 30]
  • Week 8 [Oct 7]
  • Week 9 [Oct 14]
  • Week 10 [Oct 21]
  • Week 11 [Oct 28]
  • Week 12 [Nov 4]
  • Week 13 [Nov 11]
  • 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. Add increments as PRs: A-Assertions, A-CodeQuality, A-Lambdas, A-Streams
    2. Set up CI
    3. Add an extension

    0 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).

    1 Add increments as PRs: A-Assertions, A-CodeQuality, A-Lambdas, A-Streams

    • Add the following increments, doing each in the following manner:
    1. add the extension in a separate branch
    2. push the branch to your fork
    3. create PR within your fork (i.e., from the new branch, to the master branch)
    4. merge the PR; you can try various merge options such as Squash and Merge, Rebase and Merge
    5. sync your local clone with the fork
    A-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

    A-CodeQuality

         Improve code quality

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

    A-Lambdas optional

    A-Lambdas

         Use Lambdas

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

    A-Streams optional

    A-Streams

         Use Streams

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

    2 Set up CI

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

    A-Travis

         Use Travis for CI

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

    3 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