Hyper Dynamism: One way to speed up Development Time
Most of you are familiar with the term dynamic programming also known as soft coding where one designs an algorithm or process to be able to perform a specific task for all scenarios without manually iterating over them.
From my experience as developer, when a system becomes very large with multiple components, it becomes quite time consuming to constantly have to make customized modules with similar functionalities for each module.
Example:
You are tasked with making a web based information system:
- Mostly composed of CRUD modules
- Data Model is different per module
- Operations per module are mostly the same
- Each module consists of (a):
- Controller
- Views
- View models
- Manager (functionality of controller is placed here)
- Data Model (Based from table in the Database)
- Test cases
You have 20 of these modules to make. This concept can quickly be solved with Hyper Dynamism.
Hyper Dynamism is about:
- Abstracting similarities of different modules
- Creating Dynamic Files based on the similarities
- Does the work of multiple files
- Acts as boiler plate code
- Receives Instructions (Data) to know what work to do
- Reducing Development Time of Large Systems
This concept is similar to how micro-processors work, being given a set of instructions to produce a particular output.
Advantages:
- Less Development Time Overall
- Less Files
- New modules of similar design are quickly added
- Easier to maintain
- Less Code when used correctly
Disadvantages:
- Cannot be used for components with very different functionalities
- Initial investment Time is higher
- Increased Processor Usage
- More Difficult to develop
- Can lead to huge, complicated files when used incorrectly
Ultimately, this concept should be used for implementing multiple modules with very similar functionality. If you have a module that needs customization, just inherit from the dynamic file and add the extra functionality. Too much of a particular concept can be detrimental to a project.
In short, balance.
スーパー豚様
Author