2. Các mẫu đã sử dụng:
- MVC: chia các class theo mô hình model, view, contronller.
- Observer: cập nhật thông tin trong game (điểm, số UFO đã bắn được, số vật phẩm tiếp tế đã thu đc). Xem tại đây
- Singleton: tạo duy nhất đối tượng Shooter.
- Decorator: trang trí các các button trong game (xem tại đây) và để hỗ trợ thêm các kiểu bắn của Shooter (xem tại đây).
- Factory: tạo các đối tượng trong game. Xem tại đây
- State: chuyểnđổi trạng thái của các đối tượng trong game (alive --> dying --> done). (xem tại đây)
4. Thuật toán sử dụng: game sử dụng thuật toán chính để sử lý va chạm là "Bouding box collision dectection" và "QUADTREE". Trong đó QUADTREE là thuật toán chính, xem thêm tại đây.
3. Source code: click here