Complete iOS 16 Developer with swift UI and 10 apps
- Descrição
- Currículo
- FAQ
- Revisões
Welcome to complete iOS 16 developer course.
A course that does not just add a few sections of Swift UI rather teaches you complete iOS development fully in swift UI. We truly understand that it can be frustrating to learn from resources that just add a few sections and call it a new course. This course is not like that.
We have designed and recorded this course entirely on the new Swift UI.
We will start with the basics of programming with a swift programming language. We will go through concepts of programming like variables, operators, range, optional binding, forced unwrapping, control flows, functions, class, structs, protocols and error handling. Once the programming basics are complete we will start with building apps. There is nothing like learning while building apps. Each app is designed and planned in such a way that it teaches you 1 concept at a time.
-
Profile app
This app will teach you the basics of creating apps and will make you familiar with ZStack, HStack and VStack. Within very 1st app you will learn to design beautiful apps.
-
Slot machine
This app will teach you about custom shape design in iOS. We will learn about the concept of rawValue and creating any shape that you want. Again a beautiful app with some logic as well.
-
Calculator app
Calculator seems really simple to people but it is not. This calculator is full of animations and tricks for designing a layout. How to calculate screen dimensions and more.
-
Splash screen
Although this app is small in implementation, but it is very much fun. In this app you will learn about creating a splash screen that usually acts as a branding screen for most apps.
-
Shopping app
This app focuses more on the UI part. With a beautiful UI, we will learn about creating models and travelling of data between multiple screens. Horizontal scroll view and Vertical scrolling is also covered in this app.
-
Linkedin UI Clone
Linkedin has got one of the cleanest and most user friendly apps. Building an app like this teaches you a lot about clear design and gives you confidence that you can also build a complex app.
-
Todo app – User defaults
Todo apps like everyone can do it but don’t take it easy, it’s not that easy. Todo app teaches you about the CRUD operations and that too with UserDefaults. We will also learn about app state management in this app.
-
API handling with Pokemon app
Handling API is one of the most important jobs as a developer and during your journey as an iOS developer you will be handling a ton of API. In this section we will learn about making a web call to API, handling clean response, handling dirty response and creating a model based on response. Further there will be a small assignment in this section.
Currently we are rolling out this course with these apps. As I get more time, I will surely add more apps to this course.
-
1Introduction to iOS development and prerequisiteVídeo Aula
A welcome video to the complete iOS developer course
-
2A tour of XCodeVídeo Aula
Let's start our journey with a wonderful tour of XCode.
-
3Hello World in SwiftVídeo Aula
It's very important to greet someone when we meet, let's say a big Hello to Swift Programming World.
A Hello World is a simple program that prints Hello, World! on the screen.
-
4A bit of history of swift with Objective CVídeo Aula
Every great thing in the World has a history. Let's see what's Swift History was.
-
5Code filesTexto
All code files are available here
-
6Variables and Constants in SwiftVídeo Aula
In this tutorial, you will learn about variables and constants in Swift.
In programming, a variable is a container (storage area) to hold data.
A constant is a special type of variable whose value cannot be changed.
-
7Operators and Range in SwiftVídeo Aula
In this tutorial, you will learn about Operators and Range in Swift.
An Operator is a symbol that tells the compiler to perform specific mathematical or logical manipulations.
Swift includes two Range operators, which are shortcuts for expressing a range of values.
-
8String and interpolationVídeo Aula
In this tutorial, you will learn about String and Interpolation.
A String is a collection of values of character type.
String Interpolation is a way to construct a new String value from a mix of constants, variables, literals, and expressions by including their values inside a string literal.
-
9Methods in StringsVídeo Aula
In this tutorial, you will learn about Methods in Strings.
Strings can access different types of methods in swift.
-
10A caution in type conversionVídeo Aula
In this tutorial, you will learn about type conversion.
Type Conversion is a way to check the type of an instance, or to treat that instance as a different superclass or subclass from somewhere else in its own class hierarchy.
In Swift it is implemented with the is and as operators.
-
11Can user pay | Logical OperatorsVídeo Aula
In this tutorial, you will learn about Logical Operators.
There are three logical Operators in swift and, or and not.
-
12Optional binding and forced unwrappingVídeo Aula
In this tutorial, you will learn about optional binding and forced unwrapping.
Optionals are a basic feature of Swift, and allow values to take either a value of .some or .none.
This is great, but sometimes leads programmers to force unwrap an optional by using an exclamation mark at the end of the variable which tends to crash the program sometimes.
-
13We missed reading the docsVídeo Aula
Reading books and watching tutorials is not enough, swift gives you a wonderful feature of Quick Help, which helps you to know about the topic in depth.
-
14Array and methods in Array in swiftVídeo Aula
In this tutorial, you will learn about array and methods in array.
Arrays are used to store ordered lists of values of the same type.
Arrays can be mutable and immutable depending upon the type they are defined as.
-
15Dictionary in depth in swiftVídeo Aula
In this tutorial, you will learn about details in dictionary.
Dictionaries are used to store unordered lists of values of the same type.
Dictionaries use unique identifier known as a key to store a value which later can be referenced and looked up through the same key.
A dictionary key can be either an integer or a string without a restriction, but it should be unique within a dictionary.
Dictionaries can be mutable and immutable depending upon the type they are defined as
-
16Sets in swift programmingVídeo Aula
In this tutorial, you will learn about sets in swift.
Sets are used to store distinct values of same types but they don’t have definite ordering as arrays have.
Sets only allow distinct values.
-
17Tuples in swiftVídeo Aula
In this tutorial, you will learn about tuples in swift.
Tuples are used to group multiple values in a single compound Value.
The values in a tuple can be of any type, and do not need to be of same type.
you can create tuples from as many values as you want and from any number of different data types.
-
18If else and conditional unwrappingVídeo Aula
In this tutorial, you will learn about if else and conditional statements
The if statement has a single if condition. It executes a set of statements only if that condition is true.
The if statement can provide an alternative set of statements, known as an else clause, for situations when the if condition is false.
-
19Control flow statementsVídeo Aula
In this tutorial, you will learn about control flow statements
this tutorial include while loops to perform a task multiple times
if, guard, and switch statements to execute different branches of code based on certain conditions
and statements such as break and continue to transfer the flow of execution to another point in your code.
It also provides a for-in loop that makes it easy to iterate over arrays, dictionaries, ranges, strings, and other sequences.
-
20Functions in swift programming languageVídeo Aula
In this tutorial, you will learn about functions in swift
Functions are self-contained chunks of code that perform a specific task.
Every function in Swift has a type, consisting of the function’s parameter types and return type.
-
21In depth of Closure, autoclosure and escapingVídeo Aula
In this tutorial, you will learn about closures in detail
Closures are self-contained blocks of functionality that can be passed around and used in your code.
Closures can capture and store references to any constants and variables from the context in which they’re defined.
-
22Enums and indirect enumsVídeo Aula
In this tutorial, you will learn about enumeration in swift
An enumeration defines a common type for a group of related values and enables you to work with those values in a type-safe way within your code.
Enumerations can also define initialisers to provide an initial case value;
can be extended to expand their functionality beyond their original implementation;
and can conform to protocols to provide standard functionality.
-
23Structs in swiftVídeo Aula
In this tutorial, you will learn about structures in swift
A Structure is used to store variables of different data types.
In Structure the variable values are copied and passed in subsequent codes by returning a copy of the old values so that the values cannot be altered.
Structure need not require implementation files and interface.
Structure allows us to create a single file and to extend its interface automatically to other blocks
-
24Structs Vs ClassVídeo Aula
In this tutorial, you will learn about difference between structures and Classes in swift
Classes have additional capabilities that structures don’t have:
Inheritance enables one class to inherit the characteristics of another.
Type casting enables you to check and interpret the type of a class instance at runtime.
Deinitializers enable an instance of a class to free up any resources it has assigned.
Reference counting allows more than one reference to a class instance.
-
25Classes and reference typeVídeo Aula
In this tutorial, you will learn about classes and reference types in swift
Classes in Swift are building blocks of flexible constructs.
Similar to constants, variables and functions the user can define class properties and methods.
Swift provides us the functionality that while declaring classes the users need not create interfaces or implementation files.
Swift allows us to create classes as a single file and the external interfaces will be created by default once the classes are initialised.
-
26Properties in swiftVídeo Aula
In this tutorial, you will learn about properties in swift
Swift language provides properties for class, enumeration or structure to associate values.
Properties can be further classified into Stored properties and Computed properties.
Stored Property :
Store constant and variable values as instance.
Provided by classes and structures.
Computed Property :
Calculate a value rather than storing the value.
Provided by classes, enumerations and structures
-
27Methods in swiftVídeo Aula
In this tutorial, you will learn about methods in swift
In Swift language Functions associated with particular types are referred to as Methods.
In Objective C Classes are used to define methods, whereas Swift language provides the user flexibility to have methods for Classes, Structures and Enumerations.
-
28Inheritance in swiftVídeo Aula
In this tutorial, you will learn about Inheritance in swift
Inheritance allows us to create a new class from an existing class.
The new class that is created is known as subclass (child or derived class) and
The existing class from which the child class is derived is known as superclass (parent or base class).
-
29init in depth in swiftVídeo Aula
In this tutorial, you will learn about init method in depth
You can provide initialization parameters as part of an initializer’s definition, to define the types and names of values that customize the initialization process.
Initializers don’t have an identifying function name before their parentheses in the way that functions and methods do.
-
30Deinit in swiftVídeo Aula
In this tutorial, you will learn about Deinit method in swift
A deinitializer is called immediately before a class instance is deallocated.
You write deinitializers with the deinit keyword, similar to how initializers are written with the init keyword.
Deinitializers are only available on class types.
-
31Error handling in swiftVídeo Aula
In this tutorial, you will learn about error handling in swift
Error handling is the process of responding to and recovering from error conditions in your program.
Swift provides first-class support for throwing, catching, propagating, and manipulating recoverable errors at runtime.
Error handling is the process of responding to and recovering from error conditions in your program. Swift provides first-class support for throwing, catching, propagating, and manipulating recoverable errors at runtime
-
3201 Zstack, HStack and VStackVídeo Aula
In this tutorial, you will learn about Zstack, HStack and VStack
VStack, a vertical stack, which shows views in a top-to-bottom list
HStack, a horizontal stack, which shows views in a left-to-right list
ZStack, a depth-based stack, which shows views in a back-to-front list
-
33Create a new app in XCodeVídeo Aula
In this tutorial, you will learn about how to create a new app in Xcode from scratch.
-
34Getting started with Zstack and VStackVídeo Aula
In this tutorial, you will learn about designing app UI using Zstack, which is a depth-based stack and Vstack, which is a vertical stack in detail.
Zstack allows overlapping its child views on top of each other. i.e. shows views in a back-to-front list.
Properties of ZStack: Alignment.
Alignment property is optional.
-
3504 Moving into VStackVídeo Aula
In this tutorial, you will learn about VStaack in details.
Allows arranging its child views in a vertical line i.e. in a top-to-bottom list.
Two properties of VStack: Alignment and Spacing.
Both the properties are optional.
Alignment: .leading, .center , .trailing
-
36Nested Stacks in swift UIVídeo Aula
In this tutorial, you will learn about nesting of stacks in swiftUI
The real use of stacks in SwiftUI lies in combining them.
You can build complex views pretty quickly by combinations of VStack, HStack, and ZStack.
-
37Finishing our first appVídeo Aula
In this tutorial, you will finish building your very first app. Stay tuned and continue making more exciting apps.
-
38Theory behind custom shapes in iOSVídeo Aula
This tutorial takes you through the process of creating a hexagon shape by combining paths and shapes, which you then overlay with another shape that represents the location.
SwiftUI enables custom drawing with two subtly different types: paths and shapes.
-
39From figma to XCode shapeVídeo Aula
In this tutorial, you will learn about how to use figma and how to import shapes from figma to XCode
A path is a series of drawing instructions, all using absolute coordinates.
A shape has no idea where it will be used or how big it will be used, but instead will be asked to draw itself inside a given rectangle.
SwiftUI implements Shape as a protocol with a single required method.
-
40State, rawValue and IdentifiableVídeo Aula
In this tutorial, you will learn about State, rawValues and Identifiable in swift
SwiftUI manages the storage of a property that you declare as state.
When the value changes, SwiftUI updates the parts of the view hierarchy that depend on the value.
Use the Identifiable protocol to provide a stable notion of identity to a class or value type.
Identifiable leaves the duration and scope of the identity unspecified.
As an alternative to associated values, enumeration cases can come prepopulated with default values (called raw values), which are all of the same type.
Raw values can be strings, characters, or any of the integer or floating-point number types.
Each raw value must be unique within its enumeration declaration.
-
41More on State and HStackVídeo Aula
In this tutorial, you will learn about state and Hstack
Hstack allows arranging its child views in a horizontal line i.e. in a left-to-right list.
Two properties of HStack: Alignment and Spacing.
Both the properties are optional.
Alignment:
.top – “stick” views to the top of the stack
.bottom – stick ’em to the bottom of the stack
.center – align subviews in the middle (default)
.firstTextBaseline and .lastTextBaseline
-
42Getting button in our appVídeo Aula
In this tutorial, you will learn about creating a button in swift
You create a button by providing an action and a label.
The action is either a method or closure property that does something when a user clicks or taps the button.
The label is a view that describes the button’s action— for example, by showing text, an icon, or both.
-
43Finishing up slot machine gameVídeo Aula
In this tutorial, your slot machine app will be completed. Kudos to the great work, keep going.
-
44RawValue in swiftVídeo Aula
In this tutorial, you will learn about raw values in swift
Raw values are for when every case in the enumeration is represented by a compile-time-set value.
If you define an enumeration with a raw-value type,
the enumeration automatically receives an initializer that takes a value of the raw value’s type (as a parameter called rawValue) and returns either an enumeration case or nil.
You can use this initializer to try to create a new instance of the enumeration.
-
45Starting a calculator project - assetsVídeo Aula
In this tutorial, you will create a very basic yet a very exciting project i.e calculator.
This project has a wonderful UI design waiting for you.
It will perform all the basic functions of a calculator - add, subtract, multiply and divide.
-
46Defining Model for calculatorVídeo Aula
In this tutorial, you will learn about model layer of MVVM architecture
The model layer is responsible for the business logic of the application.
It manages the application state.
This also includes reading and writing data, persisting application state, and it may even include tasks related to data management, such as networking and data validation.
-
47Getting keys sorted out for calculatorVídeo Aula
In this tutorial, you will learn about view layer of MVVM architecture
SwiftUI builds the view hierarchy of a View by calling the body property to initialise its children.
It will then call the body property of each of those children, which may then initialise their own children, which have their body property called, and so on.
-
48Animation in swift uiVídeo Aula
In this tutorial, you will learn about animation in swiftUI
SwiftUI has built-in support for animations with its animation() modifier.
To use this modifier, place it after any other modifiers for your views, tell it what kind of animation you want, and also make sure you attach it to a particular value so the animation triggers only when that specific value changes.
When using SwiftUI, you can individually animate changes to views, or to a view’s state, no matter where the effects are.
SwiftUI handles all the complexity of these combined, overlapping, and interruptible animations for you.
-
49Adding buttons for calculatorVídeo Aula
In this tutorial, you will add all the buttons and keys to your calculator app
A button initiates or triggers an action when pressed.
In SwiftUI, it is much easier to customize a button compared to its UIButton counterpart.
-
50Learn to calculate element width and heightVídeo Aula
In this tutorial, you will learn about calculating width and height of the elements using UIScreen.
A UIScreen object defines the properties associated with a hardware-based display.
iOS devices have a main screen and zero or more attached screens.
Use this class to obtain screen objects for each display attached to the device.
UIScreen.main.bounds returns the CGRect(origin: CGPoint, size: CGSize) for all devices.
-
51Loading up views on home screenVídeo Aula
In this tutorial, you will learn how to combine all the views and elements and display it on the main screen of the app.
-
52Finishing up the calculator logic partVídeo Aula
Let's finish the calculator project in this video
-
53Getting started with Splash screenVídeo Aula
In this tutorial, you will learn about Splash Screen
This is the first screen you see when launching an application.
Usually, splash screen is an image covering the entire screen and disappears after the main screen is loaded.
-
54Finishing up a splash screenVídeo Aula
In this tutorial, you will learn about animating the splash screen and running the task on main thread .
-
55Demo of Shopping app with NavigationVídeo Aula
In this tutorial, you will learn about another exciting project i.e Shopping App
This project mainly focusses on UI and design of the app.
-
56Importing all assets of fruitsVídeo Aula
In this tutorial, you will learn about adding all the assets which are required in the app.
-
57Building on boarding screen with navigationVídeo Aula
In this tutorial, you will learn about creating the very first screen of the app.
You will learn about creating the onboarding screen.
also, Navigating it through the next screen or main app
-
58Models for fruit and near youVídeo Aula
In this tutorial, you will learn about creating the models required in the app.
This includes reading and writing data, persisting application state, and it may even include tasks related to data management, such as networking and data validation.
we will create models for storing data about fruits and stored near by.
-
59Handling the fruit cardVídeo Aula
In this tutorial, you will learn about creating view for the fruits
Create a card view to display the fruit image , fruit title and its cost.
-
60Horizontal scroll viewVídeo Aula
In this tutorial, you will learn about horizontal scroll view
Horizontal scroll view (also known as horizontal list) that is placed along the top of the screen.
It’s a simplified version which helps you scroll through all the fruit cards.
-
61Passing value from one screen to anotherVídeo Aula
In this tutorial, you will learn about sharing data from one screen to another
By creating simply a state variable and storing data in it.
-
62Design detail view part 1Vídeo Aula
In this tutorial, you will learn about creating a screen to display all the details of the fruit.
In this section you will learn to create custom Rounded Rectangle Shape using path.
Also how to clip any image in desired form.
-
63Counter in detail screenVídeo Aula
In this tutorial, you will learn about the counter in the details screen .
It is a custom counter that you see in many shopping apps.
-
64Vertical scroll viewVídeo Aula
In this tutorial, you will learn about vertical Scroll View.
vertical scroll displays the items in top to bottom manner.
It displays all the nearby places in the list form.
-
65Assemble fruit cart appVídeo Aula
In this tutorial, you will learn about combining all the different views and cards together.
Assemble all the views and cards together on home Screen.
Navigate the whole app properly.
-
66Resolving minor UI issueVídeo Aula
In this tutorial, resolve all the minor issues in the app and complete another complex yet wonderful app.
-
67What we will build - LinkedinVídeo Aula
In this tutorial, you will learn about next project.
This project is a clone of very popular app named Linkedin.
This project is to boost up your confidence for creating any type of UI .
-
68Search bar componentVídeo Aula
In this tutorial, you will learn about creating small components.
Components are generally created for multiple uses.
In this app we create search bar component as it is used in multiple screens.
-
69Models in linkedin UIVídeo Aula
In this tutorial, you will create models for the Linkedin UI.
Post Model will hold the details and data of the Post screen.
Network Model will hold all the details and data of the Network Screen.
-
70Each connection requestVídeo Aula
In this tutorial, you will learn about designing single connection request.
-
71Building my Network screenVídeo Aula
In this tutorial, you will learn about Designing the whole Network Screen.
Combine all the components views and display in Network screen.
-
72Making home cardsVídeo Aula
In this tutorial, you will learn about creating the Post View for home screen
-
73Home screen top viewVídeo Aula
In this tutorial, you will learn about creating the top view of the home screen
-
74Building Home ScreenVídeo Aula
In this tutorial, you will learn about connecting all the views together and displaying it on home screen.
-
75Launch linkedin UI in simulatorVídeo Aula
In this tutorial, you will learn about creating a custom Tab View and launching the app on simulator.
A Tab view helps you navigate through different screens easily
Launch the app on Simulator and with that you have completed another exciting app.
