Developing Smart Client Applications.Henrik Lykke Nielsen Software arkitekt, Captator Microsoft Regional Director for Denmark

Slides:



Advertisements
Similar presentations
Microsoft Office ® Access 2007 Microsoft Office Access 2007: Introduzione allo sviluppo Fabio Santini.NET Developer Evangelist Microsoft Italy.
Advertisements

OLAP Cubes and Pivot Tables Leveraging the Power of a Microsoft EPM Solution EPM Customization Series Part 1 February 21 st, 2007 Brendan Giles, PMP, MCP.
Developing Smart Client Applications For The Enterprise Keith Elder Team Leader / Sr. Software Engineer Quicken Loans Blog:
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
CHANGE THINGS YOUR WAY May 30, 2006 Sales Force Automation Koen Pellegrims.
The Ins and Outs of Secure Data Access Jørgen Thyme Developer & Platform Strategy Group, Microsoft
The Microsoft Technical Roadshow 2006 Welcome and Introduction Kevin McDaniel Developer & Platform Evangelism Group Microsoft Ltd
What’s New for Smart Client Developers in Visual Studio 2005? Mike Pelton Systems Engineer Microsoft Ltd
Windows Forms in Visual Studio 2005: An in-depth look at key features Name: Mike Henderlight Title: Program Manager.
What’s New for Smart Client Developers in Visual Studio 2005? Mike Pelton Systems Engineer Microsoft Ltd
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 10: Server Administration.
It’s always better live. MSDN Events Developer Productivity Improvements with Visual Studio 2008 and Office Business Applications.
Microsoft CRM 3.0 Features that provide values for customers.
Creating a SharePoint App with Microsoft Access Services
Microsoft Office Access 2007 A rich client for Windows SharePoint Services 3.0 Mark Bower Senior Consultant Microsoft UK
Deploying and Maintaining Smart Client Applications.Henrik Lykke Nielsen Software arkitekt, Captator Microsoft Regional Director for Denmark
Windows Forms in Visual Studio 2005: An Overview Saurabh Pant Program Manager Microsoft Corporation.
Powerful, modern desktops enable next generation applications Hardware acceleration brings real-time lighting, texturing and rendering Visual.
Michael Atkins. Note:  This is a non-technical overview  Some light technical background is given, to put things in context  Some of the content is.
WEB329 ASP.NET: A Lap Around the New Enhancements for Web Developers in Microsoft Visual Studio 2005 Omar Khan Lead Program Manager Web Platform and Tools.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
J2EE DESIGN Thanh Nguyen - 10/8/12www.smartbiz.vn1.
OFC304 Excel 2003 Overview: XML Support Joseph Chirilov Program Manager.
DEV290 Building Office Solutions with Visual Studio Eric Carter Lead Developer Developer Platform & Evangelism Microsoft Corporation.
2007 Microsoft Office System Overview 2007 Microsoft Office System Overview Elizabeth Caley Senior Product Manager Microsoft Canada.
IE 411/511: Visual Programming for Industrial Applications
Todd Kitta  Covenant Technology Partners  Professional Windows Workflow Foundation.
AJAX and Atlas in ASP.NET 2.0 William J. Steele MSDN Developer Evangelist Microsoft Corporation
CFO Summit. Microsoft Business Solutions Customer Relationship Management (aka Microsoft CRM) Building Profitable Customer Relationships Alex Simons Product.
 Evolution of Smart Client  What is Smart client?  Types of Smart client  Architectural challenges  Smart Client Architecture  Demo application.
Tom Castiglia Hershey Technologies
DEV325 Deploying Visual Studio.NET Applications Billy Hollis Author / Consultant.
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
Part II - Microsoft ® Project 2000 Enterprise Deployment Templates.
Windows Forms in Visual Studio 2005: An Overview Name: Joe Stegman Title: Lead Program Manager Session code.
ARCH-4: The Presentation Layer in the OpenEdge® Reference Architecture Frank Beusenberg Senior Technical Consultant.
Slide 1.NET Development for Project 2003 Samples from the Project 2003 SDK Jim Corbin Programmer Writer Office Developer Documentation Microsoft Corporation.
DEV337 Modeling Distributed Enterprise Applications Using UML in Visual Studio.NET David Keogh Program Manager Visual Studio Enterprise Tools.
James Akrigg Microsoft Ltd Integrating InfoPath Forms Into Workflow Solutions And Business Processes.
Windows Forms in Visual Studio 2005 Mike Pelton Systems Engineer Microsoft Ltd
Microsoft Dynamics NAV 2009 and Architecture Overview Name Title Microsoft Corporation.
Name Microsoft Student Partner Overview of the Visual Studio 2005 Express Products.
Windows Role-Based Access Control Longhorn Update
DEV303 ASP.NET: Leveraging Visual Studio.NET For Web Projects Tony Goodhew Product Manager Microsoft Corp.
Quick overview of ASP.NET Ajax Ajax deep-dive Cover some key real-world problems Discuss solutions, patterns, opportunities Lots of demos And more of.
Windows Forms in Visual Studio 2005: An in-depth look at key features Name: Joe Stegman Title: Lead Program Manager Session code.
What’s New in Windows Forms 2.0 Stephen Turner Software Design Engineer
Visual Studio 2005 Team System: Enabling Better Software Through Testing Tejasvi Kumar Technology Specialist - VSTS Microsoft Corporation
Microsoft Visual Studio 2005 Tools for the Office System: Building Office Solutions Using Visual Studio 2005 Tools for Office Andrew Coates Developer Evangelist.
DEV332 Programming for the Middle Tier in Visual Basic.NET Billy Hollis Author / Consultant.
The Office Development Platform & Visual Studio Tools for Office Mike Hernandez Product Manager Microsoft Corporation Steven Goulet Group Program Manager.
The 2007 Microsoft Office System Servers Enterprise Content Management, Workflow and Forms Martin Parry Developer and Platform Group, Microsoft Ltd
Gowtham Prasad K N Partner Technical Consultant | Microsoft Corporation |
DEV221 Windows Forms in Visual Studio 2005: An Overview Saurabh Pant Program Manager Microsoft Corporation.
ASP.NET 2.0 Mohammed Abdelhadi Developer.NET Evangelist Microsoft Corporation.
Building Enterprise Applications Using Visual Studio®
1/10/2018 9:33 PM Cloud Roadshow © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO.
Integrating SharePoint 2010 with Office 2010
Chris Menegay Sr. Consultant TECHSYS Business Solutions
Visual Studio Tools for Office 2005
Enterprise Library Overview
PowerApps and Microsoft Flow for Business Users
Microsoft Dynamics.
Visual Studio 2005 Tools For Office: Creating A Multi-tier Application
2/24/2019 6:15 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Windows Forms in Visual Studio 2005: An in-depth look at key features
Introduction to ASP.NET Parts 1 & 2
Windows Forms in Visual Studio 2005: An Overview
Mark Quirk Head of Technology Developer & Platform Group
Presentation transcript:

Developing Smart Client Applications.Henrik Lykke Nielsen Software arkitekt, Captator Microsoft Regional Director for Denmark

Today's Agenda Best practices for building well-designed, secure, data-driven, smart client applications Session 1: Designing and building smart clients Patterns and practices for smart clients, IssueVision Session 2: Securing smart client applications Tips for secure data, CAS, encryption, and more Session 3: The ins and outs of secure data access Best practices for smart client data, offline data Session 4: Deploying and maintaining smart clients Tips for deploying and easily updating apps

Session Agenda Smart clients: a new breed of Windows app See it in action: IssueVision Drill-down: Design choices for desktop clients Smart clients in summary

“Smart-clients” er den næste naturlige udvikling Teknologi udvikling Shift happens Muligheder og egenskaber Tid Mainframe “ Dum ” terminal PC CUI PC GUI LAN Client-serverRADKomponenter Web Applikations server XML web services Enterprise integration N æ ste generation af klienter

New Breed of Windows App Enables “occasionally connected” work Leverages the best of Windows Superb usability for simple and complex tasks Power and performance of the local PC Pixel-precise layout, consistent for every user And solves common problem of Windows apps Easy deployment and maintenance Permissions not only based on user identity

Smart Client Defined 1.Windows user interface 2.Server-based application data 3.Local resources Additional Smart Client Attributes Solve common Windows application problems: data, security, and deployment 4.Disconnected data 5.Sophisticated security 6.Easy to deploy and maintain Wait! That’s what we’re doing today! Yes, but there’s more!

What a Smart Client Isn’t User interface is not the browser Not a new application architecture N-tier architectures still apply Client/server is still an option

Smart Client or Not? Automatic Updates? Rich Windows Experience? Seamless Offline Support? Better Connected?Smart Client? HotmailYesNo YesNo NotepadNoDebatableYesNo Outlook XPNoYesSort ofYesNo Outlook 2003NoYes Close... Microsoft Money Yes IssueVisionYes

Eksempel fra Captator Slutkunde med web-browser IIS SQL Shop-administrator MSDE database Filer til data integration ERP system E-handelsportal Data, applikation og komponenter PC

Introducing IssueVision Scenario: Helpdesk Issue Tracking Features: Great usability Shift seamlessly to working offline Shows best practices UI Patterns Occasionally connected data SecurityDeployment Access to full source code

IssueVision: Smart Client In Action

IssueVision Review Leverages the best of Windows Attractive desktop client, great usability Move seamlessly between online and offline Secure access to server data Secure access to local resources Cost-effective to install and maintain Solves common problems of Windows apps Automatic updates No DLL Hell

Drill Down: Design Choices for Desktop Clients Design Patterns Coordinating multiple views of the same data Coordinating command state Custom Controls Windows XP Themes

Design Patterns Promote consistency and maintainability Value increases with for app complexity Microsoft Patterns and Practices site: IssueVision desktop client patterns Observer Pattern Coordinates multiple views of the same data Command Pattern Coordinates menu items and toolbar buttons that perform the same function

Coordinate Views of Data Observer pattern Easier to keep a consistent and maintainable view of the data Half as many connections between actions, views Views are independent and unaware of each other Action Data View  view & Action  view Messages about the data Data notifies observers via events when the state of the data changes

Implementing an Observer m_subject = new IssueSubject() paneLeft.Subject = m_subject 1.Assign the subject to the observers (MainForm_Load) 4.Observers handle subject events to rebind data, if they care Handles m_subject.DataChanged ‘ rebind 2.Observers bind and save changes to Subject.DataSet 3.When data changes, subject raises DataChanged event IssueSubject a b c d

Observer Pattern

Coordinate Command State Related menu and toolbar widgets are not automatically handled together Command Pattern Command objects unify the state and action for related UI widgets Example: “Save” action Menu item Toolbar button Context menu

Implementing a Command action = New Command.Action(AddressOf WorkOffline_Action) offlineCommand = New Command(action) 1.Create a Command for each action in MainForm_Load() MenuItemCommander.Connect(menuWorkOffline, offlineCommand ) ToolBarButtonCommander.Connect(tlbOffline, offlineCommand ) 2.Wire menu items and toolbar buttons to the Command using Commander objects 3.Control button and menu item state through the Command ' Disable all UI widgets connected to this command offlineCommand.IsEnabled = False

Command Pattern

Custom Controls Encapsulate a set of user interactions Or, present information in a new way Try before you buy Visual Basic.NET Resource Kit Lots of other downloads … Create your own reusable control IssueVision’s Custom Controls ExpandableListChartPane

IssueList Control

Tips For Custom Controls Application-specific controls Reusable controls Bind to a generic data type where possible Put generic behavior in a base class, and application-specific behavior in a derived class Leverage VS.NET designer support.NET framework property types use built-in designer support Public Property ActiveGradientLowColor() As Color Add designer attributes to public members Description("Low color of the active gradient."), _ Category("Appearance"), _ DefaultValue(GetType(Color), "255, 165, 78")> _ Public Property ActiveGradientLowColor() As Color

Windows XP Themes Give your app a fresh look Gives your client UI flat-look input controls and rounded buttons Works on Windows XP only Application.EnableVisualStyles() Set FlatStyle property to FlatStyle.System on controls Call prior to creating forms or controls In main form’s construction

EnableVisualStyles()

Best Practices: Desktop Client Make your UI fit the data Find the best way for users navigate to and visualize your data Use design patterns to improve consistency and maintainability Use custom controls for great usability Improves consistency and code reuse too Add a fresh look with Windows XP themes

Smart Clients in Summary Smart clients—a new breed of Windows app Awesome usability of Windows, easy maintenance Extends the Windows client to new solutions: “Occasionally connected” offline data Deploy from Web Auto-updates Many more best practices and demos coming up! Data Access in Smart Clients Securing Smart Clients Deploying and Maintaining Smart Clients

Resources Patterns and Practices Visual Basic.NET Resource Kit msdn.microsoft.com/vbasic/vbrkit msdn.microsoft.com/vbasic/vbrkit Windows Forms Programming Visual Basic.NET Language Essentials msdn.microsoft.com/vbasic/using/understanding msdn.microsoft.com/vbasic/using/understanding Shows and webcasts msdn.microsoft.com/showsandwebcasts msdn.microsoft.com/showsandwebcasts Nyheder, artikler, information, …

© Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.