scribe-org/Scribe-iOS
GitHub で見る[Refactor] Refactor Language keyboards objects to follow SOLID principles
Open
#377 opened on 2023年10月31日
help wantedrefactor
Repository metrics
- Stars
- (167 stars)
- PR merge metrics
- (PR metrics pending)
説明
Terms
- I have searched open and closed feature requests
- I agree to follow Scribe-iOS' Code of Conduct
Description
The LanguageKeyboards group contains sub-groups for each supported languages by Scribe.
Those sub-groups contains files that exposes app level functions and enums that are all similar but are not following any strict protocol.
The end goals here would be the following:
- Extract all the keyboards related constants into a dedicated package / framework within a common workspace file
- Expose dedicated protocols for language keyboards that exposes the required functions and constants
- Refactor all language keyboards to adhere to the newly created protocols
- Refactor the
Info.plistto move the constants into a single localised file and create customBuild Settingsto exposes the constants to a singleInfo.plistfile (or find another solution) - Extract all the common keys between keyboard to constants to avoid manually hardcoded strings
- Add unit tests to ensure each language keyboard is working has expected
Contribution
No response