¡GoConqr estrena diseño! Cuéntanos qué te parece.

Fichas

Module 8

James Herd Computer Science 2 Inglés 26 fichas

Module 8

Fichas del conjunto (26)

  1. 1What is the design principle of divide-and-conquer?Take a big portion of the system and and split into smaller parts
    -seperate people can work on each part
    -each component is smaller and easier to understand
    -parts can be replaced or changed without having to replace or extensively change other parts
  2. 2What is the design principle of increase cohesion?Keep similar services together
    high cohesion is when a subsystem or module keeps together things that are related to each other, and keeps out other things
    types of cohesion: Functional, Layer, Communicational, Sequential, procedural, temporal, utility
  3. 3What is the design principle of reduce coupling where possible?-Reduce the interactions between modules
    -reduce the dependencies between modules
    Coupling occurs when there are interdependencies between one module and another
    -When interdependencies exist, changes in one place will require changes somewhere else.
    -A network of interdependencies makes it hard to see at a glance how some component works.
  4. 4What is the design principle of keep the level of abstraction as high as possible?Ensure that your designs allow you to hide or defer consideration of details, thus reducing complexity
    -good abstraction is said to provide information hiding
    -Abstraction allows you to understand the essence of a subsystem without having to know unnecessary details
  5. 5What is the design principle of increase reusability where possible?Design the various aspects of your system so that they can be used again in other contexts
     Generalize your design as much as possible
     Follow the preceding three design principles
     Design your system to contain hooks
     Simplify your design as much as possible
  6. 6What is the design principle of Reuse existing design and code where possible?Design with reuse is complementary to design for reusability
    - Actively reusing designs or code allows you to take advantage of investment you or others have made in reusable components
  7. 7What is the design principle of design for flexibility?Actively anticipate changes that a design may have to undergo in the future, and prepare for them
    -reduce coupling and increase cohesion
    -create abstractions
    -Do not hard-code anything
    -leave all options open
    -Use reusable code and make code reusable
  8. 8What is the design principle of anticipate obsolescence?Plan for changes in the technology or environment so the software will continue to run or can be easily changed
    -Avoid using early releases of technology
    -Avoid using software libraries that are specific to particular environments
    -avoid using undocumented features or little-used features of software libraries
    -Use standard languages and technologies that are supported by multiple vendors
  9. 9What is the design principle of design for portability?Have the software run on as many platforms as possible
    -avoid the use of facilities that are specific to one particular environment
    -for example, libraries only available in Microsoft Windows
  10. 10What is the design principle of design for testability?Take steps to make testing easier
    -Design a program to automatically test the software
    -in Java, you can create a main() method in each class in order to exercise the other methods
  11. 11What is the design principle of design defensively?Never trust how others will try to use a component you are designing
    -Handle all cases where other code might attempt to use you component inappropriately
    -Check that all of the inputs to your component are valid: the preconditions
  12. 12What is the context to the MVC pattern?Context: User interface software is typically the most frequently modified portion of an interactive application. Users often wish to look at data from different perspectives, such as bar graph or a pie chart. These representations should both reflect the current state of the data.
  13. 13What is the problem to the MVC pattern?Problem: How can user interface functionality be kept seperate from application functionality and yet still be responsive to user input, or to changes in the underlying application's data? and how can multiple view of the user interface be created, maintained, and coordinated when the underlying application data changes?
  14. 14What is the solution the MVC pattern provides?The MVC pattern separates application functionality into three kinds of components
    -model: contains the application data
    -View: displays some portion of the underlying data and interacts with the user
    -Controller: mediates between the model and the view and manages the notification of state changes
  15. 15Draw/think the MVC block diagramDraw/think the MVC block diagram
  16. 16What are the constraints to MVC solution 2?-There must be at least one instance of each model, view, and controller
    -The model component should not interact directly with the controller
  17. 17What are the weaknesses of the MVC solution 2?-Complexity may not be worth it for simple user interfaces
    -the model, view, controller abstractions may not be good fits for some user interface toolkits
  18. 18What does the model do in MVC?encapsulates application state
    -responds to state queries
    -exposes application functionality
    -Notifies views of changes
  19. 19What does the view do in MVC?-Renders the models
    -requests updates from models
    -sends user gestures to controller
    -Allows controller to select view
  20. 20What does the controller do in MVC?-Defines application behavior
    -Maps user actions to model updates
    -selects view for response
    -one for each functionality
  21. 21What are the problems with Model 1 web architecture work?-Not suitable for larger applications (can't handle a bunch of pages)
    -Controller's implementation is spread throughout the design and page-flow ends up being difficult to understand and modify
  22. 22How does model 2 solve the issues of model 1 in web architectures?It implements a Servlet that processes requests from the user and acts as the controller for MVC
    -The services further separate model from view
    -the scheme allows for the data-driven configuration of the application's page flow rather than hard-coding into each application's controller implementation
  23. 23What is STRUTSa popular java framework used to develop thin-client web applications
  24. 24What is the model in the Struts Framework?The model is represented by Action classes
    -the FormBeans are created from HTTP requests and result JavaBeans used to populate JSPs
    -The decomposition of business logic into multiple action classes
  25. 25What is the View in the Struts Framewrokthe view is represented by the Java Server Pages which are executed to build presentations of the model data
  26. 26What is the controller of the Struts Framework?The controller is represented by the ActionServlet's execution of the application's Struts configuration
    -Page-flow is centralized around the execution of the ActionServlet
    -the mapping between Actions and FormBeans
    -Multiple ActionForwards can implement choices in the page-flow

Información

Descripción
2 Computer Science Fichas sobre Module 8, creado por James Herd el 14/11/2019.
Creado por
James Herd
Visitas
2
Valoración

Escríbenos

¿Sobre qué es tu mensaje?

¿Qué te parece el nuevo diseño?

¿Te gusta?