Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Branch: master
Fetching contributors…

Cannot retrieve contributors at this time

29 lines (16 sloc) 1.09 kB
TERMS
=====
Collapsing - reducing an object into DB entry
Linking - the reverse of collapsing, DB Entry => Object
Node - a wrapper for object, providing a common interface during serialization, also wrapper for Entry
Entry - a simple JSON data structure, which will be stored/loaded in/from backend
DESIGN DECISIONS
================
- Only store Joose instances and standard [], {}, because how we can determine the meta-data for arbitrary JS class anyway?
we need class constructor to expand the objects (URL for module and/or name of class)
for example in the commonjs there is no even concept of class (?)
- we need to store objects with traits correctly
- system should be suitable for both client/server sides usage (no naive assumptions about the environment)
- we'll have to pollute each and every object with unique __REF__ property, to track the object's relationships
- system should be non-blocking (JooseX.CPS everywhere)
- system should queue communication with backend as much as possible to avoid/reduce latency problem
Jump to Line
Something went wrong with that request. Please try again.