20a09e93fde1e426ab21c928ad6e4195.ppt
- Количество слайдов: 28
Fun With ●NET (What is. NET anyway? ) Dr. Bernie Domanski The City University of New York / CSI (c)Domanski, 2002 -3. All Rights Reserved
Vision Statement n n . NET affects individuals, businesses, & developers Individuals: a more personal integrated computing experience Businesses & Developers: Changes the way software is built & how products are sold Purpose: to present. NET so YOU can evaluate its impact on your organization (c)Domanski, 2002 -3. All Rights Reserved 2
How’d We Get Here n n n People have been laying fat pipes Bandwidth is a lot less limited than in the past Combine with the Moore's Law – n n n power doubles every 18 months prices are halved Real distributed computing for the first time: n n bandwidth is less expensive, so … you can do the processing wherever it is most optimal. (c)Domanski, 2002 -3. All Rights Reserved 3
Examples n Napster – n n Rich client talking to a directory service in the cloud Instant Messaging – n Rich client talking to a buddy list in the cloud, and communicates with other rich clients in the network (c)Domanski, 2002 -3. All Rights Reserved 4
How to Make Distributed Computing Explode? n Web services n n n Aggregation and integration n n Everything needs to be a Web service. Applies to both pieces of software and resources in the network like storage. aggregate & integrate Web services in very simple easy ways. Simple and compelling user experiences n what some used to call killer applications - that cannot be ignored. (c)Domanski, 2002 -3. All Rights Reserved 5
Introduction to. NET n Strategy: n n n independence from a specific language or platform. developers can create a. NET application in any. NET-compatible language. Programmers contribute to the same software project, writing code in the. NET languages n Visual Basic, n Visual C++, n C# (c)Domanski, 2002 -3. All Rights Reserved 6
. NET Architecture n Multiple platforms = Portability n Web Services n n Re-useable building blocks Example: Dollar-Rent-a-Car (c)Domanski, 2002 -3. All Rights Reserved 7
Dollar Rent-A-Car n n Airline partner wants to enable its customers to access Dollars’ reservation system from its own website Dollar allows the airline to access it's database and make reservations Provides access via a Palm PDA too Web services enable n n n Communication over the Web, even though the airline uses UNIX and Dollar uses Windows 2000. By creating a web service as opposed to a customized service specifically for the airline, … … Other airlines or hotels can use Dollars’ system without additional work. (c)Domanski, 2002 -3. All Rights Reserved 8
Software Reuse on the Internet n n . NET programmers concentrate on their own code Don’t have to implement every component of every application They’ll concentrate on their own development Companies will buy Web services for n n n db’s, security, authentication, data storage, language translation (c)Domanski, 2002 -3. All Rights Reserved 9
Lets Play a Little n Please forgive my typing skills!! n A look at the development environment and a bit of code (c)Domanski, 2002 -3. All Rights Reserved 10
The Glue: XML and SOAP n SOAP: n n n XML n n n Simple Object Access Protocol Enables web services to communicate e. Xtended Markup Language Gives meaning to data Universal Data Access n n n Data resides centrally as opposed to de-centralized With security, any device could see & edit No complex synchronization of multiple copies (c)Domanski, 2002 -3. All Rights Reserved 11
Matching tags
SOAP n n Lightweight protocol for a decentralized, distributed environment XML-based with 3 parts: n n n Envelope – describes message & how to process it Rules for expressing application data-types Convention for representing Remote Procedure Calls and responses (c)Domanski, 2002 -3. All Rights Reserved 13
SOAP Message Embedded in HTTP Request POST /Stock. Quote HTTP/1. 1 Host: www. stockquoteserver. com Content-Type: text/xml; charset="utf-8" Content-Length: nnnn SOAPAction: "Some-URI"
SOAP Message Embedded in HTTP Response HTTP/1. 1 200 OK Content-Type: text/xml; charset="utf-8" Content-Length: nnnn
. NET Framework and the Common Language Runtime . NET Framework CLR COM+/MTS Services Web Services IBM (c)Domanski, 2002 -3. All Rights Reserved SUN Common Language Runtime (CLR) powers. NET Framework. The framework supports Microsoft Legacy enterprise services (COM+ formerly MTS), and also supports Web services, enabling cross-platform integration within and across enterprises. 16
. NET Framework n n Manages & executes appl’s & Web services Framework Class Library enforces security & other programming capabilities n n CLR is the Virtual Machine – n n n analogous to the Java/J 2 EE class libraries Language- neutral Component-oriented Modules are components and are packaged for execution in DLL’s (c)Domanski, 2002 -3. All Rights Reserved 17
Languages APL VB compilation: n VB to MSIL (Microsoft Intermediate Language) n n n Contains instructions for CLR weaves code from all languages together Python Mercury C# n Fortran J# RPG VB. NET COBOL Oberon Scheme VC++ . NET Component Oz Pascal Small. Talk Curriculum Pascal Standard ML Eiffel Perl JScript MSIL to platform-specific machine language (c)Domanski, 2002 -3. All Rights Reserved 18
Benefits n n n With. NET Framework installed on a platform, that platform can run any. NET program Code is written once and executable on any. NET platform -> no porting CLR manages memory n n C++: new and delete -> orphans! FCL has reusable components (c)Domanski, 2002 -3. All Rights Reserved 19
What Stays the Same n n Individuals will still work with familiar interfaces Hardware will still run operating systems like Windows, UNIX, Windows CE, Palm. OS Developers will still use their preferred language Legacy systems do not need to be replaced – newly available Web services : n n Microsoft Host Integration Server - simplified access to mainframes Microsoft Biz. Talk™ Server - makes necessary automated conversions of data to XML. Next generation of distributed computing via. NET builds on the current generation Collaboration / Interoperability / Technology Islands (c)Domanski, 2002 -3. All Rights Reserved 20
What. NET Might Mean to Business n Hope of n easier integration within & between businesses n More engaging consumer applications n Reduced development time & costs n Easier maintenance n Empowering employees with data access from any smart device n Exposing information from different departments as XML, sharing information to create a new application (c)Domanski, 2002 -3. All Rights Reserved 21
Will. NET and Web Services Find Acceptance in the Enterprise? n n n You don’t use Microsoft's stuff? (highly unlikely) You probably still need to interoperate with it! Enables interoperability on the corporate intranet n n Enables collaboration across the internet n n n UNIX, Windows, mainframe is the norm VPN-like XML exchanges among companies, and. NET Web services standardize transactions using SOAP XML is the magic ingredient n n describes both procedural interfaces and data formats. describes complexity in a way that machines can process more accurately (c)Domanski, 2002 -3. All Rights Reserved 22
Reality n 80 -20 Rule n n n . NET delivers 80% of programming’s best practices Requires 20% of the knowledge and effort Should help managers as well n n Those who haven't coded in years become comfortable They may sketch out prototypes using. NET rather than a whiteboard (c)Domanski, 2002 -3. All Rights Reserved 23
. NET vs J 2 EE ? ? n Portability? n n Cost? n n Port to LINUX underway a. NET unit of work will be less than the equivalent J 2 EE unit of work Performance? n existing benchmarks appear to favor the Microsoft platform (c)Domanski, 2002 -3. All Rights Reserved 24
Benchmarks n simple timing comparison of the double-loop code n n 100, 000 type double floating point operations (multiply, square root, addition). compare a very specific type of compute-intensive numeric calculation with n no I/O, n No file or network functionality, not meant to suggest overall performance double x 1, x 2, x 3=0; for (x 1=1; x 1<=10000; x 1++) for(x 2=1; x 2<=10000; x 2++) x 3 += Math. Sqrt(x 1*x 2); Useful starting point for evaluating scientificcomputation based performance n tends to be numeric-compute intensive. (c)Domanski, 2002 -3. All Rights Reserved 25
Results C# (. NET Framework SDK) source 6. 8 sec C# (execution versus JIT + execution) source 6. 78 vs 7. 00 sec JScript. net (. NET Framework SDK) source 6. 8 sec C (VC++6 Standard) source 10. 4 sec Java (Sun j 2 se v 1. 3. 1) source 6. 8 sec Java (Sun j 2 se v 1. 4. 0 -rc) source 6. 8 sec Java (Sun MS JVM) source Pentium III 848 MHz, 512 Mb RAM, OS: Win 2000 SP 2 12. 6 sec (c)Domanski, 2002 -3. All Rights Reserved 26
Conclusions and Futures n n Could. NET change the way we think of and use computing devices? Today: server and client. NET: loosely coupled services on server, PC, handheld, any smart device Strategy n n n Componentization Access XML representation of data (c)Domanski, 2002 -3. All Rights Reserved 27
Questions? n n Dr. Bernie Domanski Cell: 908 -415 -6105 Email: drbernie@optonline. net Website: http: //domanski. csi. cuny. edu/ (c)Domanski, 2002 -3. All Rights Reserved 28


