Homework 3: High-Level Programming Languages#
Building Todo Apps in JavaScript, TypeScript, and React to demonstrate the evolution and benefits of high-level programming languages.
Overview#
This homework explores how high-level languages and frameworks help create high-quality software effectively by building three implementations of the same Todo application:
- JavaScript Todo App - Vanilla JavaScript with DOM manipulation
- TypeScript Todo App - Type-safe version with strict typing
- React Todo App - Component-based architecture with hooks
Presentation#
- View Presentation Slides - Complete presentation covering language comparisons and benefits
Key Topics Covered#
- Abstraction - Focus on “what” not “how”
- Type Safety - Catching errors at compile time vs runtime
- Component Reusability - Self-contained, reusable units
- State Management - Manual vs automatic UI updates
- Maintainability & Scalability - Code organization comparison
Course Principles Applied#
APIEC Framework#
- Abstraction, Polymorphism, Inheritance, Encapsulation, Composition
SOLID Principles#
- Single Responsibility, Open/Closed, Dependency Inversion