本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验,因为一旦方方面面都精通了,也就可能没太大的动力继续写这系列的文章了,文章中可能有一些地方说的不对或者不够完善的地方,希望大家多多指正,共同提高。

由于本人起步Objective-C的苹果开发比较晚,但是因为自己有着比较深厚的C#开发背景,因此在很多方面都会和我之前的经验做比较,因此本系列文章对于从C#转向Objective-C的苹果开发来说,应该是比较合适的。

开始介绍这些系列内容之前,花上一些时间做一些自己的背景介绍,希望大家了解起步的背景和我自己的一些感想,以期达到相互共鸣,加深体会。

1、个人技术背景

从事C#语言的开发超过10年了,虽然期间也用过微软的其他语言,如VB6、VB.NET做过开发等,不过都是一段段小插曲,最终还是主要使用C#做开发,包括Winform的开发、Web上面的开发(Webform、JQuery、MVC等),在这方便也有自己的一些见解及较多的积累,包括自己的《Winform开发框架》、《Web开发框架》、《WCF开发框架》、《混合式开发框架》等以及一些其他应用程序,如较早期开发的送水管理系统、酒店管理系统、仓库管理系统,以及后来开发的很多应用程序,如病人资料管理系统、客户关系管理系统等等,还有很多其他基于QQ开发、邮件处理、赶集网数据采集、Visio二次开发、Socket网络通讯、硬件串口的开发方面都有所涉及,基本上这么多年来,把认为重要和感兴趣的.NET技术都学习了一把。有一些技术和产品的积累,也算对得起这么多年来的技术研究了。

书籍撰写方面,早期也就参加过,年轻力壮的时候,生活拮据的年代,ASP技术和ASP.NET技术盛起的时候,分别写过一本《ASP与网站开发实战》和《ASP.NET与网站开发实践教程》,写书的辛苦和出版商的奸诈,从中可以深刻体会到。

俗话说,技不压身,很早就开始想转入苹果开发的系列了,最初从购买自己的Iphone4s开始,就有这个念头,那时候还很早,刚刚2012年初发布的时候就入手一台,同年花钱弄了一个IMAC,一直用不习惯,不过好在安静、方便、大屏幕,偶尔用来晚上玩玩,白天工作不用。

2、苹果平台的转换

苹果桌面操作系统的使用习惯和Windows很不同,你可能习惯在WIndows里面使用Ctrl,而Mac系统主要用Command键替代,虽然键盘也有control键,但是意义完全不同,传统的Windows的Shift按键在Mac系统里也用Option键替代。最开始默认的苹果鼠标还没有右键功能,用了好久才发现,可以启用右键菜单功能,甚至滚轮的方向都有所不同。总之,用惯了Windows平台,你使用Mac系统,会有一个适应的过程。

使用苹果的Mac系统,你也可以使用Windows传统的大键盘,不过建议还是选择较贵的苹果小键盘,虽然不太习惯按键太小,但是很多快捷功能,你在Windows键盘里是不起作用的,这个非常不方便,反正选择配套就对了,呵呵。

苹果的系统,很多功能都在菜单里面寻找,在我们开发之前,最好把基本的系统应用都熟悉一下,一个对这个系统有个了解,二个对苹果的各种操作有一个详细的概念,否则你还不知道文件如何管理呢。

我的操作系统原来装的是猎豹系列的,也安装了XCode开发工具了,前阵子想入手开发的时候,把系统升级到最新,也把XCode更新到了5.02,这个整体系列的更新文件有点大,基本上下载了一天的时间,安装倒是很快,但是可能偶尔会因为网速的原因,断掉,需要接着下载更新。

如果下载多次还是不能成功更新操作系统或者XCode,建议可以通过Mac系统的迅雷下载软件,里面有一个 Thunder Store,速度蛮快了,哈哈。

另外,在开发前,最好能够准备几个IOS设备,IPAD、IPhone都最好有,呵呵。由于XCode5已经不支持进行IOS6以下的版本调试了,因此我把自己的4S从5.1升级到了7.06,虽然新IOS7系统的界面不太习惯,不过为了开发方便,还是升级最好了。

3、注册开发者账号及设置

很早就知道注册苹果开发者账号,每年需要缴纳99美元,这个时候使用信用卡来处理就很好,支持美元支付的就可以了,我使用招行信用卡,周末的时候申请的,好像第二第三天就搞定了,响应的速度还是很快的。

注册开发者账号与否,你都可以使用XCode进行程序开发,但是你开发的应用只能在模拟器中测试,不能在真机测试并发布,而且他们网站还有一些资源使用的限制,不过开始之前可以先熟悉整个开发的流程和知识,如果确定需要从事开发,注册购买一个开发者资格还是非常必要的。

以上红色部分是在苹果开发网站里最为重要的部分了。这里面涉及需要下载开发的证书,以及你需要调试的开发配备证书等。

通过一系列的设置和引导,你可能最终弄好了两个证书,一个是开发的证书,一个是发布的证书,你需要把它们保存并安装到你的Mac电脑上。

申请好后,打开其中的开发证书,看到有下载的链接按钮。

把他下载到本地,然后把它安装到本地的钥匙串里面即可。

弄好了这些后,你需要申请一个Provisioning Profile的开发证书,然后在XCode的【WIndow】【Organizer】里面把你要开发设备接入进来,因为苹果严格规定,只有安装了这个证书的IOS设备,才能用来真机调试,否则是不允许的,因此这些证书的作用就是标识设备是你的,能够用于开发调试。最好为了方便,把所有的IOS设备都接入进来了,截个图大家了解下。

最后,运行XCode的程序,自己创建或者打开一个Demo程序,大致了解下其界面布局吧(默认没有黑色背景的,我通过设置把它调整了以下,感觉眼睛舒服了很多。

4、相关知识的了解

要了解整个IOS开发的系列内容,当然需要全方位的知识掌握,在开发之前,我自己通过网上了解了很多Objective-C的基础知识,好像51CTO里面的系列文章还不错。看了不少,逐渐对这个语言也有所了解。

相对于电子书籍,传统的书籍也是很有必要的,因此,我自己也通过了图书馆借了一些书籍帮助了解,借助各种知识的加强学习,能够对XCode的使用和Objective-C的语法等使用有一个非常好的熟悉了解。如下面就是我自己从图书馆第一次接回来的书籍。

不过,对于全面了解Objective-C等的内容,我后来发现苹果开发平台里面的内容更是全面,虽然全部是英文的,但是看起来非常舒服,叙述的很流畅,关键一点,是苹果把最新最好的特点都叙述的很清晰了,这个比起其他书籍介绍的内容,更加好。

否则你如果看各种参差不齐的书籍,可能对很多地方都有疑问,如有些书籍或者网上的文章,还是在ARC的引入之前的,大量介绍retain release等内容,而Release在引入ARC后,已经不需要写了,引用计数交给编译器完成了。

如在苹果开发网站里面,有一些序列的文章很不错,我自己倒是花了一整天的时间把它学习了一遍,感觉介绍的非常清晰,内容都是苹果根据最新的特性进行更新的,这点非常棒。

Start Developing iOS Apps Today

Programming with Objective-C

iOS App Programming Guide

好了,下一篇继续介绍IOS开发的相关的内容,主要介绍C#和Objective-C的一些相同和不同的地方,把他们做一些对比,以便加深学习印象。

从C#到Objective-C,循序渐进学习苹果开发(1)--准备开发账号和开发环境的更多相关文章

  1. 从C#到Objective-C,循序渐进学习苹果开发(4)--代码块(block)和错误异常处理的理解

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.本文继续上一篇随笔<从 ...

  2. 从C#到Objective-C,循序渐进学习苹果开发(3)--分类(category)和协议Protocal的理解

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.本文继续上一篇随笔<从 ...

  3. 从C#到Objective-C,循序渐进学习苹果开发(2)--Objective-C和C#的差异

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台开发苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验. 在上篇<从C#到 ...

  4. 从C#到Objective-C,循序渐进学习苹果开发(5)--利用XCode来进行IOS的程序开发

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.前面几篇随笔主要介绍C#和O ...

  5. 从C#到Objective-C,循序渐进学习苹果开发(7)--使用FMDB对Sqlite数据库进行操作

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.本篇主要开始介绍基于XCod ...

  6. 从C#到Objective-C,循序渐进学习苹果开发(6)--视图控制器的使用

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.本篇主要开始介绍基于XCod ...

  7. 【VS开发】循序渐进学习使用WINPCAP(一)

    winpcap教程 中文教程 http://www.ferrisxu.com/WinPcap/html/index.html 除此之外, WinPcap · Developer Resources下载 ...

  8. 如何从零开始学习区块链技术——推荐从以太坊开发DApp开始

    很多人迷惑于区块链和以太坊,不知如何学习,本文简单说了一下学习的一些方法和资源. 一. 以太坊和区块链的关系 从区块链历史上来说,先诞生了比特币,当时并没有区块链这个技术和名词,然后业界从比特币中提取 ...

  9. 循序渐进学.Net Core Web Api开发系列【1】:开发环境

    系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.本篇概述 本篇不 ...

随机推荐

  1. 作业七:团队项目——Alpha版本冲刺阶段-14

    组内成员进行测试,对一些小问题进行了修改.

  2. 第三次作业:PSP耗时

    PSP个人项目耗时对比记录表:四则运算   Personal Software Process Stages Time(%) Planning 7  Estimate 9 开发 76    •需求分析 ...

  3. MySQL模糊查询(like)时区分大小写

    问题说明:通过上面的语句,你会发现MySQL的like查询是不区分大小写的,因为我的失误,把Joe写成了joe才发现了这个东东吧.但是,有时候,我们需要区分大小写的是,该怎么办呢?解决方法如下: 方法 ...

  4. 腾讯Ubuntu云虚拟主机设置ftp服务器

    刚申请了免费的腾讯云主机, 发现还要想办法自己的服务器代码传到云主机上 在网上搜了很多方法介绍, 照着设置完后都无法正常连接 最后半夜尿醒来睡不着找到一篇站内文章, 提到必须注释掉一行代码 这个是其他 ...

  5. Oracle函数脚本记录

    --内置函数 --聚合函数 返回单个值 '; --count()记录条数 select sum(degree) from score t; --sum(degree)求成绩总和 select avg( ...

  6. MSP是什么?

    本人在项目管理圈儿也算是摸爬滚打了几载,近几年真是各种压力大,看同行们各种参加培训.认证......我也不能懈怠啊,赶紧上网搜搜相关的培训和认证信息,不搜不知道一搜吓一跳.原本只知道PMP和PRINC ...

  7. salesforce 零基础学习(二十三)数据记录导出至excel(自定义报表导出)

    我们都知道,报表有个功能为导出excel,但是有的时候客户需求往往标准的报表达不到,比如导出excel,其中本月修改的数据字段标红,如下图所示. 这就需要我们去写VF来实现此功能. 需求:将数据表记录 ...

  8. js 四舍五入函数 toFixed(),小数位数精度

    js的加减乘除有时得到的结果的小数的位数非常大,这种结果非常难以读取,例如某两个数相乘得到的结果是:1.3921000000000001 这种结果小数的位数有点多,一般需要的结果是四舍无入的 1.39 ...

  9. jQuery 滚动条 滚动到底部(下拉到底部) 加载数据(触发事件、处理逻辑)、分页加载数据

    1.针对浏览器整个窗口滚动 主要代码: <script type="text/javascript"> ; function GetProductListPageFun ...

  10. jquery 之 Deferred 使用与实现

    观察者模式是开发中经常使用的模式,这个模式由两个主要部分组成:主题和观察者.通过观察者模式,实现主题和观察者的解耦. 主题负责发布内容,而观察者则接收主题发布的内容.通常情况下,观察者都是多个,所以, ...