C# &.NET Review. ConceptsDescriptionReference Computer Science The science of data processing WP Overview ProgrammingData Structures & Algorithms WP Overview.

Slides:



Advertisements
Similar presentations
Oct, 26 th, 2010 OGF 30, NSI-WG: Network Service Interface working group Web Services Overview Web Services for NSI protocol implementation
Advertisements

Pulan Yu School of Informatics Indiana University Bloomington Web service based Varuna.Net.
Overview Environment for Internet database connectivity
Web Service Architecture
Siebel Web Services Siebel Web Services March, From
Tahir Nawaz Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
General introduction to Web services and an implementation example
Web Services Darshan R. Kapadia Gregor von Laszewski 1http://grid.rit.edu.
Web Services Nasrullah. Motivation about web service There are number of programms over the internet that need to communicate with other programms over.
A Java Architecture for the Internet of Things Noel Poore, Architect Pete St. Pierre, Product Manager Java Platform Group, Internet of Things September.
Presentation 7 part 1: Web Services Introduced. Ingeniørhøjskolen i Århus Slide 2 Outline Definition Overview of Web Services Examples Next Time: SOAP.
Henrico Dolfing Business Segment Partners. Océ Document Technologies GmbH2 June, NET Framework Version 3.0.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
Web Services Members Troy Tony Ellen Vincent. Web Services What is it Why is it useful What have been solved Demo Alternative technologies Question.
14 1 Chapter 14 Database Connectivity and Web Development Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Ch 12 Distributed Systems Architectures
Chapter 15 Remoting Yingcai Xiao. ASP.NET is for building traditional thin- client applications (Web applications). Such applications rely on browsers.
Web Service What exactly are Web Services? To put it quite simply, they are yet another distributed computing technology (like CORBA, RMI, EJB, etc.).
Getting Started with Windows Communication Foundation 4.5 Ed Jones, MCT, MCPD, MCTS Consultant RBA Inc.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
Introduction SOAP History Technical Architecture SOAP in Industry Summary References.
.NET, and Service Gateways Group members: Andre Tran, Priyanka Gangishetty, Irena Mao, Wileen Chiu.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
.NET 3.0, 3.5, 4.0 WCF, WPF, WF, CardSpace, LINQ, Task Parallel.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
VS.NET Syllabus By Peter Huang.
Introduction to .NET Rui Ye.
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
Internet, intranet, and multimedia database processing l Database processing across local and wide area networks l Alternative architectures for distributing.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Web Services & WCF ~ Ankit. Web services A web service is a collection of protocols and standards used for exchanging data between applications or systems.
Fundamentals of Database Chapter 7 Database Technologies.
Lecture 15 Introduction to Web Services Web Service Applications.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
10/7/2015Copyright © 1998 – 2014 BTE Corporation, All Rights Reserved1 B T E C O R P O R A T I O N SmartMaster TM Distributed Controller.
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
.Net and Web Services Security CS795. Web Services A web application Does not have a user interface (as a traditional web application); instead, it exposes.
The Distance Learning Session Management System for the Next Generation Internet Se-Jun Na.
Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
XML and Web Services (II/2546)
Kemal Baykal Rasim Ismayilov
An Introduction to Web Services Web Services using Java / Session 1 / 2 of 21 Objectives Discuss distributed computing Explain web services and their.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
.NET Mobile Application Development XML Web Services.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
In this session, you will learn to: Understand managed code Create managed database objects Define the Hypertext Transfer Protocol endpoints Implement.
Exploring Networked Data and Data Stores Lesson 3.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
A service Oriented Architecture & Web Service Technology.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
The Holmes Platform and Applications
Introducing the Microsoft® .NET Framework
.NET Omid Darroudi.
Netscape Application Server
Sabri Kızanlık Ural Emekçi
WEB SERVICES.
Unit – 5 JAVA Web Services
Introduction to Web Services and SOA
.NET 3.0, 3.5, 4.0 WCF, WPF, WF, CardSpace, LINQ, Task Parallel
Distributed System using Web Services
Introduction to Web Services and SOA
Dot Net Application PROF. S. LAKSHMANAN, DEPT. OF B. VOC. (SD & SA),
Distributed System using Web Services
WCF Data Services and Silverlight
Presentation transcript:

C# &.NET Review

ConceptsDescriptionReference Computer Science The science of data processing WP Overview ProgrammingData Structures & Algorithms WP Overview Data StructuresFormatted data storeWP Overview AlgorithmsMethods to process data efficiently WP Overview The Essence

ConceptsDescriptionReference Code ReuseAcross functions (modules) Across modules (DLL) Across processes (OLE, object-linking-embedding) Across systems (WS, Cloud Computing) WP Overview SystemsSolution systems for solving real world problems WP Overview SkillsKnowledge, Solution, Design, Create WP Overview The Essence

Online Object Sharing (Tim Reynolds, 2005)

Data Structures

ConceptsDescriptionReference Value TypesStack objectsC2 Reference TypesHeap objectsC2 PropertiesSecured data with accessorsC2 BoxingValue to referenceC2 UnboxingReference to valueC2 DatasetMemory mapping of a database table C10 DataGridGUI for a database tableC10 Data Structures

ConceptsDescriptionReference Meta DataData that describes dataC3 SchemaCollection of meta dataC3 ManifestoMeta data describes assembliesC3 ReflectionAPIs for reading meta data. Allowing the creation of classes and objects dynamically. C3 Data Structures

ConceptsDescriptionReference IP PacketsThe format for transmitting dataC9 XMLText format for describing dataC13 SOAPObject-oriented XML data formatC11 Data Structures for the Internet

ConceptsDescriptionReference Web.configXML data for configure web applications C9 Session Cache For storing web application global data C9 CookiesFor storing web data at clientsC11 DatabasePersistent data store on a server.C12 Session State Server Persistent web application data store on another server C9 Data Structures for the Internet

Algorithms

ConceptsDescriptionReference PropertiesSafe and convenient way to access protected data C2 ReflectionsAPIs for dynamical creation of classes and objects. C3 EDPEvent-driving programmingC4 GUIGraphical User Interface representing algorithms C4 ControlsGUI items for generating events. C4 Algorithms

ConceptsDescriptionReference Web FormsGUI EDP programming modelC5/C9 Code Behind Protecting source code by creating DLLs to share. C9 XCopyObject-oriented deploymentC9 DB Access Patterns Protocols for dynamically access data online. C12 TransactionAll-or-None DB operationsC12 Algorithms

ConceptsDescriptionReference AuthenticationIdentifying usersC10C10, PA5 AuthorizationGiving user permissionsC10C10, PA5 DB-based Authentication Storing credentials in a database C10C10, PA5 Role-based Authorization Giving group permissionsC10C10, PA5 Code-based Authorization Dynamically giving user permissions C10C10, PA5 Algorithms (Security)

ConceptsDescriptionReference Web Services Protocols for dynamically sharing algorithms online. C11 WS ProxiesRepresenting WS at client side.C11 For-fee WSAuthentication protocols for web services C11 WSDLFormat for describing web methods (APIs to algorithms) C11 Algorithms (WS)

Systems

ConceptsDescriptionReference CIL/CTSFor language-independent programming WP Overview CLRFor platform-independent execution WP Overview DLLSecured way of sharing codeC3C3, PA1 Web Services Protocols for dynamically sharing code online C11 Systems (Foundations)

ConceptsDescriptionReference Console Application Stand-alone command-line applications C1/C3C1/C3, PA1 Windows Forms For developing stand-alone GUI EDP applications C4C4, PA2 Web Applications For developing web-based GUI EDP applications C5C5, PA3 Enterprise Applications For developing multi-tier web applications C9/C10/C12C9/C10/C12, PA4/PA5 Online Visual Programming Studio For building GUI EDP applications online. C3/C5C3/C5, PA3 Systems (Applications)

ConceptsDescriptionReference Web ServicesProtocols for dynamically sharing code online C11 WS Consumptions Protocols for developing applications that consumes WSs. C11 Cloud Computing Virtualized on-demand scalable web applications. C11 SaaS (Software as a Service) Cloud-based applications to be shared online with users and programmers. C11 Systems (Cloud Computing)

More.NET Features

Remoting, WCF, WPF, WF, MVC, LINQ, Multithreading, Task Parallel, IoT

Remoting

XML Web Services Proxy of Interface 2 Client 2 Application 1 UDDI Registry 1 WSDL Interface 1 UDDI Registry 2 Application 2WSDL Interface 2 SOAP WEB Proxy of Interface 1 Client 1 WS Class, Contract, Registry, Proxy. XML/HTML: inefficient communication, limited representation power.

Remoting is for closely coupled applications with a tighter coupling of client and server. Such applications have their own client programs and don’t depend on browsers to communicate with the servers. They are “rich-client” applications and distributed applications. Better suited for two-way communication between clients and servers than are conventional Web applications. Closely coupled applications utilize network bandwidth more efficiently because they can use lean binary protocols in lieu of HTTP. “Rich-clients” can use Windows forms to better overcome the limitations of HTML. Close coupling facilitates stateful connections between clients and servers, which in turn simplifies the task of building stateful applications.. Remoting

Closely coupled applications building tools: –DCOM (Distributed Component Object Model), –CORBA (Common Object Request Broker Architecture), –Java RMI (Remote Method Invocation)..NET Remoting: System.Runtime.Remoting is for building closely coupled rich-client applications without the hassles that come with COM programming—apartments, IDL (Interface Definition Language), reference counting, lack of exception handling, incompatible languages and data types, and so on..NET remoting is a better COM than COM.. Remoting

Windows Communication Foundation (WCF)

WCF: Windows Communication Foundation For distributed applications. Using service oriented architecture (SOA). Clients can consume multiple services; Services can be consumed by multiple clients. (M:M) Services have WSDL interface. WCF examples: WSS (Web Services Security, extension to SOAP to apply security to web services), WS-Discovery (Web Services Dynamic Discovery, a multicast discovery protocol to locate services), For building WS-based Multi-tier web application.

WCF: Windows Communication Foundation Endpoints: client connects to a WCF service at an Endpoint, each service exposes its contract via endpoints. End point ABC: address, binding, contract WCF endpoints use SOAP envelope to communicate with clients (for platform independence). Behaviors allow the developer to customize how the messages are handled.

Windows Presentation Foundation (WPF)

WPF: Windows Presentation Foundation Graphical subsystem. Based on DirectX 2D and 3D graphics, vector graphics and animation Remote or standalone Safe remote view with IE. Uses XAML to define UI elements. XAML: eXtensible Application Markup Language

Windows Workflow Foundation (WF)

WF: Windows Workflow Foundation Workflow: a series of distinct programming steps. An activity at each step. Workflow Designer in Visual Studio. Workflow Engine: scheduling, managing, tracking workflows. To create applications that execute an ordered business process (UA curriculum proposal approval system).

LINQ Language Integrated Query

Embedded SQL in C# as strings StringBuilder builder = new StringBuilder (); builder.Append ("select count(*) from users " + "where username = \'"); builder.Append (username); builder.Append ("\' and pwd = \'"); builder.Append (password); builder.Append ("\';"); MySqlCommand command = new MySqlCommand (builder.ToString (), connection); Int64 count = (Int64) command.ExecuteScalar ();

LINQ: Language Integrated Query var results = from c in SomeCollection where c.SomeProperty < 10 select new {c.SomeProperty}; foreach (var result in results) Console.WriteLine(result);

MVC (Model View Controller)

DBMS / Database ServerApplication Server WEB S E R V E R WEB C L I E N T Database User Interface Database Engine Supporting Software Database API MODEL Application Logic CONTROLLER App User Interface VIEW Architecture of a Four-Tier Application

Multithreading

Multithreading is a mechanism for performing two or more tasks concurrently.  In the managed world of the common language runtime, the fundamental unit of execution is the thread.  A managed application begins its life as a single thread but can spawn additional threads.  Threads running concurrently share the CPUs/GPUs by using scheduling algorithms provided by the system.  To an observer, it appears as if all the threads are running at once.. Multithreading

Example using System; using System.Threading; class MyApp { static void Main () { for (int i=0; i<10; i++) { Thread thread = new Thread( new ThreadStart(ThreadFunc)); thread.Name = "My thread # " + i; thread.Start (); }

Example static void ThreadFunc () { String name = Thread.CurrentThread.Name; for (int i=0; i<10; i++) { for( int j=0; j< ; j++); //work System.Console.WriteLine (name + " running at "+ DateTime.Now); }

Task Parallel

Parallel Extensions Managed concurrency library TPL: Task Parallel Library PLINQ: Parallel LINQ Multithreading based. Take advantages of muti-core (Intel) and many core (Nvidia GPU)

Microsoft Universal Windows Platform Device independence PCs, Surfaces, Smart Phones, Xboxes Any language supported by.NET Use XAML (eXtensible Application Markup Language) to define application

IoT Internet of Things Connecting everything over the Internet

Microsoft: Can be connected to Microsoft Cloud (Azure) Tim and Cory use IoT to connect to their RasberryPI to play video gamesRasberryPI Will be taught in HCI (Human Computer Interaction) course in the summer.