Performance is difficult to speculate about, in a design not too much time to consider performance, the only way to encourage you follow the simple principles.
Here are some test reports, to tell you can use some simple design:
1) than the pointer connection string to connect simple: the maximum length of 100 to 30 to find a string array string only <0.003 ms (test code).
Analysis Paralysis (analysis paralysis): system analyst for the sake of perfection or excessive delay in specifications carefully established, follow-up time extrusion process, the solution is to use incremental development process (Incremental & Iterative development process).
British Prime Minister Winston Churchill to be a saying: Perfectionism is equal to a standstill - very insightful illustrates the harmful effects of a perfectionist.
A constant search for the "right" answer people tend to suffer from "analysis paralysis", this disease appears to affect a lot of learned people. In fact, learning is achieved through mistakes - mistakes that we learn to walk through, cycling and even driving.
DDD-> OOD-> TDD
OOD: DIP-> (SRP) -> ISP-> (LSP) -> OCP
Use interface to isolate class, the introduction of Mock object isolation test;
An interface represents an abstract interface that is hidden detail;
Interfaces limits the size of TDD cell, ultimately reducing the coupling.
As described by Robert C. Martin, the object composition to achieve the object can be called the idea of 90,180 degree turn, which greatly expanded the three basic implementation structure (sequence, branch, loop), lead to wonderful changes. Object composition, duties entrusted What is the purpose? - Call the turn, generate torque effect.
Usually parallel to the class system that does not produce torque effect.
Design objective? In addition to natural answer: In order to achieve! Have a more far-reaching purpose: to not achieve, that is, through the design trade-off decisions to achieve anything, do not achieve anything. This is a border control problem, too many projects fail to achieve what is not is not, but rather because of excessive delays in achieving delivery.
Programming learning, mainly by reading other people, read The skilled procedures. Their own development practice or exercise, can only be accepted ideas digestion, the use of more skilled and can not really generate new ideas.
Eliminate corporate waste: As long as the user can not see or feel the product input, are a waste.
The purpose is to exchange modeling, modeling is not a discovery process, because you can not trial and error. New areas for research and development, the only way to remain constantly TDD / refactoring, continuous integration, then the model is more a reverse engineering for communication, evaluation, learn valuable suggestions.
When the broad analysis, it will immediately write a bunch of headaches with the TDD code, then, should debut the reconstruction. Reconstruction, the first meaning: in the chaotic code to identify the abstract - ignore the details, to enlarge the essence. When the abstract is found, the reconstruction of the first approach is the interface to separate, then may need to open up several new units, since several new class name, the introduction of several new test unit, the original code should be changed quickly were simple, and extracted the code should be high cohesive.
The image of that, the best program structure is suspended, like a tightrope hanging in sealed metal drums one by one. Suspension is interface is decoupled drums package or module, cable is the architecture. In other words, architecture is entirely composed by the interfaces.
Agile process is a starting point for brainstorming meeting (brainstorming), do not forget that this process produced creative ideas, readily graffiti, code fragments and other bits and pieces all written down and categorized in order to develop the document, and follow the possible nature of the principles of priority to sort, these will promote the development process of fuel, but also the development of the document constitutes a core value.
Design process is always the endless harassment by the performance, simply stop hell up! Always follow the correct approach is simple, intuitive principle - performance issues should be left to the optimization stage to resolve.
TDD method is the most easily acceptable to support reconstruction of freedom, the most difficult is acceptable to follow the principles of OO.
Interface is divided into two types: hanging interface and into the interfaces. This UML diagram can see very clear: good design drawn UML diagram, the interface is always down the decomposition of layers (or commission) details of the high-level abstract model of eye-catching position at the top. Into the interfaces are always in the top, which provide the model number of infrastructure or preconditions.
Corresponds to the "abstract and details of" the best term is the "framework and interface", there are many similar descriptions, such as: "a number", "Global and temporary", "stable and volatile," "repeated reuse and one-time use "," long code and short code "," loop statement with a few other complex simple statement, "...
Remove half of each code, function and flexibility will be twice as powerful.
The code is rubbish, it is not easy to exchange, nor any abstract and flexibility, can only play the role of model validation. Only with the model that is valuable ideas, these ideas are mostly in the development process of continuous learning, knowledge accumulation areas (ie, understanding of needs). Therefore, the development process is the process of learning domain knowledge. Some masters even suggested: The best way is to develop both the development of (N) times - is deeply felt. Almost all of the software are becoming useful after 3.0.
Value object is a very simple, flexible design, but in reality is more present in the system entity object, if we can separate entity object creation, possession, destruction, persistent storage and the duties of a similar structure in, is a reference to the entity object as the value of the object can be designed so that the user entity object can enjoy the tremendous value of the object of interest. Typically, the value of the object is worth pursuing in the operation of a closed design (refer to sets of real numbers in mathematics arithmetic operation).
ZX programming Essay (2)
2010-08-28 来源：本站原创 人气：187
ZX programming Essay (1)
(2005 ~ 2006) Structured programming is procedural programming a subset of its logical structure used to write the program, making understanding and modification of more effective and easier. Ada, Pascal, and dBase and other languages to encourage an
ZX programming Essay (2)
2006-12-04 Performance is difficult to speculate about, in a design not too much time to consider performance, the only way to encourage you follow the simple principles. Here are some test reports, to tell you can use some simple design: 1) than the
ZX programming Essay (3)
2010-09-07 MVC thinking exists in almost all aspects of software design, macro, micro ... and so, at any scale software design, are able to realized that the old principle of this guidance. Software design of the key issues is whether they can captur
Jade a technical blog recommended Essay Index
Wrote a blog a few years, the middle write the stop, stop-write, some things have already fallen on deaf ears, and in order not to have fallen on deaf ears that the valuable stuff, so get this index. enjoy it. Asp.Net Website Optimization Series Asp.
Recommended Yu Essay Index opening technology blog
Wrote a blog a few years, the middle write the stop, stop-write, some things have already fallen on deaf ears, and in order not to have fallen on deaf ears that the valuable stuff, so get this index. enjoy it. Asp.Net Website Optimizer Series Asp.Net
[Transfer] on the accounts. Borrowings. Certificate. Set of books and other basic knowledge of essay
On accounts, loans, vouchers, set of books and other basic knowledge of the essay First, on the accounts 1. Coding accounts. Ministry of Finance issued a decade ago, the industry in recent years, accounting system and the enactment of the "enterprise
用十年学习编程 / Teach Yourself Programming in Ten Years
"计算机语言(C++.JAVA等),学起来简单,教起来也简章".是不是这样?今天浏览互联网,无意看到下面的文章,大家看后可以点评.以下是译文与原文. 用十年学习编程 为什么每个人都急不可耐? 走进任何一家书店,你会看见<Teach Yourself Java in 7 Days>(7天Java无师自通)的旁边是一长排看不到尽头的类似书籍,它们要教会你Visual Basic.Windows.Internet等等,而只需要几天甚至几小时.我在Amazon.com上进行了如下搜
Pyronaridine listing! Ruby programming language
Interactive Net Purchase Excellence Amazon purchase [Original title] The Ruby Programming Language Publishing ] [ O'Reilly Media, Inc. [Author] (United States) David Flanagan; Yukihiro Matsumoto Translator  LIAO Zhi-gang; Zhang Wo [Name] Books O'Re
Can you understand programming you XP
Agile Extreme Programming XP and RUP (ROSE provide large-scale software development "methodology") are two kinds of software development methodology. Great design is a use of all resources, from the entire field of thought to the design of compu
Lua three new books to help out Lua Programming Gems
http://www.lua.org/gems/ We are proud to announce that the book has been published: Lua Programming Gems. edited by LH de Figueiredo, W. Celes, R. Ierusalimschy
Getting Started Programming spring Ten Questions
1, how to study Spring? You can study through the following means spring: (1) spring package download doc directory under MVC-step-by-step and the sample directory are relatively good examples of spring development examples. (2) AppFuse integrates a
Flying gems: the South American hummingbird and the Ruby programming language
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <meta name="ProgId" content="Word.Document"> <meta name = "Generator" content = " Microsoft Word 12 "> <me
2. Framework developers should be comply with a standardized programming model
Strictly speaking, all developers should comply with organizations to develop effective programming norms, however, because the framework of the development of procedures for the preparation of personnel, documents are often Developer Services layer
What is Extreme Programming
ExtremeProgramming (Extreme Programming, or XP) are from KentBeck in 1996. KentBeck in the early nineties and worked WardCunningham, it has been to explore new software development method of software development will enable more simple and effective.
Skip JS core (language structure, data types, functions, objects, collections, strings, etc.) as well as BOM, DOM part of this series of notes to summarize the main "The Return of the King" object-oriented programming part of the knowledge point
TDD-Test Driven Programming
TDD, test-driven development is an important feature of Extreme Programming, which constantly test the code to promote the development, both to simplify the code, and software quality assurance. This article from the developers point of view, introdu
js frame framework programming
Excerpt from: http://www.blogjava.net/lusm/archive/2008/02/11/179620.html 1 outlines the framework for programming A Html page can have one or more sub-frame, these sub-frames to <iframe> to tag, used to display an independent Html page. Here talkin
The Ruby Programming Language Introduction
Click here to download chm part1 Click here to download pdf Click here to download chm part2 Tip: chm version 【Description】 Details of the book Ruby 1.8 and 1.9 versions of the various aspects. Ruby in a brief summary, the book details the following:
- In the app in the use of webview
- Picasa resources requested in the gae tested
- Oracle function Daquan (string functions, math functions, date functions, logical functions, other functions)
- hudson - javadoc report
- Error 400 when uploading fetchserver solution
- Index table and the difference between the standard table
- weblogic v10.3 configuration nodemanager prompt hostname error handling certification
- IE7 and IE8 browser session cookie under the shared problems and differences (Reprinted)
- Polynomials of standardized data structures _ _ _C language single chain