SwiftUI vs. React Native
Source: Dev.to
소개
몇 년 동안 SwiftUI와 React Native를 사용해 왔으며, 두 선언형 UI 프레임워크가 많은 공통점을 가지고 있다는 점을 알게 되어 눈이 뜨였습니다. 이는 커스텀 뷰를 구현할 때 특히 명확히 드러납니다.
예시: LocationCardView
SwiftUI
struct LocationCardView: View {
@Environment(Theme.self) private var theme
var locationCoordinate: LocationCoordinate
var body: some View {
VStack(alignment: .leading, spacing: theme.spacing.md) {
Text(locationCoordinate.city)
.font(.headline)
Text(locationCoordinate.state)
.font(.caption)
Text(locationCoordinate.countryCode)
.font(.caption)
}
.locationCardViewStyle(theme)
}
}
React Native (TypeScript)
const LocationCardView = (props: LocationCardViewProps) => {
const { location } = props
const { theme } = useThemeManager((state) => state)
const styles = createLocationCardViewStyles(theme, props)
return (
{location.city}
{location.state}
{location.countryCode}
)
}
관찰
두 구현 모두 동일한 작업을 수행하는 데 비슷한 줄 수가 필요합니다. 하지만 SwiftUI는 VStack과 같은 기본 프리미티브를 기본 제공하므로 메모리 오버헤드와 개발 시간을 줄일 수 있습니다. 개인적으로는 SwiftUI의 개발자 경험을 더 선호합니다.
토론
두 프레임워크에 대해 어떻게 생각하시나요? 어느 쪽을 더 선호하시는지요? 댓글로 여러분의 경험을 자유롭게 공유해 주세요.