Data processing: software development – installation – and managem – Software program development tool – Translation of code
Reexamination Certificate
1997-05-01
2001-01-30
Hafiz, Tariq R. (Department: 2762)
Data processing: software development, installation, and managem
Software program development tool
Translation of code
C717S152000, C717S152000, C717S152000
Reexamination Certificate
active
06182274
ABSTRACT:
FIELD OF THE INVENTION
The present invention relates in general to the data processing fields and relates in particular to the field of object-oriented programming development systems.
BACKGROUND OF THE INVENTION
Object-oriented development tools commonly include tools which build core portions of programming applications. Typically, a builder tool has a user interface that collects a certain amount of input from the developer for which it creates some skeleton code. This input is metadata. More generally, metadata is self-descriptive information that can describe both services and information. Typically, the generated code does not make up the entire application; thus the user/developer must extend the generated code by using a source editor. An example of such an extension is business logic that computes the salary of an employee. Having prepared the code extensions, the developer will build, that is, compile and link the application using the traditional compiler.
One problem with the traditional method is that when the metadata is changed, the user must re-generate the code. Re-generation will overwrite such code extensions, and thus the extensions need to be re-entered at each code re-generation, either by manual re-input or by cutting and pasting from another file; otherwise the editor will simply enter a null and the previously entered code extensions will be lost.
An additional problem is that traditional builders generate language-specific code. For example, one form of application wizard generates only C++ code, and thus the generated code can be used only by a C++ compiler.
Accordingly, it is an object of the present invention to provide a system that enables the persistent storage and recovery of all such edited code. It is a further object of the present invention to provide a system that enables the storage of such code extensions in a way that is independent of the language in which those code extensions are written. It is a further object of the present invention to provide a mechanism for storing edited code as metadata in support of the development of complex applications using a layered data model for the handling and storage of application development metadata. A general form of such a data model is described in Canadian Patent Application No. 2,201,278, (CA9-97-003), “Hierarchical Metadata Store for an Integrated Development Environment”, filed on Mar. 27, 1997.
SUMMARY OF THE INVENTION
Accordingly, the present invention provides, in an object-oriented development system having components that generate skeleton code, a method of storing interface definition and implementation information comprising providing an in-memory storage area and a persistent storage area, retaining the interface definition and implementation information in an in-memory storage area, upon an instruction from a user application following preparation of a modified file containing updates to the information, storing the interface definition and implementation information as meta-data in a persistent storage area, recovering the interface definition and implementation information from the persistent storage area; and writing the interface definition and implementation information to the modified file.
The present invention further provides an object-oriented application development system providing components that generate skeleton code, the system comprising an in-memory data storage area; a persistent data storage area; application program interfaces providing storage capability for interface and implementation information as metadata in either of the storage areas; an editor for modifying code in at least one component; and means for retrieving the information from the persistent storage area.
REFERENCES:
patent: 5191646 (1993-03-01), Naito et al.
patent: 5313387 (1994-05-01), McKeeman et al.
patent: 5522078 (1996-05-01), Matsuzuki
patent: 5557730 (1996-09-01), Frid-Nielsen
patent: 5625844 (1997-04-01), Takaya
patent: 5754858 (1998-05-01), Broman et al.
patent: 5778378 (1998-07-01), Rubin
patent: 5790861 (1998-08-01), Rose et al.
patent: 5809507 (1998-09-01), Cavanaugh, III
patent: 5867709 (1999-02-01), Klencke
patent: 5911070 (1999-06-01), Solton et al.
patent: 5911071 (1999-06-01), Jordan
patent: 5926637 (1999-07-01), Cline et al.
patent: 5930505 (1999-07-01), Miura
patent: 0406028 (1991-01-01), None
“Rational Rose—Using Rational Rose 4.0”; Rational Software Corporation; Revision 4.0; pp. xi-xvi, 1-85, 185-197, Nov. 1996.
Rational Rose/C++ -Round Trip Engineering with Rational Rose/C++; Rational Software Corporation; Revision 4.0; pp. 5-51 and 217-227, Nov. 1996.
Channon, D.; “Persistence for C++”; Dr. Dobbs Journal; vol. 21, No. 10, pp. 46-52, Oct. 1996.
“IBM/JOSS Object Services Persistence Service Specification—Submission to the Object Management Group”; International Business Machines Corporations; SunSoft Inc.; pp. 1-43, Nov. 1993.
Millard, B., Dasgupta, P., Rao, S., Kuramkote, R., Run-Time Support and Storage Management for Memory-Mapped Persistent Objects, Proceedings the 13th International Conference on Distributed Computing Systems, pp. 508-515, May 1993.
Harrison, W., Ossher, H., Attaching Instance Variables to Method Realizations Instead of Classes, Proceedings of the 1992 International Conference on Computer Languages, pp. 291-299, Apr. 1992.
Duffield Edward H.
Hafiz Tariq R.
Ingberg Todd
International Business Machines - Corporation
LandOfFree
Reusing code in object-oriented program development does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Reusing code in object-oriented program development, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Reusing code in object-oriented program development will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2504166