목차
回复内容:
웹 프론트엔드 H5 튜토리얼 有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF?

有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF?

Jun 07, 2016 am 08:42 AM

回复内容:

HTML这个体系在开发大型软件产品的时候,还是存在一些比较麻烦的点,之前我在这篇里面提到过:

还要多少年, 前端开发才能像客户端开发那样轻松? - 徐飞的回答

楼主在提这个问题的时候倒不如问一下为什么firefoxOS没有火起来?

Firefox OS 想法非常美,拿Android和linux的底部直接boot到Gecko,firefox的浏览器引擎,firefox上的所有web app全都能在手机上跑,deploy完全没有阻碍。

为什么没有火呢??我没有学过graphics,但自己build到测试机上跑了一次,性能很差,ui也很难看,firefox知道这手机在美国没市场,还专门挑qualcomm比较便宜的模型做超低端机,性能更差了,还是没什么起色

看了看问题的提问者,发现又是一个作者自问自答夹带私货的帖子。可怜还有这么多人认真答题……你看看他的评论:”做技术要向前看, 别把几十年前那种一堆标签页和控件的UI带到新世纪里来“,不就是说新的程序都应该按照他的审美观写么?可惜审美观这东西永远不会有一致意见,但是可以肯定是是改变界面一定有大把的人反对(参考Office 2007和Windows 8)。而且这个和在HTML5/WPF之间选择有什么关系?又没有人规定MFC/WinForms/WPF/HTML5的程序该写成什么样子。从Metro风格扁平方块动画满地跑到一堆标签页和控件的UI风格这些引擎都可以做。

只要市场够大,有钱赚,微软就可以推。至于这个市场有多大,看看有多少招聘广告要求WPF,看有多少基于WPF的第三方组件产品广告,看技术论坛上每个月有多少关于WPF的问题就知道了,和提问者的一厢情愿一点关系都没有。微软在致力于将旧的基于GDI的程序(例如MFC和Windows Forms)迁移到基于DirectX的WPF,这个工作做了10年,进展不是很大,像Evernote这样的程序嫌WPF太慢又换回去了,反正简单的界面没动画也不需要多大显卡资源,改C++性能更好还可以跨平台。但是只要CPU的速度瓶颈一直不解决,界面发展的未来还是在GPU上,这方面微软的决策还是有根据的。

至于扯HTML5跨平台什么的,你前端用Android后台用LAMP不给微软交钱的话,微软为什么要推广你的东西?没人说你自己的东西不好,你自己去掏腰包宣传啊。要微软掏腰包你要给微软生态系统贡献才行,比如后台放在Azure上啊,或者前端支持Windows API啊,不过说到推广力度嘛,当然是推只支持Windows平台的WPF对销量更有帮助了。在这里给自己的HTML5引擎打广告的,省省吧,微软推不推WPF,和你的引擎可以做的多么的炫,一点关系都没有。

用性能需求强迫用户升级硬件的,也就操作系统可以干干,一个应用商这么干不是找删么?认为HTML可以解决一切开发需求的错误,苹果犯过(IPhone1最初不支持原生应用),HP犯过(Web OS的平板发布后应用太少。最后不得不抛售),Facebook也犯过(CEO马克·扎克伯格称利用HTML5技术开发移动应用是该公司最大的错误决策之一),最后都是性能跟不上不得不放弃。另外,HTML5能不能跑还得看各家的HTML引擎的实现(比如Bad news: iOS 7's HTML5 is full of bugs),一次编写处处运行?Java早就证明这不过是一次编写处处调试罢了。

评论中一些人满口喷粪,已经删除。 想象一下html和js写的windows,画面一定很美。。。 如果b/s在任何条件下都好用的话,c/s根本没必要存在。 这年代已经没 WPF 什么事情了. 你看我们的新引擎, 整个界面都是 HTML5 写的, 通过 nodejs 做 native 的交互, 无障碍.

有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF?
如果你是一个像我一样对操作细节有疯狂追求的人, 那么你写界面的时候一定会希望更多的自定义和对原生控件的修改. 这个时候你会发现 HTML5 的界面书写才是你的好伙伴. 比如:

设计这种贴心的 gizmos:

有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF?
精准的 tree view 插入提示:

有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF?
为每个控件量身定做的 focus 视觉效果:

有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF?
甚至还有窗口间的 dock/popup:

有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF?
然后一开 Dev Tools 就可以调节样式, Debug, 很符合处女座们对 1px 的追求:

有HTML / XML这么好的前端及UI解决方案,微软为什么还要继续推WPF? WPF是2001年的事情了,再说了现在HTML你拿来做UI的话,跟WPF还是差远。
  1. HTML 和 WPF 完全是2个东西。
  2. 如果你要问有HTML 为和还要推出 XAML。那我帮你 @vczh
  3. HTML 怎么好了。我就不知道。
微软从 Windows 8 开始,已经开始主推使用 HTML5 来开发 Windows 8 Store App。到现在为止,已经可以使用 HTML5 开发包括 Windows 8.X, Windows Phone 及 Xbox 在内的三个平台的应用程序 (Universal Windows App)

使用 WPF、或者准确的说使用 Silverlight 技术,和 HTML5 技术都可以开发 Universal Windows App。对 Windows 平台而言,HTML5 已经是 Native UI 的一部分 WPF没记错比HTML5先出来吧?在这之前的HTML很多如今看起来很简单的实现都很繁琐。而且就算如此,HTML5还是很基础。需要强大的交互能力和兼容性还要很长一段路要走。另外,LZ说的WPF应该是指silverlight吧?否则都没有可比性。
同样的类比问题,有HTML这么好的前端及UI解决方案,Adobe为什么还要推出Flash?
答案是,HTML和这几个老牌比还有一段距离。技术趋势会变,但是并不意味着新技术一到来就是终结者,它还需要一个发展的过程。随着IDE和各类js库以及游览器支持度的提高。HTML应用也会变得越来越复杂,越来越强大。
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

내 HTML5 웹 사이트에 오디오를 추가하는 방법은 무엇입니까? 내 HTML5 웹 사이트에 오디오를 추가하는 방법은 무엇입니까? Mar 10, 2025 pm 03:01 PM

이 기사는 & lt; audio & gt를 사용하여 HTML5에 오디오를 포함시키는 방법을 설명합니다. 형식 선택에 대한 모범 사례 (MP3, OGG Vorbis), 파일 최적화 및 재생에 대한 JavaScript 컨트롤을 포함한 요소. 다중 오디오를 사용하는 것을 강조합니다

사용자 입력에 HTML5 양식을 사용하는 방법은 무엇입니까? 사용자 입력에 HTML5 양식을 사용하는 방법은 무엇입니까? Mar 10, 2025 pm 02:59 PM

이 기사에서는 HTML5 양식을 작성하고 검증하는 방법을 설명합니다. 그것은 & lt; form & gt; 요소, 입력 유형 (텍스트, 이메일, 번호 등) 및 속성 (필수, 패턴, 최소, 최대). HTML5의 장점은 오래된 방법에 비해 형성됩니다

HTML5 페이지 가시성 API를 사용하여 페이지가 표시되는시기를 감지하려면 어떻게합니까? HTML5 페이지 가시성 API를 사용하여 페이지가 표시되는시기를 감지하려면 어떻게합니까? Mar 13, 2025 pm 07:51 PM

이 기사에서는 HTML5 페이지 가시성 API를 사용하여 페이지 가시성을 감지하고 사용자 경험을 향상 시키며 리소스 사용량을 최적화하는 것에 대해 설명합니다. 주요 측면에는 미디어 일시 정지, CPU 부하 감소 및 가시성 변경에 기반한 분석 관리가 포함됩니다.

뷰포트 메타 태그를 사용하여 모바일 장치에서 페이지 스케일링을 제어하려면 어떻게합니까? 뷰포트 메타 태그를 사용하여 모바일 장치에서 페이지 스케일링을 제어하려면 어떻게합니까? Mar 13, 2025 pm 08:00 PM

이 기사에서는 Viewport Meta 태그를 사용하여 모바일 장치의 페이지 스케일링을 제어하여 폭과 최적의 응답 성 및 성능을위한 초기 스케일과 같은 설정에 중점을 둡니다. character count : 159

Geolocation API로 사용자 위치 개인 정보 및 권한을 어떻게 처리합니까? Geolocation API로 사용자 위치 개인 정보 및 권한을 어떻게 처리합니까? Mar 18, 2025 pm 02:16 PM

이 기사는 지리적 위치 API를 사용하여 사용자 위치 개인 정보 및 권한 관리, 권한 요청, 데이터 보안 보장 및 개인 정보 보호법 준수에 대한 모범 사례를 강조하는 것에 대해 설명합니다.

HTML5 및 JavaScript로 대화 형 게임을 만드는 방법은 무엇입니까? HTML5 및 JavaScript로 대화 형 게임을 만드는 방법은 무엇입니까? Mar 10, 2025 pm 06:34 PM

이 기사는 JavaScript를 사용하여 대화식 HTML5 게임을 만드는 자세한 내용입니다. 게임 디자인, HTML 구조, CSS 스타일, JavaScript 로직 (이벤트 처리 및 애니메이션 포함) 및 오디오 통합을 다룹니다. 필수 JavaScript 라이브러리 (Phaser, PI

대화식 사용자 인터페이스에 HTML5 드래그 앤 드롭 API를 어떻게 사용합니까? 대화식 사용자 인터페이스에 HTML5 드래그 앤 드롭 API를 어떻게 사용합니까? Mar 18, 2025 pm 02:17 PM

이 기사는 HTML5 드래그 앤 드롭 API를 사용하여 대화식 사용자 인터페이스를 생성하고 요소를 드래그 가능하게 만들고 주요 이벤트를 처리하며 사용자 정의 피드백으로 사용자 경험을 향상시키는 방법을 자세히 설명합니다. 또한 일반적인 함정에 대해 설명합니다

클라이언트와 서버 간의 양방향 통신에 HTML5 WebSockets API를 어떻게 사용합니까? 클라이언트와 서버 간의 양방향 통신에 HTML5 WebSockets API를 어떻게 사용합니까? Mar 12, 2025 pm 03:20 PM

이 기사에서는 실시간, 양방향 클라이언트 서버 커뮤니케이션을위한 HTML5 WebSockets API를 설명합니다. 클라이언트 측 (JavaScript) 및 서버 측 (Python/Flask) 구현에 대해 자세히 설명하여 확장 성, 상태 관리,

See all articles