An open API service indexing awesome lists of open source software.

https://github.com/anirudhuuu/lowleveldesign

a turn-based game ai engine focusing on writing clean, flexible code while following best of low level system design practices
https://github.com/anirudhuuu/lowleveldesign

lld system-design

Last synced: about 1 year ago
JSON representation

a turn-based game ai engine focusing on writing clean, flexible code while following best of low level system design practices

Awesome Lists containing this project

README

          

# Low Level Design

- Mixture of design & coding
- "Programming is coding across time" ~ Google

---

_3 Factors_ to call a piece of code good/bad:

- Readability
- Extensibility
- Correctness

### Readability

- Easy to debug errors & warnings
- Easy to read and understand by other team members
- Easy to change
- Easy to write test cases
- NOT to make a black box
- Bad code means more refactoring
- Increases code of engineering time

### Extensibility

- When a requirement changes slightly then without much code changes/major refactoring you should be able to add new features

> Your reputation is built on your work.
> And your work is documented by your code.

So let your code speak for itself.

### Correctness

- Reputation of engineer is measured in both short term and long term based on No of bugs from customers in production
- Team has to be reliable
- Code must work & there are backups

---

Under the umbrella of low level design, we will be looking at:

- Guiding principles
- Design patterns

---

## Requirement

Taking a game and having the ability to play it through AI.

### Engineering questions?
- What kind of APIs should you be exposing?
-