Skip to content

This project is a distinctive demonstration of different Cross Platform Mobile Development Patterns with Xamarin Forms regarding sharing code among PCLs and Native Implementations, focusing on the famous Factory Pattern, Service Locator Pattern, and Dependency Injection with IoC.

Notifications You must be signed in to change notification settings

UdaraAlwis/XFCPMobilePatterns

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Xamarin Forms Cross Platform Mobile Patterns Demo

This project is a distinctive demonstration of different Cross Platform Mobile Development Patterns with Xamarin Forms regarding implemeting loosely-coupled shared code among PCL and Platform-specific projects, focusing on the famous Factory Pattern, Service Locator Pattern, and Dependency Injection with IoC. This is purely for educational purposes only.

This project demonstrates a simple Note taking app (My Notes App) which allows the user to add notes, save them locally on the phone, and view them, as well as reading the notes using built-in platform-specific text to speech engines. It demonstrates how we could manage Platform-specific implementation with PCLs in loosely-coupled manner using standard patterns.

This includes 3 projects demonstrating the key implementation patterns of the same app concept as follows.

XFMyNotesAppFP - Factory Pattern

XFMyNotesAppSL - Service Locator Pattern

XFMyNotesAppDI - Dependency Injection with IoC

Read the full blogpost: https://theconfuzedsourcecode.wordpress.com/2017/06/13/xamarin-forms-cross-platform-architectural-implementation-patterns/

About

This project is a distinctive demonstration of different Cross Platform Mobile Development Patterns with Xamarin Forms regarding sharing code among PCLs and Native Implementations, focusing on the famous Factory Pattern, Service Locator Pattern, and Dependency Injection with IoC.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages