Welcome To Mobile Application Development
Technology continues to evolve and provide us with increasingly powerful mobile devices. As a result, applications that can run on a browser must also be written such that they are compatible with mobile devices, the majority of which are now web-enabled. Meanwhile, there is an increasing demand for native applications that can be downloaded to and run on mobile devices. This course will address these trends, teaching you to think about the unique design and deployment issues that must be taken into consideration when developing applications for mobile devices..
- MODULE 1: Introduction to Mobile Application Development
In this MODULE, we will take a broad look at mobile application development. We will learn about the different types of mobile devices, from mobile computers to smartphones, and we will compare web-based applications to native applications. Finally, we will study methods of transport, as well as Internet protocols for mobile applications.
In this MODULE, we will look at the mechanics that enable web-based mobile applications to run. We will first start with basic networking capabilities, such as how a device connects to the Internet, and then discuss routing and proxies. We will also learn how a browser on a mobile device accesses the network and how a server receiving a request routes it to the appropriate logic in order to process that request.
- MODULE 3: HTML/CSS/DOM and Scripting
- MODULE 4: JQuery and Structured Data
- MODULE 5: Scripting with Server Access
- MODULE 6: Designing Mobile User Interfaces
Since mobile devices have screen size and memory limitations, one must really think carefully before designing a user interface. In this MODULE, we will discuss usability, learning how to ascertain what the user needs through task and contextual analysis. We will then apply this information as we discuss various approaches to building good user interfaces. The MODULE will also cover rapid prototyping and testing and will explain how all of the traditional UI design principles apply to mobile application development as well. Finally, we will look at the different types of user interfaces for mobile devices.
- MODULE 7: Mobile Application Evaluation and Mobile Browsers
Once a mobile application has been developed, you will want to test it for usability. In this MODULE, we will talk about ways of evaluating mobile apps. We will also look at the differences between traditional browsers and mobile browsers and identify the elements that must be taken into consideration when designing an application for deployment on a mobile browser.
- MODULE 8: Mobile Platforms
In this MODULE, we will take a look at the differences between native and web-based mobile applications. We will discuss HTML5 as a means to fill the gap between native and web-based mobile apps. We will also learn about some hybrid approaches, such as PhoneGap, FlashLight, and JavaFX.
- MODULE 9: Storage and Geolocation
In this MODULE, we will learn how mobile applications store persistent data. We will also look at how we could develop applications that utilize device location.
- MODULE 10: Android Development
In this MODULE, we will look at how to develop applications in one popular platform for phones and tablets, the Android. In order to complete this MODULE, it is assumed that the student has had some experience with Java programming, although a brief review of Java will be included.
- MODULE 11: iPhone/iPad Development
In this MODULE, we will look at how to develop applications in one popular platform for phones and tablets, iOS. In order to complete this MODULE, it is assumed that the student has had some experience with programming.