iOS Development with Swift Classes

$899.00

One month afternoon classes around the 529 and HWY 6 area.

Course Description:In this 4-week project-based course, students will learn to develop iOS applications using the Swift programming language and the Apple toolset. Additionally, students will learn basic concepts about designing intuitive and usable interfaces.
Throughout the week, students will hear lectures and presentations from the AP COMPUTER SCIENCE Dev Academy. These lectures will cover topics including user experience, resume creation, interview preparation, agile software development and the use of various development tools relating to the Swift Language.

Course Learning Outcomes (From Apple’s Teaching App Development with Swift Course Overview):
The primary learning outcome for this course is that students will be able to design and
create iOS apps. Students will leverage Swift, the iOS SDK, and Apple developer tools. With iOS as the
platform, students will learn object-oriented programming, design patterns, type systems, functional
language features, user interface design, best practices in programming, and problem analysis.
Upon successful completion of this course, students should be able to:
1.Define key programming terms relevant to Swift and iOS programming.
2.Describe the process of creating iOS apps.
3.State the purpose of the Apple developer tools, such as Xcode, Instruments, debugger, analyzer, and iOS Simulator.
4.Distinguish well-written code from poorly written code.
5.Employ the Apple developer tools to create an iOS app.
6.Demonstrate programming best practices in Swift.
7.Examine and subdivide app functionality into properly designed components.
8.Explain and summarize iOS API features including location, mapping, sensors, gestures, multimedia and user interface components.
9.Plan, prepare and build an original iOS app, from concept to working program.

Tentative List of Topics (From Apple project and lesson overviews):
•Running and modifying an iOS app
•Gaining a comfort level with Xcode
•Apply Auto Layout constraints to create adaptive user interfaces
•Discovering how to connect user interface controls to controller code
•Understanding the tools and technologies used to create iOS apps
•Practicing the fundamentals of Swift syntax
•Understanding object-oriented programming with Swift 3
•Discovering Swift data types and collections
•Applying UILabel and UIPickerView components, IBOutlets and IBActions
•Demonstrating Arrays, ranges and the map function
•Describing protocols and delegates
•Using NSUserDefaults and property list files for persistence
•Describing object-oriented inheritance and subclassing
•Discovering how to respond to touch events
•Practicing establishing connections between controllers and views
•Describing how frameworks provide additional app functionality
•Defining URLs and the NSURL class
•Combining additional frameworks in an Xcode project configuration
•Discovering the fundamental features of the MKMapView APICourse Materials:All students enrolled in this course are encouraged to have:
•A Mac computer that they can bring to class everyday, though one can be provided to those in need (contact CareerSource North Central Florida or Gainesville Dev Academy)
•The latest non-beta version of Xcode installed on the Mac laptop that they bring to class. Xcode can be downloaded at the following link (https://developer.apple.com/xcode/download/)
•An Apple ID. Students can create an Apple ID by visiting the following website (https://appleid.apple.com/)

Price: $899.00

JAVA and C# Classes

$999.00

One month afternoon classes around the 529 and HWY 6 area.

LEARNING OUTCOMES:
Upon completion of this course, the student will be able to:
a. Design, create, build, and debug Java, C# applications and applets.
b. Apply algorithmic thinking to solve programming problems.
c. Implement syntax rules in Java and C# programs.
d. Explain variables and data types used in program development.
e. Apply arithmetic operations for displaying numeric output.
f. Write and apply decision structures for determining different operations.
g. Write and apply loop structures to perform repetitive tasks.
h. Write user-defined methods.
i. Identify and implement arrays, array lists, and multidimensional arrays.
j. Write Java and C# programs using object-oriented programming techniques including classes,
objects, methods, instance variables, composition, inheritance, and polymorphism.
k. Write programs using graphical user interface (GUI) components and Java’s Event Handling Model and C# .NET Structures.

OUTLINE OF INSTRUCTION:

I.Introduction
A.Features of C# .NET 5.0
B.Features of Java
C.How Java and C# works
D.Types of Java and C# Programs
E.Edit, compile, and run Java and C# applications and applets

II.Variables, data types, and expressions
A.Identifier rules
B.Naming variables, constants (final) and references
C.Primitive data types
D.Arithmetic Operators
E.Assignment Operators
F.Relational and Logical Operators
III.Program control flow
A.Sequence structure
B.Selection structure
C.Repetition structure
D.Jump (Sequence) structure

IV.Methods
A.Java API and Package/Library methods
B.User-defined methods
C.Scope and duration
D.Local and Field variables
E.Pass-by-value, Pass-by-reference
F.Recursion
G.Overloading

V.Arrays
A.Declaration and allocation
B.Passing arrays to methods
C.Sorting, searching
D.Multiple-subscripted
VI.Object-Based Programming
A.Classes and objects, instance variables, and instance methods
B.Member access modifiers: public, private, protected, package
C.Creating packages
D.Constructors, overloaded constructors
E.Set (mutator), Get (access), and predicate methods
F.Final instance variables
G.Composition
H.Finalizers, garbage collection
I.Static class members
J.this reference

VII. Object-Oriented Programming
A.Inheritance
B.Super class, subclass
C.Polymorphism
D.Dynamic method binding
E.Abstract class, Concrete class
F.Inner class definition
G.Type-wrapper class for primitive data types
H.Interfaces

VIII. Graphical User Interface
A.Event-Driven Programming and Event Handling Model
B.Window Components
C.Mouse and keyboard event handling
D.Adapter classes
E.Layout managers

Price: $999.00