You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is probably the largest undertaking of any item in the list of proposals. The reason for this is to allow for library and
application developers to more easily build on top of Forge to produce new components with enhanced functionality or more
domain-specific implementations without having to re-implement all functionality from the ground up. This can be done via
more abstraction, but this will introduce complexity into the maintenance of the library.
Originally the component/foundation/adapter pattern was intended to solve this need, but it has proven to fall a little short. It can
technically be done as-is but I think we can do better.
We should also consider the [plugin/hook proposal (https://github.com//discussions/84) as a potential solution to this problem, but it's technically different. This proposal more focuses on our code organization, abstraction, and architecture as a whole rather than hooking into internal functionality of a component.
Affected components
All.
Benefits
Allows library authors to build on top of Forge to create their own components with inherited/overridden functionality
Better separation of concerns
More focused modules to increase our code reusability
More easily testable code
Caveats
Large undertaking
Full refactor of every component
May introduce more complexity as we add more abstraction
Is this a pattern we even care to allow? Is the effort worth the potential gain/benefits?
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Proposal
This is probably the largest undertaking of any item in the list of proposals. The reason for this is to allow for library and
application developers to more easily build on top of Forge to produce new components with enhanced functionality or more
domain-specific implementations without having to re-implement all functionality from the ground up. This can be done via
more abstraction, but this will introduce complexity into the maintenance of the library.
Originally the component/foundation/adapter pattern was intended to solve this need, but it has proven to fall a little short. It can
technically be done as-is but I think we can do better.
We should also consider the [plugin/hook proposal (https://github.com//discussions/84) as a potential solution to this problem, but it's technically different. This proposal more focuses on our code organization, abstraction, and architecture as a whole rather than hooking into internal functionality of a component.
Affected components
All.
Benefits
Caveats
Beta Was this translation helpful? Give feedback.
All reactions