CN111309404A - System operation method of client framework - Google Patents
System operation method of client framework Download PDFInfo
- Publication number
- CN111309404A CN111309404A CN201911317102.5A CN201911317102A CN111309404A CN 111309404 A CN111309404 A CN 111309404A CN 201911317102 A CN201911317102 A CN 201911317102A CN 111309404 A CN111309404 A CN 111309404A
- Authority
- CN
- China
- Prior art keywords
- framework
- client framework
- client
- interface
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000006870 function Effects 0.000 claims abstract description 28
- 238000012360 testing method Methods 0.000 claims abstract description 11
- 230000008569 process Effects 0.000 claims abstract description 10
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000013499 data model Methods 0.000 claims description 3
- 230000004807 localization Effects 0.000 claims description 2
- 238000011161 development Methods 0.000 abstract description 12
- 238000012545 processing Methods 0.000 abstract description 4
- 230000000007 visual effect Effects 0.000 abstract description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a system operation method of a client framework, which improves the development speed, the expansibility and the test convenience. The technical scheme is as follows: the client framework is based on the development of a business system, standardized processing is carried out from the whole process to specific functions, and corresponding technical means are provided. Generally speaking, the invention reduces the repeated codes manually input through a standardized project template and a Visual Studio plug-in, thereby realizing the rapid development; the invention realizes the interface provided by the framework or the self-defined new interface, and the loading is automatically completed by the framework, thereby being easy to expand. The invention supports the unit test of the main service function, reduces the proportion of manual test and is convenient for testing.
Description
Technical Field
The invention relates to a client development technology, in particular to a system operation method of a client framework.
Background
Currently, in client development, MVC (Model-View-Controller) mode, or some variants thereof, such as: the MVVM (Model-View Model) and the MVP (Model-View-Presenter) forcibly separate the input, processing, output and the like of the application program to achieve the purpose of decoupling.
Taking MVC as an example:
the Model is used for representing data and related business rules, and is irrelevant to a specific data format, so that data can be provided for a plurality of views, and the repeatability of codes is reduced;
view, which represents an interface that can be seen by a user and interacts with the user, has strong diversity, and has great difference for adapting to the View of a mobile phone screen and a computer screen;
and the Controller receives the input of the user and calls the model and the view to complete the requirement of the user, and does not output anything and do any processing.
Common in the market today are: structs, AspNet, Vue, etc. are relatively mature MVC-like frameworks, and there are also some relatively good frameworks, such as Prism, etc., in the WPF (Windows Presentation framework) aspect on NET platform.
The frames have a common characteristic that the frames are generally biased to the bottom layer in order to ensure universality, that is, more customization (secondary development) is needed during specific service development, so that the development speed is reduced, and the expandability is not good enough.
Disclosure of Invention
The following presents a simplified summary of one or more aspects in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects, and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later.
The invention aims to solve the problems and provides a system operation method of a client framework, which improves the development speed, the expansibility and the convenience degree of testing.
The technical scheme of the invention is as follows: the invention discloses a system operation method of a client framework, which comprises the following steps:
step 1: the client framework executes initialization operation;
step 2: the client framework starts a main form;
and step 3: the client framework realizes authentication login operation;
and 4, step 4: loading a plug-in of a client interface by a client framework;
and 5: the client framework executes the business operation of the user based on the business component;
step 6: the client framework implements the operation of exiting the system.
According to an embodiment of the system operation method of the client framework of the present invention, the initialization operation of step 1 includes, but is not limited to, loading system configuration and loading interface themes, the client framework scans all program sets and performs automatic combination, and then sequentially calls all instances implementing the isysteinitiation interface in the MEF framework in the system to perform the initialization operation.
According to an embodiment of the system operation method of the client framework, in step 2, the client framework calls the highest priority in the instance of implementing the imalnframe interface in the MEF framework, creates the main form and starts.
According to an embodiment of the system operation method of the client framework, in step 3, the client framework calls the highest priority in the instance of implementing the ILoginService interface in the MEF framework to complete the authentication login process.
According to an embodiment of the system running method of the client framework, in step 4, the client framework sequentially calls all the instances for realizing the iframeplug-in interface in the MEF framework to complete the loading of the main form.
According to an embodiment of the system operation method of the client framework of the present invention, the service component in step 5 is a component-model-view-command mode, wherein the component represents an entry of the service function, the model represents a data model of the service function, and the view represents a user interface of the service function, and the command mode represents a service logic corresponding to a user operation of the service function.
According to one embodiment of the system operation method of the client framework of the present invention, each command pattern represents a function point, and a function list provided by a service component is identified by a group of command patterns to clarify its service scope; the command mode carries out fine-grained control; the model and command mode are separately initialized to perform unit testing; command schemas are bound to views as properties of the model.
According to an embodiment of the system operation method of the client framework, in step 6, the client framework sequentially calls all instances implementing the isystemm localization interface in the MEF framework, and executes exit work including state saving and resource cleaning.
Compared with the prior art, the invention has the following beneficial effects: the client framework of the invention is based on the development of a business system, and performs standardized processing from the whole process to specific functions and provides corresponding technical means. Generally speaking, the invention reduces the repeated codes manually input through a standardized project template and a Visual Studio plug-in, thereby realizing the rapid development; the invention realizes the interface provided by the framework or the self-defined new interface, and the loading is automatically completed by the framework, thereby being easy to expand. The invention supports the unit test of the main service function, reduces the proportion of manual test and is convenient for testing. In detail, the invention has innovation points in two aspects of system operation process and service component composition:
1. system operation process
The invention defines a general system operation process, defines a corresponding extension point (IComposition interface) for each stage, standardizes the process and reserves opportunities for self-defining. When the business system is developed, the business function development can be rapidly carried out without worrying about the starting process of the system and matching with the project template and the Visual Studio plug-in provided by the framework, so that the delivery speed is improved.
2. Business component composition
The scheme provides an MMVC (Module-Model-View-Command) mode, and creatively improves the Command to the level equal to the Model, thereby laying a good foundation for defining the function range, performing fine-grained control, binding user operation and the like.
Drawings
The above features and advantages of the present disclosure will be better understood upon reading the detailed description of embodiments of the disclosure in conjunction with the following drawings. In the drawings, components are not necessarily drawn to scale, and components having similar relative characteristics or features may have the same or similar reference numerals.
Fig. 1 is a flowchart illustrating an embodiment of a system operation method of a client framework according to the present invention.
Fig. 2 shows a schematic diagram of the service component configuration involved in the embodiment of the method shown in fig. 1.
Detailed Description
The invention is described in detail below with reference to the figures and specific embodiments. It is noted that the aspects described below in connection with the figures and the specific embodiments are only exemplary and should not be construed as imposing any limitation on the scope of the present invention.
Fig. 1 shows a flow of an embodiment of a system operation method of the client framework of the present invention. Referring to fig. 1, the steps of the method of the present embodiment are detailed as follows.
Step 1: and (5) initializing.
The client framework finishes scanning all program sets in the service system and executes automatic combination, then all instances for realizing the ISystem initialization interface in the system are called in sequence, and initialization operation is executed on the system, such as: loading system configuration, loading interface themes, etc.
When a business system is developed, the type of the interface can be increased as required to complete more initialization operations.
IComposition is the most basic interface used in the MEF (Managed availability Framework, implementer Of DI method provided by microsoft) Framework Of the present invention, DI refers to Dependency Injection, and is an implementation Of IOC (Inversion Of Control, a design principle in object-oriented programming, used to reduce the coupling between codes). The interfaces of isystemminimization, isystemmfinalization, and the like in this embodiment are all inherited from IComposition. Through the interface, the MEF framework can automatically combine and generate object instances meeting requirements.
The following description will take isystem initiation as an example to illustrate its usage:
step 2: the main window is started.
And calling the highest priority in the instance for realizing the IMainFrame interface by the client framework, creating a main form and starting the main form.
The client framework already provides a default implementation, e.g., without necessarily maintaining the default state.
And step 3: and (6) logging in.
And calling the highest priority in the instance for realizing the ILoginService interface by the client framework to finish the authentication process.
The client framework is defaulted to provide for realizing direct authentication successfully, and the direct authentication is required to be realized according to actual conditions when a service system is developed.
And 4, step 4: and loading the interface plug-in.
And the client framework sequentially calls all the examples for realizing the IFramePlugin interface in the system to finish the loading of the main form. Such plug-ins are associated with interfaces such as: and generating a system menu, and automatically adding the system menu according to the requirement.
And 5: and (5) business operation.
The method mainly comprises the steps that a user opens a business interface, and a client framework executes business operation based on business components.
The principle of construction of the business components is shown in figure 2.
A typical service component contains four basic parts (MMVC mode, component-model-view-command mode):
module, representing the entrance of service function, is used to create Model and View and present them to the user, and takes part of the function of Controller in MVC mode. In this framework, it is also used to generate system menus.
The Model, which represents a data Model of the service function, is the core of the whole service component, and is equivalent to a Model in the MVC Model.
View, the user interface representing the service function (there may be more, which one is used is determined by Module), corresponds to View in MVC mode.
Command, represents the business logic behind the user's operation of the business function (clicking a button, pressing a shortcut key, etc.). Command is the soul in this pattern and is where the framework distinguishes from the traditional MVC pattern.
1) Firstly, each Command represents a function point, and a function list which should be provided by a service component is identified through a group of commands, so that the service range is clarified;
2) secondly, fine-grained control can be performed for each Command, such as: rights verification (framework already provides for this functionality to be implemented by declaring properties (attributes) on the Command's class);
3) thirdly, the Model and the Command are initialized independently, so that unit testing can be conveniently carried out;
4) finally, the Command as the Property (Property) of the Model can be bound (Binding) to View, thereby completing the association with the actual operation (mouse click, shortcut key press, etc.) of the user
The following is a functional component-related code representation (truncated):
step 6: and (5) exiting the system.
The client framework calls all the instances for realizing the ISystem navigation interface in the system in sequence, executes the work of state saving, resource cleaning and the like, for example: save the personalized layout of the user, etc.
While, for purposes of simplicity of explanation, the methodologies are shown and described as a series of acts, it is to be understood and appreciated that the methodologies are not limited by the order of acts, as some acts may, in accordance with one or more embodiments, occur in different orders and/or concurrently with other acts from that shown and described herein or not shown and described herein, as would be understood by one skilled in the art.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In one or more exemplary embodiments, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software as a computer program product, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a web site, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, Digital Subscriber Line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk (disk) and disc (disc), as used herein, includes Compact Disc (CD), laser disc, optical disc, Digital Versatile Disc (DVD), floppy disk and blu-ray disc where disks (disks) usually reproduce data magnetically, while discs (discs) reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Thus, the disclosure is not intended to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (8)
1. A method for operating a system of a client framework is characterized by comprising the following steps:
step 1: the client framework executes initialization operation;
step 2: the client framework starts a main form;
and step 3: the client framework realizes authentication login operation;
and 4, step 4: loading a plug-in of a client interface by a client framework;
and 5: the client framework executes the business operation of the user based on the business component;
step 6: the client framework implements the operation of exiting the system.
2. The method for system operation of client framework according to claim 1, wherein the initialization operation of step 1 includes but is not limited to loading system configuration and loading interface theme, the client framework scans all assembly sets and performs automatic combination, and then calls all instances implementing the isystemlnitiation interface in MEF framework in sequence in the system to perform initialization operation.
3. The system operation method of the client framework as claimed in claim 1, wherein the client framework in step 2 calls the highest priority in the instance implementing the imaiframe interface in the MEF framework, creates a main form and starts.
4. The system operation method of the client framework according to claim 1, wherein the client framework in step 3 calls the highest priority in the instance of implementing the ILoginService interface in the MEF framework to complete the authentication login process.
5. The system running method of the client framework according to claim 1, wherein the client framework in step 4 sequentially calls all instances implementing iframeplug-in interface in the MEF framework to complete the loading of the main form.
6. The method for client framework system operation according to claim 1, wherein the service component in step 5 is a component-model-view-command mode, wherein the component represents an entry of the service function, the model represents a data model of the service function, the view represents a user interface of the service function, and the command mode represents service logic corresponding to user operation of the service function.
7. The method for client framework system operation according to claim 6, wherein each command pattern represents a function point, and a list of functions provided by a service component is identified by a group of command patterns to specify its service scope; the command mode carries out fine-grained control; the model and command mode are separately initialized to perform unit testing; command schemas are bound to views as properties of the model.
8. The method for operating a system of a client framework according to claim 1, wherein in step 6, the client framework sequentially calls all instances implementing the isystemm localization interface in the MEF framework to perform exit work including state saving and resource cleaning.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911317102.5A CN111309404A (en) | 2019-12-19 | 2019-12-19 | System operation method of client framework |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911317102.5A CN111309404A (en) | 2019-12-19 | 2019-12-19 | System operation method of client framework |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111309404A true CN111309404A (en) | 2020-06-19 |
Family
ID=71144858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911317102.5A Pending CN111309404A (en) | 2019-12-19 | 2019-12-19 | System operation method of client framework |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309404A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222005A (en) * | 2011-07-12 | 2011-10-19 | 铜陵玉成软件科技有限责任公司 | Service model-oriented software running platform and running mode thereof |
CN102292736A (en) * | 2009-01-21 | 2011-12-21 | 微软公司 | Collaborative environment project extensibility with composition containers |
CN102855142A (en) * | 2012-09-24 | 2013-01-02 | 广东华大集成技术有限责任公司 | Client architecture based on RIA (rich internet applications) and implementation method thereof |
-
2019
- 2019-12-19 CN CN201911317102.5A patent/CN111309404A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102292736A (en) * | 2009-01-21 | 2011-12-21 | 微软公司 | Collaborative environment project extensibility with composition containers |
CN102222005A (en) * | 2011-07-12 | 2011-10-19 | 铜陵玉成软件科技有限责任公司 | Service model-oriented software running platform and running mode thereof |
CN102855142A (en) * | 2012-09-24 | 2013-01-02 | 广东华大集成技术有限责任公司 | Client architecture based on RIA (rich internet applications) and implementation method thereof |
Non-Patent Citations (3)
Title |
---|
岳冰 等: "《ASP.NET 4.0网站开发实用教程》", 哈尔滨:黑龙江大学出版社, pages: 6 - 7 * |
董成光等: "基于ssm+redis的网络问答社区的设计与实现", no. 14, pages 54 - 57 * |
蔡君等: "基于MEF的软件可复用框架设计与实现", vol. 17, no. 03, pages 52 - 56 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6513721B1 (en) | Methods and arrangements for configuring portable security token features and contents | |
US11514457B2 (en) | Smart contract generation and execution system with built-in mediator selection and enforcement tools | |
CN102508840B (en) | Concurrent editing of online drawings | |
Gray et al. | Domain-Specific Modeling. | |
WO2020242587A1 (en) | Smart contract template meta-programming system and method | |
KR102146592B1 (en) | Task completion through inter-application communication | |
US20050251788A1 (en) | Methods and systems for generating a configurable user interface | |
US8533302B2 (en) | Enhanced network adapter framework | |
EP2570917B1 (en) | Method and device for adding menu items in android menu | |
Smith et al. | Android recipes: a problem-solution approach | |
US20050166215A1 (en) | Common user interface for interacting with various interfaces | |
US11693873B2 (en) | Systems and methods for using entity/relationship model data to enhance user interface engine | |
US11914975B2 (en) | Customized software application template-based generator | |
JP4851107B2 (en) | Computer implementation method | |
US9063764B2 (en) | Automated software script creator and editor | |
CN111309404A (en) | System operation method of client framework | |
CN112138380B (en) | Method and device for editing data in game | |
US11256501B2 (en) | Federated extensibility workbench | |
CN101296164A (en) | Service implementing method and device | |
US20230333827A1 (en) | Generating automations via natural language processing | |
KR20040026485A (en) | A Proposal Making System And The Method Using The Same | |
US8185837B2 (en) | User interface framework and method for utilizing same | |
EP3516490A1 (en) | Systems and methods for binding lookup controls | |
US20170322776A1 (en) | Product lifecycle model including software development | |
US11151333B2 (en) | Conversational event modeling |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |