美文网首页Swift
Swift5.1——前言

Swift5.1——前言

作者: 天空像天空一样蓝 | 来源:发表于2019-08-04 15:38 被阅读0次

主要是针对Swift5.1,基础语法,和内部剖析。

基础语法

为什么选择Swift5.1

  • 历时5年发展,从Swift1.x发展到Swift5.x,经历了多次重大改变,ABI终于稳定
  • API(Application Programming Interface):应用程序编程接口
    • 源代码和库之间的接口
  • ABI(Application Binary Interface):应用程序二进制接口
    • 应用程序与操作系统之间的底层接口
    • 涉及内容有:目标文件格式、数据类型的大小/布局/对齐、函数调用约定等等
  • Swift是完全开源的 https://github.com/apple/swift 主要采用C++编写

编译流程

参考地址 https://swift.org/compiler-stdlib/

编译流程

swiftc

何为swiftc:

  • swiftc存放在Xcode内部
    • Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
  • 基本操作
    • 生成语法树: swiftc -dump-ast main.swift
    • 生成最简洁的SIL代码:swiftc -emit-sil main.swift
    • 生成LLVM IR代码: swiftc -emit-ir main.swift -o main.ll
    • 生成汇编代码: swiftc -emit-assembly main.swift -o main.s

Xcode中创建一个Swift工程,swift从第一行有效的函数开始运行

import Foundation

print("Hello, World!")

在终端使用swiftc -dump-ast main.swift 语法生成语法树,其他类似可以自己尝试

语法树

相关文章

  • Swift5.1——前言

    主要是针对Swift5.1,基础语法,和内部剖析。 基础语法 基础语法 流程控制 函数 枚举 可选项 为什么选择S...

  • 关于SwiftUI,Swift5.1之后的小感

    Swift5.1之前是一门语言,Swift5.1之后是另外一门语言,作为一个从Swift2.0开始就在持续学习这么...

  • Swift5.1基础

    github:https://github.com/w0shiliyang/Swift5.1

  • UINavigationController中UIViewCon

    运行环境:xcode11,swift5.1 在UINavigationController 重写pushViewC...

  • Swift系统视频学习

    1、swift5.1基础语法:https://docs.swift.org/swift-book/Language...

  • Swift5.1 编写微博首页

    使用Swift5.1编写的简单微博首页,源码在 (https://github.com/Git-ChenPan/...

  • iOS-Swift-简介

    学习环境 下面所讲的是基于Swift5.1开发工具:Xcode11操作系统:macOS 10.14 Mojave、...

  • propertyWrapper相关

    简介 WWDC2019 发布了 SwiftUI 和 Swift5.1,我们看到很多全新带 @ 的属性例如 @Sta...

  • Swift之some

    some是Swift5.1的特性,如果你关注SwiftUI, 肯定对这个不陌生。 some是不透明返回类型,增强了...

  • APNs原生推送接入

    注:Xcode11.6 Swift5.1 最低版本:iOS 10.0 1.在做下面接入之前需要把APNs的开发证...

网友评论

    本文标题:Swift5.1——前言

    本文链接:https://www.haomeiwen.com/subject/dpffrctx.html