Open source Framework Those things 12: Design of Frame 2.0 carding

Source: Internet
Author: User

In the front from all angles, said about 11 articles. So, here's an example of a complete framework design. This is not a blank description, but is based on the construction after V1.0. Therefore, the entire design process, will try to take less detours. Let's take a look!

Methodology
Methodology determines the height that can be reached
Methodology is the fundamental way for people to know the world and transform the world.


It is the way people use to observe things and deal with problems. Generally speaking, the world view mainly solves the problem of "what", the methodology mainly solves the problem of "what to do".


Methodology is a system or system that aims to solve the problem, usually involving the discussion of the problem stage, the task, the tool and the method skill. Methodology will be a series of specific methods of analysis and research, systematic summary and finally put forward more general principles.


Methodology is also a philosophical concept. The fundamental point of view about what the world is and how it is is the worldview. It is a methodology to use this view as a guide to understanding the world and transforming the world. Methodology is the sum of the categories, principles, theories, methods and means which are universally applicable to the specific social sciences and serve as the guiding function.


Tiny framework has a complete methodological foundation, and constructs a complete framework, extension and utilization system on the basis of methodology.

Design Concept
Design concept determines the goal of the design
Use flexibility: It can be used as a whole or only one or several parts of it. Tiny builders believe that a complete framework may need to be made up of a large number of parts, but for a real-world user, it may only require a subset of the functionality. The framework must have this ability, can be used by the user a la carte, use, to avoid as long as the use of a little bit of functionality, it is necessary to introduce many content.


Low learning costs, easy to use: The framework of learning costs must be very low, so that users can be easier to start, to avoid the learning curve due to the difficulty of studying is too steep, too long.


Maintain core Stability: Tiny framework is based on the need for stability, security requirements very high application environment, so its stability is the Framework builder's primary thinking goal, the core is only the use of fully validated and widely used third-party package.


The accumulation of assets: only easy to accumulate knowledge, you can really do more with the stronger.

Design Principles
The strategy of solving the conflict of target when designing principle
The Convention is better than the configuration principle-COC
Don't repeat your own principles-dry
Subtraction principle: The principle of subtraction is our own, meaning that the programmer to do subtraction.
Modular principle: Modularity for the development, height, integration, release, maintenance process in the software development, the role and cost savings or costs. Therefore, the concept of business unit is proposed so that all content related to the module can be put together.
The principle of automatic assembly: throughout the construction of the tiny framework, we pay great attention to the automatic assembly of the integration process, which is required to be thrown in without tube and automatically integrated by the framework.
Subordinate obey Superior principle: Tiny frame is restricted from frame level, make subordinate must serve superior.
Single principle: Through a single principle of mandatory constraints, so that a module only solves the problem that a single module should solve, so as to avoid different problems together to solve the problem caused by beard eyebrows, but also avoid inappropriate dependencies and template references.
Centralized configuration principle: in the tiny framework we have done a lot of work on the configuration, one is the COC method, if not, then the system default value; One is the centralized principle: the need for manual configuration of the content is centralized unified configuration; one for a configuration that does not require manual intervention, it is integrated in the jar package, As part of the publisher's published item.

Eco-Circle
The ecological circle determines whether sustainable development can be
Only by forming a complete open source ecosystem, open source can survive and develop.


Only the output without input mode can not be sustained development.


Tiny open source ecosystem, including tiny framework, tiny open source components, tiny business components, tiny technical support, tiny consulting, tiny training, with strong market competitiveness and sustainable development of the system, showing a new software industry development model.


No matter where you are in the ecosystem, you'll have something to gain, and that's what the ecosystem is all about and the driving force for sustainable development.

Modular
Modularity capability determines the merits of business module governance
The tiny framework is deeply researched and practiced in modularization.


Any content in the tiny business development process can be put into the jar package, including Java class, static resources, JSP and so on, so a business module is not referenced by the project, as long as the corresponding jar package, you can introduce this business module The business module can be removed completely by removing the jar package from a business module.


The business unit of the tiny framework has a very good independence, interchangeability and versatility.

102258_zoxv_1245989.jpg (175.85 KB, download number: 0)

Download attachments

Uploaded 4 minutes ago



Hot Deployment
Hot deployment can help improve system availability
The so-called hot deployment is the software upgrade when the application is running, but does not require a restart of the application.


Common thermal deployment scenarios include OSGi frameworks, but these schemes are intrusive, difficult to develop and debug, and used in a fixed manner.


The bundle of the tiny framework has no essential difference from the common Jar project, with only one configuration file. Therefore, it can be used as a common jar package or as a bundle for hot deployment.

Process Engine
The process engine provides the ability to develop non-programmable
The so-called process engine is the development framework for orchestration support of Business, page, and workflow through a process-based approach.


The tiny framework provides three process orchestration engines, such as business flow, page flow, and workflow (in progress), to facilitate the development of business flow, page flow, and workflow areas.


A powerful visual process design tool that allows for easy process design.

Web Presentation
Web presentation is one of the most serious applications in the Internet
Web application development is an important problem area in the domain of Java EE


Tiny Framework provides a strong web layer extension and UI component support, for Web static resources into the jar package, CSS merge compression, JS merge compression and other aspects have good support. For developers of different roles, a good role can be divided, making the development process more efficient and orderly.


Some of the unique features offered by the leading templating engine make it easier to develop presentation layers.

102943_utul_1245989.jpg (86.41 KB, download number: 0)

Download attachments

Uploaded 4 minutes ago


103329_4ysp_1245989.jpg (107.76 KB, download number: 0)

Download attachments

Uploaded 4 minutes ago


Component Library
Component-oriented development is the guarantee of efficiency and quality
The key purpose of component programming is to modularize the program so that individual modules can be independently developed and tested separately. The extraction, management and utilization of components are the key to component-oriented development.


In the tiny framework, components are ubiquitous, some components are embedded by default, and some require their own manual incorporation. Of course, some students who wish to share components can also publish their own components for others to use.


Component helps drive the accumulation of corporate assets and the reuse of high-level developers ' work, which is particularly important in today's collaborative competitive system.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21st
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
├──org.tinygroup.jquery must use the jquery package
├──org.tinygroup.publiccomponenttinyui Unique resources (base-must depend on bootstrap)
├──/webapp/compatibility (Special) compatibility specific resources for each browser compatibility
├──org.tinygroup.bootstrap using bootstrap latest v3.3.4
├──org.tinygroup.gridsystems grid system (Layout)
├──org.tinygroup.compose typesetting (generally available)
├──org.tinygroup.code Code
├──org.tinygroup.table form
├──org.tinygroup.form form
├──org.tinygroup.button button
├──org.tinygroup.picture Pictures
├──org.tinygroup.icon icon
├──org.tinygroup.animation Animation
├──org.tinygroup.buttongroup Button Group
├──org.tinygroup.navigation Navigation
├──org.tinygroup.dropdown drop-down menu
├──org.tinygroup.unslider Slide
├──org.tinygroup.tab tab
├──org.tinygroup.labelbadge Notes and Labels
├──org.tinygroup.thumbnails thumbnail image
├──org.tinygroup.alert Warning
├──org.tinygroup.progress progress bar
├──org.tinygroup.modal Popup Box
├──org.tinygroup.customerservice Customer Service
├──org.tinygroup.totop back to Top
├──org.tinygroup.example case
├──org.tinygroup.rolling scrolling
├──org.tinygroup.search Search
├──org.tinygroup.ad Advertising
├──org.tinygroup.tags Label
├──org.tinygroup.fold Folding
├──org.tinygroup.maskbar Mask
├──org.tinygroup.comment Comment List
├──org.tinygroup.syntaxhighlighter Code highlighting
├──org.tinygroup.datatablesdatatables Data Sheet
├──org.tinygroup.mmgridmmgrid Data Sheet
├──org.tinygroup.superboxsuperbox Picture List
├──org.tinygroup.zoompiczoompic Picture List
├──org.tinygroup.smart-navigation Navigation Collection
├──org.tinygroup.smart-treeview Tree-shaped menu
├──org.tinygroup.highchartshighcharts Chart
├──org.tinygroup.votecharts Poll Chart
├──org.tinygroup.piecharts Pie Chart Scale distribution chart
├──org.tinygroup.bootstrapdate Date Control
├──org.tinygroup.uedtipsued Tips
├──org.tinygroup.loginregistered Login Registration
├──ORG.TINYGROUP.TRUMBOWYGTRUMBOWYG Editor
├──org.tinygroup.ueditorueditor Editor
├──org.tinygroup.fullcalendarfullcalendar Schedule
├──org.tinygroup.emailtemplate Mail Templates
├──org.tinygroup.error404 Error 404
├──ORG.TINYGROUP.ERROR500 Error 500
├──org.tinygroup.searchpage Search Page
├──org.tinygroup.interfaceelements interface Elements
├──org.tinygroup.forum Forum Page
├──org.tinygroup.timeline Time Axis
├──org.tinygroup.icontab Icon Control tab
├──org.tinygroup.usercomment User Reviews
├──org.tinygroup.tabshowtabs Show
├──org.tinygroup.viewscontrol View Control





Development Tools
Development tools are an extension of the software engineering approach
Without tiny development tools you can complete all the tiny framework-based development work.


With the tiny development tool you can complete the development work based on the tiny framework faster, 5 times times the efficiency increase is not the imagination.


This is the meaning of the development tool.

Template Language Editor

05174203_3lep.jpg (KB, download number: 0)

Download attachments

Uploaded 4 minutes ago


Process Editor

103944_nexo_1245989.jpg (139.59 KB, download number: 0)

Download attachments

Uploaded 4 minutes ago


Visual Interface Editor

104408_e7zi_1245989.jpg (193.11 KB, download number: 0)

Download attachments

Uploaded 4 minutes ago


There are many more stickers that are no longer one by one.

Welcome to the Open source technology community: http://bbs.tinygroup.org . The Code and framework information in this example will be shared in the community. "Self-write framework" member QQ Group: 228977971, let us work together to understand the mystery of the open source framework!


Open source Framework Those things 12: Design of Frame 2.0 carding

Contact Us

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.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.