Git Product home page Git Product logo

standford-cs193p-2020spring-swiftui's Introduction

Standford-CS193p-2020-Spring-SwiftUI

简介

这是斯坦福2020春季关于IOS的SwiftUI课程,包括幻灯片、阅读材料、作业、完整demo项目代码等官方材料,还有自己的学习笔记和MyDemo
老师还是Paul Hegarty
课程官网: https://cs193p.sites.stanford.edu/
课程视频:
官网给出的youtube地址:https://youtu.be/jbtqIBpUG7g
国内搬运带机翻字幕的:https://www.bilibili.com/video/BV1EV411C77B?p=1
swift 5.3官方文档:https://docs.swift.org/swift-book/LanguageGuide/TheBasics.html
swift 5.3官方文档中文笔记(对应github里的swift_5.3_Language_Guide.md文件):https://blog.csdn.net/xunciy/category_10183982.html 找到的一个前辈的swift5的中文翻译:https://www.jianshu.com/p/1fef53ccffe7

课程目录

Demo请以官方给出的完整项目代码为准,除lecture 1-6 外每个lecture的压缩包里有官网给出的Demo完整项目代码
MyDemo文件夹是自建的跟敲代码可以无视,每个lecture里的README.md记录了Demo各文件主要修改的部分,新增的功能

Lectures Name Slides Demo
[Lecture 1] 01. Course Logistics and Introduction to SwiftUI slide nil
[Lecture 2] 02. MVVM and the Swift Type System slide nil
[Lecture 3] 03. Reactive UI + Protocols + Layout slide nil
[Lecture 4] 04. Grid + enum + Optionals slide nil
[Lecture 5] 05. ViewBuilder + Shape + ViewModifier slide nil
[Lecture 6] 06. Animation slide nil
[Lecture 7] 07. Multithreading + EmojiArt slide EmojiArtL7
[Lecture 8] 08. Geatures + JSON slide EmojiArtL8
[Lecture 9] 09. Data Flow slide EmojiArtL9
[Lecture 10] 10. Navigation + TextField slide EmojiArtL10
[Lecture 11] 11. Picker slide EnrouteL11
[Lecture 12] 12. Core Data slide EnrouteL12
[Lecture 13] 13. Persistence slide EmojiArtL13
[Lecture 14] 14. UIKit Integration slide EmojiArtL14 EnrouteL14

Assignment

Assignment lecture theme
assignment_1 02. MVVM and the Swift Type System Memorize
assignment_2 04. Grid + enum + Optionals Memorize
assignment_3 06. Animation Memorize(期中作业)
assignment_4 08. Geatures + JSON EmojiArt
assignment_5 08. Geatures + JSON Memorize
assignment_6 10. Navigation + TextField Memorize

主要内容

  1. 包括课程官网给出幻灯片slides、阅读材料reading、作业assignment、demo材料包、完整demo项目代码
  2. 包括自己跟敲的代码MyDemo,存在小错误还未有条件纠正(还在等活动买mac),MyDemo可无视,直接参考官网给出的Demo项目代码
  3. 每个lecture的README.md,记录了Demo各文件主要修改的部分,新增的功能等
  4. 包括对课程官网给出的材料的中文笔记,如有assignment的中文概要笔记

MyTips

  1. 很多语法问题,还是直接阅读官方文档比较明了,CS193p给的reading材料也不如官方文档明了,可以使用谷歌浏览器翻译网页再结合英文看,都是大白话,很好懂的,
  2. 跟敲的swift文件除了代码正文内的注释,在正文下面存在大量的听课笔记类型的注释掉的代码,比如前几节课涉及的闭包的语法糖,详细记录了它是如何简化成最后的模样的,如果对这些注释产生疑惑,可以无视所有注释,并结合课程视频理解代码正文
  3. lecture 11-14 的 MyDemo 无跟敲,仅编辑了README.md,这几个课程内容深入了许多,再加上提前给好的Enroute内容已经非常多了,就放弃了跟敲
  4. swiftUI 和 swift 差距很大,MVVM 和 MVC 的差距很大。鉴于 swiftUI 才出没多久,近几年不可能大规模应用到市场,所以打算返回去啃 swift 了,暂时打算从基础开始看看官方文档的语法,在查一查2017的lecture里出现的比较多的概念,争取完全搞懂2017 lecture Demo里的代码是啥意思,把一些其Demo没实现的但是可以自己做的小功能做做看

standford-cs193p-2020spring-swiftui's People

Contributors

sophia-fez avatar

Stargazers

 avatar SeventeenK17 avatar

Forkers

bourne1991

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.