
Course Details
- Practical approach: Grasp core Swift concepts and language fundamentals and learn how to apply them effectively in real-world scenarios.
- Proven three-step approach: Concept overviews, hands-on exercises, and critical thinking exercises to solidify your understanding of Swift.
- Build confidence: Design programs, test your comprehension, and gain programming expertise through hands-on experience.
- Nurture creativity and innovation: Embark on an exciting personal project, continuously refine and debug it, and bring your ideas to life.
- Showcase your work: Delve into GitHub repositories, learn effective showcasing techniques, and build a compelling portfolio.
- Gain invaluable skills: Document your progress, embrace Agile Project management practices, and gain experience in iterative development and project management methodologies.
- Culminate your journey: Showcase your software development project through a captivating final presentation, demonstrating functional and innovative Swift applications.
- Comprehensive skillset: Master debugging, version control, project management, and object-oriented programming.
- Stand out in the job market: Build a compelling portfolio and demonstrate your proficiency to potential employers.
- Unlock endless possibilities: Whether you aspire to be a professional app developer or simply explore coding, this course equips you with the necessary knowledge and skills to excel in iOS app development.
- Enroll today: Join Introduction To iOS Programming With Swift and embark on an exciting journey of discovery and growth!
Lessons
GettingStarted Learning ObjectivesKnow how to contact your instructorHow to turn in assignmentsUnderstand the role your mindset plays in achieving your goal to become an App Developer Understand the role of your instructor as a coach and mentor.Understand the job of an App DeveloperLearn ..
GettingStarted Contacting The Instructor / Turning In AssignmentsYou can email me at bill@waveridertradingtechnologies.com. I will respond within 24 hours.You will learn how to create a Repository in a future lesson. You will upload all of your assignments to your repo and will invite me t..
GettingStarted Closed Mindset/Growth MindsetResearch has found that the human mind has an incredible capability to accomplish any goal it believes in. Most people note "That little voice inside my head" as either a great motivator or de-motivator. Behavioral scientist and psychologists hav..
GettingStarted Coach vs PlayerIn this class I will play the role of the coach and you will play the role of the player. You will find during this course when you bring issues to me I may not always have the answer. What I will have is a variety of suggestions for finding the answer to your..
GettingStarted Best Jobs In AmericaThis is one of the best paying, most interesting, and in demand jobs in America today. Click on the link below to read an article in CNN Money about becoming a mobile app developer.CNN Money Article <- Click MePlay Me..
GettingStarted Introduce YourselfRecord a brief video introducing yourself following the instructions below. Tell us a little about yourself and why you are taking this course. Create a Google Drive, post this video to it and share it with me so I can give you feedback on your work in this..
Lecture VideosNo Videos For This Module..
GettingStarted Module ObjectivesBy the end of this module you will be able to:Understand a little about the size and growth of the smartphone marketLearn about everything Apple announced at the last developer's conferenceSetup Xcode on your SystemDevelop your first Swift PlaygroundWatch th..
GettingStarted The Smartphone MarketThe smartphone market is one of the largest and fastest-growing markets in the high-tech world. As a result of this growth, there are countless career opportunities available.Find more statistics at Statista..
GettingStarted World Wide Development ConferenceEach summer Apple Computer hosts a worldwide developer conference where all the new software upgrades and features are presented to the audience. There are breakout sessions and labs on specific topics. As a budding developer, it is your job ..
GettingStarted Xcode Install / Hello World LabWhat are the first things you're going to have to be able to do is get Xcode installed on your system. Do you need to have either an Apple desktop or a laptop, in order to install Xcode. Watch the videos below and follow the links to get Xcode ..
Lecture VideosNo Videos For This Module..
Version Control/Agile Project ManagementModule ObjectivesBy the end of this module you will be able to:Understand what a repository is and how professional developers use it to work on a project as a teamUnderstand what Agile project Management is and how to use it to manage a software dev..
Version Control/Agile Project ManagementGitHubIn the professional developer world, something called a repository is used as a way to store and share your work. A repository is basically a shared hard drive in the cloud that allows teams of people to work on large projects. Watch this video..
Version Control/Agile Project ManagementAgile Project ManagementThe origins of project management go back to the World Wars and the Manhattan Project. Watch the videos below to understand a little bit about how Agile Project Management is used to manage complex team-based software developm..
Version Control/Agile Project ManagementLAB (Scrums & Sprints)The word Scrum is derived from a game called Rugby. Rugby is a very popular sport in which the objective is to move the ball as a team down the field. This is also a perfect analogy for what is required in an Agile Project. ..
PlaygroundsLAB (Playground Basics)Playgrounds were designed by Apple as a place where you could quickly prototype your app ideas in a proof of concept environment that gives you instant feedback.Download the zip file below and complete this playground which takes you through some of the ba..
PlaygroundsLAB (Commit Hello World)Follow the instructions in the video below to commit and add your Hello World app to your newly created repository.Use the following naming convention to make yours unique. App name followed by your first name and last initial.Example -> HelloWorld_Bil..
Lecture VideosIntro To Github, Agile & Playgrounds..
Data TypesLearning ObjectivesBy the end of this module you will be able to:Understand what the different data types are and how to use themUnderstand the proper syntax to define variables and constants in SwiftComplete a Lab which walks you through the basics of constants and variablesComp..
Data TypesVariables & ConstantsVariables and Constants are the most basic building block upon which you start your journey to learn to code.They are a place to hold your "coding stuff".READ MEÂ To Learn More About Variables And Constants..
Data TypesLAB (Variables & Constants)Variables and Constants are like containers to put your coding stuff in. Download the playground below and learn all about these concepts in a hands on approach. Commit the completed playground to your repository and submit your link for credit.Cons..
Data TypesCritical Thinking ExerciseThis will be your first attempt at developing a skill I hope becomes a very enjoyable and gratifying experience for you, the art of Design! You accomplish this by applying knowledge recently acquired to create. So let's get started!1) Design a program th..
Data TypesProject PlanFor this class I ask that students come up with an idea for a project. The purpose of this exercise is to get you to think on a scale similar to what you might encounter as a software engineer in the business environment. There are some limitations to what can be done..
Lecture VideosData Types - Variables & Constants..
Basic OperatorsLearning ObjectivesBy the end of this module you will be able to:Understand what operators are and how to use themUnderstand the proper syntax to use when using operators in SwiftComplete a Lab which walks you through the basics of operatorsComplete a Critical Thinking Exerc..
Basic OperatorsBasic OperatorsSooner or later you're going to need to use operators to figure out the solution to some problem. Whether that's adding a couple of numbers performing complex calculus equations, a firm understanding of how operators work and Swift is essential. Watch the vide..
Basic OperatorsLAB - (Basic Operators)Create a calculator playground and break it into 3 sections. The top section defines all your input variables. The middle section defines all the operations. The bottom section prints all the results to the screen. Have the calculator perform the follo..
Basic OperatorsCritical Thinking ExerciseCome up with a program idea that uses what you learned about operators creatively!Upload the app you just created to your repository and provide me a link...
Project IdeaProject Idea PresentationRecord a video of you presenting your project plan and post it in your shared Google Drive...
Lecture VideosOperators..
Flow ControlLearning ObjectivesUnderstand what Flow Control means in programmingKnow and use a few of the Apple keyboard shortcutsKnow what a Swift If Statement is and how to use itKnow what a Swift While Statement is and how to use itKnow what a Swift Switch statement is and how to use it..
Flow ControlThe Apple Keyboard/Pomodoro TechniqueCLICK ME to learn all the Apple Keyboard ShortcutsWatch this video to learn a technique that will turbocharge your coding productivity!..
The IF StatementThe IF StatementAn If statements is a tool you can use to make decisions within your code. Watch the video below to learn more about this powerful building block.CLICK ME to learn more about the IF Statement..
The While LoopThe While LoopThe While command allows you to suspend some type of action until something changes. Watch the video below to learn more about this powerful building block.CLICK ME to learn more about While Loops..
The Switch StatementThe Switch StatementThe switch statement allows you to select different behaviors based on the value of an input. . Watch the video below to learn more about this powerful building blockCLICK ME to learn more about the Switch Statement..
LAB (Decision Making)LAB (Decision Making)Download this playground and get some practice and experience working with flow control and decision making.Upload a link to your repository.Making Decisions..
Recipe For A ClockRecipe For A ClockThe purpose of this exercise is to get you used to planning your code before starting to code. I use the analogy of recipe because most people at least have some basic skills in cooking. These skills are very much the same that you use when you start to ..
Critical Thinking ExerciseBuild A ClockDesign a Playground that simulates a working clock that keeps track of hours minutes and seconds..Upload the app you just created to your repository...
Lecture VideosFlow Control..
CollectionsCollectionsBy the end of this module you will be able to:Understand what Arrays are and how they are used.Understand what Dictionaries are and some of their benefits.Understand what Tuples are and when you might use them.Complete a lab on each of these topics.Complete a Critical..
CollectionsArraysWatch the video below to learn about arraysCLICK ME to learn more about Arrays..
CollectionsDictionariesWatch the video below to learn about DictionariesCLICK ME to learn more about Dictionaries..
CollectionsTuplesWatch the video below to learn more about TuplesCLICK ME To learn more about Tuples..
CollectionsLAB - (Arrays)Download the exercises and complete them. When you are finished upload them to your repository and provide me a link.Arrays.playground..
CollectionsLAB -(Dictionaries)Download the exercise and complete it. When you are finished upload them to your repository and provide me a link.Dictionaries.playground..
CollectionsLAB - (Tuples)Download the exercise and complete it. When you are finished upload them to your repository and provide me a link.Tuples.playground..
CollectionsRecipe For A Hockey TeamProvide a recipe with the ingredients and instructions to complete the following Blackhawks lab...
CollectionsCritical Thinking Exercise - The Chicago BlackhawksCLICK ME For link to Chicago Blackhawk dataCreate a dictionary of team members using their number as the key valueCreate as many other arrays as needed to store the rest of the infoUsing control flow statements do the following;..
Lecture VideosCollections..
FunctionsModule ObjectivesBy the end of this module you will be able to:Understand what Functions are and the 6 easy steps to define them.Understand what Closures are and the steps to define them..Complete a Practice Exercise on functions.Complete a Lab on functions.Complete a Critical Thi..
FunctionsIn 6 StepsFunctions are self-contained chunks of codethat perform a specific task. Here is a function to decide the type of beer you like.• The 6 step program1) Keywordfunc2) Name your functionfunc myBeerType3) Decide if you need parametersfunc myBeerType (whatiLike:)4) Decide t..
ClosuresIn 3 StepsClosures are self-contained blocks of functionality that can be passed around and used in your codeClosures can capture and store references to any constants and variables from the context in which they are defined.Closures can be stored in variables or constants and used..
FunctionsHow To Video..
ClosuresHow To Video..
FunctionsPlaygroundDownload the playground below and complete it. Provide me with a link to your repositoryFunctions.playground..
ClosuresPlaygroundDownload the Closures Playground below and complete it. Upload it to your repository and provide me with a link.Closures.playground..
Critical Thinking ExerciseBill's Burgers RecipeUsing Enumerations, Structures, and Optionals, build a playground to prototype an interactive menu for my new gourmet burger bistro.Upload it to your repository..
PracticePracticePractice makes perfect so here is some more. Upload it to your repository and provide me with a link.Functions-1.playground..
LABFibonacci1) Write a function that calculates and displays all the Fibonacci numbers from 0 to 10002) Upload it to your repository and provide me with a link...
CRITICAL THINKING EXERCISEDESIGN A PLAYGROUND1) Write a playground to do something useful for you in your daily life that contains the following items;* A function* A closure2) Upload your code to Git and provide me a link..
Lecture VideosFunctions..
Optionals Structures EnumerationsObjectivesBy the end of this module you will be able to:Understand what Optionals are and when to use them.Understand what Enumerations are and the steps to define them.Understand what Structures are and the steps to define them.Complete a Practice Exercise..
OptionalsWhat are Optionals?Click LINK to learn more about Optionals..
 EnumerationsWhat are Enumerations?Click LINK to learn more about Enumerations...
 StructuresWhat are Structures?Click LINK to learn more about Structures..
Values vs ReferenceAn important concept to understand!..
Optionals PlaygroundOptionals PlaygroundDownload and complete the playground below. Upload it to your repositoryOptionals.playground..
Enumerations PlaygroundEnumerations PlaygroundDownload and complete the playground below. Upload it into your repository.Enums.playground..
Structures PlaygroundStructures PlaygroundDownload and complete the playground below. Upload it to your repositoryStructs.playground..
Critical Thinking ExerciseBill's Burgers RecipeCreate a recipe for a playground that tells you how to make a few different types of burgers. Use what you have learned about Optionals, Enumerations, and Structures as part of the program.Upload it to your repository..
Lecture VideosOptionals Structures Enumerations..
Object Oriented ProgrammingObjectivesBy the end of this module you will be able to:Understand the concept of Object Oriented ProgrammingUnderstand how to design a ClassComplete a Playground designed to give you experience with designing a ClassComplete a Critical Thinking Exercise giving y..
Object Oriented ProgrammingWhat is Object Oriented ProgrammingA software developers’s job is to to translate attributes and behaviors of the real-world into commands understood by a computer.A class is a template that defines attributes and behaviors of a program...
Class DesignClass Design5 STEPS Give your Class a Name Define your properties and variables (Attributes) Initialize your properties and variables (Attributes)Define your functions and methods (Behaviors)Instantiate your classClick the LINK to learn more about Classes..
Object Oriented ProgrammingClass PlaygroundDownload and complete the playground. Upload it to your repository.Classes.playground..
Object Oriented ProgrammingCritical Thinking - Build My Car RecipeCreate the recipe and ingredients to define a playground that allows you to select the model, color, packages, and accessories for your new car...
Object Oriented ProgrammingCritical Thinking - Build My Car Design a playground that allows you to select the model, color, packages, and accessories for your new car.This LINK has an example of what is typically available from a car manufacturer...
Final Project PresentationFinal Project PresentationRecord a video of you demonstrating and explaining your final projectUpload your project to your repositoryI will review your project and provide you with a critique..