CMPS 253 Software Engineering - Spring 2019-2020
Mahmoud Bdeir
American University of Beirut
Lesson 1: Inline Logging (The Need for Reusability)
Lesson 2: Log Method (Abstraction Through Methods)
Lesson 3: Logger Class (Abstraction Through Classes)
Lesson 4: Logger Library (Separation of Concerns)
User Story 1: Log To File
Lesson 5.0: LogToFile Method (Adding a Responsiblity: Anti-pattern)
Lesson 5.1: FileLogger Class (Single Responsibility Principle)
Lesson 5.2: FileLogger Library (Separation of Concerns)
Lesson 5.3: FileLogger Library Refactored (Refactoring)
User Story 2: Multiple Output Logging
Lesson 6.0: Log Method
Lesson 6.1: MultiLogger Class and Library
User Story 3: Selective Log Targets (Run-time Configuration Of Objects)
Lesson 7.0: Command Line Argument
Lesson 7.1: Configuration File
Lesson 7.2: Environment Variables
User Story 4: Customizable Log Output Formatting
Lesson 8.0: Design Choices (Don't Repeat Yourself)