@@ -4,26 +4,26 @@ There are plenty of books, videos, and online resources for developing iOS apps.
4
4
5
5
## Contents
6
6
7
- Links to articles that explain each code example are provided below. Code files are located in the scripts, projects, and playgrounds directories. Some articles do not have code files in this repository.
7
+ Links to articles that explain each code example are provided below. Code files are located in the scripts, xcode- projects, and xcode- playgrounds directories. Some articles do not have code files in this repository.
8
8
9
9
### Swift
10
10
11
- - [ Arrays] ( https://gavinw.me/notes/swift/arrays.html )
11
+ - [ Arrays] ( https://gavinw.me/notes/swift/arrays.html ) , ` scripts/arrays.swift `
12
12
- [ Comments] ( https://gavinw.me/notes/swift/comments.html )
13
13
- [ Compiler optimizations] ( https://gavinw.me/notes/swift/compiler-optimizations.html )
14
14
- [ Create a package] ( https://gavinw.me/notes/swift/create-package.html )
15
- - [ Date formatting] ( https://gavinw.me/notes/swift/date-formatting.html )
15
+ - [ Date formatting] ( https://gavinw.me/notes/swift/date-formatting.html ) , ` scripts/dateformatted.swift `
16
16
- [ Defaults command line tool] ( https://gavinw.me/notes/swift/defaults-tool.html )
17
17
- [ Dictionaries] ( https://gavinw.me/notes/swift/dictionaries.html )
18
18
- [ Directory contents] ( https://gavinw.me/notes/swift/directory-contents.html )
19
19
- [ Discardable result] ( https://gavinw.me/notes/swift/discardable-result.html )
20
- - [ Elapsed time] ( https://gavinw.me/notes/swift/discardable-result.html )
21
- - [ Element-wise array addition] ( https://gavinw.me/notes/swift/element-array-addition.html )
22
- - [ Flat indexing an N-dimensional array] ( https://gavinw.me/notes/swift/flat-indexing.html )
23
- - [ Image from array data] ( https://gavinw.me/notes/swift/image-data.html )
24
- - [ Image from colormap filter] ( https://gavinw.me/notes/swift/image-colormap.html )
20
+ - [ Elapsed time] ( https://gavinw.me/notes/swift/discardable-result.html ) , ` scripts/elapsedtime.swift `
21
+ - [ Element-wise array addition] ( https://gavinw.me/notes/swift/element-array-addition.html ) , ` xcode-projects/ArrayAddition/ `
22
+ - [ Flat indexing an N-dimensional array] ( https://gavinw.me/notes/swift/flat-indexing.html ) , ` scripts/flat-indexing.swift `
23
+ - [ Image from array data] ( https://gavinw.me/notes/swift/image-data.html ) , ` xcode-playgrounds/ImageFromData/ `
24
+ - [ Image from colormap filter] ( https://gavinw.me/notes/swift/image-colormap.html ) , ` xcode-playgrounds/ImageColormap/ `
25
25
- [ Install Xcode] ( https://gavinw.me/notes/swift/install-xcode.html )
26
- - [ Normalize array values] ( https://gavinw.me/notes/swift/normalize-array.html )
26
+ - [ Normalize array values] ( https://gavinw.me/notes/swift/normalize-array.html ) , ` xcode-playgrounds/NormalizeArray/ `
27
27
- [ Package a library] ( https://gavinw.me/notes/swift/package-library.html )
28
28
- [ Range] ( https://gavinw.me/notes/swift/range.html )
29
29
- [ Read Eval Print Loop (REPL)] ( https://gavinw.me/notes/swift/repl.html )
@@ -34,64 +34,64 @@ Links to articles that explain each code example are provided below. Code files
34
34
35
35
### SwiftUI
36
36
37
- - [ AppStorage] ( https://gavinw.me/notes/swiftui/appstorage.html )
38
- - [ Async for-in loop] ( https://gavinw.me/notes/swiftui/async-for-loop.html )
39
- - [ Blur effect] ( https://gavinw.me/notes/swiftui/blur-effect.html )
40
- - [ Button styles] ( https://gavinw.me/notes/swiftui/button-styles.html )
41
- - [ Credits] ( https://gavinw.me/notes/swiftui/credits.html )
42
- - [ Cursors] ( https://gavinw.me/notes/swiftui/cursors.html )
43
- - [ Display scale] ( https://gavinw.me/notes/swiftui/display-scale.html )
44
- - [ Grid lines] ( https://gavinw.me/notes/swiftui/grid-lines.html )
45
- - [ Heat map chart] ( https://gavinw.me/notes/swiftui/heatmap-chart.html )
46
- - [ Image from colormap filter] ( https://gavinw.me/notes/swiftui/image-colormap.html )
47
- - [ Images and symbols] ( https://gavinw.me/notes/swiftui/images-symbols.html )
48
- - [ Label] ( https://gavinw.me/notes/swiftui/label.html )
49
- - [ LabeledContent] ( https://gavinw.me/notes/swiftui/labeledcontent.html )
50
- - [ Line chart] ( https://gavinw.me/notes/swiftui/line-chart.html )
51
- - [ Menu items] ( https://gavinw.me/notes/swiftui/menu-items.html )
52
- - [ NSPasteboard] ( https://gavinw.me/notes/swiftui/nspasteboard.html )
53
- - [ Open a window] ( https://gavinw.me/notes/swiftui/window-open.html )
54
- - [ Path markers] ( https://gavinw.me/notes/swiftui/path-markers.html )
55
- - [ Picker control] ( https://gavinw.me/notes/swiftui/picker-control.html )
56
- - [ Preferences window] ( https://gavinw.me/notes/swiftui/prefs-window.html )
57
- - [ ProgressView] ( https://gavinw.me/notes/swiftui/progressview.html )
58
- - [ ScrollView] ( https://gavinw.me/notes/swiftui/scrollview.html )
59
- - [ Sidebar DisclosureGroup] ( https://gavinw.me/notes/swiftui/sidebar-disclosuregroup.html )
60
- - [ Sidebar toggle] ( https://gavinw.me/notes/swiftui/sidebar-toggle.html )
61
- - [ Sine wave] ( https://gavinw.me/notes/swiftui/sine-wave.html )
62
- - [ Stepper] ( https://gavinw.me/notes/swiftui/stepper.html )
63
- - [ Table] ( https://gavinw.me/notes/swiftui/table.html )
64
- - [ Text] ( https://gavinw.me/notes/swiftui/text.html )
65
- - [ TextField] ( https://gavinw.me/notes/swiftui/textfield.html )
66
- - [ Thee column NavigationView] ( https://gavinw.me/notes/swiftui/three-column-nav.html )
67
- - [ Toggle animation] ( https://gavinw.me/notes/swiftui/toggle-animation.html )
68
- - [ Toolbar dropdown] ( https://gavinw.me/notes/swiftui/toolbar-dropdown.html )
69
- - [ Two column NavigationSplitView] ( https://gavinw.me/notes/swiftui/twocol-navsplit.html )
70
- - [ Two column NavigationView] ( https://gavinw.me/notes/swiftui/two-column-nav.html )
71
- - [ View Tap Gesture] ( https://gavinw.me/notes/swiftui/viewtapgesture.html )
72
- - [ ViewBuilder] ( https://gavinw.me/notes/swiftui/viewbuilder.html )
73
- - [ WebView] ( https://gavinw.me/notes/swiftui/webview.html )
74
- - [ Window and toolbar style] ( https://gavinw.me/notes/swiftui/window-toolbar-style.html )
75
- - [ Window default size] ( https://gavinw.me/notes/swiftui/window-defaultsize.html )
76
- - [ Window resizability] ( https://gavinw.me/notes/swiftui/window-resizability.html )
37
+ - [ AppStorage] ( https://gavinw.me/notes/swiftui/appstorage.html ) , ` xcode-projects/AppStorageProperty/ `
38
+ - [ Async for-in loop] ( https://gavinw.me/notes/swiftui/async-for-loop.html ) , ` xcode-projects/AsyncForLoop/ `
39
+ - [ Blur effect] ( https://gavinw.me/notes/swiftui/blur-effect.html ) , ` xcode-projects/BlurEffect/ `
40
+ - [ Button styles] ( https://gavinw.me/notes/swiftui/button-styles.html ) , ` xcode-projects/ButtonStyles/ `
41
+ - [ Credits] ( https://gavinw.me/notes/swiftui/credits.html ) , ` xcode-projects/Credits/ `
42
+ - [ Cursors] ( https://gavinw.me/notes/swiftui/cursors.html ) , ` xcode-projects/Cursor/ `
43
+ - [ Display scale] ( https://gavinw.me/notes/swiftui/display-scale.html ) , ` xcode-projects/DisplayScale/ `
44
+ - [ Grid lines] ( https://gavinw.me/notes/swiftui/grid-lines.html ) , ` xcode-projects/GridLines/ `
45
+ - [ Heat map chart] ( https://gavinw.me/notes/swiftui/heatmap-chart.html ) , ` xcode-projects/HeatMap/ `
46
+ - [ Image from colormap filter] ( https://gavinw.me/notes/swiftui/image-colormap.html ) , ` xcode-projects/ImageColormap/ `
47
+ - [ Images and symbols] ( https://gavinw.me/notes/swiftui/images-symbols.html ) , ` xcode-projects/Image/ ` , ` xcode-projects/ImageSFSymbols/ ` , ` xcode-projects/ImageSystem/ `
48
+ - [ Label] ( https://gavinw.me/notes/swiftui/label.html ) , ` xcode-projects/LabelText/ `
49
+ - [ LabeledContent] ( https://gavinw.me/notes/swiftui/labeledcontent.html ) , ` xcode-projects/LabeledContentExample `
50
+ - [ Line chart] ( https://gavinw.me/notes/swiftui/line-chart.html ) , ` xcode-projects/LineChart/ `
51
+ - [ Menu items] ( https://gavinw.me/notes/swiftui/menu-items.html ) , ` xcode-projects/MenuItems/ `
52
+ - [ NSPasteboard] ( https://gavinw.me/notes/swiftui/nspasteboard.html ) , ` xcode-projects/NSPasteboard/ `
53
+ - [ Open a window] ( https://gavinw.me/notes/swiftui/window-open.html ) , ` xcode-projects/WindowOpen/ `
54
+ - [ Path markers] ( https://gavinw.me/notes/swiftui/path-markers.html ) , ` xcode-projects/PathMarkers/ `
55
+ - [ Picker control] ( https://gavinw.me/notes/swiftui/picker-control.html ) , ` xcode-projects/PickerControl `
56
+ - [ Preferences window] ( https://gavinw.me/notes/swiftui/prefs-window.html ) , ` xcode-projects/PreferencesWindow/ `
57
+ - [ ProgressView] ( https://gavinw.me/notes/swiftui/progressview.html ) , ` xcode-projects/ProgressView/ ` , ` xcode-projects/ProgressViewBackground/ `
58
+ - [ ScrollView] ( https://gavinw.me/notes/swiftui/scrollview.html ) , ` xcode-projects/ScrollView/ `
59
+ - [ Sidebar DisclosureGroup] ( https://gavinw.me/notes/swiftui/sidebar-disclosuregroup.html ) , ` xcode-projects/SidebarDisclosureGroup/ `
60
+ - [ Sidebar toggle] ( https://gavinw.me/notes/swiftui/sidebar-toggle.html ) , ` xcode-projects/SidebarToggle/ `
61
+ - [ Sine wave] ( https://gavinw.me/notes/swiftui/sine-wave.html ) , ` xcode-projects/SineWave/ `
62
+ - [ Stepper] ( https://gavinw.me/notes/swiftui/stepper.html ) , ` xcode-projects/Stepper/ `
63
+ - [ Table] ( https://gavinw.me/notes/swiftui/table.html ) , ` xcode-projects/TableBasic/ ` , ` xcode-projects/TableSelection/ ` , ` xcode-projects/TableSort/ `
64
+ - [ Text] ( https://gavinw.me/notes/swiftui/text.html ) , ` xcode-projects/Text/ ` , ` xcode-projects/TextFont/ ` , ` xcode-projects/TextStyles/ ` , ` xcode-projects/TextVertical/ `
65
+ - [ TextField] ( https://gavinw.me/notes/swiftui/textfield.html ) , ` xcode-projects/TextField/ `
66
+ - [ Thee column NavigationView] ( https://gavinw.me/notes/swiftui/three-column-nav.html ) , ` xcode-projects/ThreeColumnNav `
67
+ - [ Toggle animation] ( https://gavinw.me/notes/swiftui/toggle-animation.html ) , ` xcode-projects/ToggleAnimation/ `
68
+ - [ Toolbar dropdown] ( https://gavinw.me/notes/swiftui/toolbar-dropdown.html ) , ` xcode-projects/ToolbarDropdown/ `
69
+ - [ Two column NavigationSplitView] ( https://gavinw.me/notes/swiftui/twocol-navsplit.html ) , ` xcode-projects/TwoColNavSplit/ ` , ` xcode-projects/TwoColNavSplitFill/ `
70
+ - [ Two column NavigationView] ( https://gavinw.me/notes/swiftui/two-column-nav.html ) , ` xcode-projects/TwoColumnNav/ ` , ` xcode-projects/TwoColumnNav2/ `
71
+ - [ View Tap Gesture] ( https://gavinw.me/notes/swiftui/viewtapgesture.html ) , ` xcode-projects/ViewTapGesture/ `
72
+ - [ ViewBuilder] ( https://gavinw.me/notes/swiftui/viewbuilder.html ) , ` xcode-projects/ViewBuilder/ `
73
+ - [ WebView] ( https://gavinw.me/notes/swiftui/webview.html ) , ` xcode-projects/WebViewLoadHtml/ ` , ` xcode-projects/WebViewLoadString/ ` , ` xcode-projects/WebViewLoadUrl/ `
74
+ - [ Window and toolbar style] ( https://gavinw.me/notes/swiftui/window-toolbar-style.html ) , ` xcode-projects/WindowStyle/ `
75
+ - [ Window default size] ( https://gavinw.me/notes/swiftui/window-defaultsize.html ) , ` xcode-projects/WindowDefaultSize/ `
76
+ - [ Window resizability] ( https://gavinw.me/notes/swiftui/window-resizability.html ) , ` xcode-projects/WindowResizability/ `
77
77
78
78
### Accelerate
79
79
80
80
- [ Absolute value] ( https://gavinw.me/notes/accelerate/absolute-value.html )
81
81
- [ Complex multiplication] ( https://gavinw.me/notes/accelerate/complex-multiplication.html )
82
- - [ Matrix multiplication] ( https://gavinw.me/notes/accelerate/matrix-multiplication.html )
82
+ - [ Matrix multiplication] ( https://gavinw.me/notes/accelerate/matrix-multiplication.html ) , ` scripts/matmul-accel.swift `
83
83
- [ Reverse array elements] ( https://gavinw.me/notes/accelerate/reverse.html )
84
84
- [ Sort array values] ( https://gavinw.me/notes/accelerate/sort.html )
85
85
86
86
### Metal
87
87
88
- - [ Clear color] ( https://gavinw.me/notes/metal/clear-color.html )
89
- - [ Color view with compute kernel] ( https://gavinw.me/notes/metal/color-compute.html )
90
- - [ Matrix multiplication] ( https://gavinw.me/notes/metal/matrix-multiplication.html )
91
- - [ Noise] ( https://gavinw.me/notes/metal/noise.html )
92
- - [ Particles] ( https://gavinw.me/notes/metal/particles.html )
93
- - [ Sampler] ( https://gavinw.me/notes/metal/sampler.html )
94
- - [ Triangle] ( https://gavinw.me/notes/metal/triangle.html )
88
+ - [ Clear color] ( https://gavinw.me/notes/metal/clear-color.html ) , ` xcode-projects/MetalClear/ `
89
+ - [ Color view with compute kernel] ( https://gavinw.me/notes/metal/color-compute.html ) , ` xcode-projects/MetalColorCompute/ `
90
+ - [ Matrix multiplication] ( https://gavinw.me/notes/metal/matrix-multiplication.html ) , ` scripts/matmul-metal.swift `
91
+ - [ Noise] ( https://gavinw.me/notes/metal/noise.html ) , ` xcode-projects/MetalNoise/ `
92
+ - [ Particles] ( https://gavinw.me/notes/metal/particles.html ) , ` xcode-projects/MetalParticles/ `
93
+ - [ Sampler] ( https://gavinw.me/notes/metal/sampler.html ) , ` xcode-projects/MetalSampler/ `
94
+ - [ Triangle] ( https://gavinw.me/notes/metal/triangle.html ) , ` xcode-projects/MetalTriangle/ `
95
95
96
96
## Contributing
97
97
0 commit comments