Skip to content

[#318] 네트워크 연결이 끊겼을 떄 컨텐츠를 추가 및 수정하지 못하도록 막는다#329

Merged
opficdev merged 5 commits intodevelopfrom
feat/#318-network-disconnected-block-add-todo
Mar 29, 2026
Merged

[#318] 네트워크 연결이 끊겼을 떄 컨텐츠를 추가 및 수정하지 못하도록 막는다#329
opficdev merged 5 commits intodevelopfrom
feat/#318-network-disconnected-block-add-todo

Conversation

@opficdev
Copy link
Copy Markdown
Owner

@opficdev opficdev self-assigned this Mar 29, 2026
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

이번 PR은 ObserveNetworkConnectivityUseCase를 도입하여 앱 전반의 네트워크 연결 상태를 감지하고, 오프라인 상태일 때 UI 상호작용을 제한하는 기능을 구현했습니다. HomeViewModel, ProfileViewModel, SettingViewModel에 중복 구현된 네트워크 관찰 로직을 공통 프로토콜이나 확장으로 추출하여 코드 중복을 제거하고 유지보수성을 높이라는 피드백이 제공되었습니다.

Comment on lines +447 to +455
func setupNetworkObserving() {
networkConnectivityUseCase.observe()
.removeDuplicates()
.receive(on: DispatchQueue.main)
.sink { [weak self] isConnected in
self?.send(.networkStatusChanged(isConnected))
}
.store(in: &cancellables)
}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

medium

setupNetworkObserving() 함수와 관련 로직이 HomeViewModel, ProfileViewModel, SettingViewModel에 중복되어 있습니다. 코드 중복은 유지보수성을 저하시킬 수 있으므로, 이 로직을 공통 프로토콜과 확장(extension)으로 추출하는 리팩토링을 고려해보세요.

예를 들어, 네트워크 상태를 관찰하고 networkStatusChanged 액션을 보내는 로직을 담은 프로토콜을 만들어 채택하도록 하면, 각 ViewModel에서 중복 코드를 제거하고 코드 재사용성을 높일 수 있습니다.

@opficdev opficdev merged commit 4191160 into develop Mar 29, 2026
1 check passed
@opficdev opficdev deleted the feat/#318-network-disconnected-block-add-todo branch March 29, 2026 02:44
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.

네트워크 연결이 끊겼을 때, 컨텐츠를 추가하지 못하도록 막는다

1 participant