前言

由于大部分朋友对iOS开发还是有比较多的疑问,比如是不是一定要买iPhone和苹果笔记本才能做iOS开发?因此,这讲就为广大有意学习iOS开发的朋友们进行解惑。

一、什么是iOS开发

iOS是由苹果公司开发的手持设备操作系统,目前搭载这款操作系统的设备有:iPhone、iPad、iPod touch、iPad mini。也就是说,学习了iOS开发,就可以编写运行在iPhone上的应用程序。

二、学习iOS开发需要哪些准备

1.Objective-C

大家都知道,应用程序的开发都要用到编程语言,比如用Java开发android程序,而iOS开发的核心语言是Objective-C。因此,要想学习iOS开发,就必须先学习Objective-C这门语言。

2.Xcode

我们要掌握一门编程语言的话,都必须使用相应的开发工具进行学习和调试,比如用eclipse学习Java。至于Objective-C,我们可以使用苹果公司提供的开发工具---Xcode。

3.Mac OS X

* Xcode没有Windows版本的,只有Mac版本的,也就是只能跑在Mac OS X系统上。因此,你要先拥有Mac OS X系统才能使用Xcode进行Objective-C的学习和iOS开发。

* Mac OS X是苹果公司为Mac系列产品开发的专属操作系统,目前搭载这款操作系统的设备有:MacBook、iMac、Mac mini。

* 大概有3种途径可以获取Mac OS X系统:虚拟机、黑苹果、购买苹果设备。

1> 虚拟机

相信计算机人士都知道什么是虚拟机了。这里的虚拟机就是说在你的Windows系统上面模拟Mac OS X的环境,把Mac OS X系统运行起来,一般可以使用VMWare这个软件实现。

优点:零成本。只要你在Windows上装好VMWare,下载个Mac OS X的镜像文件,再通过VMWare安装Mac OS X系统即可。

缺点:运行速度慢、对机器性能要求高、有兼容性问题。因为你的机器要同时跑两个系统:是在运行Windows的基础上运行Mac OS X,因此,慢是必然的。

2> 黑苹果

黑苹果就是直接在你的PC机上,像安装XP或Win7一样安装一个Mac OS X系统,装好之后开机选择启动Mac OS X系统即可。这跟虚拟机是有本质区别的:虚拟机是同时跑两个系统,黑苹果只是跑一个系统。

优点:零成本,运行速度快。只要你有Mac OS X的镜像文件。当然,你要会装系统才行。

缺点:安装难度大,并不是所有的PC机都能顺利安装Mac OS X,因为苹果当初设计这款操作系统,是专门给Mac系列产品使用的。当然,也会有兼容性问题。不过,只是用作学习iOS开发的话,就已经足够了。

3> 购买苹果设备

苹果的设备默认就是支持Mac OS X的,不过价格都比较昂贵,动不动就可能上万了。在苹果设备里面,又可以分3种:

1) iMac:传说中的一体机,一般都是上万RMB的。

2) MacBook:苹果笔记本,它分MacBook Pro和Mac Book Air,做开发最好选择Pro,Air纯属装B人士使用(开玩笑)。Pro的价格至少7K。

3) Mac mini:月饼盒这么大的主机。它只是个主机,显示器自己买一个杂牌就行了。

优点:运行速度快,无兼容性问题。

缺点:成本高。

最后说一下个人建议:如果经济条件好的话,直接买苹果设备就行了,比如MacBook Pro;如果经济条件有限,装个黑苹果或者去淘宝买个黑苹果主机,也才2-3k。

4.调试设备

Xcode自带了iOS模拟器功能,因此我们可以将开发好的应用程序,运行到模拟器上进行测试,不一定要买iPhone\iPad进行调试。当然,真机和模拟器肯定是区别的,因此在发布应用程序之前肯定要进行真机测试。

5.开发者证书

如果你是想把开发好的iOS程序发布到App Store上去卖,或者把程序运行到真机(iPhone\iPad)上,那么就必须有iOS个人开发者证书。这个需要向苹果买,一年99$。如果纯粹是学习,不用买这个证书,一切开发都是免费的。

综上所述,学习iOS开发要准备的有:

1> 苹果电脑或者黑苹果主机

2> 安装开发工具Xcode

3> 真机(iPhone\iPad)。这项可选。

4> 开发者证书。这项可选。

三、iOS开发的学习难度如何

* 苹果提供的API非常强大,用简单几句代码就可以实现非常炫酷的效果,可以说苹果很为开发者着想。对比android,我个人觉得iOS会容易一些。

* 用我和周边朋友的经历来说:如果你有过其他语言的开发经验,而且能一心一意学习iOS、不走弯路,在半个月内上手iOS开发是完全没有问题的。

【Objective-C】02-Objective-C学习及iOS开发的准备的更多相关文章

  1. IOS开发初步

    由于工程实践项目的原因,得学习下IOS开发,今天才知道苹果09年才出的开发工具和开发包,也就是说,满打满算,现在顶多有5年IOS开发的工作经验.在我国2010年才火起来,因为那时候国内的iphone4 ...

  2. iOS开发中调试小技巧

    对于软件开发而言,调试是必须学会的技能,重要性不言而喻.对于调试的技能,基本上是可以迁移的,也就是说你以前在其他平台上掌握的很多调试技巧,很多也是可以用在iOS开发中.不同语言.不同IDE.不同平台的 ...

  3. iOS开发如何提高

    阅读博客 在现在这个碎片化阅读流行的年代,博客的风头早已被微博盖过.而我却坚持写作博客,并且大量地阅读同行的iOS开发博客.博客的文章长度通常在 3000字左右,许多iOS开发知识都至少需要这样的篇幅 ...

  4. iOS开发资源整理【01】

    一.网站 Code4App         开发者常用库分享网站 GitHub        git是一个优秀的分布式版本控制系统 stackoverflow    技术在线问答网站 CocoaChi ...

  5. iOS 开发调试技巧

    对于软件开发而言,调试是必须学会的技能,重要性不言而喻.对于调试的技能,基本上是可以迁移的,也就是说你以前在其他平台上掌握的很多调试技巧,很多也是可以用在iOS开发中.不同语言.不同IDE.不同平台的 ...

  6. ios开发之通知事件

    每天学习一点点,总结一点点,成功从良好的习惯开始! 昨天学习了ios开发中的关于通知事件的一些东西,在这里简单总结下,仅供初学者学习,更多的是怕我自己忘了,咩哈哈~~~~ 通知(notificatio ...

  7. ios 开发之本地推送

    网络推送可能被人最为重视,但是本地推送有时候项目中也会运用到: 闲话少叙,代码如下: 1.添加根视图 self.window.rootViewController = [[UINavigationCo ...

  8. iOS - 开发中调试小技巧

    对于软件开发而言,调试是必须学会的技能,重要性不言而喻.对于调试的技能,基本上是可以迁移的,也就是说你以前在其他平台上掌握的很多调试技巧,很多也是可以用在iOS开发中.不同语言.不同IDE.不同平台的 ...

  9. iOS开发调试技巧总结(持续更新中)

    作者:乞力马扎罗的雪  原文 对于软件开发而言,调试是必须学会的技能,重要性不言而喻.对于调试的技能,基本上是可以迁移的,也就是说你以前在其他平台上掌握的很多调试技巧,很多也是可以用在iOS开发中.不 ...

随机推荐

  1. Oracle错误代码ORA-01653,表空间容量无法扩展

    业务模块在进行增操作时,报错“Caused by: java.sql.BatchUpdateException: ORA-01653: 表 JAZZ_V3.T_MZ_BK 无法通过 128 (在表空间 ...

  2. JS,jquery动态向已经存在的css文件中添加class样式

    $("h1,h2,p").addClass("blue") $(".class")addClass("class_name&quo ...

  3. 九.Spring Boot JPAHibernateSpring Data

    1.项目结构 2.导入jar包 <!-- 添加Spring-data-jpa依赖. --> <dependency> <groupId>org.springfram ...

  4. MySql Replication基本原理

    Replication的思想是将数据在集群的多个节点同步.备份,以提高集群数据的可用性(HA):Mysql使用Replication架构来实现上述目的,同时可以提升了集群整体的并发能力.5.6版本作为 ...

  5. linux:ls、ls -l、ls -al区别 示例

    linux:ls.ls -l.ls -al区别 示例 比如test文件夹下有一个test文件.一个.文件夹.一个..文件夹. 则,执行三个命令后,显示效果如下: [root@linuxserver t ...

  6. 有关ubuntu16.04进行sudo apt-get update更新时出现:‘。。。N: 无法安全地用该源进行更新,所以默认禁用该源。。。’等问题解决方案

    关于ubuntu16.04在 sudo apt-get update 时出现如下错误: 针对这种情况,本人结合网上的解决方案总结出以下方案,三条命令搞定,希望有用. 1. 进入 sources.lis ...

  7. JS前端下载文本文件小技巧:1、download属性;2、借助Blob转换成二进制下载

    一.HTML download 与文件下载 如果希望在前端侧直接触发某些资源的下载,最方便快捷的方法就是使用HTML5原生的download属性,例如: <a href="large. ...

  8. python安装包是出现错误解决

    /usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed/limits.h:168:61: fatal error: limits.h: No such file ...

  9. maven工程小红叉处理方法

    搞了个Maven工程在Eclipse上,刚开始说JDK版本不对,编译的时候老报错误,很容易搞明白, 本地JDK版本为1.7.0_79: diamond operator is not supporte ...

  10. iOS 中 JSON 数据交换格式

         JSON (JavaScript Object Notation)是一种轻量级的数据交换格式. JSON 的详细教程,能够參见 JSON 中国:http://www.json.org.cn/ ...