Mobile Development Fundamentals
Printable Version (pdf)
Course Introduction
This course is designed to teach skills to develop apps for phones, tablets, and other devices that run on a variety of operating system. Students will learn core mobile development skills. Before taking this course, students should have solid foundational knowledge of the following topics: C#, Visual Studio, .NET, HTML5, SQLite, CSS, Javascript, ASP.NET MVC,
Swift, and other phone operating system tools.
Prerequisite:Computer Programming, I, Computer Science Principles, Web Development, HTML5
Core Standards of the Course
Strand 1
Introduction to mobile devices
Strandard 1
History of mobile technologies
-
Describe how mobile technologies came to be
-
Describe the current major mobile platforms
-
Describe the effects upcoming mobile platforms may have on mobile technologies
Standard 2
Understand physical capabilities of the mobile device
-
Identify the different device sensors
-
Describe and define the camera capture
-
Identify different built-in hardware
-
Identify Motion API
Standard 3
Plan for physical interactions with the mobile device.
-
Describe and define the differences among devices
-
Describe and define features, APIs, number of touchpoints, and networking
-
Account for screen size/real estate when planning layout
Strand 2
Design and development methodologies
Standard 1
Implement project management: Student will be able to implement project management methodologies to streamline workflow.
-
Create and analog or digital prototype version of their app
-
Work in a team
-
Utilize project management skills
-
Develop a concept with considerations for plan, cost, and time
-
Develop a design document detailing the problem the app solves and its core competencies
Standard 2
Creation
-
Create appropriate art and text
-
Develop audio for the application
-
Write and comment code appropriately
-
Create application animations
Strand 3
Develop mobile applications
Standard 1
Develop programming skills
-
Begin to think like a programmer
-
Understand why your app uses its language(s) for development
-
Learn the basic tools necessary for programming
-
Variables
-
Methods
-
Control structures
-
Data structures
-
User input
-
Object-oriented programming (OOP);
-
Build and run an application
Standard 2
Code for mobile applications
-
Evaluate code
-
Identify code errors
-
Identify code to use to meet requirements
-
Distinguish among programming languages and programs (e.g. C#, Objective-C, Java, Javascript, HTML5, CSS, Swift, etc.)
Standard 3
Manage the application lifecycle
-
Preserve application state information and handle activate/deactivate functions
-
Create a responsive application with feedback in response to user actions
Standard 4
Understand mobile device APIs
-
Understand mapping/geolocation APIs, forms, and media APIs
-
Describe and define manipulation events (user input)
Standard 5
Understand mobile device controls
-
Use phone controls
-
Arrange content appropriately
-
Display collections of items
-
Build custom controls
-
Describe and define notification types and uses
-
Use tasks and choosers to enhance application functionality
Standard 6
Build the user interface
-
Create layout with appropriate design principles
-
Design with system theme, accent color
-
Design appropriate screen orientation options
-
Design graphic layering (transparency, borders, resizing)
-
Design the user experience to be clean, focused, and using UI standards and guidelines
-
Integrate images and media in an application
Strand 4
Design for deployment
Standard 1
Understand how to publish for mobile devices
-
Describe and define marketplace submission rules;
-
Describe and define mobile design concepts (for example, metro, button sizing, spacing).
Standard 2
Use the principles of user interface design
-
Design and Organize the User Interface.
-
Design should make simple common tasks easy.
-
Options and materials for tasks visible without distracting the user
-
Design should provide methods for feedback examples actions, changes of state or conditions, errors, in language familiar to users
-
Design should be flexible and tolerant accounting for user mistakes.
-
Design should maintain consistency reducing the need for users to rethink and remember.
Standard 3
Work with developer tools
-
Use an appropriate IDE
-
Create the deployment package and deploy the application (optional, suggested for more advanced students)
-
Configure a test environment
-
Test and debug mobile applications
Stand 5
Students will be familiar with careers in mobile technologies and application development
Standard 1
Students will develop career awareness related to working in mobile apps
-
Identify personal interests and abilities related to mobile applications, such as:
-
Identify personal creative talents
-
Identify organizational and leadership skills
-
Identify special interest areas
-
Investigate career opportunities, trends, and requirements related to mobile application jobs
-
Survey educational opportunities (e.g. non-traditional) to determine programs, degrees and training availability to improve job prospects
-
Develop employability competencies/characteristics: responsibility, dependability, ethics, respect, and cooperation
-
Achieve high standards of personal performance with a positive work ethic and attitude
Standard 2
Industry Guides
-
Teachers will invite, encourage, entice, and otherwise bribe individuals who work in mobile application technologies to come and interact with students
Performance Skills
Students will be able to properly identify the subtle differences of an app developed on different system platforms.
Work Place Skills
Communication, Problem Solving, Teamwork, Critical Thinking, Dependability, Accountability
http://www.uen.org - in partnership with Utah State Board of Education
(USBE) and Utah System of Higher Education
(USHE). Send questions or comments to USBE
Specialist -
Kristina
Yamada
and see the CTE/Computer Science & Information Technology website. For
general questions about Utah's Core Standards contact the Director
-
THALEA
LONGHURST.
These materials have been produced by and for the teachers of the
State of Utah. Copies of these materials may be freely reproduced
for teacher and classroom use. When distributing these materials,
credit should be given to Utah State Board of Education. These
materials may not be published, in whole or part, or in any other
format, without the written permission of the Utah State Board of
Education, 250 East 500 South, PO Box 144200, Salt Lake City, Utah
84114-4200.