仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2076|回复: 20
打印 上一主题 下一主题

[学习教程] IOS制作之究竟甚么情形该挑选开辟Web App?仓酷云

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:47:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
你可能还需要学习使用Xcode这个开发环境,接著你需要掏钱向苹果注册开发者权限,基本的帐号是99美金。本视频为“斯坦福大学iPhone开发教程”,51CTO将不断关注本视频教程的更新进度,为大家提供最新的视频。注:本文作者为滞销挪动Web图书作者BrianFling,本文为其著作《MobileDesignAndDevelopment》的样章节选。


<br>挪动Web无所不在


挪动web是今朝独一的撑持各类设备会见的平台,与桌面web一样,挪动web撑持各类尺度的协定。挪动web也是独一一个可供开辟者公布挪动使用的平台。它将各类挪动交互与桌面义务无效地毗连了起来。
挪动web平台具有以下一些长处:简单进修,开辟本钱低、尺度化、利用便利、易于公布。我将这些长处回结为无处不在准绳:一般开辟复杂并且市场普遍的工具常常可以获得乐成。
“高质量”也是乐成的关头要素之一,而这一点挪动web这些年还没能做得很好。挪动web在很多方面还存在一些坚苦,如办理设备的多样性就是提拔挪动web质量的一个严重应战。可是,挪动web碰到的坚苦远没有nativeapps遭受的应战来得庞大。别的,这些应战将在这几年的工夫里失掉无效的办理。
尽人皆知,我是挪动web的反对者;但是,我也是第一个供认nativeapp主要性的人。开辟nativeApp能够充实使用设备的特征,而这一点常常是web扫瞄器做不到的,以是对一个产物自己而言,nativeApp是最好的选择。
上面几节将会商一下nativeApp的一些次要功效。
甚么时分应当开辟一个NativeApp

为使用免费

没有任何中央划定开辟者不克不及对一个挪动webapp收取利用费,可是因为某些缘故原由,人们经常以为不克不及或是不该该对一个webapp收取用度。因为汗青缘故原由,招致挪动设备上付费服务遭受两年夜阻力:
付款体例

在挪动设备上输出信誉卡号相称贫苦,并且在很多老式设备上也没有平安保证。一种典范的体例是,假如你必要对你的使用免费,你能够与运营商告竣协定,让运营商朝为为你的服务免费。这也意味着,你必要和多个运营商告竣互助。这一般是首选的办法,由于很多手机用户大概基本就没有信誉卡,好比青少年。
另外一种办法是将用户的信誉卡信息保留在一个平安的网站上。用户能够经由过程登录到该网站购置使用服务。这个历程不算出格幻想,由于这意味着用户不克不及间接经由过程他们的挪动设备购置服务了。
强迫分红

挪动运营商是会提成的。app不管是经由过程运营商仍是经由过程挪动设备公布,他们都为使用供应了一套免费机制。这些运营商和挪动设备将会提取部分收益,然后将残剩的部分交给使用开辟商,这也意味着,开辟职员必需恪守他们的市场划定规矩。顺应运营商的市场划定规矩一般长短常坚苦的,必要投进大批的人力资本。比拟而言,挪动设备的市场划定规矩则复杂很多,可是也存在很多的坚苦。
妨害运营商和挪动设备开辟商好处的使用和服务都将遭到阻扰。已往,那些不靠运营商和挪动设备开辟商运作的网站假如支出过于显眼的话,都逃走不了被封闭的运气,可是比来,如许的事变鲜少产生了。
假如你想为你的nativeapp免费,那末你就必需承受这个实际——你必需恪守他人的市场划定规矩,还得保持部分收益。
开辟游戏

假如你是想开辟一个挪动游戏(挪动游戏是挪动市场上最年夜的一块),那末你必要开辟一个nativeapp。游戏对资本的占用很年夜,而且必要利用很多设备API或平台API。固然,如今有几款完整利用web手艺开辟的游戏占据了必定的市场份额,可是和nativeapp市场的占据情形比拟,仍是微乎其微的。游戏用户对使用的视觉和操纵效果请求很高。挪动web固然供应了一些仿真体验,但还远远不克不及满意用户的需求。
在开辟挪动游戏时,你必要稳重思索你的使用必要撑持哪些平台。侥幸的是,如今有很多工具可以匡助你将你的游戏推向多个平台,可是完成这些事情,仍是必要消费大批的人力和物力。
利用定位功效

下一个功效就是定位功效,能够经由过程GPS大概是旌旗灯号检测断定用户以后的地位信息。之前只能经由过程nativeapp的APIs检察用户的地位信息,但如今年夜多半支流挪动扫瞄器上都嵌进了W3CGeolocationAPI。像iPhone或Android如许安装了WebKit的设备,或是设置了Opera或Mozilla扫瞄器的设备,都能够猎取用户的地位信息。
我信任定位功效会为Web手艺带来很多全新的使用。假如可以公道使用web扫瞄器,web开辟商就可以利用用户的地位信息和其他内容开辟出加倍风趣的使用。固然这在手艺上没有太年夜的坚苦,但却遭到隐私回护条例的限定。我们将web扫瞄器当作是用户进进WorldWideWeb的出口。到场定位功效,意味着在网站中引进了一些敏感信息,这有大概招致严峻的成果。可是地位感知使用中显现的地位信息必需经由用户的受权,用户固然有权克制使用公布本人的地位信息。
利用摄像头

摄像头能够为你的使用供应丰厚的大概性。以往挪动MMS(MultimediaMessagingService)被用于处置挪动照片。换言之,你拍了一张照片后,必要利用MMS将它传送给一个服务器,服务器对比片做出响应的处置,并将处置完成的了局关照给你。这个历程长短常耗时的,并且相称庞大,也没有牢靠性保证。
经由过程会见摄像头,nativeapp开辟者可以简化摄影的历程。用户能够间接在客户端对比片做一些复杂的处置,只要在有必要的时分才将照片上传给服务器,并且是经由过程牢靠的HTTP传输。W3C正在开辟一个会见摄像头的API,但如今还未将这部合作作正式整合到扫瞄器中。
在很多范例的挪动apps中,摄像头长短常有效的,好比快拍使用、短片拍摄使用等等,摄像头能够用来捕获很多主要的刹时。不久的未来,我们能够看到——只需经由过程摄像头拍摄某个标识,使用程序就可以主动完成对标识上的言语转换事情——这个手艺在日本已入手下手盛行起来了。
利用感到器

如今愈来愈来越多的挪动设备上都新增了感到器功效,该安装能够感知设备的物理速率和重力,并将感知的数据了局传送给设备。这个安装常被用来感到设置是不是被翻转,使用依据承受到的信息主动调治画面的偏向。
感到器能够用来匡助用户提拔与设备交互时的实在感;年夜多半挪动设备都是手持的,使用可以依据设备的偏向调剂内容画面,好比翻转屏幕,或是检测物理挪动,并能据此推测用户所处的情况。举一个复杂的例子:好比用户正在走路,那末感到器可以检测到一个轻缓的挪动或是速率,这时候能够为用户供应一个年夜字体的用户界面,从而使得用户更简单看清屏幕上的内容。
但是,开辟者也不克不及太过依附感到器,由于感到器没法辨别事实哪些交互是成心的,而哪些是没成心义的。每一个挪动交互都必要经由过程“传输测试”。计划你的交互时必需思索用户在一个拥堵的汽车或是火车上的场景。思索一下假如用户正身处拥堵的地铁或是正在驾车时,你的使用可否准确处置用户摇摆挪动设备的举措。一般,年夜多半开辟者都没有思索这些要素。确保为每一个义务计划一个备用计划以处置特别场景中的挪动交互。
会见文件体系

假如你的使用必要将数据保留在当地,那末你必要开辟一个nativeapp。好比你要保留用户的地点簿、德律风或e-mail信息,或是保留从其他设备上猎取的数据。
会见文件体系经常会触及到平安和用户隐私回护的成绩。歹意使用程序大概会修正或是删除你的挪动设备上的数据。一个照顾病毒的使用程序能够使用挪动设备上的干系网将病毒分散到很多其他的手机上,在接纳挪动使用认证机制之前,这类事变是经常产生的。
另外一方面,挪动设备正变得愈来愈公家化,挪动设备上保留了大批用户的团体信息,和用户的伴侣信息和贸易信息。针对这些公家信息开辟使用是一个不错的设法。可是这也存在必定的风险,利用保留在挪动设备上的数据能够为用户供应加倍有针对性的服务。
开辟者必需服膺,只要在取得用户的受权后才干会见用户的公家数据。我们看到很多使用在没有失掉用户受权的情形下利用了大批的用户公家数据,而被误以为是渣滓信息或是垂纶使用,即便这些使用底本是在供应一些十分有效的服务。人们对你的使用的曲解将会影响到你的服务的推行,假如运营商收到过量关于你的使用的赞扬,那末你的服务大概将被停止,乃至会连累其他的使用。
会见文件体系时相当主要的一点就是在没有取得用户受权的情形下,不要会见任何用户的公家数据。而这一点,常常被年夜多半使用疏忽了。
W3C正在为挪动开辟商开辟相干的尺度API,但今朝该事情还没有完成。
离线用户

最初一个必要开辟nativeapp的来由就是,用户有多是离线的大概没法接进挪动收集。这在乡村大概很少产生,即便是在乡村,收集的掩盖也已慢慢提高了。可是长久的收集毗连中止仍是经常产生的,你的使用程序应当思索怎样处置这类情形。
想一想用户一般在甚么时分,在那里会利用你的app。假如是一个挪动游戏,那末用户极可能在飞机上利用这个app。跟踪舆图使用常在偏僻且收集掩盖欠安的中央利用。挪动旅游导游常在一个外洋的收集中会见,常常必要付出周游和国际收集用度。这时候,使用程序最好可以为用户供应离线服务,包管用户在不接进收集的情形下,仍旧能享用一律的服务。
如今撑持HTML5的扫瞄器也能完成脱机会见功效,但对用户来讲大概不太分明。跟着愈来愈多的扫瞄器都入手下手撑持脱机会见,使用必要明白地告知用户收集毗连中止时,他们仍旧能够会见挪动webapps。
Nativeapps经常假定收集毗连是牢靠的。App一般只思索了收集情况优秀的情形,想固然地以为收集是关闭的,而且网速充足快。挪动设备从收集优秀的情况俄然进进一个收集糟的情况其实不少见。Nativeapps应当在收集情况最差的情形下测试。好比用户启动义务时大概仍是全旌旗灯号掩盖,而在义务停止时大概已完整没有收集旌旗灯号了。
用户在安装nativeapps时,基本不会思索是在线会见仍是离线会见——他们希冀的是不论在任何情况下,nativeapps都能一般事情。而这也是开辟者的职责。
甚么时分应当开辟一个WebApp

只需你的使用程序不满意之条件到的nativeapp前提之一,那末你就没有需要开辟一个nativeapp,而应当选择开辟一个webapp。正如文章之条件到的,我是一个nativeapp的反对者,我以为nativeapp有很多优异的特质,而且具有很年夜的市场潜力,可是webapps是独一一个耐久不衰的挪动内容、服务、使用开辟平台。
NativeApp其实不能分明地为用户供应更好的服务;它反而会增添项目标本钱,削减了使用公布的渠道,增添了App晋级的庞大度,减弱了开辟者对使用的把持和利润,而且大概会给设备带来贫苦。NativeApp能够为开辟者带来短时间的效益,但这是有必定风险的,乃至大概会影响到挪动市场的可耐久开展。
移动WebApp的上风在前文中已提到过了。假如上一节提到的几点功效是促进你选择NativeApp的独一缘故原由,那末假如可以在挪动扫瞄器上屏障这些停滞,你是不是还会保持选择NativeApp呢?Palm的webOS已动手办理了上述的部分成绩。他们基于WebKit构建了一个全挪动操纵体系,将手机酿成了一个web扫瞄器。所谓的“nativeapps”实践上就是一个webapps。
PhoneGap也是一个相似的项目,这个开源项目用于匡助开辟者在iPhone、Android和BlackBerry设备上开辟nativeapps,而且可以摹拟设备上的功效(如定位功效和文件体系)供webapps挪用。这些代码能够在各个设备的使用商铺中公布而且出卖,可是他们利用的通用代码和计划是能够共享的。因为开辟的是一个webapp,开辟者能够为低真个挪动扫瞄器开辟一个简化版的使用。只用开辟一次,就能够部署在多个平台上了,
关于那些有着丰厚的挪动开辟履历的程序员来讲,一提到“要开辟一个功效丰厚的使用”时,大概起首想到的就是nativeapp。固然在良多设备上,这一设法仍旧合用,可是如今挪动webapps上也供应了充足丰厚的功效接供词开辟者挪用。这使得webapp不但能够像nativeapp一样被计划得功效丰厚界面壮丽,并且还能在各个平台上迁徙,乃至不必修正一行代码。
如今在挪动设备开辟中,挪动webapps的立异进进了亘古未有的低潮时代。但更主要的是,这是有史以来第一次,挪动设备开辟商决意配合制订一个挪动web开辟的尺度,就像是桌面web上的尺度一样。不但云云,那些撑持挪动webapp立异功效的设备或是撑持第三方扫瞄器的挪动设备都遭到消耗者的接待。
以是与其问本人“我为何要开辟一个webapp?”,还不如间接问本人“我为何不开辟一个webapp呢?”。

很少去思考,没有去多问几个为什么。这是学习的大忌,我认识到了自己学习方法上的错误。孔子说,学而不思则罔,思而不学则殆。一点也没错,学和思是要结合的,这样才能进步。现在回想一下,我学到了什么?自己也无言以对了。
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-1-21 14:19:32 | 只看该作者
同很多iOS开发者一样,我也是通过培训进入到iOS开发这个行业,开始没有打算培训,只准备自己学习一些计算机编程相关的知识,毕业时找一份编程相关工作(本人是信息与计算科学这个专业,是数学系)。
admin 该用户已被删除
板凳
发表于 2015-1-30 07:26:53 | 只看该作者
然而,在vmware软件环境下,安装Mac OS X操作系统也是一件非常复杂的事情,而且还有可能花费了大量时间,最后却跑不起来。笔者也是经过了大量的实践,
蒙在股里 该用户已被删除
地板
发表于 2015-1-31 18:53:51 | 只看该作者
重要的是,放眼全球也的确找不到第二个如苹果iOS平台这样健壮、完整、先进而且为开发者带来真实收益的开发平台来。
愤怒的大鸟 该用户已被删除
5#
发表于 2015-2-4 02:59:44 | 只看该作者
好处就是运行速度会变快,ios6针对系统的优化进一步加强了,很多网友测试ios6,第一感觉就是速度快,而且ios69会有一些新功能,新浪微博,facetime支持3G网等等。。弊端就是,现在的ios6只能算是正式版本的第一个版本,bug很多,不少人刷完ios6都出现了很多毛病,开不开机,缺少图标等等。。最好现在不要升级,等官网放出下一个版本的时候,再选择升级。。。
透明 该用户已被删除
6#
发表于 2015-2-4 03:56:39 | 只看该作者
才在自己的Windows电脑上安装配置成功了一个完美的Mac OS X Lion(10.7.4)系统,而且下载了Xcode4.5的最新版本。虽然不能实机调试,但是作为iOS开发学习已经非常完美了。
小女巫 该用户已被删除
7#
发表于 2015-2-9 15:31:43 | 只看该作者
down下code4app网站的每个分类的代码挨着看
深爱那片海 该用户已被删除
8#
发表于 2015-2-13 16:04:24 | 只看该作者
其次学习方法和学习心态很重要,在学习当中应该保持一颗良好的心态。应该借鉴别人好的学习方法,大家互相帮助,取长补短。
再现理想 该用户已被删除
9#
发表于 2015-2-15 20:49:27 | 只看该作者
其实在培训的过程中,学习到最多的就是查资料的方式,当时感觉老师好坑,什么都不告诉我们,让我们自己去查,但是现在觉得还是要自己解决问题,这样才能理解的更加深入。
因胸联盟 该用户已被删除
10#
发表于 2015-3-4 13:15:40 | 只看该作者
其实在培训的过程中,学习到最多的就是查资料的方式,当时感觉老师好坑,什么都不告诉我们,让我们自己去查,但是现在觉得还是要自己解决问题,这样才能理解的更加深入。
爱飞 该用户已被删除
11#
发表于 2015-3-8 22:55:45 | 只看该作者
以上可以同时进行,学习过程中尽量不要纠结细节和底层,要知道ios是封闭的、OC是高级语言,我们不可能过多地去了解它的原理,至少在新手阶段没有必要。用迭代的方式更新你的知识,而不是死抠一个知识点。
简单生活 该用户已被删除
12#
发表于 2015-3-16 17:12:45 | 只看该作者
其实在培训的过程中,学习到最多的就是查资料的方式,当时感觉老师好坑,什么都不告诉我们,让我们自己去查,但是现在觉得还是要自己解决问题,这样才能理解的更加深入。
变相怪杰 该用户已被删除
13#
发表于 2015-3-20 22:24:59 | 只看该作者
学习ios没什么捷径,关键在于多动手敲,曾看到前辈开玩笑说怎么快速学会某技术,答案是:“提高打字速度,快点写代码就能快点学会了”。
14#
发表于 2015-3-24 19:11:38 | 只看该作者
边吃零食边看Stanford的视频教程
柔情似水 该用户已被删除
15#
发表于 2015-4-6 17:13:34 | 只看该作者
特别是在校的学生,都存在一个小小的尴尬——虽然学习iOS开发的热情高涨,但由于没有多余的银子购买昂贵的Mac电脑而踟蹰不前。其实,针对初学者,如果想进入iOS开发的天地
不帅 该用户已被删除
16#
发表于 2015-4-16 10:10:39 | 只看该作者
自从苹果公司开放iOS SDK以来,大量的国内外的软件开发者将关注的目光聚集在苹果的iOS平台上。由于iPhone和iPad自一出现就给人带来了颠覆性的感觉
莫相离 该用户已被删除
17#
发表于 2015-4-18 01:53:26 | 只看该作者
以上可以同时进行,学习过程中尽量不要纠结细节和底层,要知道ios是封闭的、OC是高级语言,我们不可能过多地去了解它的原理,至少在新手阶段没有必要。用迭代的方式更新你的知识,而不是死抠一个知识点。
飘灵儿 该用户已被删除
18#
发表于 2015-4-21 02:22:53 | 只看该作者
同很多iOS开发者一样,我也是通过培训进入到iOS开发这个行业,开始没有打算培训,只准备自己学习一些计算机编程相关的知识,毕业时找一份编程相关工作(本人是信息与计算科学这个专业,是数学系)。
海妖 该用户已被删除
19#
发表于 2015-4-25 19:20:29 | 只看该作者
近期由于IOS7的发布,所以应用的适配潮可谓是都搞的锣鼓喧天,甚是热闹,因此呢,因适配IOS7而产生的问题也是铺天盖地的卷来,
若天明 该用户已被删除
20#
发表于 2015-5-1 03:49:54 | 只看该作者
到大三时,学院与我去培训的机构成立了实习基地,并让我们寒假去实习了一段时间,感觉还不错,于是在大四的时候去培训了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 03:07

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表