Code basics

Related notes: Unreal Code Unreal Blueprint

100 megabytes (MB) is not the same as 100 megabits per second (Mbps)

https://refactoring.guru/ Pattern language

Creational patterns

  • how object are created
    • singleton - once created at time
    • prototype/clone - alternative to inheritance - share functionality (like in js)
    • builder - step by step method chaining
    • factory - use fn or method instead of repeating
    • façade - api for complex system (simplify wrapper)
    • proxy - substitute

Structural patterns

  • How object relates to each others

Behavioral pattern

  • how object communicate with each other
    • iterator - traverse (loops) pull -based
    • observer - push based - subscribe to event. one to many
    • mediator - many-to-many -
    • state - / switch or conditional - dont scale well - finite state machine
SOLID Design Principles

Single Responsibility Principle Open-Closed Principle Liskov Substitution Principle Interface Segregation Principle Dependency Inversion Principle

monad - operations on values in chain

creational structural behavioral

singleton pattern

  • restrict instantiation to single instance

observer

  • responde to what is happening
    1. cache sound
    2. register event
    3. call event

command pattern

  • async
    1. comand mannagement
    2. queque
    3. current command
    4. listen adn update

component

flywheel

  • reuse data

state

  • state machine