Git Product home page Git Product logo

xarch-starter's Introduction

[Depreceated] - In favor of Exrin

Xamarin Forms Complete Starter Project

A light weight starter project for Xamarin Forms

Why?

As with most technologies the default sample projects only ever show the simplest way to do things. But if you need to develop a production quality application you have no idea on the best approach. Maybe that is because the great thing about programming is you can choose so many approaches, why would you limit yourself?

However for the projects I have worked on over the year, here is the default architecture I have settled on. Changes may need to be made with each project but it is a good solid base to start from.

Project Capabilities

All projects I have developed have shown the need for these :

  1. MVVM Framework
  2. API Connectivity
  3. Local Storage
  4. ServiceLocator
  5. Constructor Dependency Injection

Dependencies

I have tried to keep dependencies down to a minimum. There are a lot of different components and packages you can add, each having their different strengths. I chose these packages due to their necessity and/or low footprint.

  1. MVVMLight Libs
  2. Microsoft HTTP Client Libraries
  3. Settings Plugin For Xamarin
  4. Newtonsoft Json

Conventions

ViewModels are loaded on a convention basis. They must be in the namespace Mobile.ViewModel and the class name must end in ViewModel. They will then be automatically loaded.

Personal Preferences

  1. I love using XAML, hence this project will use XAML for all views.
  2. While Shared Code may have its place, I never found a solid use case for it in my projects. PCL is my preferred approach.

xarch-starter's People

Contributors

adamped avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.