So far, I have finished learning several design patterns of the created model. Let's take a look at them.
It takes a short time. It is better to create a model that is relatively simple and will not be so smooth in the future. since there is no real practice in the project, so far, I think I have not mastered it, just a little understanding of the design model.
People speak English, so I also summarize the knowledge I know about the creation-type
the parent class, the post-condition (that is, the return value of the method) of the method is stricter than that of the parent class;
Dependency inversion principle:
Invert dependency to dependency Interface
Upper-layer modules should not depend on lower-layer modules. They all depend on an abstraction;
Parent classes cannot depend on child classes. They all depend on abstract classes;
Abstraction cannot depend on or depend on abstraction;
Interface isolation principle:
The dependence of a
void Decrator (person component) {this.component = component; public override void Show () {if (component!=null) {component. Show (); }}}///base. Show ();}} class Jonson:finery {public override void Show () {Console.WriteLine ("Jeans"); Base. Show (); }} class Shose:finery {public override void Show () {Console.WriteLine ("Bull Shoes"); Base. Show (); } }}* Each functional layer is loaded together, then the inner function is called by the topmost instance
Learning JavaScript design patterns: class inheritance and javascript Design Patterns
Before doing one thing, you must first understand the benefits of doing this thing, and believe that no one is willing to do things for no reason. In general, when designing a class, we actually want to reduce repetitive code and use inheritance to do this perfectly. With the Inheritance Mechanism, you can design the exist
One of cainiao's design patterns is thought preparation and cainiao's Design Patterns
As a cainiao, we always want to become a big bull one day. In fact, we have this idea. This shows that we are a group of progressive children.
First of all, I used the most common method in the previous column. It was the code written by a programmer. I wrote five APP tutorials, with three online apps, this is actually
Design Patterns notes-Abstract Factory patterns
Abstract:Design Pattern learning-abstract factory patternThis paper introduces the basic concepts of the abstract factory model and provides the C # Programming LanguageProgramExample
Abstract Factory mode provides an interface to the client, so that the client creates objects in multiple product families without specifying a specific type. This document c
I have only been studying programming for two years and have not done any big applications yet. I joined the C language and made several small games such as Russian. Sophomore contacts win api and DX and understands C ++. At that time, I really felt that C ++ had nothing to do. It was just a high-level C. But later, I gradually discovered the depth of object-oriented design. Write in C ++
Program It is really difficult. Unlike C, it adds functions to implement functions, but considers the maint
Object-oriented Thinking of design patterns, design patterns OO
[This article is my own learning notes. You are welcome to repost it, but please note the Source: http://blog.csdn.net/jesson20121020]
Object-oriented (OO) thinking:
1. Consider classes
Term2. Consider attributes
Cannot be separated from the specific application environment3. Consideration Method 4. Consideration of the relationship between c
. NET, it is often possible to take advantage of the characteristics of events and delegates to implement the observer pattern, which is a more elegant scenario.Iii. examplesWe now use events to implement the Observer pattern. We design a simple example of a credit card consumption that requires a debit to the user's account while the user is being charged, as well as an SMS alert.The credit card class is defined first, and when the consumption amount changes, it triggers the Notify method to no
1. Adapter mode1) Class of Adapter mode 2) The adapter mode of the object 3) adapter mode for the interfaceThe adapter for the interface is this: sometimes we write an interface with multiple abstract methods, and when we write the implementation class of the interfaces, we must implement all the methods of the interface, which is obviously sometimes wasteful, because not all methods are needed, sometimes only some, here in order to solve this problem, We introduced an interface adapter patte
client loose coupling relationship, which makes the subsystem changes will not affect the client calling it, only need to adjust the appearance of the class.3, the modification of one subsystem has no effect on other subsystems, and the internal changes of the subsystem will not affect the appearance object.Disadvantages1, the client can not be very well restricted to use the subsystem class, if the client Access subsystem classes to do too many restrictions reduce variability and flexibility.2
type T, and the return value of the same method (overloaded or overridden) of the subclass is S, then the Richter substitution principle requires s to be less than or equal to T.
3. Dependency inversion principle (DIP):
The high-level module should not rely on the bottom low-layer module, both should rely on its abstraction;
Abstraction should not depend on details;
Detail should be dependent on abstraction.
The dependency of a PS object is passed in three waysOne, the construct
(); Stockquotation.setvalue (2090.9);}}We found that the main class calledBillboard.deletethisdisplay ();Then the bulletin board Billboard was no longer an observer, and all it could not receive was any stock market.This simple code implements the Observer pattern.We can find out. When a new type of observer appears. The code for the theme does not need to be changed.The subject does not care about anything else, just sends a notification to all objects that implement the Observer interface.The
Learn design patterns with me (-) and design patterns. Learn the design mode with me (-). learn the design mode. today we will study the Singleton mode together: to learn a model, we always need to know the application scenario. Otherwise, it would be like learning a design pattern with me (-) and learning the design pattern.
Today, let's take a look at the Singleton mode:
To learn a model, we always need
log in logs) { Console.WriteLine (log. VisitDo you see the role of the visitor pattern? It separates the responsibilities and effectively encapsulates the changes. In the above example, Group A is only responsible for the log API, and Group B is responsible for getting the log. In the development will often encounter mutual invocation of the situation, whenever this time, the first consideration of the allocation of responsibilities, the interface to isolate the work, determine the invocation o
of the Object.defineproperties or Object.defineproperty method type. It allows you to set properties such as enumerable, writable, or configurable. If you want to implement prototype mode yourself, instead of using object.create directly. You can use code like the following to achieve the above example:varVehicleprototype ={init:function(Carmodel) { This. Model =Carmodel; }, Getmodel:function() {Console.log (' Vehicle mould is: ' + This. Model); }};functionVehicle (model) {functionF () {}; F.pr
.run(); }}The operation requires interaction, first of all, the requirement to enter the H1 model of the Hummer if there is a sound, as follows:-------H1型号悍马-------- H1型号的悍马是否需要喇叭声响?0-不需要 1-需要输入“0”后的运行结果如下所示:-------H1型号悍马-------- H1型号的悍马是否需要喇叭声响?0-不需要 1-需要0悍马H1发动... 悍马H1引擎声音是这样的... 悍马H1停车...-------H2型号悍马-------- 悍马H2发动... 悍马H2引擎声音是这样的... 悍马H2停车...The results of the operation after entering "1" are as follows:-------H1型号悍马-------- H1型号的悍马是否需要喇叭声响?0-不需要 1-需要 1悍马H1发动...悍马H1引擎声音是这样的...悍马H1鸣笛..
Six principles of design patterns (3) -- six principles of dependency inversion and Design Patterns
Definition:
High-level modules should not depend on low-level modules. Both of them should depend on abstract interfaces. Abstract interfaces should not depend on specific implementations. The specific implementation depends on the abstract interface. The dependency Inversion Principle is called Dependence In
Java and design patterns-template patterns
The template mode can be understood as the step mode, and the steps can be clearly followed when you add the template mode. The concept of a template should be very familiar to many people. Write a resume and a thesis. If there is a template for our reference, it will be easier to write and more handy. This resume template and thesis template can be considered as s
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.