Developing iOS8 Apps with Swift——iOS8概览
iOS 8 概览
斯坦福公开课——Developing iOS8 Apps with Swift学习笔记
想学习Swift,但是相应的教程不是很多,在CoCoaChina社区闲逛时恰好发现了这门课程,就顺便看看,感觉不错,准备深入学习,上课怎么能没有笔记?打算写一系列笔记,记录自己的学习历程。
由于是从iTunes 中直接观看,不能外挂字幕,就靠着大学时差不多忘光了的英语猜着学,就当事练习英语了
对于老外讲的一些不重要的东西一律略过,只会记录一些板书,以及自己的理解
字幕已近在github中有这个项目了,
需要的话可以点击字幕 下载,但是由于该翻译项目还在进行中,不建议直接下载zip包,
建议git clone https://github.com/x140yu/Developing_iOS_8_Apps_With_Swift.git以便随时跟新
别忘了给项目发起者一个Star哦
iOS包括什么?
iOS 是一个很庞大的系统,其中包含了很多部分,大致分为4个层次,
Core OS 基于Unix的操作系统,大量借鉴了Mac OS X 的内核,但也对移动设备做了相应的优化
osx Kernel
Mach 3.0
BSD
Sockets
Security
Power Management
Keychain Access 钥匙串访问
Certificates [管理] 证书
File System
Bonjour 苹果电脑公司的服务器搜索协议商标名
Core Service 通过OO访问底层硬件
Collections
Address Book
Networking
File Access
SQLite
Core Location
Net Service
Threading
Prefferences
URL Utilities
Media 媒体层
Croe Audio
OpenAL
Audio Mixing
Audio Recording
Video Playback
JPEG,PNG,TIFF
PDF
Quartz(2D)
Core Animation
OpenGL ES
Cocoa Touch 通过类似button,slider等类似控件,与用户交互
Multi-Touch
Core Motion
View Hierarchy
Localization
Controls
Alerts
Web View
Map Kit
Image Picker
Camera
Platform Components
Tools
XCode 6
Instruments
Language
- Swift
Framework
Foundation
Core Data
UIKit
Core Motion
Map Lit
Design Strategy
- MVC
Demo
Calculator
学习在XCode6中创建一个iOS项目
创建一个UI——托拉拽
使用iSO模拟器
println()方法的使用
利用
\(),可以直接在""中放入表达式 ,利用这个特性,可以很方便的println一个对象的值var age : int= 18;
var sex : String = "boy";
//println("The " + sex +" is (age) years old");
println("The (sex) is (age) years old");
在Swift中创建一个类,实现指定的变量与方法
Swift中使用class 声明一个类,let定义常量,var定义变量, func定义方法
使代码与UI层连接起来
按下control,将UI界面中的Lable拖动至代码,定义好类型,就会使代码与UI层连接起来
Optional
在Swift中有一种类型叫做Optional,Optional只有两个值, nil——not set ,和有值,在Swift中有许多Optional类型的,如,在
var digit = sender.currentTitle,可以查看digit的类型为String?,就是说digit的类型为Optional的,如果有值,就可以将其转换为String类型的,转换的方式也很简单,直接在sender.currentTitle后加入!,即var digit = sender.currentTitle!
附:所有代码
//
// ViewController.swift
// Calculator
//
// Created by 张扬 on 15/5/24.
// Copyright (c) 2015年 张扬. All rights reserved.
//
//导包
import UIKit
//声明一个类 viewComtroller是类名,:后的是所需要继承的父类
class ViewController: UIViewController {
//成员变量display: 后是该变量的类型
//swift是强类型语言,在不指定类型的时候会根据上下文自动推断类型
@IBOutlet weak var display: UILabel!
var isFirstSilde:Bool = false;
//方法,func + 方法名 (参数 :参数类型) -> 返回值类型
//func retrunExample(stringExample : String) ->Int{
//};
@IBAction func appentDigit(sender: UIButton) {
//optional
//let 常量,一旦被赋值,在方法中就不会改变
let digit = sender.currentTitle!;
var age = 7;
var sex : String = "boy";
println("The " + sex + " is \(age)");
println("The \(sex) is \(age) years old")
//println("digit = \(digit)")
if isFirstSilde {
display.text = display.text! + digit;
}else{
display.text = digit;
isFirstSilde = true;
}
}
}
Developing iOS8 Apps with Swift——iOS8概览的更多相关文章
- iOS8发展~Swift(三)UI详细解释
一个.总结 使用Swift去完成iOS的UI接口,事实上,目前的想法和OC实现几乎一致,只是在措辞非常大的差异,修改前更更大的个人控制.为有纯代码强迫症,所以接下来创建一个纯代码动项目,然后在此基础上 ...
- iOS8开发~Swift(二)Playground
一.Playground介绍 Playground是Xcode6中自带的Swift代码开发环境.俗话说"功欲善其事,必先利其器".曾经在Xcode5中编写脚本代码.比如编写JS.其 ...
- Swift 语言概览 -自己在Xcode6 动手写1
原文:Swift 语言概览 -自己在Xcode6 动手写1 Swift是什么? Swift是苹果于WWDC 2014发布的编程语言,这里引用The Swift Programming Language ...
- Swift语言概览
Swift语言概览 关于 这篇文章简要介绍了苹果于WWDC 2014公布的编程语言--Swift. 前言 在这里我觉得有必要提一下Brec Victor的Invent ...
- 《Start Developing iOS Apps Today》摘抄
原文:<Start Developing iOS Apps Today> Review the Source Code 入口函数main.m #import <UIKit/UIKit ...
- iOS8开发~Swift(一)入门
一.概论及Swift介绍 iOS7刚公布多时候,苹果引入了JavaScriptCore.framework用来处理JavaScript,看到了能够接触其它编程语言的契机,使iOS程序猿不用吊死在OC这 ...
- iOS8开发~Swift(五)Swift与OC混编
一.概要 首先看<The Swift Programming Language>中提到"Swift's compatibility with Objective-C lets y ...
- 官方文档学习之《start developing iOS apps(swift)》
1. let 关键字是用来定义常量的,任何类型的常量都可以进行定义:例如:定义字符串 let constantValue1 = "this is a string",也可以定义数 ...
- Start Developing iOS Apps (Swift) 开始开发iOS应用(Swift)
http://www.cnblogs.com/tianjian/category/704953.html 构建基础的用户界面 Build a Basic UI http://www.cnblogs.c ...
随机推荐
- 【转】.NET 三层架构 中 DAL+IDAL+Model+BLL+Web
其实三层架构是一个程序最基本的 在.Net开发中通常是多层开发 比如说 BLL 就是business Logic laywer(业务逻辑层) 他只负责向数据提供者也就是DAL调用数据 然后传递给 客户 ...
- Android环境rm命令
How can I execute all the possible unix(shell) commands in android programmatically? Android can't e ...
- 统计学习方法——P1
背景基础知识备忘 平均差 MD=(∑|xi-x'|)/n 加权平均差 A.D=(∑|xi-x'|fi)/∑fi 方差 标准差 SD=方差的平方根 分布函数: 设X是一个随机变量,x是任意实数,函数 ...
- 破解安装 SecureCRT 7.0.2 for mac完美破解版,mac secureCRT , apple secureCRT
mac secureCRT , apple secureCRT 下载地址:http://download.csdn.net/detail/guolichun/7733069 破解安装 SecureC ...
- 从Spark-Shell到SparkContext的函数调用路径过程分析(源码)
不急,循序渐进,先打好基础 Spark shell的原理 首先,我们清晰定位找到这几个. 1.spark-shell 2. spark-submit 3.spark-class 4.SparkSu ...
- cygwin下安装hadoop0.20
安装时选择软件包: editor-两个VIM.base-SED.Net-OPENSSH.OPENSSL.libs-libintl3和libintl8 环境变量: path=%JAVA_HOME%\bi ...
- hdoj 1698 Just a Hook【线段树区间修改】
Just a Hook Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- bash shell——与if条件相关的参数意义
最近编写脚本,常看到有 if [ -x $variable ] 类的条件语句,不知道相应参数的意义到底是什么, 特摘录如下:from http://blog.csdn.net/aaaaatiger ...
- linux运维安全工具集合[持续更新中..]
lynis 安全漏洞检测工具 https://cisofy.com/download/lynis/ https://cisofy.com/files/lynis-2.2.0.tar.gz ...
- SOA是什么
一.SOA是什么 SOA的全称是Service-Oriented Architecture,面向服务架构.是一种架构,不是一种具体的开发技术. 要真正理解什么是SOA需要从软件开发的技术发展史 ...