Metro 앱에 XAML / C # 또는 HTML5 / JavaScipt를 사용할 때의 장단점은 무엇입니까? [닫은]


19

Metro 앱에 XAML / C # 또는 HTML5 / JavaScript를 사용하는 데 큰 장점이나 단점이 있는지 궁금합니다.

답변:


18

약간의 배경 지식으로, American Airlines Windows 8 앱을 HTML5로 제작했습니다. 나는 그것이 환상적이라고 말해야한다.

먼저 모바일 앱과 관련된 HTML5에 대한 모든 아이디어를 삭제하십시오. Windows 8에서 JavaScript는 일급 모국어입니다. XAML 앱의 모든 하드웨어 기능에 액세스 할 수 있습니다. WinJs 응용 프로그램을 위해 Visual Studio 2012에 내장 된 환상적인 템플릿도 있습니다.

WinJ는 절반 만 생각한 웹뷰 구현 이 아닙니다 . 마이크로 소프트는 마침내 JS에게 가치를 인정하고있다.

IE10에서 가장 최신의 최신 정보를 얻는 것이 좋습니다. 솔직히 이것이 모든 WinJs의 핵심 프레임 워크입니다. 강력하고 빠릅니다! 여기 당신이 할 수있는 일의 예가 있습니다 : http://www.cuttherope.ie/ .

또한 WinJ를 시작하기에 좋은 장소는 다음과 같습니다. http://msdn.microsoft.com/en-us/library/windows/apps/br211385.aspx

미래는 JS가 Windows의 기본 언어로 밝게 보입니다.


4
첫째, JavaScript는 모국어가 아닌 스크립트 언어입니다. (내가 뭔가를 놓치지 않고 기계 코드로 직접 컴파일되지 않는 한). 둘째, Win8에서는 일등 언어가 아닙니다. 데스크톱 앱, DirectX 11 게임 등의 앱이 아닌 Metro 앱을 개발하는 데 사용되기 때문입니다.
Den

3
'Cut the Rope'는 엄선 된 포스터 어린이입니다. 상대적으로 적은 양의 일이 동시에 일어나고 있습니다. 최신 데스크톱 게임처럼 수백 개의 스프라이트가 있다면 JS에서 적절한 FPS를 실행하는 데 어려움을 겪을 것입니다.
Den

2
Hey Den-귀하의 의견이 토론에 추가되지 않는 것 같습니다. 머신 코드로 컴파일되지 않았기 때문에 메트로 앱에 사용하기에 좋지 않다고 말하는가? Cut the Rope에 대한 두 번째 의견에서는 자바 스크립트 또는 XAML로 FPS가 많은 "현대 데스크톱 게임"을 작성하지 않으므로 토론과 관련이 없다고 생각합니다.
Phillip Burch

1
필립은 "자바 스크립트 또는 XAML에서 FPS가 많은"현대 데스크톱 게임 "을 작성하지 않을 것"이라고 말하면서 Windows 8 장치 용 최신 게임을 만들 수 있습니까? 그렇다면 ARM 장치는 WinRT 만 지원하므로 최신 게임은 인텔 장치로 제한됩니까?
Ein Doofus

1
@PhillipBurch : 제 요점은 "네이티브", "퍼스트 클래스", "강력하고 빠름"은 오해의 소지가있는 단어입니다. 그리고 Metro 용 고성능 게임을 개발하기 위해 C # + SharpDX / MonoGame (XAML 아님)을 사용하는 것이 가장 확실합니다 (ARM은 다른 이야기입니다).
Den

4

양자 모두. 둘 다 개발자가 채택하고 있기 때문에 (동일하지는 않지만 일부 개발자는 XAML / C #을 사용하고 일부는 HTML / JS를 사용하고 있습니다.) 웹앱 개발자 배경에서 온 사람들에게는 HTML / JS로 쉽게 전환 할 수 있습니다. WPF 및 Silverlight를 통해 XAML에 익숙한 사용자에게는 XAML + C #에 기술을 적용하는 것이 좋습니다. 결과에 관한 한 두 기술 모두 좋은 결과를 보이고 있습니다. 그래서 내 추측은 앞으로 몇 년 동안 똑같이 좋을 것입니다.


3

HTML5 / JS API를 사용하여 구축 된 Metro 앱은 C # / XAML에 비해 "간단한"것으로 분류 될 수 있습니다. 전자는 확실히 기능적이고 잘 설계된 앱을 만들 수 있지만 HTML5에 내장 된 앱의 기능에는 의심의 여지가 없습니다. 반면에 C #은 더 능력이 있지만 더 복잡합니다. HTML5 앱은 비교적 쉽게 디자인하고 유지 관리 할 수 ​​있습니다.

적어도, 그것은 나의 최선의 추측이다. 아직 Win8 앱을 개발 한 경험이 없습니다.


3
나는 이것이 사실이라고 생각하지 않습니다. 둘 다 WinRT에서 정확히 동일한 API에 액세스 할 수 있습니다.
Ian

2

둘 다 WinRT (일명 MS Surface 장치 에서 사용되는 Windows 8의 트리밍 버전 )에서 실행됩니다.

그것은 전적으로 개발자의 선호에 달려 있습니다 . 따라서 HTML5 / JS 경험이있는 개발자는 Window 8 용으로 동일한 기능을 개발할 수 있습니다.


WinRT는 "알려진"Windows 8이 아닙니다. 메트로 UI / 앱만 실행하고 ARM 기반 태블릿에서 작동하는 본격적인 Windows 8 OS의 제거 된 버전입니다.
treecoder

예, Windows 8은 Win RT가 아닙니다. 그러나 그것이 당신이 내 대답을 읽음으로써 얻은 의미라면, 나는 그 진술을보다 명확하게 만들었습니다.
Yusubov December

1

MS 프로그래머가 아님-프로그래머 입장에서는 JS + HTML 5와 같은 플랫폼에 독립적 인 개방형 표준에 시간과 노력을 투자 할 가치가 있습니다. 얻은 지식은 다른 곳에서도 재사용 할 수 있습니다.

Win 8은 기본적으로 JS를 지원 하므로이를 사용하여 달성 할 수있는 일은 많지 않습니다.


0

그렇습니다. 대부분의 경우 JavaScript는 모국어입니다. 실행중인 위치에 따라 머신 코드로 컴파일 (JIT 스타일)됩니다.

예를 들어 Chrome 브라우저를 실행하는 경우 V8 엔진은 위에서 언급 한 것과 동일합니다. IE 10이 ECMAScript 262 표준을 지원하는 다른 널리 사용되는 브라우저와 마찬가지로 IE 10도 동일한 작업을 수행한다는 것을 이해하고 있습니다.

Entou, 대부분의 경우 JavaScript는 더 이상 해석되는 언어가 아닙니다. 본격적인 객체 지향 프로토 타이프 기반의 클라이언트 / 서버 측 유비쿼터스 프로그래밍 언어입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.