Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Rewrite documentation #63

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

creynders
Copy link
Contributor

Hey @geekdave, I hope you don't mind or feel insulted, but I wasn't entirely satisfied with the documentation. I don't know, I think it feels like it was assembled in bits and pieces. Which it obviously was 😀

Especially for newcomers (w/o a RL background) I think it must be pretty confusing and hard to understand why to use Geppetto in the first place. So I started to rewrite the full README.

It's WIP, I paused at the triple horizontal rule, just to have a clear visual distinction of how far I got.

So, what I've done and where it's heading at: I decided to cut most of the details out and just show how the pieces fit together with an easy example and only the most essential of explanations. My purpose is to split out the full documentation on the various pieces into separate files. This has a double benefit IMO: if you're new to Geppetto you're not overwhelmed with exceptions, syntactic sugar which muddles the basics. On the other hand if you're a seasoned Geppetto user and need to look something up it will be easier to do so if there's a clear demarcation in files. Oh and we desperately need a full API description.

Anyway, as you probably guessed English isn't my native tongue, so there's bound to be a horrific number of grammatical errors and misconstrued sentences.

Let me know what you think, and if you don't like it at all, no problem!

Geppetto implements the Controller tier using the Command Pattern. Commands are automatically instantiated and executed in response to Application Events.

### Context
Metaphorically speaking, if different modules of your app could be considered separate *living entities*, the `Geppetto.Context` would be like each being's *central nervous system*. The Context is responsible for facilitating communication and sharing data between components *within a given module*, providing encapsulation so that this sharing does not extend past the boundaries of that module. This communication is achieved through the standard [Backbone.Events](http://backbonejs.org/#Events) module, with some syntactic sugar for allowing intercontextual communication.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Brilliant description - I really struggled to find the right metaphor for the Context. This is perfect!

@geekdave
Copy link
Contributor

geekdave commented Sep 5, 2014

No offense taken at all. This is desperately needed, especially since the docs were not overhauled when we introduced DI (which is obviously a major conceptual change).

The English looks great so far - please keep it coming!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants