The goal of the project is to deploy on my server a simple copy of the AirBnB website
The first piece of the project is to manipulate a powerful storage system:
- create data model
- manage (create, update, destroy, etc) objects via a console/command interpreter
- store and persist objects to file (JSON file)
This storage engine will give us an abstraction between "My object" and "How they are stored and persisted".
The console will be a tool to validate this storage engine. This abstraction will allow me to change the type of storage easily without updating all of my codebase.
It is a command interpreter that is a limited to a specific use-case. In this case this console will be used to manage the objects of this project:
- Create a new object (ex: a new user or new Place)
- Retrieve an object from a file, a database, etc...
- Do operations on objects (count, compute stats, etc...)
- Update attributes of an object
- Destroy an object