개발자가 윈도우 11이 네이티브 애플리케이션보다 웹 앱을 선호하는 이유에 대해 설명합니다.

개발자가 윈도우 11이 네이티브 애플리케이션보다 웹 앱을 선호하는 이유에 대해 설명합니다.

WhatsApp이 논란 속에 윈도우용 네이티브 애플리케이션을 웹 기반으로 전환한 후, Meta에 대한 광범위한 비난이 쏟아졌습니다.이러한 비판은 타당했습니다.전환 과정이 진정성이 부족해 보였고, 윈도우 사용자에게 네이티브 앱과 같은 경험을 제공하지 못하는, 리소스를 많이 소모하는 다운그레이드로 이어졌기 때문입니다.

하지만 이러한 상황은 더욱 복잡한 현실을 드러냅니다.메타가 네이티브 윈도우 앱을 유지하려는 동기는 제한적이었습니다.앱 업데이트도 거의 하지 않았고, 기능 동등성도 확보하지 못했으며, 결국 더 실용적인 웹 버전을 선택했습니다.근본적인 이유는 네이티브 앱에 비해 웹 앱이 경제적인 이점을 가지고 있기 때문입니다.개발자들은 마이크로소프트의 UI 프레임워크로부터 장기적인 지원을 확보하는 데 어려움을 겪고 있는데, 그 지원조차 불안정한 상태입니다.

WhatsApp이 로딩 화면에서 멈춤

윈도우 최신 소식을 오랫동안 구독해 온 개발자 알렉산더 오프친니코프의 최근 분석은 개발자들 사이에서 널리 퍼져 있는 정서를 잘 보여줍니다.사용자 기반은 작지만 네이티브 애플리케이션 개발이 꾸준히 이루어지는 macOS와는 달리, 윈도우에서 웹 앱 개발에 대한 개발자들의 열정은 플랫폼 자체에 대한 깊은 불신에서 비롯된다는 것입니다.

마이크로소프트는 다양한 소위 “미래형” 프레임워크를 일관성 없이 도입해 왔으며, 종종 얼마 사용하지 않고 버려왔습니다. WPF와 Silverlight부터 UWP, 그리고 현재의 WinUI 3에 이르기까지, 이러한 패턴으로 인해 개발자들은 각 프레임워크의 지속 가능성에 의문을 제기하게 되었습니다. Ovchinnikov가 지적했듯이, 많은 개발자들은 이제 현재의 프레임워크가 투자할 가치가 있을 만큼 오래 지속되지 않을 것이라고 생각합니다.

수십 년 동안 마이크로소프트는 일관성 있는 GUI 전략이 부족했습니다.다양한 프레임워크가 존재하기 때문에 윈도우 개발자들은 앱 개발에 어떤 프레임워크를 채택해야 할지 명확한 지침 없이 어려움을 겪었습니다.

명확성에서 혼란으로: 윈도우 개발의 진화하는 양상

옛날 옛적에 윈도우 앱 개발은 간단한 접근 방식을 취했습니다.개발자들은 주로 Win32에 의존했죠.이 단일 API는 견고한 기반을 제공하여 일관되고 안정적인 개발 환경을 만들어냈습니다.

찰스 페촐드의 획기적인 저서 “윈도우 프로그래밍” 은 이러한 점에서 매우 중요한 역할을 했습니다.이 책은 윈도우 앱 개발에 대한 막연한 두려움을 없애고, 개발자들이 플랫폼의 안정성에 대한 확신을 가지고 투자할 수 있도록 했습니다.이러한 환경은 신뢰를 구축하고 생태계 성장을 촉진했습니다.

마이크로소프트는 Win32를 발전시키기보다는 끊임없이 새로운 대안을 제시했습니다. MFC는 C++ 래퍼로 등장했고, 이어서. NET 애호가들을 위한 WinForms가 나왔습니다. WPF는 XAML과 하드웨어 가속을 도입했고, Silverlight는 크로스 플랫폼 가능성을 목표로 했습니다.수년에 걸쳐 WinRT와 UWP는 Windows 8 및 10 시대에 통합 솔루션으로 홍보되었지만, 어느 것도 업계 전반에 걸쳐 완전히 채택되지는 못했습니다.이제 WinUI 3는 현대화를 약속하지만, 개발자들이 이전 프레임워크에서 가졌던 신뢰를 되살리는 데 어려움을 겪고 있습니다.

새로운 프레임워크를 도입하고 개발자들이 시간을 투자하도록 유도한 다음 다시 초점을 바꾸는 악순환은 개발자들의 몰입도를 약화시켰습니다.오늘날 개발자들은 회의적인 반응을 보입니다.과거의 프레임워크조차 오래 지속되지 못했는데, 현재의 프레임워크는 왜 그래야 할까?

오늘날 개발자들은 혼란스러운 환경에 직면해 있습니다.권장 사항은 개인의 선호도에 따라 크게 달라지는데, 어떤 이들은 안정성을 이유로 Win32 또는 WPF를 옹호하는 반면, 신뢰도가 낮은 WinUI 3를 선호하는 이들도 있습니다. MAUI와 같은 멀티 플랫폼 솔루션이나 Electron 또는 PWA를 활용한 웹 기반 솔루션의 존재는 이러한 불확실성을 더욱 가중시킵니다.명확성 대신, 개발자들은 엄청난 불확실성에 직면하고 있습니다.

윈도우 개발에서 웹 앱의 부상

WhatsApp, Discord, Zoom 등 윈도우에서 널리 사용되는 많은 애플리케이션은 엄밀히 말하면 네이티브 앱이 아닙니다.대신, 이러한 앱들은 웹 앱으로 작동하며, Chromium 엔진을 통합하여 보다 일관된 사용자 경험을 제공하는 WebView2와 같은 구성 요소를 활용합니다.

마이크로소프트 클립챔프
마이크로소프트 클립챔프

웹 애플리케이션 개발의 간소화는 혁신적인 변화를 가져왔습니다.이 모델 덕분에 별도의 코드베이스 없이도 다양한 운영 체제에 앱을 배포할 수 있게 되었습니다. Electron과 같은 프레임워크와 PWA(프로그레시브 웹 앱)는 배포 속도를 높이는 동시에 유지 관리 비용을 절감해 줍니다.기업들은 이러한 장점에 점점 더 매력을 느끼고 있습니다.

하지만 이러한 변화에는 단점도 있습니다.웹 앱은 일반적으로 리소스를 많이 소모하며, 네이티브 앱에 비해 RAM 사용량이 많고 반응 속도가 느린 경우가 많습니다.또한 운영 체제와의 통합이 부족하여 여러 Electron 앱이 시스템 리소스를 과도하게 사용하게 되면서 사용자 경험이 저하됩니다.

Windows용 WhatsApp의 RAM 사용량
“WhatsApp”은 현재 버전이고 “WhatsApp 베타”는 이전 UPW/WinUI 버전입니다.

반면 macOS와 iOS에서는 개발자들이 여전히 네이티브 애플리케이션 개발을 우선시합니다. Apple은 Cocoa와 AppKit 같은 프레임워크의 일관성을 유지하여 개발자들에게 도구의 지속성에 대한 명확성과 확신을 제공하고 있습니다.

안타깝게도 윈도우는 이러한 명확성을 제공하지 못합니다.이러한 불확실성 때문에 개발자들은 마이크로소프트의 변덕스러운 전략과 관련된 위험을 피하기 위해 웹 솔루션을 선택하고, 그에 따른 성능상의 한계를 감수하게 됩니다.

마이크로소프트, 개발자 신뢰 회복을 위한 시도

마이크로소프트가 직면한 과제를 인식하고 있다는 징후가 보입니다.최근의 계획들은 웹 구성 요소에 대한 의존도를 낮추면서 성능을 향상시키고, 보다 네이티브한 윈도우 환경을 구축하는 방향으로 나아가고 있음을 시사합니다.개발자 루디 후인이 윈도우 개발자들에게 네이티브 앱 개발을 장려하자는 최근의 제안은 긍정적인 반응을 얻었습니다.

하지만 애플리케이션 문제를 해결하는 것은 과제의 일부일 뿐입니다.마이크로소프트가 기본 기능을 개선하더라도 개발자들의 우려는 계속될 가능성이 높습니다.이러한 조심성은 현재 WinUI 3의 기능 부족 때문이 아니라, 과거의 불안정성 때문에 개발자들이 사용을 꺼리는 경향에서 비롯됩니다.

개발자들의 신뢰를 회복하기 위해 마이크로소프트는 단일 프레임워크에 전념하고 개발자들을 위한 명확하고 장기적인 방향을 제시해야 합니다.일관된 지원과 성숙한 개발 프로세스는 개발자들의 신뢰를 되찾는 데 필수적일 것입니다.

일관성: 핵심 과제

마이크로소프트는 뛰어난 엔지니어링 인재와 개발 도구 제작 분야에서 오랜 역사를 자랑합니다.마이크로소프트가 선보인 프레임워크는 기술적으로는 우수했지만, 개발자들이 믿고 사용할 수 있을 만큼 일관성이 부족한 경우가 많았습니다.

Microsoft의 Fluent 2 디자인 리소스

레베카 서터의 분석 에서 강조되었듯이, 내부 의사 결정은 종종 전략의 급격한 변화로 이어져 개발자들에게 불확실성을 초래합니다.근본적인 문제는 선택지가 부족한 것이 아니라, 신뢰할 수 있는 진행 방향이 없다는 점입니다.개발자들은 안정적인 지원을 제공하는 프레임워크를 간절히 원합니다.

웹 앱: 개발자들의 정서 반영

웹 애플리케이션이 윈도우 생태계를 지배하는 이유는 뛰어난 성능 때문이 아닙니다.오히려 변화하는 우선순위 속에서 안정성을 추구하는 개발자들에게 차선책으로 자리매김했기 때문입니다.

개발자들은 과거 경험과 마이크로소프트의 미래 결정에 대한 예측 불가능성을 바탕으로 전략적인 선택을 하고 있습니다.

윈도우에서 앱 품질을 향상시키려면 마이크로소프트는 윈도우 11의 문제점을 해결하고 네이티브 애플리케이션을 우선시하는 것 이상의 접근 방식을 취해야 합니다.개발자의 신뢰를 재구축하는 것이 중요하며, 미래를 위해 일관되고 안정적인 프레임워크를 유지하겠다는 약속 또한 필수적입니다.

출처 및 이미지

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다