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概览的更多相关文章

  1. iOS8发展~Swift(三)UI详细解释

    一个.总结 使用Swift去完成iOS的UI接口,事实上,目前的想法和OC实现几乎一致,只是在措辞非常大的差异,修改前更更大的个人控制.为有纯代码强迫症,所以接下来创建一个纯代码动项目,然后在此基础上 ...

  2. iOS8开发~Swift(二)Playground

    一.Playground介绍 Playground是Xcode6中自带的Swift代码开发环境.俗话说"功欲善其事,必先利其器".曾经在Xcode5中编写脚本代码.比如编写JS.其 ...

  3. Swift 语言概览 -自己在Xcode6 动手写1

    原文:Swift 语言概览 -自己在Xcode6 动手写1 Swift是什么? Swift是苹果于WWDC 2014发布的编程语言,这里引用The Swift Programming Language ...

  4. Swift语言概览

                     Swift语言概览 关于 这篇文章简要介绍了苹果于WWDC 2014公布的编程语言--Swift. 前言 在这里我觉得有必要提一下Brec Victor的Invent ...

  5. 《Start Developing iOS Apps Today》摘抄

    原文:<Start Developing iOS Apps Today> Review the Source Code 入口函数main.m #import <UIKit/UIKit ...

  6. iOS8开发~Swift(一)入门

    一.概论及Swift介绍 iOS7刚公布多时候,苹果引入了JavaScriptCore.framework用来处理JavaScript,看到了能够接触其它编程语言的契机,使iOS程序猿不用吊死在OC这 ...

  7. iOS8开发~Swift(五)Swift与OC混编

    一.概要 首先看<The Swift Programming Language>中提到"Swift's compatibility with Objective-C lets y ...

  8. 官方文档学习之《start developing iOS apps(swift)》

    1.  let 关键字是用来定义常量的,任何类型的常量都可以进行定义:例如:定义字符串 let constantValue1 = "this is a string",也可以定义数 ...

  9. Start Developing iOS Apps (Swift) 开始开发iOS应用(Swift)

    http://www.cnblogs.com/tianjian/category/704953.html 构建基础的用户界面 Build a Basic UI http://www.cnblogs.c ...

随机推荐

  1. Android Loader详解四:回调及完整例子

    onLoadFinished 这个方法是在前面已创建的装载器已经完成其加载过程后被调用.这个方法保证会在应用到装载器上的数据被释放之前被调用.在此方法中,你必须删除所有对旧数据的使用(因为它将很快会被 ...

  2. (转载)JavaScript中的Window窗口对象

    (转载)http://www.ijavascript.cn/jiaocheng/javascript-window-65.html 例子: <html> <head> < ...

  3. 使用IAR6.1调试LPCXpresso-cn

    由于Manly公司驱动兼容性问题,下载破解版的IAR6.1 使用. http://blog.sina.com.cn/s/blog_48bde2b20101e6v0.html 然后使用IAR打开示例wo ...

  4. [leetcode]二分查找总结

    Search for a Range 1.最简单的想法,用最普通的二分查找,找到target,然后向左右扩张,大量的重复的target,就会出现O(n)效率. class Solution { pub ...

  5. stl binary search

    stl binary search */--> pre { background-color: #2f4f4f;line-height: 1.6; FONT: 10.5pt Consola,&q ...

  6. phpeclipse xdebug 配置配置 -摘自网络

    一.安装配置 1.访问 http://www.phpeclipse.com/ ,找到右边的 1.2.x dev nightly下的http://update.phpeclipse.com/update ...

  7. radix树

    今天在学Linux内核页高速缓存时,学到了一种新的数据结构radix树(基数),经过分析,感觉此数据结构有点鸡肋,有可能是我理解不到位吧. 先来张图,给大家以直观的印象 当有一个key-value型的 ...

  8. Code Forces 711C Coloring Trees

    C. Coloring Trees time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  9. SourceTree的基本使用

    1. SourceTree是什么 拥有可视化界面的项目版本控制软件,适用于git项目管理 window.mac可用 2. 获取项目代码 1. 点击克隆/新建 2. 在弹出框中输入项目地址,http或者 ...

  10. 实时的.NET程序错误监控产品Exceptionless开源了

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:实时的.NET程序错误监控产品Exceptionless开源了.