Skip to content

Conversation

@J0onYEong
Copy link
Collaborator

@J0onYEong J0onYEong commented May 14, 2025

변경된 점

  • LocalizedString획득 아키텍처 리팩토링

LocalizedString획득 아키텍처 리팩토링

  • 단일체 패턴으로 구현한 지역화 문자열 획득 객체를 의존성 주입구조를 사용하도록 리팩토링 했습니다.
  • 지역화 문자열 키를 도메인화 하고, 실제 텍스트 획득 과정을 계층화 했습니다. 이를 통해 추후 다른 저장소로 쉽게 교체할 수 있도록 했습니다.

키값의 경우 enum계층을 사용하여 사용성 및 가시성을 높였습니다.

let currentPriceTitleText = localizedStrProvider.getString(
    key: .pageKey(page: .coinDetail(contents: .tickerTableCurrnetPriceColumnTitle)),
    languageType: languageType
),

@J0onYEong J0onYEong requested a review from Copilot May 14, 2025 05:23
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR refactors the architecture for acquiring localized strings by replacing the previous singleton pattern with a dependency injection structure. Key changes include the removal of the legacy LocalizableText view, updating dependency registrations to include a new LocalizedStrProvider, and modifying various view models and builders to use the injected provider for localized string retrieval.

Reviewed Changes

Copilot reviewed 45 out of 45 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
Projects/Features/Setting/Feature/Sources/View/LocalizableText.swift Removal of legacy view using singleton-based localization.
Projects/Features/Setting/Feature/Sources/SettingBuilder.swift Updated dependency injection to supply localized string provider.
Projects/Features/Setting/Example/Sources/DI/Assemblies.swift Added DI registration for LocalizedStrProvider.
Projects/Features/Root/Feature/Sources/TabBar/* Refactored tab bar components to use injected localized string provider and updated enum cases.
Projects/Features/Root/Feature/Sources/RootViewModel.swift Switched to injected localized string provider for splash screen text generation.
Projects/Features/CoinDetail/Feature/Sources/CoinDetailPageViewModel.swift Updated localized string retrieval to use dependency injection (note potential misspelling in key).
Projects/Features/AllMarketTicker/* Refactored market ticker view models and builders to utilize LocalizedStrProvider.
Comments suppressed due to low confidence (1)

Projects/Features/Setting/Feature/Sources/View/LocalizableText.swift:1

  • Ensure that the removal of LocalizableText.swift is intentional and that its functionality has been fully migrated to the new architecture without leaving any dangling dependencies.
Entire file removed

@J0onYEong J0onYEong merged commit a186961 into main May 14, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants