course-project-the-cat-confirms created by GitHub Classroom
- Messages are now working!!
- Architectural changes:
- Interface Adapter are widely used to reduce dependencies between concrete classes
- (Dependency injection) by making an IMessage interface and inject such instance in Chatroom's method calls, we are able to remove Chatroom's dependency on Message
- (Boundary) If a use case class ever needs to depend on a gateway (UserProfile depends on UserRepo), an interface of the gateway is stored in the use case.
- (Facade)Large classes have been refactored into smaller classes, either through static function in a helper class(HTTPHelper) or the Facade design pattern
- (Clean Architure) is now stricly followed to avoid cross layer dependencies
- Unit tests are added for most classes except the Server class, which was mainly tested by Postman. If needed, we can share the test cases.
- All classes are documented. Most controller/viewer/gateway classes are heavily documented
- All required Phase 2 documents:
- Android SDK (Version 28 or higher)
- Node.js (Version 16 or higher)
Note these steps are also required for first-time setups:
cd web
npm install
npm run android-build