ALL1250 3.6 – UML Sequence Diagram 3.6 – UML Sequence Diagram Sequence Diagrams are used to show your team how objects in your program interact with each other to complete tasks. 2021. 9. 26. 3.5 – Inheritance Issues 3.5 – Inheritance Issues Abstraction, Encapsulation, Decomposition, Generalization. Each of these principles requires you to make a decision on how they apply to a system. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 public class Pizza { private List toppings; private String size; private String crustStyle; public Pizz(String size, String crust) { this.toppings = new ArrayList(); .. 2021. 9. 26. 3.4 – Conceptual Integrity 3.4 – Conceptual Integrity Conceptual integrity is about creating consistent software. It is making decisions about how your system will be designed and implemented so that even if multiple people worked on the software, it would seem as if there was only one mind guiding all the work. Adopting certain agile development practices like daily stand-up meetings and sprint retrospectives, where team.. 2021. 9. 22. 3.3 – Information Hiding 3.3 – Information Hiding Information Hiding Information hiding allows you to provide me with just the information I need for my module to work. You do not need to give me access to everything in your module, and you do not have to know how my module works. Information Hiding Through Encapsulation Access Modifiers There are four different levels of access in Java Public Methods Protected Behavior.. 2021. 9. 21. 3.2 – Separation of Concerns 3.2 – Separation of Concerns Concern Our goal is to create flexible reusable, and maintainable code. Separation of concerns creates more cohesive classes using abstraction, encapsulation, decomposition, and generalization. This creates a system that is easier to maintain because each class is organized so that it only contains the code that it needs to do its job. Modularity is increased in turn.. 2021. 9. 21. 3.1 – Coupling and Cohesion 3.1 – Coupling and Cohesion Coupling Coupling for a module captures the complexity of connecting the module to other modules. Tightly Coupled If your module is highly reliant on other modules, you would say this module is tightly coupled to others. Loosely Coupled If your module finds it easy to connect to other modules, this module is loosely coupled to others. Degree Ease Flexibility Cohesion .. 2021. 9. 21. 2.6 – Generalization Inheritance is used to describe the relationship between classes. What are the three ways in which this relationship is advantageous? - Subclasses that inherit from the same superclass include attributes and behaviors from the superclass. - Changes can be made easily and quickly to a large group of subclasses by making changes to the superclass they inherit from. - Code can be reused through inh.. 2021. 9. 18. 2.5 – Decomposition 2.5 – Decomposition 2021. 9. 18. 2.4 – Encapsulation 2.4 – Encapsulation Besides attributes, a class also defines behaviors through methods. For an object of the class, the methods manipulate the attribute values or data in the object to achieve the actual behaviors. You can expose certain methods to be accessible to objects of other classes, thus, providing an interface to use the class. Encapsulation helps with software changes. The accessible i.. 2021. 9. 18. 이전 1 ··· 99 100 101 102 103 104 105 ··· 139 다음