分手快乐 发表于 2015-1-18 11:51:12

IOS教程之开辟者眼中的Android手机平台仓酷云

还有很多工具需要学iOS5的SDK已经支持ARC可以自动进行release但是对iOS4的支持还有一个小问题现在要开发应用可能还需要按照之前的MRC的方式allocreleaseretainautorelease之类的内存管理方法人人都晓得,Google推出了他的手机平台——Android,Google做甚么城市引来有数人的眼球,并总能制造出不凡的事业。信任此次他推出这个手机平台,应当会吸引到有数开辟职员的眼球,乃至会吸引良多有识之士转向手机开辟。由于相对现有的其他平台,手机但是一块还没有充实开辟的新年夜陆,Android又是新中之新,时机要多良多。仿佛是为了减速这个历程,Google还举行了“Android开辟者年夜赛”,奖金总额高达1000万美圆。
在此次BeijingOpenParty上,我们有幸熟悉了一名履历丰厚的手艺专家和两位db4o(注:出名对象数据库,次要使用在嵌进式设备平台)的中心开辟职员。InfoQ中文站特邀编纂仝健对三位举行了采访,请他们从开辟者角度谈一下对Android的熟悉和感到。
三位受访者的经历:
屠程远(以下简称屠):94年卒业,一向处置软件编程事情。把握汇编、C、C++、Delphi、.NET、Java等言语及架构,次要处置操纵体系底层和软件框架的编程事情。rcpandroid项目owner。
张黄瞩(以下简称张):自在职业者,ApacheHarmony的committer,db4o中心开辟职员,P-Unit项目作者,熟习java言语,使用程序架构计划,测试驱动开辟,和增量重构代码。
杨普(以下简称杨):ApahceHarmonyPMC(ProjectManagementCommittee)成员,committer,次要乐趣是编程言语,急迅办法,开源软件和社区。
InfoQ中文站:我们晓得,Android是基于Java的,那末今朝它支不撑持其他言语呢?
屠:今朝AndroidSDK只撑持Java。
张:实在我们不克不及说Android是基于java的。关于开辟者而言,Android撑持利用java言语语法编程,注重,不是撑持Java,而是Java言语语法,由于Android撑持的Java语法类库仅仅是J2SE5的子集,并没有经由过程任何java尺度认证。Android讲代码编译为Dalvik假造机字节码来运转。今朝Android官方仅撑持java编程语法。
杨:是的,Java是Sun的注册商标,只要经由过程了相干标准的兼容性测试才干叫做Java,Android的Dalvik假造机和相干类库也不答应恪守任何Java标准,有关这个成绩,ApacheBoard的成员,MIT的stefanomazzocchi有一篇十分出色的Blog:Dalvik:howGoogleroutedaroundSun"sIP-basedlicensingrestrictionsonJavaME
InfoQ中文站:那末,对Java语法编程的程序员而言,最年夜Java开辟群体是J2EE程序员,关于一个想转向挪动平台开辟的J2EE程序员来讲,转向Android平台是否是一个好选择?又会有哪些坚苦?
屠:我所编程打仗过的挪动平台撑持Java的有J2ME、BlackBerry、Android。J2ME的功效其实太无限,仅撑持J2SE很小的一个子集;Android所撑持J2SE的子集已很充实了,在Java编程方面和J2SE比拟几近没甚么限定。良多开源的Java类库仅仅必要很小的修正就可以在Android上运转。而在J2ME上要想使用那些类库几近不成能,只能从头造轮子。BlackBerry里的Java情况比J2ME要强,但强的无限,基础仍是没法使用现有浩瀚的J2SE的类库。以是对想转到挪动平台的J2EE程序员来讲,转向Android平台的价值最小,所能做的事变最多。
转向Android平台的坚苦次要在于这是个全新的平台,手机硬件还没公布,没有实践项目堆集和实践的运转情况。如今开辟基于Andoid的使用不免有些扑朔迷离的意味,没法经由实践运转情况的查验。也很少有客户乐意为半年一年后还不包管能运转的使用买单,以是对程序员来讲会有较长的投进期。
张:我团体以为这个转型会十分简单。只管Android撑持的不是尺度的JavaTM,可是已掩盖了年夜部分的Java的语法和类库。坚苦的地方,我以为大概在于开辟职员对挪动设备和服务器设备的了解。挪动设备的具有一些独占的特征,好比电源损耗成绩,屏幕巨细限定,和CPU的速率等。因而,在各个资本之间的均衡战略常常和传统的服务端编程纷歧样。
杨:另有两个缘故原由选择Android,


[*]Google答应Android将会是一个以ApacheLicense开源的项目(只管Google没有公然的开源工夫表),而ApacheLicense是一个对贸易使用和开源使用都十分宽松的License。
[*]Android能够说是一个为挪动互联网计划的手机体系,在下面内置了诸如json,location,gdata,browser,map等等良多API,因而关于J2EE程序员来讲,Android如许的终端设备不但供应了熟习的场景,并且又供应了完成良多idea的大概性。
Android今朝另有一个坚苦就是它的API和完成都还不长短常不乱,文档也不是很好,由于太新以是缺少乐成案例,固然它的社区十分活泼,几近一切成绩都能够在那边失掉敏捷回覆,而Google为此举行的Android编程年夜赛无望带来一些让人冲动的使用案例。
InfoQ中文站:从您团体的履历动身,Android手机与以往的手机平台开辟上有如何的分歧呢?
屠:以往手机平台感到是各个厂商各自一套关闭系统,J2me只能作为二等国民存在,一等国民是C、C++。在Android平台,Java是尺度言语,一等国民。在Android平台上编程感到受限定最小,乃至有在为PC机编程的感到。团体感到C、C++言语最好畏缩到其最善于的底层驱动范畴。在使用层,Java仍是最好的言语,资本丰厚、编程复杂、可移植性强,条件是硬件速率已快到了一个水平。Android平台所对应的硬件是半年一年后的,当时手机的硬件才能会有新的开展。记得十年前PC机的尺度设置是128M内存、300MhzCPU,跑WIndows98,已有很有丰厚的使用了。即便明天良多手机的硬件已凌驾这一程度,更别说半年一年以后了。
张:在Android上开辟会简单良多。Android是一个全新的开放的平台,其方针程序员为一般Java开辟职员。比拟J2ME,Symbian程序员,Android的进门门坎应当说十分低。
InfoQ中文站:能不克不及从开辟者的角度把J2ME和Android对照评价一下?
屠:J2ME的提出是由于现在手机硬件速率很低,Java假造机运转包袱较重,以是年夜幅裁剪了J2SE,推出了J2ME。年夜幅精简的成果就是开辟功效年夜年夜受限,和PC平台差异伟大。跟着硬件才能的进步,团体以为手机撑持J2SE是殊途同归。Android平台朝这个偏向迈出了年夜年夜的一步,年夜年夜减少了手机和PC平台上编程的差异。
InfoQ中文站:Android平台上有可使用的数据库吗,可不成以也许先容一下?
屠:今朝我懂得到的一个是SQLite,一个就是db4o。SQLite是Android内置的精简型干系型数据库,能完成尺度干系型数据库的年夜部分功效。db4o是对象数据库,在编程上更加复杂。团体对照看好对象数据库在手机上的利用。由于在手机上所要处置的数据究竟是大批的,对功能请求不象数据库服务器那末高。这时候对象数据库编程复杂、可天真顺应将来变更的长处就展现出来了。但由于db4o不是Android内置撑持的,今朝还做不到和Android独有的一些编程部件的无缝分离。
张:Android内嵌了SQLite数据库,这是一个轻量级的干系型数据库。与J2SE分歧,Android上界说了一套新的数据库操纵API,而不是利用JDBC。db4objects公布了其旗舰产物db4o能够无缝的运转在Android平台。db4o是一款面向对象的原生(native)数据库。我团体不是很喜好Android内置的这套数据库API,由于它其实不遵守JDBC标准。在我的了解,Android的一年夜亮点就是拥抱现有的手艺,博得了java开辟职员的喜好,而新的查询API意味着原本的基于JDBC的数据库相干的程序不克不及间接运转于Android。从这个角度来说,db4o在一切的API方面坚持了高度分歧,无需做任何修正,由于db4o是完整基于java的原生数据库。
开辟职员大概更习气利用面向干系型数据库,可是db4o在API计划方面十分合适挪动设备的开辟,十分简便。拿Android平台内置的接洽人数据布局来说,存储,读取接洽人,假如利用db4o,只需10行只要的代码,假如利用SQLite的话,则必要上百行代码。db4o间接面临对象,无需把对象转化为表布局字段,由于编程更不简单堕落。和服务端分歧,手机上的数据库更请求自顺应办理,而无需数据库办理员,这也是db4o的计划方针之一。
杨:db4o在Android上的部署不必要任何设置或修改,就看成一个一般的library就能够流利运转了。因为市场上还没有Android手机出卖以是没法给出切实的功能对照,可是在摹拟器上的对照证实db4o的综合功能涓滴不逊于SQLite,在一些情形下乃至无数量级的上风,好比已知数据的id来举行删/改/查等,关于手机使用这长短常广泛的利用场景。
Android上今朝没有成熟的O/RMapping框架,关于年夜多半习气了Hibernate,JDO,iBatis等各类框架的开辟职员来讲,面向对象数据库更切合他们的利用习气。并且面向对象数据库间接制止了O/RMapping的成绩,重构代码完整不必思索重构数据库大概设置,更不必修正SQL,因而加倍急迅。
作者简介:仝键,网名咖啡屋的鼠标,06年年夜学卒业,一般程序员,专注于Java、Flex方面的开辟、Agile等软件开辟办法论的进修。喜好列入社区举动。
来自:http://www.infoq.com/cn/articles/developer-remarked-android

当时要是有人告诉我这些估计少走不少弯路还有提醒各位初学者刚开始学的时候会有几个月的低谷期很容易放弃如果挺过最开始的几个月后来就越学越容易了

飘灵儿 发表于 2015-1-21 16:21:09

AD: iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。

愤怒的大鸟 发表于 2015-1-30 21:02:41

中国如今已然发展成为一个软件大国,软件人才的数量跃居全球之首。当然,在苹果平台的开发领域,也保持了相当强劲的发展势头。然而,很多初入iOS开发门槛的开发者,

若天明 发表于 2015-1-30 21:04:35

从C语言入门,因为IOS开发用的是OC语言,是在C基础上的,不过也跟C不是很搭界,你可以直接学习OC语言也可以,

变相怪杰 发表于 2015-2-4 13:10:36

边吃零食边看Stanford的视频教程

莫相离 发表于 2015-2-8 14:41:02

好处就是运行速度会变快,ios6针对系统的优化进一步加强了,很多网友测试ios6,第一感觉就是速度快,而且ios69会有一些新功能,新浪微博,facetime支持3G网等等。。弊端就是,现在的ios6只能算是正式版本的第一个版本,bug很多,不少人刷完ios6都出现了很多毛病,开不开机,缺少图标等等。。最好现在不要升级,等官网放出下一个版本的时候,再选择升级。。。

爱飞 发表于 2015-2-10 09:54:09

看《iPhone 4与iPad开发基础教程》,跟着一步步来

小妖女 发表于 2015-3-1 01:56:37

边吃零食边看Stanford的视频教程

精灵巫婆 发表于 2015-3-9 12:31:56

AD: iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。

小女巫 发表于 2015-3-16 21:57:59

AD: iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。

小魔女 发表于 2015-3-24 21:26:23

其实在培训的过程中,学习到最多的就是查资料的方式,当时感觉老师好坑,什么都不告诉我们,让我们自己去查,但是现在觉得还是要自己解决问题,这样才能理解的更加深入。

冷月葬花魂 发表于 2015-3-27 03:05:54

我也从简单的状态栏适配开始,先研究了下关于状态栏的适配,特总结如下,供广大网友一起讨论交流。

第二个灵魂 发表于 2015-4-1 05:25:28

培训时可以选择安卓,iOS,Java,因为实习的时候我选了安卓,当时实习时间只有三周,学的晕头转向,而java我也没学过,iOS的基础是C语言,这个大学里还是学过的,于是选择了iOS。

只想知道 发表于 2015-4-14 21:01:37

iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。

灵魂腐蚀 发表于 2015-4-17 03:49:12

开始的时候甚至想放弃,不过想想自己的未来,只能咬牙坚持,课下就不停的缠着老师。放学就补基础,这些基础的东西没有速成的,只有刻苦努力。我是后来发现的,转变自己的心态,不要读书看资料当成一种痛苦

飘飘悠悠 发表于 2015-5-3 16:27:24

看完这个你就可以有多种选择来踏入做应用的阶段

深爱那片海 发表于 2015-6-8 01:50:46

才在自己的Windows电脑上安装配置成功了一个完美的Mac OS X Lion(10.7.4)系统,而且下载了Xcode4.5的最新版本。虽然不能实机调试,但是作为iOS开发学习已经非常完美了。

简单生活 发表于 2015-6-17 20:13:14

好处就是运行速度会变快,ios6针对系统的优化进一步加强了,很多网友测试ios6,第一感觉就是速度快,而且ios69会有一些新功能,新浪微博,facetime支持3G网等等。。弊端就是,现在的ios6只能算是正式版本的第一个版本,bug很多,不少人刷完ios6都出现了很多毛病,开不开机,缺少图标等等。。最好现在不要升级,等官网放出下一个版本的时候,再选择升级。。。

山那边是海 发表于 2015-6-17 20:27:22

在百度搜索你想要了解的类名(苹果的cocoa和cocoatouch框架的类名很有特点很容易搜到,前缀都是NS or UI),看别人写的博客详解
页: [1]
查看完整版本: IOS教程之开辟者眼中的Android手机平台仓酷云