Xamarin Cross-platform Application Development
By Jonathan Peppers
Publisher: Packt Publishing
Final Release Date: February 2014
Pages: 262

In Detail

Developing a mobile application for just one platform is becoming a thing of the past. Companies expect their apps to be supported on both iOS and Android, whilst leveraging the best native features of both. Xamarin’s tools help solve this requirement by giving developers a single toolset to target both platforms.

"Xamarin Cross-platform Application Development" is a step-by-step guide for building professional applications for iOS and Android. The book walks you through building a chat application, complete with a backend web service and native features such as GPS location, camera, and push notifications.

This book begins with iOS and Android application fundamentals, then moves on to sharing code, and eventually digs deeper into native functionality. By the end of the book, readers will have successfully built a cross-platform application ready for submitting to app stores. You will gain an in-depth knowledge about the concepts of building cross platform applications.

"Xamarin Cross-platform Application Development" also covers native iOS and Android APIs, unit testing, building a real web service with Windows Azure, push notifications, interacting with the camera and GPS, leveraging Java and Objective-C libraries, and finally app store submission. Towards the end of the book you will feel confident in developing your own Xamarin applications.

"Xamarin Cross-platform Application Development" will teach you everything you need to know to develop an end-to-end, cross-platform solution with Xamarin.

Approach

"Xamarin Cross-platform Application Development" is an end-to-end walk-through tutorial on developing applications for both iOS and Android. It offers clear and detailed explanations of each stage in the process, making it easier for you to master the creation of stable, production-ready, cross-platform apps.

Who this book is for

This book is for C# developers who are interested in mobile application development. If you have experience with desktop or web applications, this book will serve as a great tool to give you a head start with cross-platform development.

Product Details
Recommended for You
Customer Reviews

REVIEW SNAPSHOT®

by PowerReviews
oreillyXamarin Cross-platform Application Development
 
4.4

(based on 5 reviews)

Ratings Distribution

  • 5 Stars

     

    (2)

  • 4 Stars

     

    (3)

  • 3 Stars

     

    (0)

  • 2 Stars

     

    (0)

  • 1 Stars

     

    (0)

100%

of respondents would recommend this to a friend.

Pros

  • Helpful examples (5)
  • Well-written (5)
  • Easy to understand (4)

Cons

    Best Uses

    • Intermediate (5)
    • Novice (4)
    • Student (3)
      • Reviewer Profile:
      • Developer (4)

    Reviewed by 5 customers

    Sort by

    Displaying reviews 1-5

    Back to top

    (1 of 1 customers found this review helpful)

     
    4.0

    Good Xamarin x-Platform Dev Intro

    By Pete

    from Fayetteville, Ar

    Pros

    • Accurate
    • Easy to understand
    • Helpful examples
    • Well-written

    Cons

    • Could Be More Extensive

    Best Uses

    • Intermediate
    • Novice

    Comments about oreilly Xamarin Cross-platform Application Development:

    If you're getting started in cross-platform (particularly iOS and Android) Xamarin programming, Jonathan Peppers' "Xamarin Cross-platform Application Development" might be the book for you.
    Structure-wise, the first two chapters provide the basics of the tools and, of course, the obligatory "Hello …" sample app: In this case, "Hello Platform".
    The next 5 chapters focus largely on the development and deployment of a cross-platform "XamChat" application. There are individual chapters focusing on the iOS and Android aspects as well as a chapter on creating the cross-platform aspects.
    The last few chapters cover various topics common to Xamarin/mobile development (3rd party components, binding to native libraries, GPS, Camera, Contacts and app stores).
    One of the key benefits of Xamarin development is the opportunity for code-sharing between mobile apps (iOS, Android and Windows Phone). As Xamarin is primarily focused at Android and iOS, both Xamarin's web site and this book, provide only passing mention of WP8 development. That said, many of the techniques discussed in the book on cross-platform development, would carry over to a Windows phone app.
    This book has a number of strong points; It covers many of the major areas that mobile developers and Xamarin developers will run into. It covers the basics of the software needed for each platform. It covers the tools and how to use them. It discusses some of the platform-specific controls and techniques. It discusses how to use the basic facilities that most apps use (camera, GPS, etc). And it covers a lot of the details of getting your app into the iOS App Store and Google Play.
    What this book won't provide is a lot of detail about Android development and iOS development; which is to say, if you're doing a moderately complex app, you're bound to get into areas not covered by this book. Android and iOS are both very rich platforms and to cover either in great detail would require separate books, so it would be unreasonable to expect this book to cover both platforms in great detail. So if you're unfamiliar with these platforms, you'll need additional resources.
    The book seems to assume the reader is going to go with the MVVM (Model-View-ViewModel) design pattern. In fact, MVVM Cross is probably the most popular development framework for Xamarin and so, this is probably not a bad assumption. But readers should be aware that other patterns can be used as well.
    Xamarin provides Xamarin Studio (a cross-platform IDE for Xamarin apps) as well as Visual Studio integration. This book only looks at Xamarin Studio, so if you're using the Visual Studio integration, some aspects of project management will be different.
    Bottom line: If you're getting started with Xamarin programming, this book is a really good introduction. It covers the basics of Xamarin and general mobile development; certainly enough to get anyone up and running and writing basic applications. This book would be of limited value to someone who's already done some Xamarin development and it would be of limited value as a long-term reference.

     
    5.0

    Comprehensive and easy to understand

    By retupmoc

    from Colombia

    About Me Architect, Developer

    Verified Reviewer

    Pros

    • Easy to understand
    • Helpful examples
    • Well-written

    Cons

      Best Uses

      • Intermediate
      • Novice
      • Student

      Comments about oreilly Xamarin Cross-platform Application Development:

      I am mobile architect, and I had always imagined the techniques crossplatform very tedious. By reading this book, this showed me how easy it can be a development using tools Xamarin, no matter the level of knowledge you have, it is very easy to understand takes you from scratch to use best pratices, this book is very good starting point .

      I really liked this book because it covers topics from the installation of the necessary tools; MVVM design pattern; creating a sample project (chat); native access; deployment and store submission. It is the best and most complete book of Xamarin in the market.

      I recommend it to all the people who will barely Getting Started in cross platform development to those who already have knowledge but want to go beyond.

      I give it 5 stars because I've already read 3 books on the same topic and this is by far the best.

       
      5.0

      Buy it, read it, and take as much as you

      By Andy Flisher

      from Teesside, UK

      About Me Developer, Sys Admin

      Verified Reviewer

      Pros

      • Concise
      • Easy to understand
      • Helpful examples
      • Well-written

      Cons

        Best Uses

        • Expert
        • Intermediate
        • Student

        Comments about oreilly Xamarin Cross-platform Application Development:

        This book is openly marketed at existing, experienced C# developers so it's certainly not for beginners, and whilst I don't fall into this category the nature of projects I work in require mostly 'linear' development (Web, PHP, Perl, Python, VB etc over the years) so concepts like MVC, MVVM and in particular IOC (Inversion of Control) are newer and less clear. Thankfully this book has resolved that through it's excellent practical examples.

        One area this book doesn't touch on hugely is the level of planning required for MVC applications, you can't just 'jump in and code', but that's potentially a book in itself, but what the book does very well for me, is explain the View, ViewModel, Model and Controller concepts in terms of the classes and data layers required. The book also introduces Interfaces (something I always saw as an unnecessary layer of complexity) which I now 'get' in terms of flexibility, and in particular to give the developer options in a cross platform environment.

        The icing on the cake is 'Inversion of Control', whilst the book doesn't particularly explain this convention in huge detail, I think it is actually to it's credit, any more and the reader will be bogged down in unnecessary detail and complexity. It basically gives us the service layer that 'glues' the application together, allowing use to create and register our ViewModels as Services and thus make them available to use throughout the app with a single line of code. I'm sure that my description is not hugely more constructive than the words in the book themselves, but the working example of the XamChat application completes it.

        Which is my main point, am sure many people work differently, but for me working examples of code are what makes it stick in my mind, it helps it all make sense. Throughout this book you will be building bit buy bit a working chat application, firstly in Xamarin.iOS (but using the all important cross platform and code sharing concepts learnt at the beginning of the book), and then re-implementing the same application logic in Xamarin.Android. The nice touch, which some may see as lazy, was that with the Android example you are taken to a certain point and then left to finish off using the examples you already have. A real, and practical exercise which I think will do the reader good. It wouldn't be a huge leap further to recreate in Windows Phone, for the ultimate practical extension.

        The Xamchat application is then extended through the Windows Azure platform to use their backend for data storage (a good example of how the same Interface can be re-used to store on different platforms), and to implement cross platform push notifications.

        Lastly there are chapters on using Xamarin Components (including Xamarin.Mobile for Contacts, Camera and Location functionality), and actual App Store submission and their different processes, processes that even the most experienced developer can struggle with (Apple Certificates and Profile expiry anyone!).

        In summary, this is an excellent book for any would be cross platform mobile application developer, yes you need a good understanding of C#, MVC and similar concepts, and the individual mobile platforms and general development processes themselves, and those things don't come over night, but this book binds it all together with real world examples, working code (a novelty for some books) and actual code and methods you can take away and use in the real world.

        Buy it, read it, and take as much as you can from it.

        (1 of 1 customers found this review helpful)

         
        4.0

        Intro to Cross-Platform Mobile Dev

        By Steve D

        from Knoxville, TN

        About Me Developer

        Verified Reviewer

        Pros

        • Accurate
        • Concise
        • Easy to understand
        • Helpful examples
        • Well-written

        Cons

          Best Uses

          • Intermediate
          • Novice
          • Student

          Comments about oreilly Xamarin Cross-platform Application Development:

          If you're a C# developer, you'll want to read this book about cross platform mobile development (iOS / Android) using the Xamarin framework.

          Peppers does a great job of introducing users to cross-platform development and offers several hints that will make cross-platform development more productive. This book is a good read!

          (1 of 1 customers found this review helpful)

           
          4.0

          A worthwhile addition to my collection

          By Dave Carson

          from Devon, UK

          About Me Developer

          Verified Reviewer

          Pros

          • Helpful examples
          • Well-written

          Cons

            Best Uses

            • Intermediate
            • Novice

            Comments about oreilly Xamarin Cross-platform Application Development:

            Many of the development books I read contain some contrived example applications that are supposed to help reinforce the learning process but because of their very nature I seldom bother typing these in and rely in the text to glean the information that I need. They all cover basic database access and maybe a little bit of webservice integration but never seem to get into the 'meaty' aspects that you will run into in the real world.

            This book was very different in that its example application, an instant messenger, was actually something I wanted to see working - sending messages from an iPhone to an Android phone and back again in "real-time". It detailed many aspects that you will be hard pushed to find such in-depth explanations for, e.g. configuring push/pull on Azure, Apple and Google infrastructure. It may not cover database access or webservice integration but that sort of information is littered all over the internet and you should have no problems finding it. That's not to say that the book skimps on the foundations of what you need to know to develop for the mobile platform (or general development) - it guides you through the configuration of your development environment and creates the obligatory 'Hello World' applications on both Android and iOS to make sure everything it setup properly before you start. From there it introduces code sharing patterns and how to structure your projects for cross platform development before getting into some 'real' coding.

            There is also detailed, step by step, walkthroughs on how to deploy applications to actual devices (Android and iOS) and release them to the respective "App Stores".

            There were a number of minor errors in the printed code (but then most books of this type suffer from this) but nothing a reasonably experienced Developer wouldn't be able to resolve one way or the other. There is some good errata on the publishers website (http://bit.ly/My15g9) where there is also sample code which can be downloaded if required.

            All in all a worthwhile addition to my collection and something I will be referring to numerous times in the future.

            Displaying reviews 1-5

            Back to top

             
            Buy 2 Get 1 Free Free Shipping Guarantee
            Buying Options
            Immediate Access - Go Digital what's this?
            Ebook: $26.99
            Formats:  ePub, Mobi, PDF