DOC PREVIEW
UConn CSE 298/300 - Microsoft .NET Initiative

This preview shows page 1-2-3-27-28-29 out of 29 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Microsoft .NET InitiativeSlide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Microsoft .NET InitiativeKeith BessetteHardik DavéJaladhi MehtaCSE 333CSE 333Fall 2002Fall 2002•What is .NET ?•History and Evolution of .NET•What is .NET made up of ?•Scope of the paper–.NET languages and Java–Database Connectivity using .NET.–Security Issues Concerning .NET and Java–Interoperability: Middleware and LanguagesIntroduction and Overview•Supported Languages in .NET•C# Background.NET Languages•Class Hierarchies–Both have single rooted class hierarchies System.Object and Java.lang.object–Both classes have methods sharing some similarities and difference•Execution Environment–JAVA compiled to bytecodes which are interpreted or natively compiled and run in managed exec envt JVM–C# code gets compiled to IL which runs in CLR C# code is never interpreted, it is always natively compiled C#’s IL is more type neutralC# vs. Java – Differences and Similarities•Object Creation–In JAVA objects are Heap based–In C# objects are Heap based as well as Stack based (called value types)•NameSpaces–In JAVA packages reflect the physical directory layout–C# has complete separation of physical packaging and logical namingC# vs. Java – Differences and Similarities(Continued)•Access ModifiersC# vs. Java – Differences and Similarities(Continued)C# access modifier Java access modifierPrivate PrivatePublic publicInternal protectedprotected N/Ainternal protected N/A• Serialization and Documentation• C# supports XML format as well as binary format for serialization while Java only supports binary format by default.• JAVA uses Javadoc while C# uses XML for documentation•Deterministic object cleanup–C# supports dispose() method –C++ like destructors without memory allocation woes Best of both worlds•Pointers and unsafe code–C# can have pointers when it is running in unsafe mode–Program must have full trust granted earlier–Unsafe keyword, /unsafe compiler switch–Fixed keyword to avoid the garbage collector moving the variable during the mark and collect algorithm phaseC# vs. Java – Differences and Similarities(Continued)•Platform interoperability–How C# and JAVA run on various platforms–JAVA is a single language platform–C# supports multiple languages as long as they conform to CLS–JAVA has better portability for various o/s and platforms–C# currently runs on only windows platforms–.NET platform files complied to PE filesC# and interoperability•Standards Interoperability–How both languages access standards like database systems, graphics library, etc.?–C# and JAVA both don’t scale too well due to Microsoft and Sun’s business motivations–C# has been submitted to ECMA to derive to a standard–.NET is sort of an open platformC# and interoperability•Language interoperability–Level and ease of integration with other languages–JAVA supports language interoperability through JNI, CORBA–.NET has language independence–.NET supports any languages as long as they conform to CLS and CTSC# and interoperability•Database connectivity in .NET–Different APIs for connecting to the Database.–JDBC was introduced by Sun Microsystems in 1996 –History of ADO and JDBC.Database Connectivity•Three Level Architecture•XML and DataSet as objects of interactionADO.NET ArchitectureBusiness Business TierTierData Data TierTierPresentation TierPresentation TierWindows FormsWeb FormsBusiness to BusinessData Object (Class)DataSetDataSetDataSetInternetInternetIntranetIntranetData Data AdapterAdapterData Data AdapterAdapter(BizTalk, for example)XMLMyApp.ExeIE•Three Layers of Architecture•RecordSets, Statements – Connection and DriverManagerADO.NET Architecture•Primitive offline DB access using ResultSets in JDBC•Complete offline access in .NET using DataSetsOffline DB AccessDataSetDataTableCollectionsDataRowcollectionDataColumncollectionConstraintCollectionDataRelationCollectionDataTableFig 4.3 ADO.NET DataSet• ADO.NET’s DataSet Architecture• DataSet functionality• XML as a method of choice.•ADO.NET’s powerful support for XML•XML functions in DataSets and ADO.NET•Oracle’s support for XMLInteroperability with XMLXMLXML.NET developed ApplicationSQL DBOracle DB•Secure development and execution environments•CBAC: permission for code to access resources•RBAC: permission for users/roles to access resources•Code verification and execution: semantics, bytecode, safe execution environment•Secure communication: pass data/messages securely•Code and data integrity: no unauthorized code modification, cryptographySecurity Issues concerning .NET and JavaCode Based Access Control•CBAC is the security that allows and prevents a piece of code to access resources•Evidence Based Security, Permissions, Security Policy•CLR reviews evidence of an assembly•Determines identity from evidence•Looks up and grants permissions based on the security policy for that assembly identity•The CLR examines assemblies to determine their origin•CLR looks at metadata for:–where the code originate–creator of the assembly–URL and zone the assembly came from•CLR verifies the association of metadata w/ an assemblyEvidence Based Security•Permission: assigned to a piece of code, the allowance to execute a certain method or access a certain resource•Assemblies request permissions to execute, and the CLR answers at runtime•Permissions are grouped into sets w/ the same level of security and trust•Assembly from Internet zone maybe granted Internet permission set for untrusted codePermissions•SP is set by an admin to make permission decisions for assemblies and domains•Three policies: Total Enterprise, Machine executing code, Requesting User•Any policy file may partially restrict permissions of another policy file•SP groups code into hierarchal categories based on identity determined by the CLR•SP determines permissions for assembly after code is grouped and categorizedSecurity Policy•Permissions are grouped into protection domains and associated w/ groups of classes•Permissions are grouped into sets and assoc w/ code groups•Classes are grouped by their origin like Code is categorized by assembly’s zone•No Security Manager by


View Full Document

UConn CSE 298/300 - Microsoft .NET Initiative

Documents in this Course
Java Tool

Java Tool

58 pages

Load more
Download Microsoft .NET Initiative
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Microsoft .NET Initiative and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Microsoft .NET Initiative 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?