Table of Contents

Programming Mobile Services for Android Handheld Systems: Concurrency

Course page: https://class.coursera.org/posaconcurrency-001
By Dr. Douglas C. Schmidt, Université Vanderbilt

Section 0

MOOC Introduction

MOOC Organization and Topics

Concurrency Motivations

Concurrency Challenges

* error-prone

  	* type casts
  	* quasi-typed thread handles
  	* non-portable
  * How to debug ?
  * Heisenbug: debugger changing execution sequence and times
  * Need Static/dynamic analysis to detect race conditions.
* Inherent complexities:
	* synchronization
	* scheduling
	* deadlock

Overview of Patterns and Frameworks

* inversion of control (owns the app event loop)

	* provide integrated domain specific structures
	* semi-complete applications
* Android frameworks:
	* Hammer framework
* Gang of four:
  * Template method
  * Strategy method
  * Factory method
  

Week 1

Overview of Android Layers