Patent classifications
G06F8/54
Methods, apparatuses and computer program products for improving productivity for building applications
An apparatus is provided for building an application. The apparatus may include at least one memory and at least one processor configured to generate a build of an application in a C Object-Oriented Programming Language. The processor is also configured to generate a unity file including a plurality of source files having references to one or more header files. At least two of the source files include references to a same header file. The processor is also configured to compile the unity file including the plurality of source files to obtain an object file. The processor is also configured to link the object file to generate an executable of the application. Corresponding computer program products and methods are also provided.
Methods, apparatuses and computer program products for improving productivity for building applications
An apparatus is provided for building an application. The apparatus may include at least one memory and at least one processor configured to generate a build of an application in a C Object-Oriented Programming Language. The processor is also configured to generate a unity file including a plurality of source files having references to one or more header files. At least two of the source files include references to a same header file. The processor is also configured to compile the unity file including the plurality of source files to obtain an object file. The processor is also configured to link the object file to generate an executable of the application. Corresponding computer program products and methods are also provided.
System for generating a map illustrating bindings
The disclosed embodiments relate to a system that facilitates developing applications in a component-based software development environment. This system provides an execution environment comprising instances of application components and a registry that maps names to instances of application components. Within the registry, each entry is associated with a list of notification dependencies that specifies component instances to be notified when the registry entry changes. Upon receiving a command to display notification dependencies for the registry, the system generates and displays a dependency graph containing nodes representing component instances and arrows between the nodes representing notification dependencies between the component instances. Upon receiving a command to display a timeline for with the registry, the system generates and displays a timeline representing events associated with the registry in chronological order.
System for generating a map illustrating bindings
The disclosed embodiments relate to a system that facilitates developing applications in a component-based software development environment. This system provides an execution environment comprising instances of application components and a registry that maps names to instances of application components. Within the registry, each entry is associated with a list of notification dependencies that specifies component instances to be notified when the registry entry changes. Upon receiving a command to display notification dependencies for the registry, the system generates and displays a dependency graph containing nodes representing component instances and arrows between the nodes representing notification dependencies between the component instances. Upon receiving a command to display a timeline for with the registry, the system generates and displays a timeline representing events associated with the registry in chronological order.
Application library analytics tool
Embodiments disclosed herein provide for systems and methods of identifying package files in an application. The systems and methods include a static scan, a library-dependent archive scan, and a dynamic scan, where, at the conclusion of the scans, a list including each of the unused and/or potentially conflicting libraries in an application may be provided to a user.
Application library analytics tool
Embodiments disclosed herein provide for systems and methods of identifying package files in an application. The systems and methods include a static scan, a library-dependent archive scan, and a dynamic scan, where, at the conclusion of the scans, a list including each of the unused and/or potentially conflicting libraries in an application may be provided to a user.
Dynamic-link library usage based on memory size
Aspects of the present disclosure are directed to methods, systems, and computer program products for using dynamic-link library based on memory size. In the method, a request for calling a first function in a Dynamic-link library (DLL) at runtime is received first. A size of a memory allocated to the DLL is then determined. Then call relationship of functions in the DLL is obtained. At last, functions related to the first function in the DLL are loaded into the memory allocated to the DLL based on the size of the memory allocated to the DLL and call relationship of functions in the DLL.
Dynamic-link library usage based on memory size
Aspects of the present disclosure are directed to methods, systems, and computer program products for using dynamic-link library based on memory size. In the method, a request for calling a first function in a Dynamic-link library (DLL) at runtime is received first. A size of a memory allocated to the DLL is then determined. Then call relationship of functions in the DLL is obtained. At last, functions related to the first function in the DLL are loaded into the memory allocated to the DLL based on the size of the memory allocated to the DLL and call relationship of functions in the DLL.
Fast compiling source code without dependencies
Techniques for an ultra-fact software compilation of source code are provided. A compiler receives software code and may divide it into code sections. A map of ordered nodes may be generated, such that each node in the map may include a code section and the order of the nodes indicates an execution order of the software code. Each code section may be compiled into an executable object in parallel and independently from other code sections. A binary executable may be generated by linking executable objects generated from the code sections. The methodology significantly differs from existing source code compilation techniques because conventional compilers build executable sequentially, whereas the embodiments divide the source code into multiple smaller code sections and compile them individually and in parallel. Compiling multiple code sections improves the compilations in order of magnitude from conventional techniques.
Fast compiling source code without dependencies
Techniques for an ultra-fact software compilation of source code are provided. A compiler receives software code and may divide it into code sections. A map of ordered nodes may be generated, such that each node in the map may include a code section and the order of the nodes indicates an execution order of the software code. Each code section may be compiled into an executable object in parallel and independently from other code sections. A binary executable may be generated by linking executable objects generated from the code sections. The methodology significantly differs from existing source code compilation techniques because conventional compilers build executable sequentially, whereas the embodiments divide the source code into multiple smaller code sections and compile them individually and in parallel. Compiling multiple code sections improves the compilations in order of magnitude from conventional techniques.