Difference between revisions of "Introduction to Mobile App Development"

From Ideaspace Wiki
Jump to: navigation, search
Line 15: Line 15:
  
 
The content here is living. We expect to evolve this tutorial based on feedback from students and teachers, and the evolution of the technologies involved.  
 
The content here is living. We expect to evolve this tutorial based on feedback from students and teachers, and the evolution of the technologies involved.  
 +
 +
== General Prerequisites ==
 +
 +
You will have the most efficient experience with this tutorial if you have a basic knowledge the following:
 +
*  At least one common object-oriented programming language, such as Java or Javascript;
 +
*  An understanding of the basic software development – debug cycle; and
 +
*  At least some knowledge of the role of interactive development environments (IDEs).
 +
 +
We will endeavour to provide a basic introduction to these topics here or to provide you with links to the best authoritative sources of background information on these topics.
 +
 +
== Platform-specific Prerequisites ==
 +
 +
TO BE COMPLETED
 +
 +
* Polymer: We recommend that you have a basic knowledge of HTML5, Javascript, and CSS3.
  
 
== Learning Objectives ==
 
== Learning Objectives ==
Line 39: Line 54:
 
This tutorial is designed as a hands-on and introductory guide to creating mobile apps. Links are provided to authoritative reference manuals that can provide detailed information on specific technical issues and mobile app development techniques.
 
This tutorial is designed as a hands-on and introductory guide to creating mobile apps. Links are provided to authoritative reference manuals that can provide detailed information on specific technical issues and mobile app development techniques.
  
This tutorial will guide you through the development of a single mobile app in phases. In each phase , the tutorial will explain a collection of related mobile app development concepts and techniques, which you will use to add new functionality to the app.  
+
This tutorial will guide you through the development of a single mobile app in units of work called "sprints". In each sprint , the tutorial will explain a collection of related mobile app development concepts and techniques, which you will use to add new functionality to the app.  
  
 
== How this Tutorial is Organized ==
 
== How this Tutorial is Organized ==
 
    
 
    
This tutorial is organized using a a series of sprints. Each sprint contains a number of user stories. Each user story describes functionality that is to be implemented in the app.
+
As explained above, this tutorial is organized using a a series of sprints. Each sprint contains a number of user stories. Each user story describes functionality that is to be implemented in the app.
 +
 
 +
Additional challenges and reference material are offered and updated when possible.
 +
 
 +
== Sprints ==
 +
=== Sprint 0 – Installation and configuration of the software development environment ===
 +
 
 +
=== Sprint 1 - Basic user interface (UI) layout and internationalization ===
 +
The goal of this sprint is to get a basic app up and running.
 +
 
 +
The learning objectives for this sprint are as follows:
 +
* Creating a basic user interface layout in portrait mode.
 +
* Setting up your app to support internationalization, the ability to facilitate localization into a specific language (e.g., English and French).
 +
 
 +
=== Sprint 2
 +
 
  
Additional challenges and reference material will be offered when possible.
 
  
 
== References ==
 
== References ==

Revision as of 10:51, 19 July 2017


Main Page E-College



NBCC Mobile Ideaspace Tutorial Series

Contributors

Russell Allen, David Morris, Laura Melles, William McIver Jr.

Introduction

This tutorial is developed and maintained by the NBCC Mobile First Technology Initiative and its industrial partners. It is part of our effort to mobilize knowledge about mobile information and communication technologies (ICT) in ways that enable developers and managers to leverage it for professional development and to jump start innovation in their organizations.

This tutorial is designed to be independent of specific mobile platforms, such as Android or iOS. Rather, the tutorial presents a generic set of learning objectives at the top level. On the second level, tutorial content is being developed that helps the student realize those objectives within a specific platform. Currently, a tutorial is being implemented for Polymer. Versions for Android, iOS, React, and React Native are planned.

The content here is living. We expect to evolve this tutorial based on feedback from students and teachers, and the evolution of the technologies involved.

General Prerequisites

You will have the most efficient experience with this tutorial if you have a basic knowledge the following:

  • At least one common object-oriented programming language, such as Java or Javascript;
  • An understanding of the basic software development – debug cycle; and
  • At least some knowledge of the role of interactive development environments (IDEs).

We will endeavour to provide a basic introduction to these topics here or to provide you with links to the best authoritative sources of background information on these topics.

== Platform-specific Prerequisites ==

TO BE COMPLETED

  • Polymer: We recommend that you have a basic knowledge of HTML5, Javascript, and CSS3.

Learning Objectives

Students who complete this tutorial should acquire basic practical knowledge of the following concepts within a given mobile platform:

  • Setup installation and configuration of tools and resources required to develop software for the chosen mobile platform
  • User interface construction
  • User interface elements
  • Data acquisition from the user interface
  • Data validation
  • Localization
  • Screen orientation
  • Use of Web services
  • Data storage
  • Use of location services
  • Multimedia playback
  • Thread management issues
  • App design guidelines
  • App publication
  • Debugging and trouble shooting

How to Use this Tutorial

This tutorial is designed as a hands-on and introductory guide to creating mobile apps. Links are provided to authoritative reference manuals that can provide detailed information on specific technical issues and mobile app development techniques.

This tutorial will guide you through the development of a single mobile app in units of work called "sprints". In each sprint , the tutorial will explain a collection of related mobile app development concepts and techniques, which you will use to add new functionality to the app.

How this Tutorial is Organized

As explained above, this tutorial is organized using a a series of sprints. Each sprint contains a number of user stories. Each user story describes functionality that is to be implemented in the app.

Additional challenges and reference material are offered and updated when possible.

Sprints

Sprint 0 – Installation and configuration of the software development environment

Sprint 1 - Basic user interface (UI) layout and internationalization

The goal of this sprint is to get a basic app up and running.

The learning objectives for this sprint are as follows:

  • Creating a basic user interface layout in portrait mode.
  • Setting up your app to support internationalization, the ability to facilitate localization into a specific language (e.g., English and French).

=== Sprint 2


References



Comments, Corrections & Requests

We welcome comments and corrections about Mobile First Technology Initiative's E-College content, and requests for information and tutorials on new topics. Please send all such correspondence to bill.mciver@nbcc.ca and include "E-College" in the subject line.

Contact

William McIver Jr., Ph.D.
NSERC Industrial Research Chair in Mobile First Technology
New Brunswick Community College

Mobile First Technology Initiative URL: http://wiki.nbcc.mobi
E-mail: bill.mciver@nbcc.ca
Twitter: @mciverNBCC
Blog: http://mciver.mobi/

New Brunswick Community College URL: http://nbcc.ca
Media inquiries

Nbcc ca mobi icon-NBCC-MFTi.jpg | © Copyright 2017. All Rights Reserved.
The New Brunswick Community College – Mobile First Technology Initiative is supported by
the Natural Sciences and Engineering Research Council of Canada. Nbcc ca mobi logo nserc.png