external caller of the interface, so that we do their own duties, not cross-border; Second, through the inheritance + polymorphism of this built-in mechanism, at the language level supportNormalization Design and make it possible for insiders to see the design from the code itself --but, note that justSupportnormalized design. A layman who does not know how to m
implementation code is as follows:// driver Interface Class Public Interface Idriver { publicvoid Drive (ICar car);}// Automotive Interface Class Public Interface ICar { publicvoid run ();}// Driver's realization class Public class Implements idriver { @Override publicvoid Drive (ICar car) { car.run ();} }// Mercedes-Benz car implementation class Public class Implements ICar { @Override publicvoid run () { System.out.println ( "Mercedes Benz ..."); }
I went home yesterday. By the way, I brought back a lot of webcast and stayed in bed for an afternoon. Because there are a lot of design patterns in the Enterprise Library, I listened to Microsoft's lecturers for an afternoon.
Alas! The quality of webcast is really junk.
When I heard it, I found out that I suddenly couldn't think of the four principles of object-oriented, so I had to hurry up and learn agai
Compared with the C/S structure, the B/S structure is restricted by the network bandwidth, which is not conducive to statistical analysis of large data volumes. network transmission has potential security problems, the user interface is not as friendly as the C/S structure, but with the development of network bandwidth and network applications, coupled with the popularity of Ajax technology, as a result, mo
content of another module (primarily data members), it is called content coupling. Is the worst kind of coupling.
Cohesion Poly-Low couplingWhy high cohesion and low coupling: reducing complexityCohesion the low coupling means that the higher the cohesion the better, the lower the coupling the better: not because the high cohesion and the low coupling are conflicting.Class design principles (
Six principles of design mode (4): interface isolation principle
Definition:The client should not rely on interfaces that it does not need; the dependency of one class on the other class should be built on the smallest interface.
Problem:Class A relies on Class B through interface I, and class C relies on Class D through interface I. If interface I is not the sma
This article mainly introduces the summary of several Python function method design principles, this article explained that each function to do only one thing, keep simple, keep short, input parameters, output using return statements, etc., the need for friends can refer to the
In any programming language, the application of a function is mainly in the following two situations:
1. code block Repeat, this
Principles of design patterns single responsibility principles
For a single responsibility, each class is only responsible for one function, or each class is only responsible for one responsibility. This will not affect too many contacts when you need to modify it,Rys replacement principle
Definition 1:If there is an object O2 of Type T2 for every object O1 of Ty
definition: The client should not rely on interfaces it does not need, and the dependency of one class on another should be based on the smallest interface.The problem is that Class A relies on class B through interface I, Class C relies on class D through interface I, and if interface I is not the smallest interface for Class A and Class B, then Class B and Class D must implement methods that they do not need.Solution: Split the bloated interface I i
Declarative: After Reading I believe that in the course of learning, I will constantly update this article, and ultimately achieve a thorough understanding.Some time ago, I saw First, we need to understand the three principles of object-oriented (encapsulation, inheritance, polymorphism ). Design Pattern prerequisites:(1) programming for interfaces, rather than implementing Programming(2) prioritize th
of the core content areas on the page are generally scrollable or scalable, and can be clearly identified to occupy the maximum space on the page. The core content area should not be too much to avoid clutter.Layout Design PatternsFrom the actual work experience, summed up several layout design patterns, similar to the GOF design pattern, the pattern refers to a
refinement of the interface can improve the design flexibility is not a fact, but if too small, it will result in an excessive number of interfaces, resulting in complex designs. So be sure to be modest.
Customizing the service for an interface-dependent class exposes only the methods it needs to the calling class, and the methods it does not need are hidden. A minimal dependency can be established only by focusing on providing a customized servi
This article mainly introduces several Python function method design principles, this article explains how to do one thing for each function, keep it simple, keep it short, input and use parameters, and output and use return statements. if you need a function, you can refer to it in any programming language, function applications mainly come from the following two scenarios:
1. repeated code blocks. at thi
setter method;
That is, the parameter in our set method is an abstract class or interface to implement the transitive dependency object.
(3). Interface declaration implements dependent objects, also called interface injection;
That is, the parameter is an abstract class or interface in the function declaration to implement the transitive dependent object, thus achieving the purpose of directly using the dependent object.
Can be summed up as interface transfer, construction method delivery and s
I recently studied Unix programming art. The first chapter is very good. It tells us a lot about the history and philosophical basis of Unix. The most important part is the 17 design principles mentioned. I know many principles, but I have never summarized them in such detail.
Most of the content below comes from the book "Unix programming art", which is
WebGIS
Design and Implementation Principles
Dr. Hua, one of the representatives of the series 2006-2-18cheungmine1What is WebGIS?My definition is the process of requesting map data or related operations from the WWW server in the Internet field to obtain and present the map to the end user. The consensus is that the client does not need to install any plug-ins (of course, the necessary browser and XML suppo
Design Pattern Six principles: (as far as possible, cohesion and low coupling)1: Single Responsibility Principle: One class tries to accomplish only one function. The proliferation of responsibilities can potentially lead to a class not fully fulfilling a single responsibility.2: Richter Replacement principle (dependence inversion Principle): All references to base classes must be able to transparently use
Recently in the "Head First design mode" is really a good book, in layman's terms, with specific scenes to the common design patterns are very thorough. Slightly sadly, the examples in this book are written in Java and written for us. NET seems to be a little bit uncomfortable. So I wrote the example of each pattern in the book in C #, and, by the way, made some
From: Agile Software Development: Principles, models, and practices: Robert C. Martin, translated by Deng Hui]
Class Design Principles:(1) SRP, The Single Responsibility Priciple ):For a class, there should be only one reason for its change.
(2) OCP, The Open-Close Priciple principle ):Software entities (classes, modul
maximum benefit with the amount of money used up.Tests in the future are also very important. For a game that has dozens of people who have spent several months or even years of preparation, many problems can be found during the tests, only improved programs can ensure the secure release of the game.
BecauseArticleThis article mainly explains how to create a game program. For details about the planning, artist, and music production, please refer to other articles. Next I will talk about the
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.