Butler Community College Darryl Runyan Science, Technology, Engineering, and New Fall 2018 Math Division Implemented Fall 2019

COURSE OUTLINE Mobile App Development

Course Description IN185. Mobile App Development. 3 hours credit. This course will enable the student to build, test, and publish applications to the . The student will use Swift Programming for the iOS Operating System to create applications that can be exported for use on the Apple Store or self-promotion.

Required Materials For complete material(s) information, refer to https://bookstore.butlercc.edu

Butler-Assessed Outcomes The intention is for the student to be able to 1. Build applications for mobile devices. 2. Publish applications for mobile devices. 3. Send and receive data from web servers to a mobile application.

Learning PACT Skills that will be developed and documented in this course Through involvement in this course, the student will develop ability in the following PACT skill area(s): Technology Skills  Discipline-specific technology – By applying programming logic, the student will improve the ability to use technology to accomplish goals.

Major Summative Assessment Task(s) These Butler-assessed Outcome(s) and Learning PACT skill(s) will be demonstrated by 1. Creating a mobile to-do list application. 2. Creating a mobile ordering application.

Skills or Competencies These actions are essential to achieve the course outcomes: 1. Use the Development Environment. 2. Develop applications using the Swift Programming Language. 3. Create applications for iOS devices utilizing mobile control methods.

Learning Units I. Introduction A. Mac OS B. iOS C. Xcode D. Swift

IN185 Mobile App Development 1

II. App development A. Simple data types B. Functions C. Building, running, and debugging an app

III. Introduction to UIKit A. Complex data types B. Displaying data C. Controls in Action

IV. Navigation and workflows A. Constant and variable scope B. View controller life cycle

V. AR application building A. Intro to SceneKit B. Interacting with Augmented Reality

VI. Tables and persistence A. Application anatomy and life cycle B. Saving data

VII. Working with the Web A. Extensions B. Decoding JSON C. Concurrency

VIII. Prototyping and project planning A. Application personality B. The Design Cycle

IX. Next steps A. Swift playgrounds B. Apple developer forum

Learning Activities Learning activities will be assigned to assist the student in achieving the intended learning outcomes through lectures, class discussions, team research, individual research, readings, viewing tutorials and study material, quizzes, tests, and other activities at the discretion of the instructor. These activities may be either face-to-face or online.

Grade Determination The student will be graded on the learning activities and assessment tasks. Grade determinations may include the following: class participation, projects, team and

IN185 Mobile App Development 2 individual participation, research assignments, quizzes, tests, and other methods of evaluation at the discretion of the instructor.

IN185 Mobile App Development 3