开发iOS应用程序需要的工具和编程技术
似乎每个iOS应用开发学习者都是从这篇文章开始写博客的,我也不例外,也从这里写吧,内容雷同,但绝对是原创。因为一直相信,通过自己的理解写出来,是掌握技术一个很好的途径。
Xcode
苹果最为优秀的集成开发环境(IDE)。可以开发iOS和Mac OS X的应用程序。Xcode中包含了iOS SDK和iPhone/iPad模拟器,登录Mac AppStore,搜索“Xcode”,下载并安装。
苹果硬件
因为苹果应用开发工具Xcode只能运行在Mac上,因此需要有一台Mac电脑;考虑经济,笔者就是购买了一台新的MacBook Pro;因为应用程序最终会发布在AppStore中,因此需要有一台苹果设备,如iPhone、iPad或者iPod Touch。
编程语言
iOS 主要使用Objective-C和Cocoa编程,因此掌握这两种语言还是一个非常基础的,Cocoa是对Objective-C的高级封装,可以大量简化开发者的工作量。最好能够掌握c/c++的编程知识,因为有些东西可以使用c/c++开发,便于迁移到其他开发平台中去,如Android,同时也可以使用现有的很多开源资源。
设计理论
要有基本的编程思想,了解面向对象设计理论。另外,如果是做个人开发者,要对产品设计和UI也要有一点感觉,这样就可以独自进行应用的规划和开发了,也不至于做出来的东西很糟糕。
开发资源
虽然还没有开始进行实际的iOS应用开发,但也是看了市面上已经出版的图书,总体感觉这些书入门可以,实际操作指导性不强,常常还会混绕开发者的思维,尤其对于那些已经有比较丰富的开发经验的程序员来说。所以本人决定不看那些书了,花点时间,去阅读苹果开发者中心的相关资料,里面有大量的手册、文档、视频以及源码,这应该是最好的资料了吧。
所以我的计划首先是了解一下Objective-C和Cocoa,做到有基本概念即可,基本上与C++的设计思想相似,具体应用时查查手册即可。
然后掌握一下Xcode和简单的iOS开发知识,稍微做些实际练习后;估计马上面对的应用应该是多界面操作,因此会重点去掌握UIView和 UIViewController这些知识。根据以往的学习经验,根据项目所需要的知识去掌握相关技术,是一个很有效的学习方法,这也是做开发者一种快速学习和应用的能力。
原文来自:http://ios.662p.com/thread-110-1-2.html
开发iOS应用程序需要的工具和编程技术的更多相关文章
- 在Visual Studio中使用MonoTouch开发iOS应用程序
前段时间在工作机上装了Mac OS X,这主要是因为我最近需要开发iPhone应用程序.虽然Xcode,Objective C一定是开发iOS应用程序的主流,但是经过一番考虑,我还是决定尝试一下使用M ...
- Flutter 与 Swift - 在创建 iOS 应用程序时应该押注什么技术?
Swift 和 Flutter 是考虑创建 iOS 应用程序的公司最想要的两种技术.开发者能用原生技术取胜吗?如何选择,哪种更适合您的应用?让我们一探究竟吧! 根据 Statista 的数据, 201 ...
- iOS应用程序内存查看工具
我要找的是一个可以检查应用程序中哪一个数组存贮的什么内容的工具. 网上搜到的工具名称是Allocations Instrument,后来一试发现不是我想要的.这还是一个后期调试阶段的内存检查工具. h ...
- 马上着手开发ios应用程序
https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOSCh/chapters/Introd ...
- 马上着手开发 iOS 应用程序
https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOSCh/chapters/Introd ...
- Xamarin.Forms教程开发Xamarin.Forms应用程序需要的工具
开发Xamarin.Forms应用程序需要的工具 Xamarin.Forms教程开发Xamarin.Forms应用程序需要的工具,2014年5月8日在发布的Xamrin 3中引进了Xamarin.Fo ...
- 使用Visual Studio开发跨平台的iOS应用程序
[原文发表地址]Developing cross-platform iOS application using Visual Studio [原文发表时间]2015/6/4 C ++是一种流行的高级编 ...
- 2021 年 iOS 应用程序开发七种最佳语言
移动应用程序现在几乎是每个在线业务的必备品.最新的 StatCounter 数据显示,多达56% 的在线连接是通过移动设备建立的,这使它们高于平板电脑和计算机.更重要的是,同一个消息来源说,其中27% ...
- Delphi for iOS开发指南(3):创建一个FireMonkey iOS应用程序
http://cache.baiducontent.com/c?m=9d78d513d9d431a94f9d92697d60c015134381132ba1d0020fa48449e3732b4b50 ...
随机推荐
- 基于HTML5的多张图片上传
图片上传之前也有写过demo,不过是单张上传的,最近有个业务需求是需要多张上传的,于是乎从新改写了一下 HTML结构: 1 2 3 4 <div class="container&qu ...
- 从源代码制作deb包的两种方法以及修改已有deb包(转载)
From:http://yysfire.github.io/linux/%E4%BB%8E%E6%BA%90%E4%BB%A3%E7%A0%81%E5%88%B6%E4%BD%9Cdeb%E5%8C% ...
- java NIO经典实例
服务端: Loader.java package net.chatroom.server; public class Loader { public static void main(String[] ...
- [UIView beginAnimations:context:]与[UIView animateWithDuration:animations:]值得注意的一个区别
原文链接:http://longtimenoc.com/archives/uiview-beginanimationscontext%E4%B8%8Euiview-animatewithduratio ...
- centos5安装在大硬盘上面的问题
硬盘空间大小: 3TB 原始硬盘是GPT格式的,系统安装现象如下: 此时按 ctrl + alt + F2 ,进入命令行界面,输入如下: 发现 用parted修改硬盘分区格式为msdos,报错!基本可 ...
- div的contenteditable和placeholder蹦出的火花
今天在做手机端发布描述内容时,需要实现换行,还需要有plachholder. 在文本框中换行自然想到了textarea. 问题似乎已经解决了,但是当内容发布后,在html中显示换行都丢失了. 这个时候 ...
- BestCoder Round #79 (div.2)
1001.没推到题解那么细,枚举一下也可以.用通分可以避免小数精度问题. #include<iostream> #include<stdio.h> using namespac ...
- Mingyang.net:用注解校验数据
注解校验依赖的是javax.validation和hibernate-validaton. <dependency> <groupId>javax.validation< ...
- HDU 5521 [图论][最短路][建图灵感]
/* 思前想后 还是决定坚持写博客吧... 题意: n个点,m个集合.每个集合里边的点是联通的且任意两点之间有一条dis[i]的边(每个集合一个dis[i]) 求同时从第1个点和第n个点出发的两个人相 ...
- hdu 1255 覆盖的面积(线段树 面积 交) (待整理)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1255 Description 给定平面上若干矩形,求出被这些矩形覆盖过至少两次的区域的面积. In ...