System and method for sharing reusable code base
OwnerThomas Genselinventor
Life of this patent
Estimating the term…
Abstract
A system that facilitates sharing a reusable code base that includes genericized, automatically customizable software components is provided. The system includes components for identifying files associated with a build collection, collecting files associated with a build collection, displaying information associated with a build collection and build actions, and performing build actions. The display can be dynamically configured project by project based, at least in part, on information supplied by the project.
Claims33
A system that facilitates sharing a reusable code base, comprising:
- one or more core source files that can be processed into software components to be included in a computer executable project;
- one or more core component files that facilitate identifying and customizing one or more core source files associated with a computer executable project;
- one or more core files that facilitate identifying one or more core component files available to be associated with a computer executable project;
- a project file that facilitates identifying one or more environment parameters associated with a computer executable project, where the environment parameters facilitate identifying at least one of, a core file, and a core component file to be associated with the computer executable project, the project file also facilitating identifying at least one of a project specific software component, a project specific environment parameter, and a project specific source file;
- and
- a build collector for collecting one or more of, a core source file, a project specific source file, a core software component, and a project specific software component into a build collection.
A computer executable method for facilitating building a computer executable project that incorporates shareable, reusable code, comprising:
- assembling one or more reusable software components into a collection of reusable software components;
- creating a component core file that facilitates selecting and customizing a reusable software component for use in populating a build collection;
- creating a core file that facilitates storing associated sets of available core component files and thus facilitates selecting one or more reusable software components for use in populating a project build collection, the core file also facilitating storing associated sets of core level project build rules;
- creating a project file that facilitates identifying at least one of, a core file, one or more component core files, one or more project specific components, one or more core level build rules, and one or more project specific build rules for use in populating a build collection;
- and
- creating a build collection.
A data packet for transmitting build file information and build logic between computer components of systems and methods that facilitate sharing a reusable code base, the data packet comprising:
- a first field that stores one or more source file identifiers of one or more source files located in a reusable code base;
- and
- a second field that stores one or more source file combination rules for combining the one or more source files identified by the source file identifiers.
In a computer system having a graphical user interface comprising a display and a selection device, a method of providing and selecting from a set of data entries on the display, the method comprising:
- retrieving a set of data entries, each of the data entries representing one or more of a core logic data, a core logic operation, a project specific data, a project specific logic operation, a third party data, and a third party logic operation;
- displaying the set of entries on the display;
- receiving a data entry selection signal indicative of the selection device selecting a selected data entry;
- and
- in response to the data entry selection signal, initiating an operation associated with the selected data entry.
A set of application programming interfaces embodied on a computer readable medium for execution by a computer component in conjunction with building a computer executable project while using shareable, reusable code, comprising:
- a first interface for accessing a core logic and core data;
- a second interface for accessing a project specific logic and project specific data;
- and
- a third interface for accessing a third party logic and third party data;
- where one or more of the core logic, the core data, the project specific logic, the project specific data, the third party logic, and the third party data are employed in building the computer executable project from reusable, shared code.
A system that facilitates sharing reusable code, comprising:
- means for identifying a project specific environment;
- means for identifying a genericized, automatically customizable, reusable, shared software component;
- means for collecting one or more genericized, automatically customizable, reusable, shared software components into a build collection;
- means for collecting logic for combining the genericized, automatically customizable, reusable, shared software components in the build collection into an executable computer project;
- and
- means for displaying information concerning one or more of the collected software components and the logic for combining the collected software components, where the display is dynamically customized based, at least in part, on the project specific environment.
A system that facilitates integrating operating system and application software combinations with board level components and hardware devices, comprising:
- a link tool that receives an input from one or more of a hardware design, a device ware, and custom software features;
- and
- a build tool that produces a specific hardware platform image from one or more automatically customizable files stored in a shareable, reusable code base, where the image depends, at least in part, on one or more of the hardware design, the device ware, and the custom software features.
Dependencies are inferred from the claim text.