2012年4月22日星期日

选择“关机”还是“睡眠”?

  当计算机暂时不需要使用的时候,你会选择“关机”、“混合关机”、“睡眠”、“休眠”还是“混合睡眠”?根据微软所进行的调查,57% 的台式计算机用户和 45% 的笔记本电脑用户会选择关闭他们的计算机,而不是让计算机进入睡眠模式。

  对此,我们将会逐一介绍各个选项,为你找出最佳选择。但是,由于各个选项都有其的不同特点,所以我们分为两种情况进行分析。另外还会解答一些各位最为担心的问题。

选择“关机”还是“睡眠”?

选择“关机”还是“睡眠”?

  一、如果希望启动之后进入全新会话:

  1. 选择“关机”

  如果选择“关机”,系统将会通知还在运行的应用程序,通知它们保存数据和设置。之后,系统将会关闭每个已登录用户的用户会话,而且陆续关闭服务。然后,系统将会通知设备,并关闭系统会话、保存待处理的数据。最后,系统通过 ACPI 接口发送信号关闭计算机。

  “关机”较为节约能源,而且关机速度很快。启动之后将会进入全新会话。另外,如果需要更改硬件设备或者系统存在故障,一般建议使用关机,避免出错。

  2. (最佳)选择“混合关机”

  如果选择“混合关机”,那么系统将会如同“关机”一样关闭所有用户会话,但是系统将不再关闭内核会话,而是将其休眠。

  由于启动时只需读取休眠文件并重新初始化驱动程序,所以启动速度相比选择“关机”要快得多。“混合关机”较为节约能源,而且启动速度较快。需要注意的是,这是 Windows 8 才新增的功能,默认取代关机。


  二、如果希望启动之后进入工作状态:

  1. 选择“睡眠”

  如果选择“睡眠”,那么系统将会关闭大部分的设备。此时,一般只有内存仍然在上电,用于维持内存数据。有时为了能够从其它方式唤醒,还会给网卡、USB 接口等上电。唤醒之后用户能够快速进入工作状态。

  2. 选择“休眠”

  如果选择“休眠”,那么系统将会在关闭计算机之前将系统状态和内存内容保存到磁盘上的一个文件(hiberfil.sys)中。在恢复时系统将会重新读取该文件,并将内容恢复到内存中。借助休眠机制,用户不仅能够较快进入工作状态,而且还能完全避免关机时的电源消耗。

  3.(最佳) 选择“混合睡眠”

  如果选择“混合睡眠”,那么系统将会在睡眠的基础上保存系统状态以及内存数据到磁盘。这在台式计算机上是默认开启的。

  唤醒计算机时,如果计算机电源没被切断时,可以快速进入工作状态;如果电源已被切断时,便可读取磁盘上的休眠文件,恢复工作状态,而你的会话内容却不会丢失。

  对于使用电池或有不间断电源的电脑,更为常见的是默认睡眠,电量不足时休眠。


  三、疑难解答

  1. 什么是“全新会话”?

  全新状态,就是用户选择“关机”之后再次启动系统所进入的一种状态。用户可以打开所需软件进入工作状态,但是耗时较长。启动速度只是代表进入全新会话所需的时间。

  2. 什么是“工作状态”?

  工作状态,就是用户能够立即开始工作的一种状态。如果你在浏览一些网页,那么工作状态可能就是打开浏览器、音乐播放器、即时通讯软件等等。进入工作状态速度则是代表进入工作状态所需的时间。

  3. 睡眠时的功耗如何?元件会因此损耗吗?

  上面已经说过,在睡眠时系统一般会关闭其它设备,只为内存上电以维持数据。这种情况只会消耗很少电能(大约在 7.5W 左右),而且由于元件处于静止状态,它的损耗不会很大,几乎可以忽略不计。

  4. 休眠文件严重“吞噬”磁盘空间,是否应该果断删除?

  根据某些优化软件或安全软件的说法,休眠文件严重吞噬磁盘空间,所以被列为其必删项目之一。然而,休眠文件(hiberfil.sys)默认只占物理内存容量的 75% 左右,如果觉得磁盘空间紧张,还可以调整休眠文件的预留大小。

  休眠文件用于保存休眠数据,如果执行“powercfg /hibernate off”回收此空间,那么这意味着休眠、混合睡眠、快速启动(混合关机)将会彻底禁用。考虑到使用休眠等功能带来的诸多好处,与删除后所获得的少量空间,除非磁盘空间极为有限,否则不应删除。

  5. 如果睡眠之后无法唤醒,应从怎样排查故障?

  首先,请确认是否有部分系统文件被某些优化软件或安全软件当作垃圾文件删除,否则,请检查 BIOS 设置是否有被更改,看看主板支不支持 ACPI 接口。另外,驱动更新、系统更新以及一些第三方软件均可能造成计算机在睡眠之后无法被唤醒。


  四、反思习惯

  今天是世界地球日,它是最初在 1970 年的美国开始的一项世界性的环境保护活动。活动旨在唤起人类爱护地球、保护家园的意识,促进资源开发与环境保护的协调发展,进而改善地球的整体环境。

  然而,到了今天,我们对于环保方面的认识还是不够深刻。不少用户在短暂离开时都会继续打开计算机,而不是将其睡眠或关机,这样造成了巨大的能源浪费。

  一般情况之下,如果计算机暂时不需要使用的时候,应该选择“睡眠”、“休眠”或者集上述两者之长的“混合休眠”,因为这样能够快速恢复工作状态,能够节约不少时间,这比“关机”更为合理。“关机”应该在需要更改硬件或者系统出现故障时才使用。

  为什么我们要去抗拒这些新的方式呢?依靠“睡眠”等功能快速进入工作状态,远比你在进行删除启动项、关闭服务、“优化”系统、清理“垃圾”、评分电脑等操作之后使用关机、传统启动然后获得一个提示“您这次开机共用了 xx 秒,您的开机速度击败了全国 xx% 以上的电脑……”要实用得多,而且要有意义得多。

  来源:投稿,作者:EMLink,原文链接

2012年4月17日星期二

Instagram完全新手指南

  今天世界的目光都聚焦到了 Instagram 上,因为在这个星球上最大的社交网站 Facebook 宣布将以10亿美元收购 Instagram 和它背后的团队。在不到两年的时间内,发展为拥有3300万用户的 Instagram 为何拥有如此魔力呢? 在我们之前的之前 Instagram 成功的关键节点 曾有讨论。考虑到很多人或许还没有玩过 Instagram ,今天想带给大家的是如何快速上手并玩转 Instagram ,因为它必然有着和其他社交应用不同的地方。

  怎样拍一张好的图片

  我们曾在简单而又不简单的手机摄影里面提到未来的手机拍照会更加娱乐化、趣味化和社交化。而 Instagram 刚好体现了这一点。当然要想用 Instagram 拍出一张好的照片,有一些必备的手机拍照技巧还是需要掌握的。

  1. 学会简单构图

  对于手机摄影简单的构图也是必须的,三分法则、黄金分割法则、对角线法则都应该简单了解一下,避免无论拿起收起拍什么都是不加考虑的放在屏幕正中间。当然,也不要拘泥于这些条条框框上。

  2. 学会从不同角度取景

  取景构图与画面水平线是没有关系的,要学会从不同角度取景,例如俯视、仰视或以拍摄物的角度去取景都值得尝试(不建议45度),这样拍出一张有新意的照片机率就大多了。

  3. 利用“移轴”效果

  手机拍照不具备专业相机相同的控制景深的能力,而使用线条、重叠及前后景空间可以做到这一点。所以要学会利用 Instagram 里的“移轴”效果来让照片具有纵深感。

  4. 注意光线

  光线的好坏决定着你拍出的照片的好坏,例如要尽量避免顶光和正面光拍摄,多用侧光或逆光,尤其是逆光下出现的剪影效果会使你的照片既有层次感又有表现力。

  5. 使用恰当滤镜

  丰富滤镜一直是 Instagram 的特色,将原始图片加上滤镜效果后不仅能掩盖掉手机拍照的一些小的瑕疵,它还能够起到调和色彩饱和度或明亮反差,当然前提是你要能选对正确的滤镜。如何选择呢?当然是多尝试几个然后对比出哪个效果最好就选哪一个。

  6. 借助其他 App

  除了 Instagram 外还有其他几个做的比较好的摄影/图片工具也是值得推荐的,如果能把它们跟 Instagram 在一起使用的话效果会更好。例如能够将照片自动调整为 Instagram 正方形比例的Squaready、滤镜组合更强大的 Camera+、具有怀旧相机镜头感的 Hipstamatic 等。

  7. 注意裁剪和边框

  在使用 Instagram 拍摄时,要时刻记住裁剪问题,尽量适配其 1×1 的画面比例。此外要合理选择 Instagram 的边框来增加相应的艺术感。

Instagram 完全新手指南

  怎样使拍摄的照片获得关注

  1. 创作高质量的照片

  2. 创作受欢迎的照片

  3. 善用标签推广

  Instagram 没有锐推,没有转发,所以要想使你的照片获得关注只能就是通过你的粉丝或通过添加 # Tag 归类来获得关注。关于话题归类,你可以定期搜寻一下最热门的 Instagram tag ,上传照片后立即把这些 tags 评论上去,这样就会有 Instagram 过来,如果 Like 数量短时间比较多(达到20个或以上)你就能登上热门榜了。那时候你的照片就面向所有的 Instagram 用户了。这些的前提是你的照片是高质量的。

  4. 关注其他用户

  如何更好的玩转 Instagram

  如果你能做到上面那几点就说明你在 Instagram 已经算基本入门了,要想更好的玩转 Instagram 请继续观看下面的高级进阶手册。

  2011年1月,Instagram 向第三方开发者开放了其应用程序接口(API),之后基于 Instagram API 的手机应用和网站就逐渐增多,到现在全球至少已经有 2500 个围绕着 Instagram 的第三方扩展程序,它们有着各式各样的辅助功能,学会善用它们可以更好的玩转 Instagram 。

  完全同步大法

  虽然 Instagram 本身就已经拥有很强的同步分享功能,包括国外的 Facebook、Twitter、Flickr、Tumblr、Posterous、Foursquare 和国内的新浪微博。但是它还有不少服务没有覆盖到。

  iFoto:将 Instagram 照片自动同步到新浪、人人、饭否和豆瓣。

  Instadrop:将 Instagram 照片自动备份Dropbox(之后可以利用 Picasa 再自动同步到 Google+)

  Instaprint:将 Instagram 照片同步打印  

  此外还可以将 Instagram 整合到 WordPressJekyll 和 Octopress

  备份自己照片/下载别人的分享照片

  有可以打包下载 Instagram 照片(全部下载到一个 zip 压缩包中)的 Instaport 、支持更多选项下载保存的 Copygr.am 、ZangZing 及 Mac 应用 InstaBackup、 iOS应用 Instake

  新式 Instagram 浏览形式

  1. 根据地理位置(LBS)显示

  InstabamCartagr.amInstaRaderInstacolor(Instagram和Color的合体) 都可以根据地理位置信息实时查看周边用户分享照片。

  2. 虚拟增强现实(AR)显示

  InstARgram 可以通过手机摄像头在现实图层上显示周边的 Instagram 的照片

  3. 汇聚显示

  Photopile:Instagram 照片墙  

  Instakitty :只汇聚猫图片

  InstaPuppyL:只汇聚狗图片

  4.网页显示分析

  Extragr.amInstagridStatigr.am

  5.桌面显示分析

  Mac客户端 CarouselInstadesk 以及 PC 客户端 Instagrille 。

  6. 其他

  Picafight:Instagram 照片分享PK  

  Calendagram:Instagram 照片日历  

  Instamory:Instagram 照片对对碰游戏  

  Clockstagram:将 Instagram 照片拼成时钟显示  

  Screenstagram:将 Instagram 图片墙设置为屏保  

  Printstagr:打印 Instagram 分享的照片并做成贴纸  

  InstaDM:此应用可以让 Instagram 用户之间相互之间发私信(Instagram 本身不提供私信功能)。

  可以看到 Instagram 的自身极简与 API 的开放使得它像 Twitter 有了更多的玩法,这就是开放的力量。反观国内,低质量的竞争环境造成的现状是各家群起围绕着不多的图片分享市场份额进行蚕食,这也是国内迄今为止还没有出现一个影响力能媲美 Instagram 应用的原因。

  来源:Afio投稿,原文链接

2012年4月15日星期日

程序员真的很懒

  可能除了哲学家以外,笔者认为程序员是最懒的一群人。他们的职业看起来又似乎有一定的劳动强度。

  想想看,生物学家要亲自做所有的实验…给数百只小白鼠注射药物不可能自动完成。医生必须给病人进行身体检查;教授每年都要教授同样的课程;建筑师从各个角度制定方案,并手工地将方案一笔一划绘制出来。

  让我们再来看看更为辛苦的一些职业,情况更糟。营销人员要不断重复地进行同样的产品宣传;理发师日复一日地做着同样的事情;收营员每天都以相同的方式对货物进行结算…工厂工人…

  你面前呈现出了一幅图片,世界上有很多这样的人,他们每一小时,每一天,每一年,有些甚至一辈子都在重复做着几乎相同的事情。 

  来看看程序员

  每当我们想连续两次做同样的事情时—我们会尝试想一个方法来自动完成此过程。每当你写的代码是完成同样的一件事时,你会开始寻找一个库;每当你启动一个类似的项目时,你会去寻找一个模板。

  程序员的生活就是致力于消除重复的工作。

程序员真的很懒

  将琐碎地任务从我们的工作流程中剔除,这能让每个人生活得更轻松。这里有一个经典的笑话,说一个程序员情愿用一周的时间来写一个拷贝脚本,也不愿意将相同的文件复制粘贴两次,尽管复制粘贴可能只需要两分钟。

  该死的,我们要遵循DRY(Don’t Repeat Yourself不要重复自己)的原则。这个原则的基本内容是宁愿创建一个令人费解的抽象类,也不要将不相同但非常相似的代码写两次。

  这当然会导致很多问题。

  一般的软件项目充满了在顶层抽象类上构建的抽象类,你慢慢地会不清楚这些顶层抽象类将如何工作。甚至你完全不知道其代码在做什么。”Dizzying but invisible depth“,涉及到这个问题时,你真的应该读读这篇短文。

  另一方面,懒惰本身已经证明了历史上许多科学和工程发展所带来的背后推动力。用有轮子的拖车运东西比人工搬运要轻松;用船在水中前行比游泳来得容易;甚至如果你他妈的想炸掉一座城市,你投掷一颗原子弹也比投掷几千个小炸弹来的容易。

  所以这也许并不是说程序员是懒惰的。也许真正懒惰地是工程师们。只是恰巧在这样一个历史时刻,程序员作为工程师中最鲜明的一类,总是将世界向更好更光明的未来推动。而其它大多数领域已经在某种程度上稳定下来,或者需要更长的时间去适应新的工具。

  这里有一个重要的问题要问:程序员天生就懒吗?聪明懒惰的人容易被编程工作吸引吗,或者这是一种社会效应?懒惰源于最好的编程实践?还是最好的编程实践源于懒惰呢?

   

  一个比较

  最近,我有机会将一个建筑专业学生的一天与一个计算机科学专业的学生(就像我自己)的一天进行比较。

  大多数的建筑系学生的生活充满了这样或那样劳动密集的任务,这些任务是她工作的一部分。在任何时候,她都有可能要对一些模型进行拼凑粘合,在AutoCAD中从50个不同的角度对同一个物体进行绘图,或者在其它3D建模软件中重复相同的事情…然后将这些图片导入到Photoshop中成为真正好看的图。

  这种事会接连不断的发生。我估计她花费在课程作业上的时间比她实际上课的时间多一倍还不止(事实上她说花了5倍还多)。更糟糕的是,更好的完成这些任务并不能真正加快完成任务的进程,这只是意味着你多知道了几个键盘快捷键,意味着下次画图时你可能会少犯几个错误。

  熟练和精通完全无法优化关键的部分。

  相比之下,当我不上课时,我通常都在做自己的项目。因为我可以,因为我有充足的时间。当有作业布置下来时,一般情况下,我都可以在几个小时内完成…即使是最关键最重要的项目,老师也很少给我们超过一周的时间来集中完成作业,最多两周。

  精通编码并不意味着你打字更快(与建筑专业中等同的能力不同)。它意味着想出的解决方案更容易实现,利用工具来达到事倍功半的效果,诸如此类。最终,通过互联网进行测试评判,而实现过程是最无关紧要的部分,因为每个人都会。如果你有一天的时间,你可以实现某些东西。如果你有更多的时间,你可以使这些东西实现得更漂亮,模块化更高,可重用性更强,等等。

  基本上你能够快速地实现眼前的任务,你工作中大部分时间都在致力于使你的任务完成得更加漂亮。但这对于你手头的任务来说其实并不重要,你这样做是因为你可以。

  甚至于当程序员对自己的优化工作都产生厌倦时,他们会立马转而去创建工具来完成优化工作。

  事情就这样周而复始地重复着。

  接下来的家伙会使用他创建的新工具,使实现过程变得更快,接着优化它直到他最终厌倦,然后创建了一个新的更好的工具。

   所以…是辛苦的工作?

  但回到我最初的观点,辛苦工作对程序员的生产效率存在多大的影响?对于那些每天辛苦工作13小时以上,以取得竞争优势的创业者来说,这又意味着什么?这是值得考虑的一种优势吗?

   

  辛苦的工作可能对程序员工作效率产生负面的影响。它掩盖了背后所做的优化工作“哦,我可以手动把它完成,这将只需要10分钟时间”(其实这需要20分钟)。下一次,一个相似的任务到来时,你可能需要再次手动把它完成,长此以往…

  最重要的是,辛勤地工作会使你变得很笨。许多研究表明,持续疲劳的状态会使你做出错误的决策,甚至过多的决策也会让你会出错误的决定(称为决策疲劳)。事情上,这可能是我们喜欢创建抽象类并使用它们的原因—让其它人做大多数的决策,这样我就可以只专注于关键的部分。

  但是,我仍然没弄懂,到底是懒惰的人更喜欢编程,还是编程使他们变得懒惰… 

  原文:Swizec Teller    编译:伯乐在线 – 肖翔

2012年4月13日星期五

开发一个iOS应用没有那么容易

  导读:这是来自新加坡的 iOS 开发者 Kent Nguyen 发表在1月底的一篇博文。这篇吐槽文在 iOS 开发圈子里流传甚广,从原文150多个评论就可见一斑,现翻译如下。

  让我们开门见山吧:做一个iPhone应用需要花多少钱?

  就是这个最常见的问题,我的很多朋友(大多是些西装革履的商务人士),还有我那些个对技术一知半解的客户们,他们都问过我这个的问题。通常,我会先给出一个大致的报价,这个报价并没有细致到需要签合同确认每一个功能点的地步。即便是这样,每当的我报价一出口,对方都毫无例外的给惊着了(当然不是因为便宜)。

  说实话,我没有狮子大开口。看看StackOverflow上这个著名的帖子吧,讨论的是开发Twitterific这样一款应用需要多少钱,后来讨论范围扩展到开发一个iOS应用的合理费用范围。虽然这个帖子是在2008年发布的,而帖子的最佳答案是由一名来自Twitteriffic的开发人员于2010年回答的,但是时至今日,帖子里面讨论的数字仍然是很靠谱的,而且我预计到2012年底依然有效。而我的报价和这个帖子里面的数字比起来,简直是小巫见大巫了。

  现在的趋势是,什么公司什么业务都想搞个iOS客户端,并且这种趋势在2012年看似依然火爆。所以我想起来写这篇博文,我想说一下开发一个iOS应用会碰到的各种细节问题和横生的变数,借此解释为什么iOS应用开发成本这么贵。如果你在考虑搞一个iOS应用,而你本身是搞业务而不是做技术的,如果你目前正在招标或者仅仅是想了解一下,那我这篇博会对你有帮助。当然,我说的东西并不局限于iOS应用开发,对Android、Windows Phone或者是Blackberry(如果RIM还能活的话)等移动应用平台基本上也是适用的。

开发一个iOS应用没有那么容易

  开发之前需要仔细考虑的

  别做拍脑瓜的决策,在开工之前你需要考虑的比你想象的要多。我通常会帮助或者指导客户把以下几个要素都过一遍:

  一:和客户谈他们的移动应用,最让我吃惊的是他们从来没有想过支撑一个iPhone应用运行,背后需要涉及到的方方面面。他们想象中的iPhone是独立存在于这个宇宙的,是如此的简单,以至于他们要我很快就给出一个项目预算报价,而不用讨论诸多细节。我问他们:“你们是否考虑过后台服务器的事情?你们的应用需要和后端服务器做数据通讯?” 什么,听不懂?好吧,我用地球人的语言再把这个问题讲 一遍:“你们的应用不是需要用户注册嘛,你们考虑过把用户的数据存放在哪里了吗?我们需要一个地方去保存这些以后会用到的数据。” 第一次碰到这样的客户时,哥简直就怒了。后来我发现这不是客户的错:我是搞编程的,CS架构对我来说就像吃饭睡觉一样是不假思索的东西,而我的客户尽是些高富帅,他们懂个毛CS架构!

  所以,如果你不大懂技术,那请仔细听我说:如果你想做的移动应用需要用户注册和登录,或者你想随时控制移动应用的一些输出,甚至是你仅仅是需要一个用户反馈意见调查表这么简单的功能,那么,你得搞一台后端服务器。

  二:好了,现在你知道你需要一台后端服务器。同时你还需要想办法让你的iOS应用和你的服务器能够对话,就是相互间接收数据什么的。不,这个问题不是简答靠什么标准的即插即用的东东就能解决的,不是你们想象的那样!所有的东西都需要定制化开发,这就好比发明一门语言:你希望你的服务器和你的应用之间能够通过一种语言沟通,但是你不希望其他人听得懂这门语言。

  用行话说这就是制定服务器端API接口,或简称API。这些API应该在开发iPhone客户端之前就到位了。为什么?因为你必须先规定好一门语言的单词和语法,然后才能用这门语言说话吧!?好了,这就带出了第三点—如何开发这些API。

  三:API的成功定制是项目成功的一半(反之亦然),所以千万不要掉以轻心。你要考虑你的业务数据模型、业务流程、调用业务需要提供的参数、特定事件发生时数据间该如何互动等等。简单来说,我们要做的就是开发一个网站,上门跑着你的业务流程,只不过这个网站的所有运行结果都不是通过网页形式展现出来,而是呈现在一行行的文本和数字中。举个例子:一个登录成功的反馈页面仅仅包含YES一个单词。

  iPhone应用需要访问这些预先定义好的接口,并且按预定义格式提供必要的输入(比如用户名和密码),然后要对服务器端的反馈(YES或者NO)做出解析处理。所以,没有什么移动应用能够自动的含有用户注册和登录功能。

  服务器端开发需要考虑的问题太多了:选择服务器,选择用什么语言开发,主机放在哪里才能增加访问速度,等等,这里我就不展开了。如果这一切对你来说很陌生,那么你最好去问问团队里的技术负责人,或者干脆让开发人员做决策。

  四: 所以,关于服务器端API,你或者让自己的技术团队把它开发好,再将完善的API文档交给iPhone应用开发人员;或者你支付iPhone应用开发人员额外的报酬来搞定这些。你找的iPhone应用开发人员可能会服务器端开发也可能不会。如果他会的话,我建议最好让他也同时负责服务器端开发,因为他最清楚iPhone应用中需要哪些服务器端API。

  如果你的服务器端API已经存在了,那么除了向iPhone应用开发人员提供相关文档之外,你还要考虑让他能够便捷的同服务器开发团队沟通,因为大多数情况下,iPhone应用需要在已有API基础上增加一些新的接口。

  现在我们来看看iPhone应用开发本身

  扯了大半天,我们终于开始谈iPhone应用开发本身了。一般来说,iOS平台上做所有事情都不能随心所欲。你最好在开发人员写代码之前把所有的需求都确认好好。这和开发网站不一样,按照实现签订的合同开发iOS应用,开发过程中对需求变更的容纳度可能很低:

  用户界面:无论你打算采用iOS标准界面还是自定义元素,在开发开始前一定要确认清楚,因为应用的程序架构是根据界面和用户使用流程来设计的。一个很好的例子就是在界面底部使用了iOS标准的标签栏(Tab Bar),此后如果你想让标签栏里面的图标变成彩色的,这个代码改动量可没你想象的那么小!

  代码之间的耦合:如果是开发网站,你可以随意的添加一个页面或者一处链接。做iOS应用就没有那么简单了,很多东西一开始都要设计好,后期的一处改动会牵连很多东西,具体原因是你无法理解的。iOS应用的代码写好之后,再改动行不行?行!但必须小心。 这就像设计电路板一样, 如果你不小心把那根线搭错了,整块电路板就会不工作。有人说架构优良的程序可以有很高的延展性,那纯属纸上谈兵。在About屏幕上添加一个电子邮件按钮可能只需要几行代码的工作量,而添加一个转发到新浪微薄的按钮(译者注:原文是添加一个Facebook Like)就完全不是那么简单的事儿了! 

  让一个iPhone应用同时也支持iPad:如果要评选最坑爹“需求变更”,那么这个绝对是当之无愧的。理由很简单:支持iPad根本不是TMD什么附加功能!iPad应用基本上都比iPhone应用来得要复杂,界面设计和用户体验也大不一样。我问你,制造一辆电动自行车,然后把它改装成一部烧汽油的摩托车,这能是一回事儿吗!?电动自行车跟摩托车看起来是很像,但是制造它们完全是两码事。

  拿广受欢迎的Facebook官方应用来说,它的iPhone和iPad版本看似相似,实际用户操作流程完全不同。不仅仅是界面上的不同会带来额外的工作,对后台服务器API的需求也可能不一样。拿我熟悉的一个应用Denso来说(我熟悉它因为这是我开发的),它的iPad版本比iPhone多了几个功能,这些都需要额外的服务器端API来支持。记住,iPhone和iPad应用的用户体验需求是完全不一样的。 

  准备好开始了吗?

  希望此文能够帮助你和你的团队了解移动应用开发幕后的方方面面。除非你们要做一个像计算器那么简单的单机应用,否则你们很难用极低的成本搞定。综上所述,如果你觉得外包成本太高,那你只好招人自己开发。

  当然,如果你决定了要外包移动应用开发,那么我还要提醒一点:公司政治。如果你是在一家大公司或者有着严格制度的机构里面干活,那么帮助合同开发者搞定那些个规章制度上的繁文缛节,对你来说是非常重要的一项工作,必要的时候甚至可以做一些政策上的变通。 我同几个大型企业客户接触过,当我要求看他们的服务器端数据接口的时候,他们流露出很不安的表情。我想这或许是因为他们受制于公司规定而不能透露信息,这无可厚非;或者他们还没有想好这种情况下该如何操作;或者他们的品牌制度蛋疼到需要在移动应用的每个屏幕上都摆着公司logo!最终我没有和这样的企业客户合作,因为我无法想象如果有一天我需要增加一些服务器端API接口的话,和他们的规章和流程折腾,那将会是多么悲剧的事情。

  PS:开发移动应用很耗费时间,你最好有耐心。   

  英文原文:Kent Nguyen   编译:伯乐在线 – 陈远

2012年4月12日星期四

中国出现大范围网络故障

  今天早上11点左右,大量中国网络用户反馈出现断网问题,所有的国外网站均无法访问,而国内网站则访问正常。断网涉及到全国大量地区,影响范围十分广泛。

  根据我的实际测试,几乎所有的境外网站均无法从浏览器访问,包括Yahoo,Microsoft、Alexa、Bing、MSN Hotmail等等,而境内网站访问正常。除了HTTP无法访问之外,HTTPS、FTP和SSH等其他协议也无法访问,显示的现象是境外网站全部中断。

  据相关媒体报道,2012年4月12日10:40分左右,中国电信骨干网发生重大问题,导致香港、日本、美国、韩国、荷兰、澳大利亚、新加波都发生访问网站局部无法访问的情况。检测中,发现了谷歌香港地址在全国访问内很多地区都无法访问。此次故障,是由于中国骨干线路故障引起。

中国出现大范围网络故障

  截止到中午时分,部分地区的网络已经逐步恢复正常。

2012年4月11日星期三

Google测试新界面

  今天在Chrome浏览器下使用Google.com.hk的搜索,发现搜索结果的界面发生了重大变化,显示效果令人震惊。

  很多互联网产品都会进行A/B测试,Google这次也可能是在进行A/B测试,来检验搜索结果的新样式,我今天使用Chrome浏览器进行搜索后,搜索内容全部居中显示,文字格式看起来非常混乱,令人感觉非常别扭。而且糟糕的是,找不到如何恢复原有搜索界面的路径。搞不清楚Google为什么设计出这么奇怪的搜索UI界面。

  在IE浏览器下搜索结果依旧是靠左对齐。

  这种居中对其的搜索结果样式我觉得根本就不用测试,用户可能会接受这种界面吗?可能性非常小。

Google测试新界面

  除了Google搜索之外,Google+今天晚上也在小范围内测试新界面,新的Google+界面,将原先的文字链接修改为大按钮,排列在左侧,看起来很别扭,这样的设计显然是为了改善Google+在平板电脑上的使用体验,但是这界面看起来似乎并不太美观。

Google测试新界面

  感觉Google需要招聘一些UI界面设计师了。

2012年4月10日星期二

新一代iPad适配应用之游戏篇

  新一代 iPad 上市半月后其分辨率达 2048 x 1536 的 Retina 视网膜屏幕让众多用户大呼过瘾,与此同时,众游戏开发者和开发商也开始了其应用的更新换代来满足高清屏幕的完显示效果,本文将为你展示都有哪些游戏应用已经完美适配新一代 iPad。

  新一代 iPad(The New iPad)自3月8号上市到现在已经两周了,最新的客户满意度调查显示 98% 的用户对新一代 iPad 比较满意82% 的用户对新一代 iPad感到非常满意,其中用户最喜欢的就是新 iPad 的视网膜屏幕,用户表示分辨率高达 2048 x 1536 的视网膜屏幕给他们带来了全新的体验。而这些体验都是需要开发者将应用重新调整更新的,下面我们看看在牛排面世将近一个月的时间里都有哪些游戏应用已经升级完美适配牛排的高清屏了。

  1.  Infinity Blade II (无尽之刃 II  )

 Infinity Blade II (无尽之剑 II  )

  3D动作游戏《Infinity Blade II》在牛排的 Retina 显示效果下更加美轮美奂,赶紧下载体验一下这款号称 iOS 平台上面画面最绚丽的游戏吧。

  2. Real Racing 2 HD (真实赛车2高清版)

Real Racing 2 HD (真实赛车2高清版)

  完全支持 2048*1536 视网膜显示屏及 4 倍抗锯齿,“iPad 最佳的竞速游戏”、“视觉效果近乎于完美”,准备好体验这款 iOS 平台上终极赛车 Real Racing 2 了没。

  3. Modern Combat 3: Fallen Nation (现代战争3:堕落国度)

Modern Combat 3: Fallen Nation (现代战争3:堕落国度)

  Gameloft 出品,曾经智能手机上最好最真实的FPS系列游戏王者,说 Modern Combat 3 是 iOS 平台上最好的第一人称射击游戏也不为过,支持单人或多人对战。

  4. Mass Effect ™ Infiltrator  (质量效应3:渗透者)

Mass Effect ™ Infiltrator  (质量效应3:渗透者)

  EA 出品,一款角色扮演和射击游戏,采用全新的游戏剧情,游戏画面细腻,并且支持全中文,Mass Effect 的操作在 iOS 的游戏中数一数二的方便顺手。其新版也已经为全新 iPad 优化过,能够以前所未有的方式探索高分辨率游戏。

  5. Sky Gamblers: Air Supremacy (搏击长空:制空权) 

Sky Gamblers: Air Supremacy (搏击长空:制空权)

  曾在 The New iPad 发布会上作为画面演示作品,搏击长空-制空权是第一个真正展现新iPad图形运算能力的游戏,也是目前 iOS 平台上最好的 3D 空战类游戏。

  6. EPOCH. (纪元)

EPOCH. (纪元)

  EPOCH (纪元)- 世界末日后的机器人大战,“iOS上的完美完美掩体射击”,“多种电子设备上的新掩体射手之王”,“将华丽的外观与反应精准的触屏完美结合,精彩而又独特的iOS动作游戏”。

  7. Order & Chaos© Online(混沌与秩序© Online)

7. Order & Chaos© Online(混沌与秩序© Online)

  Gameloft 出品,目前 iOS 和 Android 平台最出色的大型 3D 网络游戏,广受赞誉的 MMORPG 实时多人在线角色扮演游戏,新增地下城萨兰。全新的 New iPad Retina 显示技术让混沌与秩序的世界焕然一新。

  8. Labyrinth 2 HD 

Labyrinth 2 HD

  经典滚球迷宫游戏的续作,包含完美适配更大屏幕的全新关卡,是 App Store 中最好的游戏之一,如果你之前喜爱滚球迷宫游戏,那么 Labyrinth 2 是你必须拥有的游戏。

  9. Angry Birds Space HD(愤怒的小鸟太空版 HD)

Angry Birds Space HD(愤怒的小鸟太空版 HD)

  关于愤怒的小鸟就不多解释了,走向太空的愤怒小鸟吸金依旧,发布后四天下载量突破1000万,一周后下载量突破2000万次。无重力模式值得体验一番。

  10. Diamond Dash

Diamond Dash

  曾经每月的Facebook用户量超过1000万的 Diamond Dash 的 iOS 版,与宝石迷阵相比,添加了动态元素,更添游戏趣味性。新版为全新 iPad Retina 显示屏优化,有着更加华丽的效果。

  11. Touchgrind BMX (极限单车)

 Touchgrind BMX (极限单车)

  当你熟练运用你的双指做出各种极端的动作时,你会感觉世界都在你的”指“下。这款特技小轮车有着人惊叹的 3D 华丽图像和绝佳的物理游戏体验与现实音效,是一款有着快节奏又略带疯狂、令人上瘾的有趣游戏。

  12. Foosball HD

Foosball HD

  Illusion Labs 出品,也是上面 Labyrinth 2 和 Touchgrind BMX 的开发者。Foosball HD 是一款专为 iPad 或 iPhone 开发的口袋版桌面足球游戏,使用 OpenGL ES 2 着色引擎,有着令人惊艳的图形,可单机亦可联机对战。

  13. Flight Control Rocket(航空指挥官:飞向宇宙)

Flight Control Rocket(航空指挥官:飞向宇宙)

  Firemint 开创的游戏类型之冠军热销作品《航空指挥官》的进化版:《航空指挥官:飞向宇宙》,除了经典的已有游戏体验外新增了独特的复古科幻风和节奏,全新的线路绘画游戏方式令人欲罢不能。

  来源: AppAdviceGizmodoMashableWired 、中文翻译:原文链接