Blissful Separation of Concerns with Model-View-ViewModel (MVVM)

Size: px
Start display at page:

Download "Blissful Separation of Concerns with Model-View-ViewModel (MVVM)"

Transcription

1 Blissful Separation of Concerns with Model-View-ViewModel (MVVM) Brian Noyes Chief Architect, Level: Intermediate About Brian Chief Architect IDesign Inc. ( Microsoft Regional Director Microsoft MVP Silverlight Publishing Developers Guide to Microsoft Prism 4, O Reilly & Assoc., March 2011 Developing Applications with Windows Workflow Foundation, LiveLessons training DVD, June 2007 Smart Client Deployment with ClickOnce, Addison Wesley, January 2007 Data Binding in Windows Forms 2.0, Addison Wesley, January 2006 The Silverlight Show, MSDN Magazine, MSDN Online, CoDe Magazine brian.noyes@idesign.net Blog: Speaking VSLive!, DevConnections, Microsoft TechEd,, DevTeach, INETA User Groups 1

2 Agenda MVVM Concepts Basics of MVVM MVVM Navigation and Hierarchies UI Patterns Goals Architectural goals Loose coupling Separation of concerns Leads to Testability Maintainability Extensibility Putting all your logic here is not good enough 2

3 MVVM Roots Model-View-ViewModelhas its roots in two other separation patterns Model View Controller (MVC) Model View Presenter (MVP) Model and View mean the same thing in all three Subtle variations on the responsibilities and communications of the third party MVVM is a derivative implementation pattern from the Presentation Model design pattern MVP Variations Passive View View Presenter Model Supervising Controller View Presenter Model 3

4 MVVM Model Exposure Wrapped Model View ViewModel Model Exposed Model View ViewModel Model View Responsibilities Contains the structural definition of the visual elements you see on screen Mostly static Can include dynamic behaviors (i.e. animations) Goal: No code-behind All non-visual behavior goes in the ViewModelor Model 4

5 ViewModel Responsibilities Provide state (data) to the view suitable for binding Properties that contain model data Exposed or wrapped Expose properties to support the view that are not part of the model Ex: Flag to drive expansion of an expander or visibility of a DataGrid column ViewModel Responsibilities Supplement, simplify, or transform model properties Wrapping the model Ex: Denormalizethe object model into collections suitable for binding INotifyPropertyChanged implementation or validation Transform: Ex: Expose a booleanproperty for a particular enum value in the model 5

6 ViewModel Responsibilities Encapsulate interaction logic for the view Different from business logic What happens when a user does something the workflow from the UI perspective, not the implementation details Manipulate and maintain the state for the view Service/data access/repository calls Note: State provided by the ViewModel should not dictate appearance No Color, Visibility, etc properties Model Responsibilities Everything Else Data structure definitions If exposing the model objects through the view model for Binding: Property change notification support Validation support Transactional edit support Service calls Data access Authentication/authorization Etc 6

7 MVVM and XAML MVVM leans heavily on the capabilities of WPF/Silverlight/WinRT Data Binding Property Change notifications Commands Validation Also available for HTML 5 / JavaScript clients Knockoutjs.com MVVM Mindset Bindings are the contract between the view and the ViewModel Things happen in the view based on property change notifications from the ViewModel Things happen in the ViewModelfrom either properties changed by the view or from Command invocations from the view 7

8 MVVM Relationships View.DataContext = ViewModel The basic equation of MVVM View : ViewModel 1 : 1 at runtime always 1 : 1 at design time (type definition) -usually Marrying View and ViewModel Statically ViewModelwired up in the XAML ViewModelconstructed in the code behind of the view Dynamically Implicit DataTemplate containing view for ViewModel type Dependency injection in the view or view model ViewModelLocator 8

9 MVVM Communication ViewModel-> View PropertyChanged, CollectionChanged View -> ViewModel Property set Commands Behaviors InvokeCommandAction CallMethodAction ChangePropertyAction View Model Navigation Child views can be constructed and navigated to through view model manipulation alone Parent exposes child view model property or collection Parent changes current child view model in the property or collection, or adds/removes child view models to cause the screen to change DataTemplatesand Bindings provide the glue to construct the approviateview based on the changing view models 9

10 MVVM Toolkits Prism Minimal MVVM infrastructure, mostly guidance and samples MVVM Light Rich framework with infrastructure classes, VS project/item templates Caliburn Micro Convention over configuration Event aggregator Coroutines Actions Summary Prism book Upcoming WinRT XAML MVVM Pluralsight Course (Oct 2012) MVVM Light Caliburn Micro Blog: 10

Building Extensible XAML Client Apps

Building Extensible XAML Client Apps Building Extensible XAML Client Apps Brian Noyes Chief Architect, IDesign Inc www.idesign.net brian.noyes@idesign.net, @briannoyes Level: Intermediate About Brian Chief Architect IDesign Inc. (www.idesign.net)

More information

Learn to Behave Extend Your XAML with Behaviors

Learn to Behave Extend Your XAML with Behaviors Learn to Behave Extend Your XAML with Behaviors Brian Noyes Chief Architect, IDesign Inc. www.idesign.net brian.noyes@idesign.net, @briannoyes Level: Intermediate About Brian Chief Architect IDesign Inc.

More information

Building Loosely Coupled XAML Client Apps with Prism

Building Loosely Coupled XAML Client Apps with Prism Building Loosely Coupled XAML Client Apps with Prism Brian Noyes IDesign Inc. (www.idesign.net) brian.noyes@idesign.net, @briannoyes About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft

More information

Building Extensible XAML Client Apps

Building Extensible XAML Client Apps Building Extensible XAML Client Apps Brian Noyes IDesign Inc. (www.idesign.net) brian.noyes@idesign.net, @briannoyes About Brian Chief Architect IDesign Inc. (www.idesign.net) Microso7 Regional Director

More information

Prism Composite Application Guidance

Prism Composite Application Guidance Prism Composite Application Guidance Brian Noyes www.idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director (www.theregion.com) Microsoft MVP Silverlight Publishing

More information

LVL08 Black Belt Silverlight Business Data Validation

LVL08 Black Belt Silverlight Business Data Validation LVL08 Black Belt Silverlight Business Data Validation Brian Noyes Chief Architect, IDesign Inc (www.idesign.net) brian.noyes@idesign.net, @briannnoyes About Brian Chief Architect IDesign Inc. (www.idesign.net)

More information

Build Loosely Coupled Silverlight Business Applications

Build Loosely Coupled Silverlight Business Applications Build Loosely Coupled Silverlight Business Applications Brian Noyes www.idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director (www.theregion.com) Microsoft

More information

VS10 WCF of Many Flavors When do I use which?

VS10 WCF of Many Flavors When do I use which? VS10 WCF of Many Flavors When do I use which? Brian Noyes Chief Architect, IDesign Inc (www.idesign.net) brian.noyes@idesign.net, @briannoyes About Brian Chief Architect IDesign Inc. (www.idesign.net)

More information

Thinking and Processing in Parallel Wrap Your Head Around WF 4.0 Concurrency. Brian Noyes IDesign Inc (www.idesign.net)

Thinking and Processing in Parallel Wrap Your Head Around WF 4.0 Concurrency. Brian Noyes IDesign Inc (www.idesign.net) Thinking and Processing in Parallel Wrap Your Head Around WF 4.0 Concurrency Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net)

More information

WCF RIA Services. About Brian 8/10/2011. Brian Noyes Chief Architect IDesign Inc. (www.idesign.net)

WCF RIA Services. About Brian 8/10/2011. Brian Noyes  Chief Architect IDesign Inc. (www.idesign.net) WCF RIA Services Brian Noyes www.idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director (www.theregion.com) Microsoft MVP Silverlight Publishing Developers Guide

More information

Build Testable Client and Service Applications

Build Testable Client and Service Applications Build Testable Client and Service Applications Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director MVP

More information

Composite Application Guidance for WPF and Silverlight (AKA Prism 2 )

Composite Application Guidance for WPF and Silverlight (AKA Prism 2 ) Composite Application Guidance for WPF and Silverlight (AKA Prism 2 ) Brian Noyes www.idesign.net About Brian Chief Architect, IDesign Inc. (www.idesign.net) Microsoft Regional Director / MVP Publishing

More information

AR.04 Composite Application Guidance for WPF (aka Prism ) Brian Noyes IDesign Inc (www.idesign.net)

AR.04 Composite Application Guidance for WPF (aka Prism ) Brian Noyes IDesign Inc (www.idesign.net) AR.04 Composite Application Guidance for WPF (aka Prism ) Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect, IDesign Inc. (www.idesign.net) Microsoft Regional

More information

VWC02 Build N-Tier Silverlight Data Applications Easily with WCF RIA Services

VWC02 Build N-Tier Silverlight Data Applications Easily with WCF RIA Services VWC02 Build N-Tier Silverlight Data Applications Easily with WCF RIA Services Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net @briannoyes About Brian Chief Architect IDesign Inc. (www.idesign.net)

More information

VS08 This One Goes to Going Parallel with PFX, PLINQ, TPL and Async Keywords

VS08 This One Goes to Going Parallel with PFX, PLINQ, TPL and Async Keywords VS08 This One Goes to Going Parallel with PFX, PLINQ, TPL and Async Keywords Brian Noyes Chief Architect, IDesign Inc (www.idesign.net) brian.noyes@idesign.net, @briannoyes About Brian Chief Architect

More information

NE.15 Data Binding In Windows Presentation Foundation

NE.15 Data Binding In Windows Presentation Foundation NE.15 Data Binding In Windows Presentation Foundation Brian Noyes Chief Architect IDesign Inc (www.idesign.net) 1 About Brian Chief Architect, IDesignInc. (www.idesign.net) Microsoft Regional Director/MVP

More information

Smart Client Offline Data Caching and Synchronization

Smart Client Offline Data Caching and Synchronization Smart Client Offline Data Caching and Brian Noyes Principal Software Architect IDesign, Inc.(www.idesign.net) About Brian Principal Software Architect, IDesign Inc. (www.idesign.net) Microsoft MVP in ASP.NET

More information

Data Binding with Windows Forms 2.0

Data Binding with Windows Forms 2.0 Data Binding with Windows Forms 2.0 Brian Noyes Chief Architect IDesign,, Inc. (www.idesign.net( www.idesign.net) About Brian Microsoft Solution Architect MVP Writing MSDN Magazine, CoDe Magazine, The

More information

Drive Application Behavior with Application and User Configuration Settings Brian Noyes IDesign Inc (www.idesign.net)

Drive Application Behavior with Application and User Configuration Settings Brian Noyes IDesign Inc (www.idesign.net) Drive Application Behavior with Application and User Configuration Settings Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect, IDesign Inc. (www.idesign.net)

More information

VSC01 Securing WPF Client Applications

VSC01 Securing WPF Client Applications VSC01 Securing WPF Client Applications Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net @briannoyes About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director

More information

Build Custom Data Bound Objects and Collections

Build Custom Data Bound Objects and Collections Build Custom Data Bound Objects and Collections Brian Noyes IDesign, Inc. (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect, IDesign Inc. (www.idesign.net) Microsoft Regional Director

More information

Windows Presentation Foundation In Windows Forms And Vice Versa

Windows Presentation Foundation In Windows Forms And Vice Versa Windows Presentation Foundation In Windows Forms And Vice Versa Brian Noyes Chief Architect IDesign Inc (www.idesign.net) 1 About Brian Chief Architect, IDesignInc. (www.idesign.net) Microsoft Regional

More information

Data Binding in ASP.NET 2.0

Data Binding in ASP.NET 2.0 Data Binding in ASP.NET 2.0 Brian Noyes Principal Software Architect IDesign, Inc. (www.idesign.net) About Brian Principal Software Architect, IDesign Inc. (www.idesign.net) Microsoft MVP in ASP.NET Writing

More information

APP301: Implement a Data Access Layer with Enterprise Library

APP301: Implement a Data Access Layer with Enterprise Library APP301: Implement a Data Access Layer with Enterprise Library Brian Noyes IDesign Inc. (www.idesign.net) brian.noyes@idesign.net http://www.softinsight.com/bnoyes/ About Brian Chief Architect, IDesign

More information

Drive Application Behavior with Application and User Configuration Settings. Brian Noyes IDesign Inc (www.idesign.net)

Drive Application Behavior with Application and User Configuration Settings. Brian Noyes IDesign Inc (www.idesign.net) Drive Application Behavior with Application and User Configuration Settings Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect, IDesign Inc. (www.idesign.net)

More information

Tackle Complex Data Binding in WinForms 2.0

Tackle Complex Data Binding in WinForms 2.0 Tackle Complex Data Binding in WinForms 2.0 Brian Noyes Principal Software Architect IDesign,, Inc. (www.idesign.net( www.idesign.net) About Brian Microsoft MVP in ASP.NET Writing MSDN Magazine, CoDe Magazine,

More information

Microsoft TechEd US, Europe, Malaysia, Visual Studio Connections, DevTeach, INETA Speakers Bureau, MSDN Webcasts

Microsoft TechEd US, Europe, Malaysia, Visual Studio Connections, DevTeach, INETA Speakers Bureau, MSDN Webcasts DEV340 MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. 1 Chief Architect, IDesignInc. (www.idesign.net) Microsoft Regional Director/MVP Writing

More information

NET237: Deploying Smart Client Apps with ClickOnce

NET237: Deploying Smart Client Apps with ClickOnce NET237: Deploying Smart Client Apps with Brian Noyes Principal Software Architect IDesign, Inc. (www.idesign.net) About Brian Principal Software Architect, IDesign Inc. (www.idesign.net) Microsoft MVP

More information

Prism Composite Application Guidance

Prism Composite Application Guidance Prism Composite Application Guidance Brian Noyes www.idesign.net Prism Developed by Microsoft patterns and practices Old name: Composite Application Guidance for WPF and Silverlight Guidance for building

More information

Implementing MVVM in Real World ArcGIS Server Silverlight Applications. Brandon Copeland LJA Engineering, Inc.

Implementing MVVM in Real World ArcGIS Server Silverlight Applications. Brandon Copeland LJA Engineering, Inc. Implementing MVVM in Real World ArcGIS Server Silverlight Applications Brandon Copeland LJA Engineering, Inc. 1 Agenda / Focused Topics Application Demo Model-View-ViewModel (MVVM) What is MVVM? Why is

More information

Build Process Driven Applications with WF

Build Process Driven Applications with WF Build Process Driven Applications with WF Brian Noyes www.idesign.net 2006 IDesign Inc. All rights reserved About Brian Microsoft Regional Director / Solution Architect MVP Writing Data Binding in Windows

More information

Introduction to.net Deployment. Brian Noyes IDesign, Inc. (

Introduction to.net Deployment. Brian Noyes IDesign, Inc. ( Introduction to.net Deployment Brian Noyes IDesign, Inc. (www.idesign.net) brian.noyes@idesign.net About Brian Principal Software Architect, IDesign Inc. (www.idesign.net) Microsoft MVP in ASP.NET Writing

More information

This tutorial is designed for software developers who want to learn how to develop quality applications with clean structure of code.

This tutorial is designed for software developers who want to learn how to develop quality applications with clean structure of code. About the Tutorial Every good developer wants and tries to create the most sophisticated applications to delight their users. Most of the times, developers achieve this on the first release of the application.

More information

Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day

Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day Level: Intermediate Benjamin Day Brookline, MA Consultant, Coach, & Trainer Microsoft MVP for Visual Studio ALM Team Foundation

More information

Smart Client Offline Data Caching and Synchronization

Smart Client Offline Data Caching and Synchronization Smart Client Offline Data Caching and Synchronization Brian Noyes Principal Software Architect IDesign,, Inc. www.idesign.net Offline Operations Challenges 1 What is a Smart Client Rich user interface

More information

Visual Studio 2015: Windows Presentation Foundation (using VB.NET Language) Training Course Outline

Visual Studio 2015: Windows Presentation Foundation (using VB.NET Language) Training Course Outline Visual Studio 2015: Windows Presentation Foundation (using VB.NET Language) Training Course Outline 1 Visual Studio 2015: Windows Presentation Foundation Program Overview This Four-day instructor-led course

More information

Windows Presentation Foundation (WPF)

Windows Presentation Foundation (WPF) 50151 - Version: 4 21 January 2018 Windows Presentation Foundation (WPF) Windows Presentation Foundation (WPF) 50151 - Version: 4 5 days Course Description: This five-day instructor-led course provides

More information

Build Better WPF & Silverlight applications using Prism v2

Build Better WPF & Silverlight applications using Prism v2 Build Better WPF & Silverlight applications using Prism v2 Client Application Challenges The Problem: Client Applications can be Difficult! How Do You Make The Application Dynamic, Customizable, Extensible,

More information

Pro Business Applications with Silverlight 4

Pro Business Applications with Silverlight 4 Pro Business Applications with Silverlight 4 Chris Anderson Apress* Contents at a Glance Contents About the Author Acknowledgments iv v xix xx a Chapter 1: Introduction 1 Who This Book Is For 1 About This

More information

Practical WPF. Learn by Working Professionals

Practical WPF. Learn by Working Professionals Practical WPF Learn by Working Professionals WPF Course Division Day 1 WPF prerequisite What is WPF WPF XAML System WPF trees WPF Properties Day 2 Common WPF Controls WPF Command System WPF Event System

More information

04 Sharing Code Between Windows 8 and Windows Phone 8 in Visual Studio. Ben Riga

04 Sharing Code Between Windows 8 and Windows Phone 8 in Visual Studio. Ben Riga 04 Sharing Code Between Windows 8 and Windows Phone 8 in Visual Studio Ben Riga http://about.me/ben.riga Course Topics Building Apps for Both Windows 8 and Windows Phone 8 Jump Start 01 Comparing Windows

More information

Developing Rich Internet Applications Using Microsoft Silverlight 4

Developing Rich Internet Applications Using Microsoft Silverlight 4 Developing Rich Internet Applications Using Microsoft Silverlight 4 Duration: 5 Days Course Code: M10554 Overview: This course covers intermediate and advanced topics required to develop professional Silverlight

More information

Android PC Splash Brothers Design Specifications

Android PC Splash Brothers Design Specifications Android PC Splash Brothers Design Specifications Contributors: Zach Bair Taronish Daruwalla Joshua Duong Anthony Nguyen 1. Technology background The Android x86 project has been in existence since 2011.

More information

Developing Rich Internet Applications Using Microsoft Silverlight 4

Developing Rich Internet Applications Using Microsoft Silverlight 4 Developing Rich Internet Applications Using Microsoft Silverlight 4 Course No. 10554 5 Days Instructor-led, Hands-on Introduction This course covers intermediate and advanced topics required to develop

More information

WPF and MVVM Study Guides

WPF and MVVM Study Guides 1. Introduction to WPF WPF and MVVM Study Guides https://msdn.microsoft.com/en-us/library/mt149842.aspx 2. Walkthrough: My First WPF Desktop Application https://msdn.microsoft.com/en-us/library/ms752299(v=vs.110).aspx

More information

Pro XAML with C# From Design to Deployment on WPF, Windows Store, and Windows Phone. Buddy James. Lori Lalonde

Pro XAML with C# From Design to Deployment on WPF, Windows Store, and Windows Phone. Buddy James. Lori Lalonde Pro XAML with C# From Design to Deployment on WPF, Windows Store, and Windows Phone Buddy James Lori Lalonde Contents J About the Authors About the Technical Reviewer Acknowledgments Introduction xiii

More information

Extending ASP.NET. Brian Noyes Principal Software Architect IDesign, Inc. ( (

Extending ASP.NET. Brian Noyes Principal Software Architect IDesign, Inc. (  ( Extending ASP.NET Brian Noyes Principal Software Architect IDesign, Inc. (www.idesign.net( www.idesign.net) About Brian Principal Software Architect, IDesign Inc. (www.idesign.net) Microsoft MVP in ASP.NET

More information

Cross-Platform Mobile Platforms and Xamarin. Presented by Mir Majeed

Cross-Platform Mobile Platforms and Xamarin. Presented by Mir Majeed Cross-Platform Mobile Platforms and Xamarin Presented by Mir Majeed Agenda 1. Sharing Code Among Different Platforms File-Linking into each App Project Portable Class Libraries 2. Solution Population Strategies

More information

Single Page Applications using AngularJS

Single Page Applications using AngularJS Single Page Applications using AngularJS About Your Instructor Session Objectives History of AngularJS Introduction & Features of AngularJS Why AngularJS Single Page Application and its challenges Data

More information

Beginning Silverlight 5 in C #

Beginning Silverlight 5 in C # Table of Contents: Chapter 1. Welcome to Silverlight 5 1.1 The Evolution of the User interface 1.2 Rich Internet Application Solutions 1.3 What is Silverlight? 1.4 Benefits of Silverlight 1.4.1 Cross-Platform/Cross-Browser

More information

WPF. Source Module 01: Lesson1

WPF. Source Module 01: Lesson1 WPF Creating an Application by Using Windows Presentation Foundation Lesson: Overview of WPF What Is WPF? WPF Architecture Defining User Interfaces in WPF WPF Capabilities and Features WPF Application

More information

Building Next Generation GUIs using Microsoft Expression Interactive Designer

Building Next Generation GUIs using Microsoft Expression Interactive Designer Building Next Generation GUIs using Microsoft Expression Interactive Designer Adnan Farooq Hashmi MVP Windows SDK User Group Leader, Core.NET Speaker INETA Pakistan www.pkblogs.com/coredotnet Please note

More information

Model-View-Control Pattern for User Interactive Systems

Model-View-Control Pattern for User Interactive Systems Model-View-Control Pattern for User Interactive Systems In various forms and guises J. Scott Hawker p. 1 Contents Key Model-View-Control (MVC) concepts Web MVC UI Controller in MVC GRASP Application Controller

More information

Windows Presentation Foundation. Jim Fawcett CSE687 Object Oriented Design Spring 2018

Windows Presentation Foundation. Jim Fawcett CSE687 Object Oriented Design Spring 2018 Windows Presentation Foundation Jim Fawcett CSE687 Object Oriented Design Spring 2018 References Pro C# 5 and the.net 4.5 Platform, Andrew Troelsen, Apress, 2012 Programming WPF, 2nd edition, Sells & Griffiths,

More information

Building a mobile enterprise application with Xamarin.Forms, Docker, MVVM and.net Core. Gill

Building a mobile enterprise application with Xamarin.Forms, Docker, MVVM and.net Core. Gill Building a mobile enterprise application with Xamarin.Forms, Docker, MVVM and.net Core Gill Cleeren @gillcleeren www.snowball.be Agenda Overall application structure The Xamarin application architecture

More information

Microsoft and Mobile. Jennifer Marsman Principal Developer Evangelist, Microsoft

Microsoft and Mobile. Jennifer Marsman Principal Developer Evangelist, Microsoft Microsoft and Mobile Jennifer Marsman Principal Developer Evangelist, Microsoft http://blogs.msdn.com/jennifer Twitter: @JenniferMarsman There is an app store for Windows 8. Why Windows? Opportunity As

More information

Mike Taulty Developer/Evangelist Microsoft Ltd

Mike Taulty Developer/Evangelist Microsoft Ltd Mike Taulty Developer/Evangelist Microsoft Ltd Windows/Phone app building today Windows Phone Devices Windows Devices Windows Phone 8.0 app platform Silverlight XAML C# Code Win32 WinRT Silverlight.NET

More information

For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to

For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to access them. Contents at a Glance About the Author...

More information

Windows Presentation Foundation Programming Using C#

Windows Presentation Foundation Programming Using C# Windows Presentation Foundation Programming Using C# Duration: 35 hours Price: $750 Delivery Option: Attend training via an on-demand, self-paced platform paired with personal instructor facilitation.

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

Data-Centric Single Page Apps with Angular, Web API, and Breeze

Data-Centric Single Page Apps with Angular, Web API, and Breeze Data-Centric Single Page Apps with Angular, Web API, and Breeze Brian Noyes CTO and Co-founder, Solliance (www.solliance.net) brian.noyes@solliance.net, @briannoyes About Brian Noyes www.solliance.net

More information

STARCOUNTER. Technical Overview

STARCOUNTER. Technical Overview STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation

More information

Course Details. Skills Gained. Who Can Benefit. Prerequisites. View Online URL:

Course Details. Skills Gained. Who Can Benefit. Prerequisites. View Online URL: Specialized - Mastering jquery Code: Lengt h: URL: TT4665 4 days View Online Mastering jquery provides an introduction to and experience working with the JavaScript programming language in the environment

More information

Classes, Objects, and OOP in Java. June 16, 2017

Classes, Objects, and OOP in Java. June 16, 2017 Classes, Objects, and OOP in Java June 16, 2017 Which is a Class in the below code? Mario itsame = new Mario( Red Hat? ); A. Mario B. itsame C. new D. Red Hat? Whats the difference? int vs. Integer A.

More information

COPYRIGHTED MATERIAL. Introducing the Project: The SmartCA Application. The Problem

COPYRIGHTED MATERIAL. Introducing the Project: The SmartCA Application. The Problem Introducing the Project: The SmartCA Application The project for this book is based on a real application for a real company. The names of the company and the application have been changed for privacy

More information

Essentials of Developing Windows Store Apps Using HTML5 and JavaScript

Essentials of Developing Windows Store Apps Using HTML5 and JavaScript Essentials of Developing Windows Store Apps Using HTML5 and JavaScript Course 20481A; 5 Days, Instructor-led Course Description In this course, students will learn essential programming skills and techniques

More information

Adapting Chronotron Speed Changer to Windows Phone 8.1

Adapting Chronotron Speed Changer to Windows Phone 8.1 Adapting Chronotron Speed Changer to Windows Phone 8.1 Meet the App Application Architecture Outlook After a Quick Code Review Universal Apps with Visual Studio Implementation Approach User Interface and

More information

ADF OAF Who Cares? You Do! Oracle Applications Framework / Application Development Framework - Which way do I go?

ADF OAF Who Cares? You Do! Oracle Applications Framework / Application Development Framework - Which way do I go? ADF OAF Who Cares? You Do! Oracle Applications Framework / Application Development Framework - Which way do I go? 2 Introductions Who am I and why am I here? Audience: Development Management OAF Developers

More information

Essentials of Developing Windows Store Apps Using HTML5 and JavaScript

Essentials of Developing Windows Store Apps Using HTML5 and JavaScript Course 20481C: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript Course Details Course Outline Module 1: Overview of the Windows 8.1 Platform and Windows Store Apps This module introduces

More information

DOT.NET MODULE 6: SILVERLIGHT

DOT.NET MODULE 6: SILVERLIGHT UNIT 1 Introducing Silverlight DOT.NET MODULE 6: SILVERLIGHT 1. Silverlight and Visual Studio 2. Understanding Silverlight Websites 3. Creating a Stand-Alone Silverlight Project 4. Creating a Simple Silverlight

More information

4/25/ Xamarin. All rights reserved.

4/25/ Xamarin. All rights reserved. 1 v v Each cell is represented by some data structure which is then visualized on the screen headshot.source =...; nameentry.text = person.name; emailentry.text = person.email; birthday.date = person.dob;...

More information

2310C VB - Developing Web Applications Using Microsoft Visual Studio 2008 Course Number: 2310C Course Length: 5 Days

2310C VB - Developing Web Applications Using Microsoft Visual Studio 2008 Course Number: 2310C Course Length: 5 Days 2310C VB - Developing Web Applications Using Microsoft Visual Studio 2008 Course Number: 2310C Course Length: 5 Days Certification Exam This course will help you prepare for the following Microsoft Certified

More information

Sundew. Application Framework

Sundew. Application Framework Sundew Application Framework Contents Hukano Sundew... 3 Introduction... 3 Idea and motivation... 3 The Sundew Application Model... 4 Architecture... 4 Model-View-ViewModel according to Hukano... 5 ViewModels...

More information

Introduction. Introduction

Introduction. Introduction Building ASP.NET MVC 3 Applications Using Visual C# 2010 Intro-1 Prerequisites This course assumes that you are familiar and experienced with Microsoft s.net Framework and ASP.NET development tools. You

More information

Mastering LOB Development

Mastering LOB Development Mastering LOB Development for Silverlight 5: A Case Study in Action Develop a full LOB Silverlight 5 application from scratch with the help of expert advice and an accompanying case study Braulio Di'ez

More information

03 Model-View-ViewModel. Ben Riga

03 Model-View-ViewModel. Ben Riga 03 Model-View-ViewModel Ben Riga http://about.me/ben.riga Course Topics Building Apps for Both Windows 8 and Windows Phone 8 Jump Start 01 Comparing Windows 8 and Windows Phone 8 02 Basics of View Models

More information

HOMELESS INDIVIDUALS AND FAMILIES INFORMATION SYSTEM HIFIS 4.0 TECHNICAL ARCHITECTURE AND DEPLOYMENT REFERENCE

HOMELESS INDIVIDUALS AND FAMILIES INFORMATION SYSTEM HIFIS 4.0 TECHNICAL ARCHITECTURE AND DEPLOYMENT REFERENCE HOMELESS INDIVIDUALS AND FAMILIES INFORMATION SYSTEM HIFIS 4.0 TECHNICAL ARCHITECTURE AND DEPLOYMENT REFERENCE HIFIS Development Team May 16, 2014 Contents INTRODUCTION... 2 HIFIS 4 SYSTEM DESIGN... 3

More information

Essentials of Developing Windows Store Apps Using C#

Essentials of Developing Windows Store Apps Using C# Essentials of Developing Windows Store Apps Using C# Course 20484A; 5 Days, Instructor-led Course Description In this course, students will learn essential programming skills and techniques that are required

More information

Architectural patterns

Architectural patterns Architectural patterns Open Source & DOTNET platform Understanding architectural design patterns (like MVC, MVP, MVVM etc.) is essential for producing a maintainable, clean, extendable and testable source

More information

ArcGIS Runtime SDK for.net Getting Started. Jo Fraley

ArcGIS Runtime SDK for.net Getting Started. Jo Fraley ArcGIS Runtime SDK for.net Getting Started Jo Fraley Agenda What is the ArcGIS Runtime? What s new for ArcGIS developers? ArcGIS Runtime SDK 10.2 for WPF ArcGIS Runtime SDK for.net Building Windows Store

More information

Index. Application programming interface (API), 38. Binary Application Markup Language (BAML), 4

Index. Application programming interface (API), 38. Binary Application Markup Language (BAML), 4 Index A Application programming interface (API), 38 B Binary Application Markup Language (BAML), 4 C Class under test (CUT), 65 Code-behind file, 128 Command Query Responsibility Segregation (CQRS), 36

More information

MOC 20481C: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript

MOC 20481C: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript MOC 20481C: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript Course Overview This course provides students with the knowledge and skills to develop Windows Store Apps using HTML5

More information

Introduction to Microsoft.NET Framework Programming using VS 2005 (C#)

Introduction to Microsoft.NET Framework Programming using VS 2005 (C#) Introduction to Microsoft.NET Framework Programming using VS 2005 (C#) Course Length: 5 Days Course Overview This instructor-led course teaches introductory-level developers who are not familiar with the

More information

Managing. mashup of chapters from. rpafi/jl enterprise88. Packt's bestselling Silverlight. Data and Media in Microsoft Silverlight 4: A.

Managing. mashup of chapters from. rpafi/jl enterprise88. Packt's bestselling Silverlight. Data and Media in Microsoft Silverlight 4: A. Managing Data and Media in Microsoft Silverlight 4: A mashup of chapters from Packt's bestselling Silverlight books Manage data in Silverlight, build and maintain rich dashboards, integrate SharePoint

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

APACHE SLING & FRIENDS TECH MEETUP BERLIN, SEPTEMBER APACHE JACKRABBIT: BASIC CONCEPTS Christian Riemath, Igor Sechyn

APACHE SLING & FRIENDS TECH MEETUP BERLIN, SEPTEMBER APACHE JACKRABBIT: BASIC CONCEPTS Christian Riemath, Igor Sechyn APACHE SLING & FRIENDS TECH MEETUP BERLIN, 26-28 SEPTEMBER 2012 APACHE JACKRABBIT: BASIC CONCEPTS Christian Riemath, Igor Sechyn About the speakers Igor Sechyn Senior CMS Developer Christian Riemath Senior

More information

FlexJS. OmPrakash Apache Flex PMC Member Advisory Software Engineer, IBM

FlexJS. OmPrakash Apache Flex PMC Member Advisory Software Engineer, IBM FlexJS OmPrakash Muppirala @bigosmallm bigosmallm@apache.org Apache Flex PMC Member Advisory Software Engineer, IBM Who am I? Advisory Software Engineer at IBM Apache Flex Committer and PMC Member UI Architect

More information

Pattern: Model-View-Controller (MVC) Beat Generator Example. Model-View-Controller. Model-View-Controller

Pattern: Model-View-Controller (MVC) Beat Generator Example. Model-View-Controller. Model-View-Controller Pattern: Model-View-Controller (MVC) Beat Generator MVC is an architectural pattern it specifies code organization at a higher level than a design pattern. (But the idea is similar it tells you how to

More information

Model-View-Controller Architecture

Model-View-Controller Architecture --Controller Architecture --Controller Architecture Controller --Controller (MVC) is an architectural pattern, a standard design in the field of software architecture. Heavily used by Apple in writing

More information

The name of this chapter should be Getting Everything You Can from

The name of this chapter should be Getting Everything You Can from Chapter 1: Exploring Visual Studio Extensions In This Chapter Getting the most out of Visual Studio Building the next generation of Web sites with AJAX Looking ahead to the future of Visual Studio The

More information

Overview and Technical Design Insurance Agent Portal, Pomegranate

Overview and Technical Design Insurance Agent Portal, Pomegranate Overview and Technical Design Insurance Agent Portal, Pomegranate This document describes the features and technical design of the exemplar code-named Pomegranate. This application is a SharePoint (ASP.Net)

More information

Chris Ainsley. Clean configuration - The foundation of clean code

Chris Ainsley. Clean configuration - The foundation of clean code Chris Ainsley Clean configuration - The foundation of clean code Best time to discover a configuration issue? Runtime Deployment App initialization Build-time Interactively Agenda Current Approaches Issues

More information

Apex TG India Pvt. Ltd.

Apex TG India Pvt. Ltd. (Core C# Programming Constructs) Introduction of.net Framework 4.5 FEATURES OF DOTNET 4.5 CLR,CLS,CTS, MSIL COMPILER WITH TYPES ASSEMBLY WITH TYPES Basic Concepts DECISION CONSTRUCTS LOOPING SWITCH OPERATOR

More information

DEVELOPING WEB APPLICATIONS WITH MICROSOFT VISUAL STUDIO Course: 10264A; Duration: 5 Days; Instructor-led

DEVELOPING WEB APPLICATIONS WITH MICROSOFT VISUAL STUDIO Course: 10264A; Duration: 5 Days; Instructor-led CENTER OF KNOWLEDGE, PATH TO SUCCESS Website: DEVELOPING WEB APPLICATIONS WITH MICROSOFT VISUAL STUDIO 2010 Course: 10264A; Duration: 5 Days; Instructor-led WHAT YOU WILL LEARN In this course, students

More information

a Very Short Introduction to AngularJS

a Very Short Introduction to AngularJS a Very Short Introduction to AngularJS Lecture 11 CGS 3066 Fall 2016 November 8, 2016 Frameworks Advanced JavaScript programming (especially the complex handling of browser differences), can often be very

More information

17 Roberts St #2 Brookline, MA

17 Roberts St #2 Brookline, MA Benjamin Day www.benday.com blog.benday.com 17 Roberts St #2 Brookline, MA 02445 benday@benday.com 617-645-0188 Last Updated August 7, 2009 Overview 12 years of software architecture, development, and

More information

ArcGIS Pro SDK for.net Advanced User Interfaces in Add-ins. Wolfgang Kaiser

ArcGIS Pro SDK for.net Advanced User Interfaces in Add-ins. Wolfgang Kaiser ArcGIS Pro SDK for.net Advanced User Interfaces in Add-ins Wolfgang Kaiser Session Overview MVVM Model View ViewModel - View and View Model Implementation in Pro - Dockpane Example - MVVM concepts - Multi

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use

More information

Chapter 1 Getting Started with Windows Presentation Foundation

Chapter 1 Getting Started with Windows Presentation Foundation Table of Contents Chapter 1 Getting Started with Windows Presentation Foundation 1 Exploring the New Features of WPF 4.0... 2 New WPF Controls for Business Applications... 3 Enhanced Support for WPF and

More information

Telerik Sales Dashboard: an Extensible Cross-Platform Application

Telerik Sales Dashboard: an Extensible Cross-Platform Application Telerik Sales Dashboard: an Extensible Cross-Platform Application Contents Introduction The Sales Dashboard Requirements Choice of Technologies The Implementation Implementing the Modules Module Implementation

More information