Mobile App Development 2021W Lecture 4: Difference between revisions

From Soma-notes
Created page with "==Video== Video from the lecture given on January 20, 2021 [https://homeostasis.scs.carleton.ca/~soma/mad-2021w/lectures/comp1601-2021w-lec04-20210120.m4v is now available]."
 
No edit summary
Line 2: Line 2:


Video from the lecture given on January 20, 2021 [https://homeostasis.scs.carleton.ca/~soma/mad-2021w/lectures/comp1601-2021w-lec04-20210120.m4v is now available].
Video from the lecture given on January 20, 2021 [https://homeostasis.scs.carleton.ca/~soma/mad-2021w/lectures/comp1601-2021w-lec04-20210120.m4v is now available].
==Notes==
<pre>
Lecture 4
------------
* nested views
* UIkit
* Apple-centered history of GUIs
  - mother of all demos (Englebart, 1968)
  - Xerox Alto
  - Lisa
  - Macintosh
  - NeXT
  - MacOS X
  - iPhone
Why not just use HTML/CSS everywhere, instead of SwiftUI?
- because then you need an entire web renderer to create the interface!
- web rendering engines are BEASTS
  - only 3 left
      Webkit (Apple)
      Blink (Google, fork of Webkit)
      Gecko (Mozilla)
Microsoft had Trident, but they gave up and adopted Blink for Edge
UIkit is for iOS, AppKit is for MacOS
- storyboard is the way you make these interfaces
SwiftUI is for both MacOS and iOS
SwiftUI is really a domain-specific language for building interfaces,
built using Swift
- some rules of regular swift apply, but many don't
- really need to switch modes when doing SwiftUI
- only use SwiftUI components in Views, not elsewhere
</pre>

Revision as of 20:52, 20 January 2021

Video

Video from the lecture given on January 20, 2021 is now available.

Notes

Lecture 4
------------

* nested views
* UIkit
* Apple-centered history of GUIs
  - mother of all demos (Englebart, 1968)
  - Xerox Alto
  - Lisa
  - Macintosh
  - NeXT
  - MacOS X
  - iPhone


Why not just use HTML/CSS everywhere, instead of SwiftUI?
 - because then you need an entire web renderer to create the interface!
 - web rendering engines are BEASTS
   - only 3 left
      Webkit (Apple)
      Blink (Google, fork of Webkit)
      Gecko (Mozilla)

Microsoft had Trident, but they gave up and adopted Blink for Edge

UIkit is for iOS, AppKit is for MacOS
 - storyboard is the way you make these interfaces

SwiftUI is for both MacOS and iOS


SwiftUI is really a domain-specific language for building interfaces,
built using Swift
 - some rules of regular swift apply, but many don't
 - really need to switch modes when doing SwiftUI
 - only use SwiftUI components in Views, not elsewhere