almwplus

Description

testing
Jiang Ning
Mind Map by Jiang Ning, updated more than 1 year ago More Less
ray C
Created by ray C almost 9 years ago
Jiang Ning
Copied by Jiang Ning almost 9 years ago
8
0

Resource summary

almwplus
  1. 1.Overview and background
    1. 1.1 A web app, divided into client and server

      Annotations:

      • 1. the server reuses WP server, exposes RESTful API to the client; 2. the client build on AngularJS with Node.js ecosystem.
      1. 1.2 the client is a SPA app on AngularJS

        Annotations:

        • SPA: Single Page Application
        1. why SPA?
          1. deployable on various devices

            Annotations:

            • 1. support various browsers on PC or Mobile.chrome, firefox, safari, IE9+ 2. it is very likely ported to native app  with help of ionic or cordova. 
            1. independent to the server as far as possible

              Annotations:

              • 1. only use Restful api to access the server; 2. developing independent.
              1. AngularJS generic support SPA

                Annotations:

                • AngularJS was designed to support SPA.
                1. uses old WP server

                  Annotations:

                  • it is not quite fit to use php server with angularJS technically. And we will use nodejs to re-implement the server.
                2. why AngularJS?
                  1. good ecosystem

                    Annotations:

                    • 1. adapt with nodejs app and tools 2. adapt with other javascript frameworks (bootstrap, jquery) 3. rich maintenance tool chain, yeoman, gulp, bower, generator-ng-poly
                    1. good official support

                      Annotations:

                      • thousands of generic widget ready to be used.
                      1. future trends

                        Annotations:

                        • 1. dominant browsers support ,  more important generic support with next generation browser of Microsoft; 2. ecosystem is growing;
                        1. engineering features工程化的特性

                          Annotations:

                          • 1. hind low level DOM manipulation, make development quick and hide details; 2. modularization makes project extensible.
                          1. testable

                            Annotations:

                            • angularJS big feature, everything could be tested. 
                      2. 2. system architecture
                        1. 2.1 project management

                          Annotations:

                          • project managed by ng-poly, it is a nodejs tools powered by gulp.js. project management have following features.
                          1. automatic building

                            Annotations:

                            • no makefile, no ant.  add source code and build with it. that all no additional makefile and we got runnable package.
                            1. configurable with javascript

                              Annotations:

                              • Based on generator ng-poly and gulp. programmer could add extra code to load correct module, start processes. Use javascript(nodejs) to manage all you need.
                              1. production capacity and development mode

                                Annotations:

                                • 1 .enable to minify and uglify source code, css. we can build for production. 2. we also configure to connect to different server at developping stage. 
                                1. Test module

                                  Annotations:

                                  • we have unit test and e2e test.
                                  1. independent developping

                                    Annotations:

                                    • Thanks to ng-poly, we setup a local rest emulator. it emulator the server restful APIs and programmable. we could develop the client without the server support. in the future if use nodejs as the server, it can be ported into it.
                                  2. 2.2 modules

                                    Annotations:

                                    • we treat all things as module. AngularJS provides this feature. module help us separate complicated things into simple pieces.
                                    1. categories

                                      Annotations:

                                      • there are two kinds of modules: UI modules and support modules; UI modules represent the WP business representation, they are application explorer, tasks etc. support modules acts supporting functionalities, like communication, error handler, widgets, common services etc.
                                      1. LMe and LMi web business prepresentation(UI modules)

                                        Annotations:

                                        • UI modules are business presentation layer, it includes app explorer(lme, lmi), tasks(lme, lmi), lme import packages, deployment(lme, lmi) , dashboard(profiles and computer deployment statistic in donut chart and bar chart)
                                        1. support modules
                                          1. communication

                                            Annotations:

                                            • communication between the client and server is complicated. we need divided its requirement into different layers.  1. DataResource layer, handles http issue; 2. business layer, handles response data and resolves business logic errors;
                                            1. error handler

                                              Annotations:

                                              • we need a unified error handler I for exception issue. Error divided into four levels: fatal, error, warning, info. fatal error is unrecoverable exception, it should block user operation by modal dialog. others will not interrupt user operation in toast form, they could be ignored.
                                              1. widgets

                                                Annotations:

                                                •  widgets is a little encapsulated module which could be reused. we have implemented some widgets by ourselves, such as navbar,  breadcrumb, bar and donut chart. for some common use widget we are using third party ones from angular official site.
                                          2. 2.3 UI design
                                          3. 3.Status and future plan
                                            1. Done pages

                                              Annotations:

                                              • please show the work flow at the time.
                                              1. what would be like in the future

                                                Annotations:

                                                • show some static pictures.
                                              Show full summary Hide full summary

                                              Similar

                                              Structure and Properties
                                              Ella Wolf
                                              almwplus
                                              Sunny Xu
                                              New GCSE history content
                                              Sarah Egan
                                              A View from the Bridge
                                              Mrs Peacock
                                              Testing for ions
                                              Joshua Rees
                                              History- Home Front WW1
                                              jessmitchell
                                              GCSE Chemistry C2 topic notes
                                              imogen.shiels
                                              AQA GCSE Chemistry Unit 2
                                              Gabi Germain
                                              GCSE CHEMISTRY UNIT 2 STRUCTURE AND BONDING
                                              mustafizk
                                              GCSE CHEMISTRY UNIT 2 STRUCTURE AND BONDING
                                              ktmoo.poppypoo
                                              C2.1 Structure and Bonding
                                              elzzie