an introduction to dot net framework
DESCRIPTION
An Introduction to Dot Net FrameworkTRANSCRIPT
. N E T. N E T
Presented ByPresented By
Shyam Srinivas KShyam Srinivas K
F r a m e w o r kF r a m e w o r k
A N O V E R V I E W
. N E T O V E R V I E W. N E T O V E R V I E W
Introduction to .NET Web Services The .NET Framework Common Language Runtime Windows Forms Web Forms ADO.NET Languages
What is .NET ?
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T
A vision of how information technology will evolve
A platform that supports the vision
A business model of software as a service
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T
A Vision
Web sites will be joined by Web services
New smart devices will join the PC
User interfaces will become more adaptable and customizable
Enabled by Web standards
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T
A PLATFORM
- The .NET Framework
- Visual Studio.NET
- .NET Enterprise ServersDatabase, Messaging,
Integration, Commerce, Proxy, Security,
Mobility, Orchestration, Content
Management- .NET Building Block Services
Passport.NET My Services (“Hailstorm”)
- Goal: make it incredibly easy to build powerful Web applications and Web services
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T Features of .NET Support for 27 programming languages
Introduction of C# - combination of JAVA and C++
Departure from Intel-based code to CLR – Common Language Runtime
Core products – C#, CLR, WinForm, ASP.NET, ADO.NET
.NET makes extensive use of XML and SOAP
SOAP – can be used as substitute for EAI or middleware
Integrate front & back office, in addition to Web Services
Comparable to Sun’s J2EE
Signifies move toward “Open standards”
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T Key Benefits of .NETEase of Use
Object-oriented model- Everything is an object
Namespace and Framework structure- Easier to comprehend and use
- Naming scheme of namespaces reflects the underlying functionality
Freedom to Choose
The language that meets your needsThe development tool that is best for youThe “features and functionality” to “plug in to”
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T Key Benefits of .NET (contd.) Stability
Say “goodbye” to memory leaksGarbage collection manages memoryAssembly eliminates DLL compatibility issuesDeliverables are restricted to an assembly
Security
Restricting or containing the illegal memory reference
Comprehensive security modelAssembly specificSystem wideCode inspection through MSIL
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T Key Benefits of .NET (contd.) Deployment and Management
Deployment: Code is “Assembled” and Run “Securely”
Maintenance: Version Maintenance Simplified
Unified Experience
Integrate disparate services into a new, unified solution
Web Services
The Web the Way You Want It
AnywhereAnytimeOn any device
I n t r o d u c t i o n t o . N E T I n t r o d u c t i o n t o . N E T Who uses this Technology ?
Any company with a presence on the Internet or who uses the Internet as a means for data exchange
On-line retailers, development of wireless apps for non-PC devices
CSFB, Marks & Spencer, EDS, Trans World Entertainment.
W e b S e r v i c e s W e b S e r v i c e s
.NET is built on the idea of Web Services
It uses Framework classes, such as
System.Web.ServicesSystem.Web.Services.DescriptionSystem.Web.Services.Discovery
It enables communication through open standards
XML - Service description expressed with
WSDL
SOAP - Basic wire format - Universal Description Discovery
Integration (UDDI)
HTTP
W e b S e r v i c e s W e b S e r v i c e s
T h e . N E T F r a m e w o r k T h e . N E T F r a m e w o r k A set of technologies for developing and using components to create:
Web Forms
Web Services
Windows Applications
Supports the software lifecycle Development
Debugging
Deployment
Maintenance
T h e . N E T F r a m e w o r k T h e . N E T F r a m e w o r k The .NET Framework and Visual Studio.NET
System.Data
DesignOLEDB
SQLTypesSQL
System
GlobalizationDiagnostics
ConfigurationCollections
ResourcesReflection
NetIO
ThreadingText
ServiceProcessSecurity Runtime
InteropServicesRemotingSerialization
System.Xml
XPathXSLT Serialization
System.Web
Configuration SessionStateCaching Security
ServicesDescriptionDiscoveryProtocols
UIHtmlControls
WebControlsSystem.Drawing
ImagingDrawing2D
TextPrinting
System.Windows.FormsForm Button
MessageBox ListControl
.NET Framework Classes
T h e . N E T F r a m e w o r k T h e . N E T F r a m e w o r k
C o m m o n L a n g u a g e R u n t i m eC o m m o n L a n g u a g e R u n t i m e
Development services- Deep cross-language interoperability
- Increased productivity
Deployment services- Simple, reliable deployment
- Fewer versioning problems
Run-time services- Performance - Scalability - Availability
- Reliability - Security - Safety
GOALS
COMPLILATION
Source CodeSource Code
C++, C#, VB or any .NET language
AssemblyAssembly
DLL or EXEcsc.exe or vbc.exe
Compiler
C o m m o n L a n g u a g e R u n t i m eC o m m o n L a n g u a g e R u n t i m e
C o m m o n L a n g u a g e R u n t i m eC o m m o n L a n g u a g e R u n t i m e
Assemblies Assembly
- Logical unit of deployment- Contains Manifest, Metadata, MSIL and resources
Manifest- Metadata about the components in an assembly (version,
types, dependencies, etc.)
Type Metadata- Completely describes all types defined in an assembly:
properties, methods, arguments, return values, attributes, base classes, …
Microsoft Intermediate Language (MSIL, IL)- All languages compile to IL (managed code)- IL is always compiled to native code before being executed
Resources- E.g. .bmp, .jpg
C o m m o n L a n g u a g e R u n t i m eC o m m o n L a n g u a g e R u n t i m e
CLR
VBSource code
Compiler
C++C#
Assembly AssemblyAssembly
Operating System Services
MSIL
Common Language Runtime JIT Compiler
Compiler Compiler
Nativecode
ManagedCode
ManagedCode
ManagedCode
UnmanagedCode
CLR Services
Ngen
Multiple Language Support Common Type System (CTS)
- A superset of the data types used by most modern programming languages
Common Language Specification (CLS)- A subset of CTS that allows code written in different languages to interoperate
What languages?- Microsoft: C++, Visual Basic, C#, JScript- Third-Party: Cobol, Eiffel, Smalltalk, Scheme, Oberon, Haskell, Java, Python, Perl, …
C o m m o n L a n g u a g e R u n t i m eC o m m o n L a n g u a g e R u n t i m e
Applications An application consists of one or more assemblies
How does one assembly bind to another?- Based upon metadata and policy
Local (preferred)Assembly Global Cache
Multiple versions of an assembly may exist on the same machine
- Easier software deployment, updates and removal- Multiple versions of an assembly can even be used by
the same application
C o m m o n L a n g u a g e R u n t i m eC o m m o n L a n g u a g e R u n t i m e
Evidence-based security (authentication)
Based on user identity and code identity
Configurable policies
Imperative and declarative interfaces
Security
C o m m o n L a n g u a g e R u n t i m eC o m m o n L a n g u a g e R u n t i m e
Framework for building rich clients
Built upon .NET Framework, languages
Rapid Application Development (RAD)
Visual inheritance
Anchoring and docking
Rich set of controls
Data-aware
Easily hooked into Web Services
ActiveX support
Licensing support
Printing support
Advanced graphics
Extensible controls
W i n d o w s F o r m sW i n d o w s F o r m s
W e b F o r m sW e b F o r m s
Allows separation of UI and business logic
Uses .NET languages - Not just scripting
Easy to use components
XCOPY/FTP deployment
Simple configuration (XML-based)
Caching (pages, fragments, custom)
Scalable session state management
Tracing support
ASP.NET is extensible - No ISAPI / ASP dichotomy
Automatic process rollover
Forms-based authentication
Similar to ADO, but better factored
Language-neutral data access
Supports two styles of data access- Disconnected- Forward-only, read-only access
Supports data binding
DataSet: a collection of tables
Can view and process data relationally (tables) or hierarchically (XML)
A D O . N E TA D O . N E T
L a n g u a g e sL a n g u a g e s
New language created for .NET
Safe, productive evolution of C++
Key concepts:- Component-oriented- Everything is an object- Robust and durable code- Preserving your investment
Submitted to ECMA for standardization
Uses .NET Framework classes
C #
L a n g u a g e sL a n g u a g e s
Modernizes and simplifies Visual Basic- Inheritance
- Threading
- Exception handling
Support for late binding
Uses .NET Framework classes
Visual Basic . NET