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. CentOS升级Python的方法

    centOS内核版本为:3.10.101-1.el6.elrepo.x86_64 1,下载Python安装包 wget http://www.python.org/ftp/python/2.7.6/P ...

  2. java常用重构优化总结--自己亲身体验

    代码重构  6大原则:    单一职责原则(一个类最好最好只有一种行为动机,太多承担职责会导致耦合度太高).    开放封闭原则(功能可以扩展,但是不可以内部修改).    依赖倒转原则(应该依赖抽象 ...

  3. EF-查看生成的SQL语句

    老版本中:EF 4和EF 3.5 SP1 using (var context = new TestDBEntities()) { var query = from p in context.Pare ...

  4. JavaScript高级程序设计55.pdf

    输入模式 HTML5为文本字段新增了pattern属性,这个属性的值是一个正则表达式,用于匹配文本框中的值 例如,只想在允许在文本字段中输入数值 <input type="text&q ...

  5. Java程序员25个必备的Eclipse插件

    原文:http://www.fromdev.com/2012/01/25-best-free-eclipse-plug-ins-for-java.html "工欲善其事, 必先利器" ...

  6. Classical Inheritance in JavaScript

    JavaScript is a class-free, object-oriented language, and as such, it uses prototypal inheritance in ...

  7. 关于T-SQL重编译那点事,WITH RECOMPILE和OPTION(RECOMPILE)区别仅仅是存储过程级重编译和SQL语句级重编译吗

    本文出处:http://www.cnblogs.com/wy123/p/6262800.html   在考虑重编译T-SQL(或者存储过程)的时候,有两种方式可以实现强制重编译(前提是忽略导致重编译的 ...

  8. 通过DAC来连接SQL Server

    最早知道能够使用专用管理员连接.来连接到sql server.可是一直没有成功连接过.今天又看到这个,于是想再试试. 1.通过在ssms中的"连接到server对话框"中的serv ...

  9. 【剑指Offer学习】【面试题40:数组中仅仅出现一次的数字】

    题目:一个整型数组里除了两个数字之外.其它的数字都出现了两次,请敲代码找出这两个仅仅出现一次的数字. 要求时间复杂度是O(n),空间复杂度是O(1). 举例说明 比如输入数组{2, 4, 3, 6, ...

  10. Hive sql 语法解读

    一. 创建表 在官方的wiki里,example是这种: Sql代码   CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name d ...