Урок 1.00:05:18
Course Introduction
Урок 2.00:03:16
How to Get Your Free Udemy Bonus Content
Урок 3.00:03:13
OPTIONAL - Registering as an Apple Developer
Урок 4.00:02:53
OPTIONAL - Downloading & Installing Xcode
Урок 5.00:02:53
EXERCISE - Hello, Xcode!
Урок 6.00:02:10
Your First iOS App: Introduction
Урок 7.00:04:05
Challenge: Making a Programming To-Do List
Урок 8.00:09:00
Buttons and Actions
Урок 9.00:05:31
Alerts
Урок 10.00:07:33
Solving Problems
Урок 11.00:02:31
Challenge: Connecting Actions
Урок 12.00:02:41
How Does an App Work
Урок 13.00:03:41
Portrait vs. Landscape
Урок 14.00:05:26
Challenge: Basic Controls
Урок 15.00:00:30
Conclusion
Урок 16.00:00:55
Introduction
Урок 17.00:04:11
Objects, Data and Methods
Урок 18.00:03:37
Strings
Урок 19.00:08:14
Variables
Урок 20.00:01:39
Challenge: Your First Bug
Урок 21.00:05:22
Connecting Outlets
Урок 22.00:07:02
Writing Methods
Урок 23.00:02:37
Challenge: Connecting Outlets
Урок 24.00:00:31
Conclusion
Урок 25.00:00:47
Introduction
Урок 26.00:02:52
Challenge: How to Calculate the Difference
Урок 27.00:02:40
Calculating the Difference
Урок 28.00:01:43
Challenge: Calculating the Difference
Урок 29.00:02:52
Variables vs. Constants
Урок 30.00:01:32
Type Inference
Урок 31.00:01:34
Challenge: Showing the Score
Урок 32.00:02:13
Challenge: Tracking Rounds
Урок 33.00:02:29
Adding Polish
Урок 34.00:01:39
Challenge: Adding Polish
Урок 35.00:00:46
Conclusion
Урок 36.00:00:46
Introduction
Урок 37.00:03:13
Challenge: Local vs. Instance Variables
Урок 38.00:04:44
Closures
Урок 39.00:02:13
Challenge: Starting Over
Урок 40.00:05:42
Adding Extra Screens
Урок 41.00:04:20
Challenge: Adding Extra Screens
Урок 42.00:00:24
Conclusion
Урок 43.00:00:54
Introduction
Урок 44.00:04:51
Styling with Images and Labels
Урок 45.00:02:02
Challenge: Styling with Labels
Урок 46.00:09:34
Styling with Buttons and Sliders
Урок 47.00:03:26
Challenge: Styling the About Screen
Урок 48.00:08:57
Web Views and Developer Documentation
Урок 49.00:05:58
Introduction to Auto Layout
Урок 50.00:03:51
Challenge: Introduction to Auto Layout
Урок 51.00:01:50
App Icon and Display Name
Урок 52.00:03:48
Running the App on your Device
Урок 53.00:01:05
Conclusion
Урок 54.00:03:36
Introduction
Урок 55.00:06:58
Swift Playgrounds
Урок 56.00:05:38
Comments
Урок 57.00:07:24
Tuples
Урок 58.00:05:54
Challenge: Tuples
Урок 59.00:12:19
Booleans and Operators
Урок 60.00:07:56
Challenge: Booleans
Урок 61.00:04:54
Scope
Урок 62.00:01:55
Conclusion
Урок 63.00:00:47
Introduction
Урок 64.00:04:52
While Loops
Урок 65.00:05:02
Challenge: While Loops
Урок 66.00:10:30
For Loops
Урок 67.00:02:22
Challenge: For Loops
Урок 68.00:09:06
Switch Statements
Урок 69.00:05:05
Challenge: Switch Statements
Урок 70.00:08:58
Enumerations
Урок 71.00:01:20
Conclusion
Урок 72.00:00:50
Introduction
Урок 73.00:12:38
Introduction to Functions
Урок 74.00:04:54
Challenge: Introduction to Functions
Урок 75.00:08:58
More Functions
Урок 76.00:03:48
Introduction to Optionals
Урок 77.00:01:19
Challenge: Introduction to Optionals
Урок 78.00:07:34
More Optionals
Урок 79.00:02:57
Challenge: More Optionals
Урок 80.00:01:13
Conclusion
Урок 81.00:00:32
Introduction
Урок 82.00:11:10
Arrays
Урок 83.00:02:13
Challenge: Arrays
Урок 84.00:08:23
Dictionaries
Урок 85.00:03:36
Challenge: Dictionaries
Урок 86.00:06:05
Sets
Урок 87.00:10:53
Closures
Урок 88.00:11:40
Closures and Collections
Урок 89.00:04:15
Challenge: Closures
Урок 90.00:01:21
Conclusion
Урок 91.00:01:55
Introduction
Урок 92.00:13:57
Structures
Урок 93.00:04:43
Challenge: Structures
Урок 94.00:17:34
Properties
Урок 95.00:03:16
Challenge: Properties
Урок 96.00:01:23
Computed Properties vs. Methods
Урок 97.00:13:32
Methods
Урок 98.00:06:47
Challenge: Methods
Урок 99.00:01:15
Conclusion
Урок 100.00:01:24
Introduction
Урок 101.00:10:13
Classes vs Structures
Урок 102.00:04:53
Challenge: Classes vs. Structures
Урок 103.00:12:39
Inheritance
Урок 104.00:10:09
Initializers
Урок 105.00:03:54
Challenge: Initializers
Урок 106.00:03:21
When Should You Subclass?
Урок 107.00:08:20
Protocols
Урок 108.00:08:15
Memory Management
Урок 109.00:01:53
Conclusion
Урок 110.00:02:39
Introduction
Урок 111.00:01:45
App Overview
Урок 112.00:07:09
Table View Controllers
Урок 113.00:08:07
Table View Cells
Урок 114.00:02:09
Challenge: Adding a Label
Урок 115.00:04:37
IndexPaths
Урок 116.00:03:54
Challenge: Creating More Rows
Урок 117.00:07:30
Introduction to Protocols
Урок 118.00:07:06
Data Sources and Delegates
Урок 119.00:05:56
Delegation
Урок 120.00:02:05
Conclusion
Урок 121.00:00:39
Introduction
Урок 122.00:02:11
Model View Controller
Урок 123.00:05:15
Creating a Model
Урок 124.00:03:26
Fixing Checkmarks
Урок 125.00:03:38
Challenge: Creating Checkmark Instances
Урок 126.00:03:51
Enhancing the Model
Урок 127.00:04:51
Challenge: Updating the Controller
Урок 128.00:04:53
Refactoring the Controller
Урок 129.00:01:24
Conclusion
Урок 130.00:01:16
Introduction
Урок 131.00:05:05
Navigation Controller
Урок 132.00:03:08
Challenge: Add a Bar Button
Урок 133.00:04:44
Adding Checklist Items
Урок 134.00:04:31
Challenge: Give a Random Description
Урок 135.00:06:33
Swipe to Delete
Урок 136.00:07:32
Adding a New Screen
Урок 137.00:03:42
Static Cells
Урок 138.00:02:29
Challenge: Add Textfield to Cell
Урок 139.00:09:59
Responder Chain
Урок 140.00:06:58
Control Events
Урок 141.00:01:24
Conclusion
Урок 142.00:01:11
Introduction
Урок 143.00:07:19
Making Your Own Protocol
Урок 144.00:05:10
Segues
Урок 145.00:01:33
Challenge: Edit View Controller Checklist
Урок 146.00:05:24
Detail Disclosure Indicator
Урок 147.00:01:43
Challenge: Second Segue
Урок 148.00:07:21
Passing Data in Segues
Урок 149.00:03:17
Challenge: Dismissing the Edit Controller
Урок 150.00:08:52
NSObject
Урок 151.00:03:42
Xcode Refactoring
Урок 152.00:03:12
Challenge: Refactor Protocol
Урок 153.00:01:21
Conclusion
Урок 154.00:00:51
Introduction
Урок 155.00:06:20
Subclassing Table View Cells
Урок 156.00:06:55
Moving Rows
Урок 157.00:05:58
Deleting Multiple Rows
Урок 158.00:05:44
Using Sections
Урок 159.00:04:48
Indexing Your Table
Урок 160.00:07:40
Refactoring the Model
Урок 161.00:07:44
Updating the Controller
Урок 162.00:06:35
Sectioning by Priority
Урок 163.00:03:56
Challenge: Provide Section Titles
Урок 164.00:07:18
Moving Items Between Sections
Урок 165.00:01:36
Conclusion
Урок 166.00:03:34
Introduction
Урок 167.00:05:56
Document Directory URL
Урок 168.00:03:22
Paths
Урок 169.00:01:53
Challenge: URLs
Урок 170.00:05:20
Data
Урок 171.00:03:12
String
Урок 172.00:01:48
Challenge: String Data
Урок 173.00:00:45
Conclusion
Урок 174.00:00:26
Introduction
Урок 175.00:09:59
JSON
Урок 176.00:07:14
Saving on Device
Урок 177.00:12:17
Codable Types
Урок 178.00:03:09
Challenge: JSON Arrays
Урок 179.00:06:04
Codable Hierarchies
Урок 180.00:06:15
Challenge: Property Lists
Урок 181.00:01:35
Property List Anatomy
Урок 182.00:04:34
Comparing Property Lists and JSON
Урок 183.00:01:41
Conclusion
Урок 184.00:01:41
Introduction
Урок 185.00:06:53
Autoresizing
Урок 186.00:07:12
Stack Views
Урок 187.00:03:41
Challenge: Create Layouts with Stack Views
Урок 188.00:06:59
Intrinsic Content Size
Урок 189.00:03:20
Nesting Stack Views
Урок 190.00:05:54
Stack View Alignment and Distribution
Урок 191.00:07:24
Challenge: Nesting Stack Views
Урок 192.00:00:26
Conclusion
Урок 193.00:04:33
Introduction
Урок 194.00:04:50
Adding New Constraints
Урок 195.00:02:06
Dragging Constraints
Урок 196.00:02:31
Challenge: Constraints
Урок 197.00:02:15
Editing Constraints
Урок 198.00:05:39
Troubleshooting
Урок 199.00:01:48
Conclusion
Урок 200.00:02:24
Introduction
Урок 201.00:04:41
Constraint Inequalities
Урок 202.00:03:47
Constraint Priorities
Урок 203.00:04:33
Challenge: Constraints in Scroll Views
Урок 204.00:03:57
UILayoutGuide
Урок 205.00:06:28
NSLayoutAnchor
Урок 206.00:03:49
Challenge: Stack View Conversion
Урок 207.00:08:03
Visual Format Language
Урок 208.00:02:47
Challenge: Visual Format Language
Урок 209.00:00:23
Conclusion
Урок 210.00:01:03
Introduction
Урок 211.00:03:43
Size Classes
Урок 212.00:03:26
Challenge: Size Classes
Урок 213.00:03:37
Images and Other Properties
Урок 214.00:00:59
Challenge: Add Variations
Урок 215.00:07:09
Adaptive Layout Environment
Урок 216.00:04:00
Adaptive Presentation
Урок 217.00:01:44
Conclusion
Урок 218.00:04:08
Introduction
Урок 219.00:11:13
Getting Started
Урок 220.00:07:29
Customize Collection Views
Урок 221.00:03:28
Challenge: Selecting Cells
Урок 222.00:08:26
Handling Segues
Урок 223.00:02:33
Challenge: Segues in Code
Урок 224.00:07:24
Inserting Cells
Урок 225.00:11:31
Deleting Cells
Урок 226.00:06:08
Challenge: Deleting Cells
Урок 227.00:09:08
Cleaning up the UI
Урок 228.00:01:55
Conclusion
Урок 229.00:02:59
Introduction
Урок 230.00:03:20
Starter Project Review
Урок 231.00:06:40
Custom Cells
Урок 232.00:06:00
Challenge: Add a Label
Урок 233.00:09:43
Multiple Sections
Урок 234.00:08:13
Challenge: Enhance Section Headers
Урок 235.00:09:58
Subclassing Collection View Layout
Урок 236.00:06:45
Challenge: Cell Deletion Animation
Урок 237.00:03:41
Moving Cells
Урок 238.00:02:08
Conclusion
Урок 239.00:02:09
Introduction
Урок 240.00:08:14
Animating Constraint Constants
Урок 241.00:04:15
Challenge: Animate Position with Constants
Урок 242.00:04:57
Animating Dynamically Created Views
Урок 243.00:02:26
Challenge: Animate a View Offscreen
Урок 244.00:07:53
Animating Constraint Multipliers
Урок 245.00:02:40
Challenge: Toggle Constraints
Урок 246.00:05:39
Adding Springs
Урок 247.00:07:24
Using View Transitions
Урок 248.00:03:36
Challenge: Triggering View Transitions
Урок 249.00:00:35
Conclusion
Урок 250.00:01:47
Introduction
Урок 251.00:08:19
Animating View Properties
Урок 252.00:01:58
Challenge: Create a Fade Animation
Урок 253.00:07:32
Animating Transform Properties
Урок 254.00:02:17
Challenge: Add Variety
Урок 255.00:08:24
Concatenating Transforms
Урок 256.00:08:02
Animating with Keyframes
Урок 257.00:03:04
Challenge: Practice Keyframes
Урок 258.00:00:25
Conclusion
Урок 259.00:01:09
Introduction
Урок 260.00:04:35
Setting up the Animator
Урок 261.00:01:44
Challenge: Plan the Presentation Animation
Урок 262.00:07:44
Presentation Animation
Урок 263.00:01:36
Challenge: Plan the Dismiss Animation
Урок 264.00:06:56
Dismiss Animation
Урок 265.00:04:18
Adding Polish
Урок 266.00:01:11
Conclusion
Урок 267.00:03:05
Introduction
Урок 268.00:08:36
Creating Nib Files
Урок 269.00:08:28
Loading Nib Files
Урок 270.00:06:20
File's Owner
Урок 271.00:03:44
Challenge: File's Owner
Урок 272.00:04:53
Nib Outlets
Урок 273.00:05:13
UINib
Урок 274.00:02:20
Challenge: Reusing Nibs
Урок 275.00:01:10
Conclusion
Урок 276.00:01:01
Introduction
Урок 277.00:08:28
Parent Views
Урок 278.00:07:31
Controlling Parent Views
Урок 279.00:08:04
Scene Dock
Урок 280.00:03:07
Challenge: Scene Dock View
Урок 281.00:05:01
Multiple Scene Dock Views
Урок 282.00:02:22
Challenge: Scene Dock Outlet and Action
Урок 283.00:00:36
Conclusion
Урок 284.00:01:32
Introduction
Урок 285.00:05:32
View to Controller Conversion
Урок 286.00:05:39
Adding Child View Controllers
Урок 287.00:08:27
Embed Segues
Урок 288.00:05:19
Challenge: Container Subclasses
Урок 289.00:06:16
Storyboard References
Урок 290.00:06:37
View Models
Урок 291.00:02:51
Challenge: Tab Control
Урок 292.00:02:05
Conclusion
Урок 293.00:01:52
Introduction
Урок 294.00:04:02
UIPanGestureRecognizer
Урок 295.00:06:24
Deceleration
Урок 296.00:05:39
Pinch & Rotation
Урок 297.00:02:33
Challenge: Multiple Views
Урок 298.00:05:18
Programmatic UIGestureRecognizers
Урок 299.00:09:59
Custom UIGestureRecognizers
Урок 300.00:07:21
Introduction to simd
Урок 301.00:03:40
Challenge: simd
Урок 302.00:01:35
Conclusion
Урок 303.00:01:54
Introduction
Урок 304.00:01:45
Frames and Bounds
Урок 305.00:04:19
DIY Scroll View
Урок 306.00:02:39
Challenge: Update Frame and Bounds
Урок 307.00:04:45
Your First Scroll View
Урок 308.00:02:34
Challenge: Set Content Size
Урок 309.00:06:46
Zooming
Урок 310.00:03:30
Centering Content
Урок 311.00:08:47
Auto Layout
Урок 312.00:05:14
Challenge: Auto Layout
Урок 313.00:00:24
Conclusion
Урок 314.00:00:41
Introduction
Урок 315.00:03:04
Embedding Layouts
Урок 316.00:04:01
Nesting Scroll Views
Урок 317.00:04:06
Content Insets
Урок 318.00:04:26
Challenge: Nesting and Insets
Урок 319.00:07:37
Keyboard Insets
Урок 320.00:02:24
Challenge: Adding Keyboard Insets
Урок 321.00:08:17
Paging Scroll Views
Урок 322.00:00:59
Conclusion
Урок 323.00:05:28
Introduction
Урок 324.00:01:05
Starter Project
Урок 325.00:06:03
Getting Started
Урок 326.00:08:00
Managed Objects
Урок 327.00:03:46
Challenge: Adding Another Attribute
Урок 328.00:05:04
Attribute Types
Урок 329.00:04:52
Binary Data
Урок 330.00:05:52
Predicates
Урок 331.00:02:20
Filtering
Урок 332.00:03:58
Sorting
Урок 333.00:04:24
Challenge: Fixing Sorting Issues
Урок 334.00:00:49
Conclusion
Урок 335.00:01:20
Introduction
Урок 336.00:06:57
Fetched Results Controller
Урок 337.00:08:33
Displaying Data by Section
Урок 338.00:02:24
Challenge: Adding More Entities
Урок 339.00:05:00
Relationships
Урок 340.00:10:46
Relationships in Code
Урок 341.00:01:56
Delete Rules
Урок 342.00:03:27
Challenge: Deleting a Pet
Урок 343.00:04:00
Fetched Results Controller Delegate
Урок 344.00:04:23
Conclusion
Урок 345.00:04:38
Introduction
Урок 346.00:05:55
Understanding Concurrency
Урок 347.00:06:05
Concurrency in iOS
Урок 348.00:04:21
Challenge: Running Code on the Main Thread
Урок 349.00:04:36
Session Configuration
Урок 350.00:05:24
Session Tasks
Урок 351.00:04:16
Challenge: Creating a URL Session
Урок 352.00:01:30
Conclusion
Урок 353.00:00:45
Introduction
Урок 354.00:03:47
Making a Post Request
Урок 355.00:02:00
Priorities and Caching Policies
Урок 356.00:08:34
Uploading Data
Урок 357.00:03:55
Downloading Data
Урок 358.00:03:50
Challenge: Downloading a File
Урок 359.00:03:20
Background Sessions
Урок 360.00:10:18
Background Sessions in Action
Урок 361.00:01:29
Conclusion
Урок 362.00:00:54
Introduction
Урок 363.00:03:27
Authentication Options
Урок 364.00:06:26
Authentication With URLSession
Урок 365.00:05:52
Working With Cookies
Урок 366.00:02:52
Challenge: Print Out Cookies From Request
Урок 367.00:06:10
App Security Transport
Урок 368.00:02:16
Conclusion
Урок 369.00:13:37
Introduction
Урок 370.00:04:24
iTunes Connect
Урок 371.00:09:47
Submitting Your App
Урок 372.00:04:44
Introduction
Урок 373.00:10:58
Keyboard Shortcuts
Урок 374.00:11:56
Preferences and Editing
Урок 375.00:15:22
Workspaces and Frameworks
Урок 376.00:14:40
Schemes and Targets
Урок 377.00:11:52
Storyboards and Visual Debugging
Урок 378.00:13:56
Breakpoints
Урок 379.00:14:25
Code Snippets
Урок 380.00:12:46
Behaviors
Урок 381.00:02:54
Conclusion
Урок 382.00:01:00
Introduction
Урок 383.00:03:13
Man Pages
Урок 384.00:04:34
Navigation
Урок 385.00:04:24
Creation and Destruction
Урок 386.00:03:51
Creation and Destruction: Hierarchy Challenge
Урок 387.00:04:47
Find
Урок 388.00:07:56
Searching Inside Files
Урок 389.00:04:39
Challenge: Sorting
Урок 390.00:00:30
Conclusion
Урок 391.00:00:44
Introduction
Урок 392.00:05:47
Customizing Bash
Урок 393.00:03:27
Diff
Урок 394.00:00:57
Challenge: Undoing a Bad Patch
Урок 395.00:04:15
File System
Урок 396.00:04:18
File Permissions
Урок 397.00:05:34
Bash Scripting: Tests and Ifs
Урок 398.00:07:01
Bash Scripting: Loops and Switches
Урок 399.00:01:59
Bash Scripting: Functions
Урок 400.00:06:27
Automating Your Job
Урок 401.00:03:02
Challenge: Automating Your Job - Refactoring
Урок 402.00:00:58
Conclusion
Урок 403.00:08:54
Introduction
Урок 404.00:09:50
Cloning a Repo
Урок 405.00:08:39
Creating a Repo
Урок 406.00:09:18
Creating a Remote
Урок 407.00:07:10
Committing Changes
Урок 408.00:12:43
The Staging Area
Урок 409.00:12:03
Ignoring Files
Урок 410.00:08:49
Viewing History
Урок 411.00:09:43
Branching
Урок 412.00:10:15
Merging
Урок 413.00:11:56
Syncing with a Remote
Урок 414.00:10:44
Pull Requests
Урок 415.00:06:23
Implementation of Git
Урок 416.00:09:23
Merge Conflicts
Урок 417.00:08:32
Stashes
Урок 418.00:05:50
Aliases
Урок 419.00:10:50
Rebase: A Merge Alternative
Урок 420.00:11:19
Rebase: Rewriting History
Урок 421.00:10:46
Gitignore After the Fact
Урок 422.00:09:48
Cherry Picking
Урок 423.00:13:49
Filter Branch
Урок 424.00:11:29
Many Faces of Undo
Урок 425.00:10:17
GUIs: GitK
Урок 426.00:09:09
GUIs: SourceTree
Урок 427.00:10:48
GUIs: GitUp
Урок 428.00:03:09
Conclusion
Урок 429.00:04:50
Introduction
Урок 430.00:09:54
Vector Basics with Sketch
Урок 431.00:07:28
Challenge: Create a Wireframe
Урок 432.00:09:58
Composing Shapes
Урок 433.00:09:58
Challenge: Boolean Operations
Урок 434.00:09:30
Bezier Curves
Урок 435.00:06:37
Challenge: Tracing Complex Shapes
Урок 436.00:08:07
Text and Typography
Урок 437.00:00:47
Conclusion
Урок 438.00:01:36
Introduction
Урок 439.00:02:51
Raster Basics
Урок 440.00:09:41
Resolution Dependence
Урок 441.00:02:54
Challenge: Resolution
Урок 442.00:11:24
Masks and Compositing
Урок 443.00:08:06
Challenge: Vector Masks
Урок 444.00:00:47
Conclusion
Урок 445.00:00:56
Introduction
Урок 446.00:09:07
Working with Color
Урок 447.00:04:14
Challenge: Contrast and Accessibility
Урок 448.00:07:46
Color Spaces
Урок 449.00:03:28
Image Asset Formats
Урок 450.00:07:07
Challenge: Exporting Image Assets
Урок 451.00:04:15
Conclusion
Урок 452.00:02:18
Course Conclusion