Component Code Generators for Browser-Compatible Web Application Assembly

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current web application development methods are inefficient due to the need for extensive coding and browser-specific compatibility issues, making it challenging to quickly develop and maintain web pages with graphical user interface (GUI) components that require frequent updates and customization.

Innovation Solution

A method and system using code-generating programs, such as Component Code Generators (CCGs) and Application Component Code Generators (ACCGs), that generate platform-compatible code for GUI components and subcomponents, allowing for reusable code and automated communication between components, enabling faster development and integration of web applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If manual coding is used for web application development, then code can be customized for specific browsers, but development time and effort increase significantly

Engineering Contradiction:
Improvebrowser compatibilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent uses template-based code generation where pre-defined templates store code patterns for different browsers. The code generator automatically copies and adapts these template patterns to generate browser-compatible code, eliminating manual copying and adaptation of code for each browser while maintaining versatility.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The code generation system performs self-service by automatically generating browser-compatible code without requiring manual intervention for each browser. The system uses integrated browser information and automatically selects/adapts templates to produce compatible code, reducing development time while maintaining adaptability.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If extensive manual coding is performed for GUI components, then components can be customized, but the complexity of development increases

Engineering Contradiction:
Improvecomponent customizationVSAvoiddevelopment complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the code generation process into distinct components: template definitions, code generation logic, and component assembly. Each GUI component has its own template patterns that can be independently customized. This segmentation allows customization without increasing overall development complexity, as each segment can be developed and maintained separately.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The template-based system provides universal templates that can generate code for multiple browsers and component types. A single template can serve multiple purposes across different contexts, reducing the need for separate customization code for each component while maintaining adaptability through parameterization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If code is generated for each specific browser, then browser compatibility is achieved, but the quantity of code to manage increases

Engineering Contradiction:
Improvebrowser compatibilityVSAvoidcode quantity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent creates universal template patterns that can generate code for multiple browsers through parameterization. Instead of maintaining separate codebases for each browser, a single template system with browser-specific parameters achieves compatibility across browsers while minimizing the quantity of code that needs to be managed.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system copies template patterns automatically for each browser target rather than manually creating and managing separate code versions. This automated copying process ensures consistency across browser-specific implementations while reducing the management burden of multiple code versions.

Inventive Principle:
Principle #26Copying

4Manufacturing precision

If manual updates are made to web pages, then precise control over changes is achieved, but the time required for updates increases

Engineering Contradiction:
Improveupdate precisionVSAvoidupdate time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-defining template patterns that encapsulate common code structures and update logic. When updates are needed, the system applies these pre-prepared templates to generate updated code, ensuring precision through the structured template design while reducing update time by avoiding manual coding of common patterns.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8527943B1System and method of application development
Publication Date: 2013.09.03 CHILUVURI RAJU V
  • US8527943B1 patent drawing
  • US8527943B1 patent drawing
  • US8527943B1 patent drawing

AI summary

The present invention discloses a system, method and program code product for efficient component-based application development. Presentation code of a container component is generated by a container-component code generator (container CCG), which uses the class objects of component code generators (CCGs) as subcomponents. The CCGs, as standalone modules or classes, when properly instantiated and initialized could generate the application code of the subcomponents by their code-generating method (CGM) during execution. The container CCG assembles and integrates the subcomponents' application code in run time and fills in the code necessary to establish communication between any two of subcomponents in the resultant application code. One of the methods for establishing inter-component communication and for managing communication dependencies is a service registration object in the application code.