Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

dot net smart_client_development


Published on

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

dot net smart_client_development

  1. 1. Smart Client applicationDevelopmentUsingPresented by:Tamajit Chakraborty,Computer Science & Engineering ,6th semester,Roll 09
  2. 2. Stuff we’ll talk about…client modelWindows FormsCode Access SecuritySmart Device ProgrammabilityOffice System 2003Visual Studio Tools for Office
  3. 3. The Client ModelTraditional Rich Client Uncompromiseduser experience Flexible offline operation & storage Strong integration with client-side APIs(Application programming interface) Great developer tools support Serious security issues, viruses, etc.Traditional Web Client Broad desktop reach Easy administration Impaired or frustrating user experience No offline operation or storage Poor integration with client-side APIs DHTML / scripting tools non-existent.NET Framework Smart ClientTo the metal performance GDI(Graphics Device Interface)+& DirectX graphics Direct Win32 & COM as needed“Real time” (study of hardware andsoftware systems) interactivityFriction free deployment & versioning Launch app from a URL Embed control in a web pageSafe and secure app execution Code access securityAutomatic online / offline support Application updater component
  4. 4. Windows FormsThe .NET Framework Smart ClientOperating SystemCommon Language Runtime (CLR)Base Class Libraries (BCL).NET and XMLASP.NETWeb Forms Web ServicesWindowsFormsCommon Language SpecificationVisualBasic C# J# …VisualStudio.NETC++
  5. 5. Windows FormsThe .NET Framework Smart ClientSmart client is a term describing anapplication environment which:Delivers applications over a web HTTPconnectionDoes not require installation (or provideautomated installation and updates)Automatically updates without user actionHas the look and feel of desktopapplicationsMore user friendly.
  6. 6. Issues of Code SecurityThe enemy is among us – no perimetersInnocent but trusted code often plays host tomalicious mobile codeMalicious code can do anything that the userhas permissions to doThe user will always make the wrong securitydecision
  7. 7. LIBRARYOnly peoplewith amembershipcard can usebooks.Code Security in PicturesSecurityPolicyZYXY, would you get abook for me?Z, would you get abook for X?I would like tocheck out a bookAre you and all who will handle this book members?SharedLibraryLuringattackUntrustedcodeStackWalkSecurityDemandCallChainMEMBERcardEvidenceMEMBERcardMEMBERcard
  8. 8. Are you and all who will handle this book members?LIBRARYOnly thosewho have amember cardcan check outa book.ZYXY, would you get abook for me?Z, would you get abook for X?I would like tocheck out a bookX is not amember,but I vouchfor him.StackModifier:Assert() I don’twant to beresponsible – won’tpassbookspromotingviolence!StackModifier:Deny()I will onlypassbooksprintedafter 1980StackModifier:PermitOnly()Code Security in Pictures
  9. 9. Code Access SecurityAll Code in Call Chain is EvaluatedMYAPP (INTRANET). . . .myComponent.ReadSetting(key);. . . .MYCOMPONENT (LOCALMACHINE). . . .Stream fileStream = FileStream.Open(“settings.xml”);. . . .CallsGot Permission?Got Permission?ExceptionCallsFRAMEWORKpublic FileStream (string name) {FileIOPermission fp = new FileIOPermission(name)fp.Demand(). . . .}
  10. 10. Code Access SecurityStack Walk Stopped by AssertMYAPP (INTRANET). . . .myComponent.ReadSetting(key);. . . .MYCOMPONENT (LOCALMACHINE). . . .FileIOPermission fp = new FileIOPermission(FileIOPermissionAccess.Read, “settings.xml”);fp.Assert();Stream fileStream = FileStream.Open(“settings.xml”);CallsGot Permission?CallsFRAMEWORKpublic FileStream (string name) {FileIOPermission fp = newFileIOPermission(name)fp.Demand(). . . .} ReturnsReturns
  11. 11. Device ProgrammabilityBroad Reach vs. Smart DeviceASP.NET MobileControlsMobile WebBrowserRemote Web PagesDevice Operating SystemSmart DeviceProgrammability.NET CompactFrameworkLocal CodeSmart client
  12. 12. Smart Device ProgrammabilityRemote DebuggingSame user experience as desktop Compile application for device Automatically deploys to selected device Output Window used for deployment messagesSupported features include On-device debugging Breakpoints Multi-language debugging Call Stack, Watch windows
  13. 13. Smart Device ProgrammabilitySQL Server™ Windows® CE Edition 2.0On-device data engine for Windows CE-powered devicesRich replication and synchronization with SQLServerDesigned for high performance in resource-constrained environment
  14. 14. Visual Studio Tools for OfficeNew Projects Types for VS.NETPower and richness of the Office System “Code behind” for Word & Excel 2003 Secure auto-deployment of .NET application codeVS.NET developer productivity Real languages – Visual Basic .NET and Visual C# IntelliSense, code outlining, dynamic help, etc. Advanced debugging environment Visual designers for WinForms, XML, data, etc. Power of the .NET Framework and web servicesVisual Studio Tools can be downloaded from:
  15. 15. Advantage“Friction Free” DeploymentNo “installation” necessary – just run it Code downloads on-demand from any web server Saved in cache and dynamically updatedCopy to a folder and delete when done No registry entries or other dependenciesWindows Installer technology Self repairing installations, rollback, signing
  16. 16. Useful Resources TaskVision, sample code, forum, articles, etc.Mobility and the .NET Compact Framework Visual Studio Tools for Office, etc. Hundreds of active third party communities dotnet.framework.windowsforms
  17. 17. © 2013 TAMAJIT.THANK YOUAny questions?