Creation of the contact list

  • test driven development
  • synchronize accesses to data holder (preventing data races)
  • defensive copy of shared data

Commit

Test exceptions

Minor trick to ease the testing of code that should throw exceptions.

Commit

Singleton design pattern for the ContactList

  • Implement a singleton
  • Setting up test environment (@BeforeEach annotation)

Commit

Wiring the backend

  • have the contact list be updated on new messages
  • test message handling logic by simulating message arrival

Commit

Implementing the View

  • observer pattern to have the view react to model changes

Commit

README + Wrapping Up

  • Shows how to add and typeset a README in the Markdown format

Commit