Call : (+91) 968636 4243
Mail : info@EncartaLabs.com
EncartaLabs

Mobile Software Design Patterns and Architecture

( Duration: 3 Days )

The Mobile Software Design Patterns and Architecture training course teaches on how to come up with a single vision of a mobile strategy and then implement it in Android and iOS. This course requires an Android Application Development training or iOS development training or equivalent knowledge as a pre-requisite.

This course teaches software patterns and best practices in mobile development. A pattern is a well regarded solution for a commonly occurring problem. After this class, you will be able to quickly come up with good solutions for most common problems in mobile application development.

This course is not specific to any mobile OS. The hands on lab exercises can be taken in either Android or Apple iOS or both.

By attending Mobile Software Design Patterns and Architecture workshop, delegates will learn:

  • Application lifecycle patterns
  • User interface patterns
  • Business tier patterns
  • Notification patterns
  • Local data storage patterns
  • Location based services patterns
  • Background task processing patterns
  • Multimedia patterns

For Android based hands on exercises, you must be able to read and understand Java. Basic understanding of the Android platform is helpful but not necessary. For iOS based hands on exercises, you should be able to read and understand Objective-C. Basic knowledge of the iOS API is helpful but not necessary.

This Mobile Software Design Patterns and Architecture class is suitable for Architects and developers who are responsible for designing the architecture of mobile applications.

COURSE AGENDA

1

Introduction to Software Design Patterns

  • Software Design Pattern
  • History of Design Pattern
  • Describing a Pattern
  • Risks and Criticisms
  • Resources
2

Mobile Application Architecture

  • The Model View Controller (MVC) Pattern
  • Advantages of MVC
  • The Model Layer
  • Controller Responsibilities
  • Controller in Android
  • View Layer in Android
  • Model Layer Issues in Mobile Applications
  • Controller Layer Issues
  • View Layer Issues
  • Cross Cutting Issues
  • Mobile Architecture and Pattern Resources
3

Application Lifecycle Patterns

  • One Time Application Initialization
  • Implementation: Android Application Initialization
  • Per Screen Initialization
  • Implementation: Android Activity Initialization
  • Reduce Memory and CPU Usage from Unmapped Screen
  • Implementation: Android Unmapped Activity
  • Trapping Low Memory Situation
  • Implementation: Android Low Memory Warning
4

Basic Presentation Tier Patterns

  • Usage Pattern Based UI Design
  • Tabbed Interface Pattern
  • Tabbed Interface in Android
  • Vertically Scrollable List Pattern
  • Scrollable List in Android
  • Master Detail Navigation Pattern
  • Example Navigation
  • Navigation in Android
  • Split View Pattern
  • Android: Implement Split View
5

Basic Model Layer Patterns and Architecture

  • Single Tier Architecture
  • Two Tier Architecture
  • Three Tier Architecture
  • Facade Pattern
  • Application Service Pattern
  • Data Access Object (DAO)
  • Data Transfer Object (DTO) Pattern
  • Android Data Storage Options
  • Service Invocation Pattern
  • Android - Making a GET Request
  • Android - Making a POST Request
  • Choosing a Data Format
  • Android XML Parsing Options
  • Authentication Issues
  • Android - Using Basic Authentication
  • Android - Using Custom Authentication
6

Background Processing Patterns

  • Asynchronous Task Execution Pattern
  • Task Execution Architecture
  • Android: Asynchronous Task Execution
  • The AsyncTask API
  • Doing the Work
  • Starting Work
  • Updating GUI From the Task
  • Canceling a Task
  • Off Screen Work Pattern
  • Android: Implement a Service
  • Creating a Service
  • Starting and Stopping a Service
7

Advanced Presentation Tier Patterns

  • Device Dimension Specific UI Pattern
  • Android: Dimension Specific UI
  • Handling Orientation Change
  • Android: Handling Orientation Change
  • Toolbar Pattern
  • Android: Toolbar
  • Search Interface Pattern
  • Android: Search Interface
  • Pagination Pattern
  • Detail Iteration Pattern
  • Loading Images from the Internet
8

Advanced Model Layer Patterns

  • Network Data Caching Pattern
  • Implementing Caching
  • Offline Execution Pattern
  • Store and Forward Pattern
  • Data Synchronization Pattern
  • Simple Data Synchronization Algorithm
  • Sharing Content with Other Applications
  • Android: Sharing Content with Other Applications
  • Allow Sharing Content to Application
  • Android: Sharing Content to Application
9

Location Based Services Patterns

  • Obtaining Current Location
  • Android: Obtaining Current Location
  • Points of Interest (POI) Search Pattern
  • Spatial Search
  • Proximity Alert Pattern
  • Geocoding Pattern
  • Reverse Geocoding Pattern
  • Map View Pattern
  • One Click Driving Direction Pattern
  • Geo Tagging Pattern
10

Mobile Anti-patterns

  • What are Anti-patterns?
  • Slow Application Start Up
  • Uncooperative Applications
  • Obtrusive Notifications
  • Excessive Authentication Restriction
  • Excessive Presumption
  • Excessive Network Usage
  • No Offline Support
  • Improper Orientation Support
  • Hidden Background Activity
  • Unique UI Behavior

Encarta Labs Advantage

  • One Stop Corporate Training Solution Providers for over 6,000 various courses on a variety of subjects
  • All courses are delivered by Industry Veterans
  • Get jumpstarted from newbie to production ready in a matter of few days
  • Trained more than 50,000 Corporate executives across the Globe
  • All our trainings are conducted in workshop mode with more focus on hands-on sessions

View our other course offerings by visiting https://www.encartalabs.com/course-catalogue-all.php

Contact us for delivering this course as a public/open-house workshop/online training for a group of 10+ candidates.

Top
Notice
X