说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

关于WP8开发者程序开发语言选择倾向的问题

HTML文档下载 WORD文档下载 PDF文档下载
来自WPXAP网友slice的一篇冷静客观分析Windows Phone 8开发的帖子

作者:苏扬

 

来自WPXAP网友slice的一篇冷静客观分析Windows Phone 8开发的帖子:

 

基本概念:

 

1.Windows 8有Pro和RT两种版本,Pro采用x86,RT采用ARM。

 

2.x86版本可以运行Metro外还可以运行所有现有的桌面程序(只要没兼容问题),ARM除了运行Metro程序,只能运行微软提供的有限的桌面程序并不允许第三放的桌面程序,例如Windows 8自带的资源管理器、桌面版IE10、桌面版的画图以及桌面版Office。

 

3.跨平台分为两种,一种是写一次,直接可跨平台运行,另一种是移植后才可以运行。

 

4.关于商店,Windows 8 Pro版和RT版都会访问同一个Windows商店,而Windows Phone 7和Windows Phone 8会访问手机版的商店。两个商店是完全独立的,手机商店里面你不会看到任何Windows商店的Metro程序。

 

5.Windows 8的Pro和RT版,能够直接跨平台运行的,只有Metro程序,而且必须是非C++的,也就是C#+XAML或HTML+JS。

 

6.Windows Phone 8的程序,无论如何都需要移植,因为Windows Phone 8的RTP无论多接近RT,它也还是一个缩水版,而且你也不会想要手机和平板是一套界面吧,很多基本软件界面大改基本就是重新开发。

 

7.移植的问题,主要是由语言和API的共通性决定的,silverlight是C#+XAML,语言共通。API的调用方式也相同对于C#,当然WinRT是Native code,siverlight是托管代码,效率有差,但这个差距不要以为很大,例如你要调用silverlight播放一个MP4视频,silverlight也不是自己去播放视频而是调用系统的功能,都是原生的还硬解呢。

 

 

结论:

 

Windows 8会共用一个商店,但你想要你的Metro程序只上架一个就能搞定两者,就不能用C++,如果非要用C++,那么就要为ARM专门移植一份(就算这个移植调整很小甚至只是重新编译一下),然后上架两个软件分别针对X86和ARM额版本,并维护两个版本。

 

Windows Phone 7和Windows Phone 8共用商店,如果要做到两个平台兼容,也就是只维护一个版本同时搞定Windows Phone 7和Windows Phone 8,该用什么方式不言而喻,这个微软当初WP7屏蔽一切CE的一切,死不开放native code,就是为了今天换血后平台的延续性做准备,所以WP8换心后Windows Phone 7可以作为Windows Phone 8的子集继续存在,基础软件仍然共通。

 

如果搞其他,特别是C++,就代表,Windows Phone 7一份,Windows Phone 8一份,Windows 8 Pro一份,Windows 8 RT一份,维护4个版本,要知道Windows Phone 8双核设备距离正式上架发售至少需要半年时间,Windows Phone 88开始销售后Windows Phone 7作为中低端还会销售很长时间。

 

自己衡量,自己那些客户端类软件,有哪一点需要用到C++,何况是managed的C++,大家都是一样的地位去调用WinRT,逻辑没优化好,小心人家HTML+JS都比你流畅,要知道C++做业务逻辑的效率和可维护性时远不如C#。

 

游戏当然没啥好说的,除了小游戏,大型3D游戏一定会迅速抛弃Windows Phone 7。

 

关于性能:

 

其实做网页的人最善于优化加载的逻辑了,这与HTML本身DOM的加载方式有关,而且开发人员优化到位,例如图片要滑到你能看到的地方才用ajax异步加载,这是作为web开发人员所开发绕不开的东西,他们本来就会扣每一点数据的请求和加载,流量啊,习惯异步做完一件事做另外一件。

 

加载逻辑优化最差的,首选只会搭积木的Net程序员,什么MVVM,请求到50条数据,绝对是一次性绑上去显示出来,然后卡你一下,Net程序员经常是1000条数据都不做延迟加载,一次性往列表插,例如很多歌词软件,你进入歌曲列表,100首的都还好,C#的性能还能够承受,如果你歌有1000首,呵呵,你就感觉到了,可悲的是我就是那种手机上1000多首歌的,喜欢存满自己爱听的专辑然后随时都有选择。

 

还有就是Net程序用多线程Easy,进一步造成卡,很典型的就是,搜狐视频这类程序,进入后只要你敢立即滑动页面,会触发该页的请求,然后用户滑动到另外一页,触发了几个页面的请求,这些请求同时进行,本来这几个并行的请求完成后应该先判断用户是否还停留在该页是否还有必要立即往界面中填充数据,还是等用户切换回该页后再往界面填充数据,显然这种基本的逻辑没有做,所以,在你滑动时必须先卡死你一下。C++不了解,不多说,但同时期稳定性较低的一定是C++的程序。

 

最后,大家会发现,最不容易卡的程序,是就语言来说效率最低的HTML+JS,不信大家可以拭目以待。

 

大家都清楚,Windows Phone 7是Windows Phone 8的一个子集,未来会有越来越多的软件不支持Windows Phone 7,特别是新的3D游戏,但也不至于什么开发者全部转向C++之类的,C++不过是一种选择,特别是本身就熟悉C++的开发者,.Net开发者会回过头学C++的不多。为何大家都选择忽视Windows Phone SDK7.x的软件同时支持Windows Phone 7和Windows Phone 8。

 

来源:http://www.wpdang.com/archives/32849.html

 

VB如何用VB6写COM组件(二) VB如何用VB6写COM组件(一) VB如何在VB中使用Delphi的控件 VB如何在运行时动态增加控件 显示和隐藏鼠标-VB资料 VB用ActiveX Control Pad VB用API函数改进ListView 控件的显示效果 用VB6.0中文版进行DHTML程序开发 用VB编写标准CGI程序 用VB编写留言板 用VB播放FLASH动画 用VB开发进程管理软件 VB用WinSock设计Chat程序 运用MSChart,生成统计图形-VB资料 向文本框等等控件的系统右键菜单里追加自己定义的菜单-VB资料 在VB中用定时控件实现长定时操作 在Visual Basic中,在GotFocus事件中快速选定文本 在程序中注册和注销 OCX 控件 -VB资料 在运行时维护DBGRID的栏位宽度-VB资料 VB怎样使用VB开发基于Sybase的C/S软件 VB怎样在运行时动态生成多个相同的控件 直接编辑VB中网格控制项的两种方法 自制控件方面的有关知识-VB资料 Unicode vs Ansi -VB资料 VB 中调用 Word 拼写检查 VB4.0安装程序的汉化 VB中对字符串的处理及其扩展 把符串中的一子串替换为另一子串 -VB资料 把数字转成英文字-VB资料 翻转一个字符串-VB资料 混合字符串的长度 -VB资料 请问DataGrid中如何确认输入的内容? 关于push模式的mpeg1播放,十万火急!!!!!!!!! j2me怎样显示从servlet传来的图片(字节数组)?? 怎样对网页 中某一部分进行更新? 一个简单但是让我无法理解的问题,请教各位! j2me怎样显示从servlet传来的图片(字节数组)?? 在客户端可以通过jsp写二进制文件嘛? winrunner的自动运行程序问题。 和桌面通信的问题!!!!!!! 谁Dephi方面的入门电子书籍?谢谢了 【道歉】请hellosun和flyever进来领分! ???上传大文件??? 请问如何控制asp.net客户端(IE)的用户数 关于触发器的问题! 谁知道如何获得MSHFLexGrid被选中的记录(前提:按住shift键选择了多条记录)? 求助,有关Oracle控制文件的警告信息 查询记录数多与某数值的记录。 对了,问个弱问题 想实现一个功能 当选择表单select0里边的“产品分类“,然后自动探出另外一个select1表单,选择select1表单里边的分类信息搜索,选择表单 MSSQL server 的 Function 是个烂东西 数据录入问题 InstallShield的两个基本问题。 敬请指点谜经!万分感谢! 动态配置ODBC连接问题 做个调查,你买彩票吗? 我怎么打不开本版精华区的帖子了 急!如何在datagrid控件运行后显示的表格中加一列,用来表明现在的状态 关于窗口分割 CSDN的这个BBS,回复时老是提示超时已过期,来看看是不是这个原因 关于打在帧结构的问题 可不可以用vb在PE的文件上加上一段自己的代码呢?(不用汇编,用纯vb) 关于utf-8编码 如何在数据窗口中任意某行某列的字体颜色? "保存文件老提示文件被占用",是不是编译器的bug? 在网页中如何发短信? MapXtreme中运行/HelloWorld/mappage.asp报的错误 outlook...foxmail.... 哪位大侠提供有效的 msdn2001.10三CD的下载地址,论坛上搜索到的都是过期的连接,多谢了!!! 水晶报表问题 java调用系统功能? 怎样用asp打开一个复杂的excel表格(内有很多列合并和行合并、工作簿已重命名)? 有牛人能帮忙翻译一下么,我看的头都晕了,好文章呀!.(转载) 请问大家一个WinCE的下载引导问题 关于数据库的 大家有没有这种感觉? 想买本计算机专业书 却发现她很贵 不买 却又急需 !!!矛盾!痛苦! 如何恢复98休眠功能? 局域网中的一台机子中的文件夹是共享的,在外网怎么访问?? sql语句中日期格式怎么写,很简单 急,域名查询,网络实名的功能怎么做??? 關於mail發送的,出現如下錯誤:jsp.error.badaction,怎樣解決? 用过 True DBGrid Pro 7.0 兄弟请帮帮忙!在线等待! 大一作文150字 求作文 我的大一试试吧 现代汉语的本科生论文要怎么写,我是大一的 大一的数学论文怎么写 英语 Encourage your children to try new things___try not to push them too hardEncourage your children to try new things___try not to push them too hardA but B for C so D while 谁能解释一下为什么选Awhile不是可以表示转折 用配方法化二次型f(x,y,z) = x²+2xy+4xz+4yz+7y²-2z²化为标准型 并给出所用的可逆线性变换----------主要是不太会配方 求指导 0.5多少次方等于10.我用换底法算是约1.3010 但是带入进去不对啊?希望详细点 三角形ABC中 AD=DB DE//BC 求证AE=EC今晚就要哈~ 5的lg20次方*1/2的lg0.5次方=? 但是遗憾的是 ,用英语怎么说但是遗憾的是,雪人很快就融化掉了.希望是手动回答, 大一作文《五年后的我》要求字数3000字左右 巨型牡蛎长约35.5厘米 或为世界上2047年:全球高温临界点?巴西油田竞标引发抗议 示威者与军警冲法国媒体再曝美国监听法国驻美和联合国吉林省雾霾渐退影响仍持续 学校停课面中国代表在联合国呼吁支持最不发达国家酝酿八旬六连任 麦凯恩欲2016年竞成人高考本周末开考今明两天发放准考证男子持韦小宝身份证乘火车 称只想开个早上拜孔子上课念四书五经 杭州郊外有菲总统再度表示菲政府不会就马尼拉人质普鲁申科支持中国申奥多国警察拟前往马航失事区域今日靓汤干部随礼设限谁来监督执行?专项资金违规使用为何难根除市气象天文馆有暑期免费活动富力上榜《财富》 中国企业500强美国宾夕法尼亚州一医院发生枪击案 致老板热心失窃后还收留小偷 奇葩小偷偷马里官方:阿尔及利亚航班在恶劣天气条茂业物流今复牌 收购创世漫道欲谋双轨不灭元神极品美女公寓魔王异界纵横网游之盛世武侠超级小混医妖孽无上最终逆战屌丝道士圣踪良配天才特警玩官场蚩尤部落旅游陶瓷博物馆旅游宜园旅游龙背山森林公园旅游辽宁古生物博物馆旅游天工开物园旅游羌族风情园旅游月亮湖水库风景区旅游明清古建筑群旅游沈钧儒纪念馆旅游梅湾老街旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘