Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REFACTOR] Splash, Auth, ArticleCategory Coordinator에 Adaptor Pattern적용(#156) #157

Merged
merged 8 commits into from
Oct 19, 2023

Conversation

kimscastle
Copy link
Contributor

@kimscastle kimscastle commented Oct 17, 2023

[#156] REFACTOR : Splash, Auth, ArticleCategory Coordinator에 Adaptor Pattern적용

🌱 작업한 내용

  • Splash, Auth, ArticleCategory Coordinator에 Adaptor pattern을 도입했습니다

🌱 PR Point

  • Coordinator, ViewController, NavigationController사이의 강한순환참조에 관한고민이 필요합니다

  • navigation interface와 coordinator interface를 adaptor객체로 연결시켜주면서 두 interface사이의 depth를 두면서 단순히 adaptor의 변경만으로 coordinator를 변경하지 않은상태에서 viewcontroller의 화면전환 flow변경에 대응할수 있게 되었다, 결과적으로 비교적 core한 depth에 있는 coordinator layer는 외부 변화가 있을 때 변경될 가능성이 낮아지게되고 이는 코드 전체의 안정성을 향상시켜줄 수있습니다

  • 외부변화가 발생했을때(화면전환 flow변경) adaptor를 새로만들어서 주입시켜주거나 adaptor를 수정하면 되기때문에 OCP(Open-Closed Principle) 원칙에도 부합해, 보다 유연한 설계를 할 수 있게됩니다

  • 리팩과정에서 interface가 너무 많아져서 슬슬 코드를 읽고쓰는데 피로감이 들고있습니다 추상화, 관심사분리를 도입하는데있어서 trade off관계인것같지만 고민전에 러닝커브와 보일러플레이트를 고려하는게 필요한것같습니다

스크린샷 2023-10-17 오후 1 37 18

📸 스크린샷

스크린샷 2023-10-17 오후 1 35 44

승찬쿤이 만들어준 app flow인데 참고용으로 넣어놓겠습니다

📮 관련 이슈

@kimscastle kimscastle added 🦁의성 의성's ♻️Refactoring 리펙터링 labels Oct 17, 2023
@kimscastle kimscastle added this to the 🦁1차 Refactor🦁 milestone Oct 17, 2023
@kimscastle kimscastle changed the title [REFACTOR] Splash, Auth, ArticleCategory Coordinator에 Adaptor Pattern적용 [REFACTOR] Splash, Auth, ArticleCategory Coordinator에 Adaptor Pattern적용(#156) Oct 17, 2023
@kimscastle kimscastle merged commit 44d93f3 into main Oct 19, 2023
@kimscastle kimscastle deleted the refactor/#156-apaptor-uiseong branch October 19, 2023 13:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
♻️Refactoring 리펙터링 🦁의성 의성's
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[REFACTOR] Splash, Auth, ArticleCategory Coordinator에 Adaptor pattern적용
3 participants