├── 04-swiftui-views └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 05-swiftui-view-modifiers └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 07-challenge-add-view-modifiers └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 11-swiftui-buttons-and-actions └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 12-swiftui-state └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 13-challenge-swiftui-state └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 14-swiftui-bindings └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 15-strings └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 16-variables └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── FishingApp.swift │ ├── Info.plist │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── 18-create-a-model └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── App │ ├── Assets.xcassets │ │ ├── AccentColor.colorset │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ ├── FishingApp.swift │ └── Info.plist │ ├── Models │ └── Game.swift │ ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json │ └── Views │ └── ContentView.swift ├── 21-the-swift-standard-library └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── Fishing │ ├── App │ ├── Assets.xcassets │ │ ├── AccentColor.colorset │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ ├── FishingApp.swift │ └── Info.plist │ ├── Models │ └── Game.swift │ ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json │ └── Views │ └── ContentView.swift ├── 22-intro-to-unit-testing └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── Fishing.xcscheme │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── Fishing │ ├── App │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── FishingApp.swift │ │ └── Info.plist │ ├── Models │ │ └── Game.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Views │ │ └── ContentView.swift │ └── FishingTests │ ├── FishingTests.swift │ └── Info.plist ├── 23-intro-to-test-driven-development └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── Fishing.xcscheme │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── Fishing │ ├── App │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── FishingApp.swift │ │ └── Info.plist │ ├── Models │ │ └── Game.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Views │ │ └── ContentView.swift │ └── FishingTests │ ├── FishingTests.swift │ └── Info.plist ├── 25-if-else-statements └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── Fishing.xcscheme │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── Fishing │ ├── App │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── FishingApp.swift │ │ └── Info.plist │ ├── Models │ │ └── Game.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Views │ │ └── ContentView.swift │ └── FishingTests │ ├── FishingTests.swift │ └── Info.plist ├── 26-challenge-calculate-the-difference └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── Fishing.xcscheme │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── Fishing │ ├── App │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── FishingApp.swift │ │ └── Info.plist │ ├── Models │ │ └── Game.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Views │ │ └── ContentView.swift │ └── FishingTests │ ├── FishingTests.swift │ └── Info.plist ├── 27-variables-and-constants └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── Fishing.xcscheme │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── Fishing │ ├── App │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── FishingApp.swift │ │ └── Info.plist │ ├── Models │ │ └── Game.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Views │ │ └── ContentView.swift │ └── FishingTests │ ├── FishingTests.swift │ └── Info.plist ├── 28-type-inference └── Fishing │ ├── Fishing.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── zhaoziran.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── Fishing.xcscheme │ └── xcuserdata │ │ └── zhaoziran.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── Fishing │ ├── App │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── FishingApp.swift │ │ └── Info.plist │ ├── Models │ │ └── Game.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Views │ │ └── ContentView.swift │ └── FishingTests │ ├── FishingTests.swift │ └── Info.plist ├── LICENSE └── README.md /04-swiftui-views/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /04-swiftui-views/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/04-swiftui-views/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /05-swiftui-view-modifiers/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/05-swiftui-view-modifiers/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /07-challenge-add-view-modifiers/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/07-challenge-add-view-modifiers/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /11-swiftui-buttons-and-actions/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/11-swiftui-buttons-and-actions/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /12-swiftui-state/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/12-swiftui-state/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /13-challenge-swiftui-state/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/13-challenge-swiftui-state/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /14-swiftui-bindings/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/14-swiftui-bindings/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /15-strings/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/15-strings/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing/ContentView.swift -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing/FishingApp.swift -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing/Info.plist -------------------------------------------------------------------------------- /16-variables/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/16-variables/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /18-create-a-model/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/18-create-a-model/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /21-the-swift-standard-library/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/21-the-swift-standard-library/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/FishingTests/FishingTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/FishingTests/FishingTests.swift -------------------------------------------------------------------------------- /22-intro-to-unit-testing/Fishing/FishingTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/22-intro-to-unit-testing/Fishing/FishingTests/Info.plist -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/FishingTests/FishingTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/FishingTests/FishingTests.swift -------------------------------------------------------------------------------- /23-intro-to-test-driven-development/Fishing/FishingTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/23-intro-to-test-driven-development/Fishing/FishingTests/Info.plist -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/FishingTests/FishingTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/FishingTests/FishingTests.swift -------------------------------------------------------------------------------- /25-if-else-statements/Fishing/FishingTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/25-if-else-statements/Fishing/FishingTests/Info.plist -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/FishingTests/FishingTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/FishingTests/FishingTests.swift -------------------------------------------------------------------------------- /26-challenge-calculate-the-difference/Fishing/FishingTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/26-challenge-calculate-the-difference/Fishing/FishingTests/Info.plist -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/FishingTests/FishingTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/FishingTests/FishingTests.swift -------------------------------------------------------------------------------- /27-variables-and-constants/Fishing/FishingTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/27-variables-and-constants/Fishing/FishingTests/Info.plist -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing.xcodeproj/project.xcworkspace/xcuserdata/zhaoziran.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing.xcodeproj/xcshareddata/xcschemes/Fishing.xcscheme -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing.xcodeproj/xcuserdata/zhaoziran.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/App/FishingApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/App/FishingApp.swift -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/App/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/App/Info.plist -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/Models/Game.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/Models/Game.swift -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /28-type-inference/Fishing/Fishing/Views/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/Fishing/Views/ContentView.swift -------------------------------------------------------------------------------- /28-type-inference/Fishing/FishingTests/FishingTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/FishingTests/FishingTests.swift -------------------------------------------------------------------------------- /28-type-inference/Fishing/FishingTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/28-type-inference/Fishing/FishingTests/Info.plist -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jiafu-Ziran/an-app-from-scratch-video-materials/HEAD/README.md --------------------------------------------------------------------------------