2. Good Architecture
• Between each other has good interface design.
• Very easy to understand the function.
• You can add more to make even bigger system.
• After having rule, I never worried about the compatibility.
• Visualisable, it’s easiest way for human to understand.
3. Actually, Most of the
situation
• What shall I put my code? (C)
• How to understand this module? (R)
• How can I modify this part? (U)
• How can I remove this function? (D)
13. 5. Service (Company or GOV)
Service Name Service Content
TV service Provide TV program
Internet service Provide Internet
Gas service Provide Gas
… …
15. 7. Event (Phone call)
Most useful way to communicate between Components,
without dependency.
Open Internet >
< OK, Done Sir
16. 8. Model?
• In AngularJS there is no model.
• Model in ROR, just a class mapped data in
database.
• In front end side, model will be mapping the data
from JSON to object to a Class.
• I don’t like ngResource to mapping the API path
only, when you Get or Post data you won’t have a
callback to be able to process it.
20. File Structure
• Principle: You can find your file very fast.
• /trips/new
/app/modules/trips/controllers/new.js.coffee
• Spot list panel
/app/modules/trips/directives/spot_list_panel.js.coffee
• Trip Manager (manager we say it used for data sharing)
/app/services/trip_manager.js.coffee
• UI-Router Config
/app/configs/routes.js.coffee
21. We are not using
• Angular modularization
(It’s good way to force developer to think about the module
independent. But it’s much more complicated many
situations. For small or middle project no need to use it.)
• require.js
(we use assets pipeline to put all file in to one, super
simple, no need to manage the complicated loading
dependency.)
• Pure Javascript
(We use coffeescript to avoid many javascript traps, also
much simpler and smaller.)