前言面试
iOS开发语言有哪些?
OS开发语言主要包括什么?
iOS开发语言具体怎么学习?算法
今天重点介绍一下:编程
iOS开发语言主要包括:C语言基础、Obiective-C编程、Swift、UIKit框架详解这几大块,在这里项目阶段就不详细的介绍了。swift
C语言基础
C语言是开发语言的基础,是最经常使用的一门程序设计语言,最经常使用于编写计算机程序。设计模式
Obiective-C编程
Obiective-C是在C语言的基础上,加入面向对象特性扩充而成的通用型高级编程语言。数据结构
Swift
是苹果新开发的语言,目的就是取代OC,我也正在学习,最大感觉就是简洁与效率高 UIKit框架详解 UIKit框架是iPhone应用程序开发中最基本的框架,也是最经常使用到及最重要的框架。闭包
语言基本上都是差很少的,只是换了一种写法,更甚至能够说编程上思想都基本相同,只是换了一种表达方式。app
最基本的头文件框架
最基本的提及
OC中的头文件和实现文件
.h文件相似C++中的.h文件
.m文件相似.cpp文件
头文件做用也都差很少,声明一些函数方法,属性或变量,做用都是提供接口
Swift不同,没有头文件!!直接用即可。
全部实现文件后缀都是.swift C++导入头文件是用#include OC导入头文件能够用#include和 #import,可是通常咱们都用#import,例如 #import “ViewController.h"
由于#import导入同一个头文件屡次也只会导入一次(已经导入会被忽略),防止重复导入
OC还有一种用法是@class 类名,这样告诉编译器这是一个类,不要管他的内部细节,这样提升了效率,防止了头文件的循环引用,固然你不能访问这个类的内部细节
Swift也须要导入一些框架,直接import就行,不用#,例如 import Foundation
基本的数据类型
接下来咱们来看一下基本的数据类型,我就说一些比较经常使用的吧,C++的我就不说了。 OC中的数据类型
OC中不少数据类型都有NS前缀,那算由于OC是乔布斯第一次离开苹果后建立的公司NextStep所开发的,因此就有NS
数据类型我只是用一些简单直白的建立方式,其实还有不少种建立方式
我只介绍了一些比较经常使用的类型,固然还有不少相似C++的地方:
例如NSInteger,无符号的写法是 NSUInteger
NSString,NSArray,NSDictionary是不可变类型,可变类型要加Mutable,例如NSMutableString,NSMutableArray..
还有一些其余的类型例如NSNumber数字类型,能够包装int,float,double等等
做为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个个人iOS交流群:519832104 无论你是小白仍是大牛欢迎入驻,分享经验,讨论技术,你们一块儿交流学习成长!
另附上一份各好友收集的大厂面试题,须要iOS开发学习资料、面试真题,能够添加iOS开发进阶交流群,进群可自行下载!
接下来看下Swift
Swift的数据类型也差很少,无非就是Int,Float,Double,String这些,可是用起来,一个爽字还形容不了。
由于Swift有类型推导,而且很是屌!!
例如 var str = @“hello world”
编译器便会自动推断str为String类型
Swift中声明类型通常用let,和var,let表示定义常量,var定义变量
var a = 1 把a推导为Int 固然你也能够写上类型 var a: Int = 1
在Swift中能够省略分号,写和不写都行,但定义两个变量放在同一行就要,分隔开嘛
固然Swift对比OC也多了不少东西,例如元组tuple,闭包Closure等,不少用起来很简洁的东西
hello world
接下来就从最简单的开始—hello world
C++
OC
Swift
Swift就是这么简洁,能够直接运行
OC的不少语法也接近C++
至少不少方法都写的很长,可是看起来也很清晰,我这里也不说了
因为我最近在学Swift,接下来介绍一下Swift的一些简单语句,到底有多简洁
for语句
0 . . < 4 就是 0 ≤ i < 4
0. . . 4 也能够表示 0 ≤ i ≤ 4
闭包
全部的算法最后简化成一个> 这个>
能够算是一个闭包的超简洁版,它原本是这样的
对,那一串,最后变成了 一个 >
这些只是冰山一角,股市一票而已
Swift学起来的给个人感受就是简洁,新鲜,爽快!
如何快速学习ios入门语言?
做者列举了入门级IOS开发者须要掌握的知识清单,帮助你从零开始学习IOS开发。
一、基本的 CS 知识
对数据结构和算法有必定基本的了解,确定会防止开发新手们写代码写的乱七八糟。因此对新手来讲,达内IOS培训专家推荐去看Youtube上的哈佛CS50课程,做为入门的开始,这些课程浅显易懂,还十分有意思。
二、Swift 仍是 Objective-C
你无需到达可以写这两种语言的技术性博客的水平,或者是到可以教课的程度,可是你仍是至少得能用这两种中其一来编程,不用过于频繁的查看语法。API是另一码事儿,尤为是在 iOS 中,框架每一年更新,不少方法也常常被弃用。你要达到独自写类、结构体、循环、函数(类和实例)、分配变量、表达式求值的水平。
Swift 仍是很新,除非你进的公司里有频繁的项目更替,不然你就得基本上用 Objective-C。很多公司正决定转向 Swift,若是你就会 Swift 的话,找一个工做也不会特别难。重要的是要对你所选择的那个语言足够熟练,而后至少对另一个也要熟悉到能读懂代码的程度。
三、框架和 API
达内IOS培训专家不认为你必须能对全部的 iOS API 滚瓜烂熟,可是你须要清晰的知道到哪里找起。
UIKit (UITableView, UIButton, UINavigationController,GestureRecognizers)
Interface Builder (Storyboards, Segues, and the odd .xib)
Foundation 类型 (NSArray, NSDictionary, NSString) 以及它们的 Swift 对应(Array, Dictionary 和 String)HTTP API (NSURLSession, 基本的 REST API 概念,用 NSJSONSerializatio n 作 JSON 解析)
Grand Central Dispatch (GCD, NSOperationQueue)
数据持久化 (NSCoding, NSUserDefaults, CoreData)
内存管理 (什么是循环引用,以及 ARC 的基本原理)
四、开发中的设计模式
模式很重要,它让你的开发变得容易、代码变得清晰。要确保你了解基本的设计模式,这些模式在 iOS 的框架中被普遍使用,你在不知道它们的状况下不大可能作出来不少东西。
代理模式
模型-视图-控制器模式
继承
单例模式
五、熟悉开发环境
若是你尚未一台 Mac 的话,弄一台!若是你没有任何一个 iOS 设备,弄一个!若是你没有使用过或者不熟悉设备的话,为它作开发会很难。一样,若是你没 Mac 写代码的话也很难。
六、UX/UI
一般来讲 UX(用户体验)和 UI(交互界面)是由设计师负责的,可是你也应该了解 Apple 的人机交互指南。你应该要了解产品原型和线框图的区别,以及在开发的过程当中如何使用它们。
七、工具
你应该熟悉一些常见的开发工具。
Xcode
Git 版本控制
JIRA 或者 Bugzilla
CocoaPods
八、做品
事实胜于雄辩。若是你想在面试中表现优异的话,能够把一些简单 app 合在一块儿(或者更好的是把它们发布在 AppStore 上)。展现出你可以独立完成一个项目的能力。
总结
我是想经过简单的介绍一下OC和Swift让你们了解一下这两种语言,iOS开发就是创建在这两种语言的基础上,不管是OC仍是Swift还有不少有趣的语法等着咱们去发现。