当前位置: 首页 > news >正文

MDCC印象之二:芒果的味道

其实这次去MDCC除了抱着学习的目标以外,也想顺便看看Android 4.0,可惜到了三星的展台,工作人员说Galaxy Nexus还没到国内,另外那个超大只的手机Galaxy Note也没看到,遗憾。

不过倒是在Nokia展台看到了刚刚发布的Lumia 800和710。不过这个新机人气太旺了,排了半天队才能玩上一把。

硬件上没什么好说,Nokia的做工是没得说,至于扛不扛摔没试过,不知道。我关心的重点还是它们所用的WinPhone7芒果系统。

对于芒果来说,最吸引人的莫过于Metro UI了。不得不承认,这个UI的确是创造性的,按aawolf兄的话说就是:Android/iOS那些一堆图标的UI都是普通范,Metro UI这种才是文艺范。

在我看来Mango的UI第一大特点就是图标大多了,并且变成了瓷砖样的拼图——事实上微软貌似就是管它叫瓷砖(Tiles)。但这只是表面现象,重点在于这些Tiles本身也变成了信息显示的界面,而不再只是代表Apps的图标而已。基本上在WP7里的Tiles有点像是Android里的桌面Widget,但又比Widget更充分地利用显示面积。不过这种Tiles的交互能力比Widget还是差点,我只看出它有显示功能,没看出有交互功能,当然也可能是我没有试出来。另外,与图标对应的Apps也还在,只不过是隐藏在一个需要单独弹出的列表里。

而这个UI另一大亮点是全景视图。具体来说就是一个应用的界面可以做成一个比屏幕大得多的虚拟视图,然后滑动浏览——虽然别的手机上显示超大的视图(比如放大图片)也可以滑动浏览,但是基本上应用的显示大小还是局限在屏幕大小的范围内,滑动浏览不过是放在一个ScrollBox里而已。但Mango这个是直接就是一个大视图,而且滑动提示也很有意思,是把屏幕以外的内容在当前屏幕上显示一小部分,这样任何人看到都会直接想到屏幕外还有内容,自然就滑动过去看了。

这种以人为本的操作隐喻坦白说太有水果范了,但居然不是出自水果而是微软。不得不说自Kinect以来,微软的创新力量似乎开始爆发了。

另外,手机整体的操控流畅性非常好,这应该是因为WP7对于硬件配置有最低要求。水果更不用说,软硬件一体。Android在这方面就不行了,多烂的硬件都有装Android的,搞坏了Android的形象。

因为WP7完全使用.net托管代码,从性能角度上说,其实应该跟Android用的JAVA是一个级别的,但因为有硬件最低配置限制以后,可以有效避免操作流畅性问题。这个做法相当可取。

还有一个方面就是,全新设计的WP7完全摆脱了WM的阴影——我接触WM很少,但即使是这样有限的接触,也对它是完全没有好印象,把桌面上经验硬移到移动上是完全错误的一条路。当然也只有像微软这样的公司能这样干,可以把投资多年的WM一举放弃推倒重来。WP7是一个完全的移动OS,摒弃了WM上的错误思路,因此对性能操控等各方面的改进应该说都是很大的。

当然,几分钟的把玩,了解显然是肤浅的,不过还是部分改变了我以往的成见。微软的进步的确是明显的。

然而对于Nokia,我仍然不看好,它已经正式沦为一个硬件代工厂商了。不过这也是迟早的事,作为之前用了Nokia手机近十年的人,我一直都认为他们做的软件一向很烂,现在把软件的工作交给微软去做也许是件好事吧。至少对微软来说是好事。

关于WP7的开发技术,主要是听了aawolf的讲座后了解了一些。如上篇所说,很遗憾地因故没能听完,不知道CSDN能不能提供视频或PPT下载补习一下。

如前面所说,WP7是完全使用.net托管代码的,这点上可以说微软终于兑现了十年前的承诺:一个完全.net的OS。

在版权保护方面,微软是完全跟水果站在一边的,为应用的防盗版提供全方位的保护——同样的,对应用的开发也加以了全方位的限制。在这点上我觉得微软比水果走得更远。利弊还不好说,但相比之下Android——特别是某些第三方或中小硬件商的自制ROM实在是问题多多,在这点上Android的确有很大的潜在问题。

另外就是安全性方面。WP7启用了最高级别的安全保护,据说相当于在WIN7里把UAC的安全级别设置到最高,对于发短信打电话之类的功能都会弹出提示要求用户确认,而且这个警告是集成在系统中,应用程序无法绕过。这点的好处是明显的,避免了应用程序可能使用的绝大部分的流氓行为,但我觉得过多的提示也可能会造成用户的体验下降,其间的得失还要看市场的反应了。

还有就是图形方面,WP7上提供的官方技术是SilverLight。不过我不确定这是不是唯一的选择。

总的来说,WP7是一个相当不错的手机OS,甚至可以说,在某些方面的确超越了iOS。也的确比较适合不怎么爱折腾的Nokia用户。与桌面开发一致的开发环境可以为它带来大量的应用开发者。这些都是WP7的优势所在。

至于WP7及后续的WIN8等会如何发展还是很难说的,理由主要有几点:

首先一点就是,通这次的初步了解,我没有看到WP7有什么杀手级的功能——Metro UI确实不错,但界面效果毕竟不是实用功能,用户买手机是拿来用的,而不只是看或玩它花哨的界面。其次,应用程序少的起点短期内难以改变,加上微软加上了这么多限制,使得相当部分的应用其实没法搞。另外,我也一直都不看好SilverLight,尤其是如果它是WP7上唯一的选择的话。

相比之下,水果每代产品都有至少一项杀手特性出现,加上周边的服务,以及他们对用户的领导作用,iOS的优势可以说在较长的时期里都是无法撼动的。

而Android方面,开放的体系结构可以拉拢足够多的中小厂商。至少在中国,有将近一半的市场是被山寨机所占领的。就中高端来说,可能会有变数,一方面是要看市场对Android4的表现,另一方面则是Google与Moto的关系——这方面可能更为主要,一旦处理不当,得罪了三星和HTC等大厂商,他们未必不会在中高端转向微软,毕竟他们也一直跟微软是有合作的。

压力最大的无疑是Bada这样的三流系统,它们无论从哪个角度上看,跟WP7都完全没有可比性,注定会是杯具。至于WebOS虽然不错,但终归已经被HP所抛弃,前景渺茫。还有RIM就不提了,再不振作起来怕是也没戏了。

除此之外,WP7的最大市场还在于Symbian让出的这一块,能在这些用户流失前争取到多少,决定了WP7及其后续版本的前途。当然目前看来应该还是比较乐观的。

================补充的分割线===================

另外在作本文的时候,在推上看到一则对WP7很不利的传闻:据说在Nexus One上装MonoDroid跑WP7应用结果性能比在最新的WP7手机上还要好。Nexus One已经是将近两年前的硬件了,如果这是普遍现象的话,可能说明WP7还太新,某些方面还不够成熟。当然,我还没看到具体的测试,也可能只是个别应用本 身的优化问题。

另外,最新的消息相信大家都看到了,Adobe宣布放弃在移动和电视领域继续支持Flash,估计离全面放弃也不太远了。微软是继续死守淫光,还是转向HTML5,这是个问题。


相关文章:

  • ORA-00600: internal error code, arguments: [kgl-no-mutex-held]
  • exp之compress到底在压缩什么
  • 数据库的独立子查询以及数据的删除、更新和建立视图的笔记
  • 让每次弹出的div随页面的卷动而保持相对位置不变
  • 课后作业-阅读任务-阅读笔记-4
  • connect by level语法的理解
  • echarts 重新渲染(重新绘制,重新加载数据)等
  • 【转】如何恶搞朋友的电脑?超简单的vbs代码
  • 如何访问dashed filename
  • 超简洁的jquery操作页面中iframe内的dom元素
  • maven使用阿里镜像配置文件
  • 办理护照
  • h5混合开发好用的下拉刷新插件
  • 商务签证的准备(1)
  • 开启MySQL远程访问权限 允许远程连接
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • 〔开发系列〕一次关于小程序开发的深度总结
  • Android Studio:GIT提交项目到远程仓库
  • CentOS6 编译安装 redis-3.2.3
  • docker容器内的网络抓包
  • Git 使用集
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
  • Javascript弹出层-初探
  • JSDuck 与 AngularJS 融合技巧
  • Leetcode 27 Remove Element
  • nodejs实现webservice问题总结
  • Python打包系统简单入门
  • Shell编程
  • spring-boot List转Page
  • springboot_database项目介绍
  • Vultr 教程目录
  • 飞驰在Mesos的涡轮引擎上
  • 分享几个不错的工具
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  • 一些基于React、Vue、Node.js、MongoDB技术栈的实践项目
  • 进程与线程(三)——进程/线程间通信
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • #Lua:Lua调用C++生成的DLL库
  • $.ajax中的eval及dataType
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • (pojstep1.3.1)1017(构造法模拟)
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (一)VirtualBox安装增强功能
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)Scala的“=”符号简介
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)
  • .NET中使用Protobuffer 实现序列化和反序列化