Xcode可以用于开发C、C++、Objective-C、Swift,可以开发苹果电脑的运用程序以及iphone、ipad程序.
可以直接在App Store里面搜索并下载Xcode,并直接点击安装,必须要有一个苹果的账号,如果没有账号可以先注册一个(免费)。

创建和运行一个ios项目
选择create  a  new  Xcode  project   --> IOS--Application  -->single View Application
项目目录介绍:
info.plist  是用来配置应用信息的
Xcode 快捷键使用:
1.esc    代码提示
2.alt+com+[  (向上有移动,反之乡下移动)     整行代码往上面移动

开发硬件需求:
1.CPU双核
2.8G内存
3.最好选择Macbook Pro,也可以选择Macbook Air
4.测试手机 iphone 5+
软件环境要求:
1.OS X 10.9.3 +
2.Xcode 6.0+

技术提问:
1.语言简洁、问题明了
2.问题清晰
3.定位问题原因
4.特定的问题需要描述场景、操作、错误结果

应用发布
应用做好之后,选择 Product -->  Archive(归档)  选中你要发布的应用,点击右上角的Distribute发行,第一项是发布到app store,发布之前注意要做好程序的图标,苹果公司的审核时间是一周

swift 中关键字说明:
//基本数据类型的定义
var  a = "nihao"                             //定义一个变量(var会自动推断a的参数类型)
var b :String ="nihao"                  //定义一个String类型的变量
var d:Int = 100                              //定义一个Int类型的变量
var  ha:String?="nimenhao"
let  c = "nihao"                             //定义一个常量(值不能再改变)
var e = a+"haha"     或者  var  e = "\(a),\(d)"       //字符串或者字符串与整形的连接
//数组介绍
var  arr =  ["hello", "nihao" ,100,52]   //声明一个数组
var arr1 = []      //声明一个空的数组
var arr2 =  String[]()     //声明一个String类型的空数组

//字典定义(相当于JAVA的map集合)
var  dict = ["name":"zhangsan","age":"56"]
dict["sex"] = "Femal"      //给字典动态添加参数
dict["name"]      //从字典中获取key为name的值

//  循环
var  arr = String[]()
用法一    for  index  in  arr 0..100{         //从0到100的循环
arr.append(Item \(index))       //往arr数组中循环添加元素
}
用法二    for  value  in  arr{
println(value)                      //循环的从arr中取值
}
用法三   var  i = 0
while  i < arr.count{
println(arr[i])                            //循环的从arr中取值
i++
}
用法四   var  dict = ["name":"zhangsan","age":"56"]
for  (key,value)  in  dict{
println("\(key),\(value)")         //从字典中遍历出  key和value
}

//条件判断
if  a>20{ .............}

//类和函数
class  定义一个类时的关键字
func  定义一个方法时的关键字
extension  类的动态扩展

class  nihao{
func sayhello( name:String){     //带一个String参数的函数
}
func  getNums() ->(Int,Int){          //定义一个有返回值的函数
return (2,3)
}
let (a,b) = geyNum()                //函数的调用
var  fun = sayHello                    //函数的调用
fun("zhangsan")                    
extension nihao{              
func  sayhi(){
}
}
}

var  say = nihao            //实例化nihao的类
say.sayhello()               //nihao类中sayhello函数的调用

class  hi:nihao{   //定义一个hi类继承你好这个类
var  _name:String?
init(name:String){     //有参数的构造方法
self._name = name      //self相当于java的this用法
}
override  func  sayhello(){     //重写父类中的sayhello方法
super.sayhello()    //执行父类的sayhello方法
}
class  func  sayHi(){ ..........}      //定义一个静态方法相当于java的 static方法
}

//对某一个类的扩展方法
extension  nihao{            //对nihao这个类进行扩展
func  sayhaha(){       //向nihao这个类中添加一个sayhaha的方法,这样nihao的子类中就都可以调用的到
}
}

//接口
protocol  People{                                   //定义一个people接口,并添加一个getname的方法
func  getName() -> String           
}
class  Man:People{                             ///Man这个类实现了People这个接口
func getName() ->String{
return  "zhangsan"
}
}