Introduction to ASP NET Prehistory of ASP NET

  • Slides: 13
Download presentation
Introduction to ASP. NET

Introduction to ASP. NET

Prehistory of ASP. NET • Original Internet – text based • WWW – static

Prehistory of ASP. NET • Original Internet – text based • WWW – static graphical content HTML (client-side) • Need for interactive and animated content Javascript (client-side) • Need for database-driven web sites CGI, ASP, JSP, PHP, Cold. Fusion (server-side)

About Processing on the Web • Hypertext Transfer Protocol (HTTP) • Request-Response Model •

About Processing on the Web • Hypertext Transfer Protocol (HTTP) • Request-Response Model • Statelessness of the web

browser builds an HTTP request and sends it to the IP address indicated by

browser builds an HTTP request and sends it to the IP address indicated by the URL. Safari Web server on the destination host machine (identified by IP address) receives the request and, after any necessary processing, the requested file is returned.

Web Server • Running on Host – In Microsoft world this is Internet Information

Web Server • Running on Host – In Microsoft world this is Internet Information Server (IIS) • Linux Apache – With ASP and. NET Framework, IIS can produce dynamic content (automaticallygenerated

Technologies for Server Side Processing • • • CGI – Common Gateway Interface Java

Technologies for Server Side Processing • • • CGI – Common Gateway Interface Java Server Pages (JSP), Java Servlets Active. X Server Pages (ASP) PHP Preprocessor (PHP) ASP. NET Server-side processing enables 3 -tier architectures

Three-Tier Architectures • Three layers: – Client – Application server – Database server l

Three-Tier Architectures • Three layers: – Client – Application server – Database server l Thin l GUI interface (I/O processing) Business rules Data storage Browser (with HTML/Javascript) Web Server (with ASP. NET) DBMS Client PC just for user interface and a little application processing. Limited or no data storage (sometimes no hard drive)

Three-tier architecture Thinnest clients Business rules on separate server DBMS only on DB server

Three-tier architecture Thinnest clients Business rules on separate server DBMS only on DB server

Problems with Old ASP • Code mixing (HTML, Javascript, VBScript inline) hard to understand

Problems with Old ASP • Code mixing (HTML, Javascript, VBScript inline) hard to understand maintain • Interpreted no compiled ahead of time, slows processing • ASP. NET allows for both code separation and pre-compiled processing • Same is true with PHP and JSP – Frameworks exist for both to enable code separation

ASP. NET’s improvements over old ASP • More object-oriented and event-driven – – •

ASP. NET’s improvements over old ASP • More object-oriented and event-driven – – • Multiple Language Support (VB, C#, C++, JScript. NET) – – • – can separate HTML code (display) from VB/C# code (server side processing) through use of server or user controls use of code-behind files Smart Code Output – – • “automatic HTML-generators” Code Separation Support – • via Common Language Runtime other languages can be added to the list Powerful control objects (server controls, user controls) – • robust class library ability to create more efficient and reusable code automatic generation of browser/device compatible output use of form validation controls Deployment - easier administration of web sites – – – simplicity in installing components Use of web. config file for configuration and bin directory for Assemblies (DLLs)

. NET Framework Terms • NET Framework – software framework that runs primarily on

. NET Framework Terms • NET Framework – software framework that runs primarily on Microsoft Windows. – Framework – • Common Language Runtime (CLR) – run time environment that provides the underlying infrastructure for Microsoft's. NET framework (pp 17 -18) • Assembly – a. dll file (dynamic link library) that contains executable code compiled for the CLR (pp 14 -17)

http: //en. wikipedia. org/wiki/. NET_Framework These compilers generate managed code. Managed code is code

http: //en. wikipedia. org/wiki/. NET_Framework These compilers generate managed code. Managed code is code that is run within the Common Language Infrastructure (CLI). Common Intermediate Language (CIL) is like Java’s bytecode Common Language Runtime (CLR) is like Java’s virtual machine Virtual Execution System (VES) is the “simulated CPU” upon which the CLR operates. Note: Visual C++ can compile into either managed or unmanaged code. Unmanaged code is compiled directly to the machine language of the CPU, and is not part of the CLR