Presentation is loading. Please wait.

Presentation is loading. Please wait.

President & CEO, Halcyon Software, Inc.

Similar presentations


Presentation on theme: "President & CEO, Halcyon Software, Inc."— Presentation transcript:

1 President & CEO, Halcyon Software, Inc.
.NET Enabling Apache Presented by Don Hsi President & CEO, Halcyon Software, Inc.

2 What is .NET Anyway? .NET as defined by Microsoft covers three different areas: .NET framework—a completely re-engineered development environment and the facet with which this presentation is concerned .NET products—applications from MS based on the .NET platform, including Office and Visual Studio .NET services—facilities for 3rd party developers to create services on the .NET platform

3 How Committed is Microsoft to .NET?
80 percent of R&D resources in 2001 are being allocated to .NET Most products are expected to be ported to .NET C#/CLI is in proposed to the ECMA C# is slated to become the development language of choice

4 The .NET Framework Three basic parts:
Two top-level development “arenas” for web applications (ASP.NET) and regular Windows applications (Windows Forms) A set of extensive class libraries, written from the ground up that comprise practically any functionality you could ask for A runtime engine that handles memory allocation, error trapping, all of the busy work that can make programming less fun

5 .NET Framework Overview
ASP.NET Framework Classes Common Language Runtime (CLR) Web Services XML Web Forms System Memory Management Application Services ADO.NET Security Common Type System Windows Forms Threading Controls Diagnostics Lifecycle Monitoring Drawing Net Application Services Much more…

6 .NET General Benefits Shorter development cycle (code reuse, fewer programming headaches, multiple language support) Easier deployment (‘XCOPY’ installations) Fewer bugs (memory leaks disappear) More flexible, reliable applications Most of the .NET implications are for developers. Those include new versions of VB (completely OO), an enhancement of C++, C# which removes gotchas such as fall-through case statements, pointers, and memory management. Also, there are now standardized data types, as well as a single coordinated library of functions. TT108—Running Active Server Pages on NetWare

7 Common Language Runtime (CLR) Overview
Intermediate Language runtime compilers Common Type System Boolean Garbage Collection, Stack walker, Code Manager Byte Execution Support, Runtime functions Class loader and Memory layout Char Double Int16 Int32 Security Functionality Etc…

8 What is the CLR? .NET applications are compiled to a common language known as “Microsoft Intermediate Language” or IL CLR handles compiling the IL to machine language and takes care of the miseries of memory management, process communication, etc. Ability to handle multiple-language projects; single set of standardized data types

9 CLR Feature Highlights
Less concern with internal plumbing Expansive tool support Simpler deployment (end of DLL Hell) Superior scalability Multiple Language Support Common Type System Let’s examine some of these in greater detail…

10 CLR Multiple Language Support
The CLR enables you to use multiple languages in a single project, all working together transparently 3rd parties are already working on COBOL (Fujitsu) and PERL and Python (ActiveState). More than 50 projects in the works No IDL—Metadata handles everything! Metadata is generated by the compiler and stored with the binary application. Metadata includes a variety of information, including a description of the application (name, version, public key, exported types, dependencies, security permissions); base classes and interfaces used; custom attributes (user defined and compiler defined). TT108—Running Active Server Pages on NetWare

11 CLR Common Type System A new set of common types has been defined for the CLR Casting between types can be done at a lower level for more consistency Calling one language from another no longer requires weird type conversions or calling conventions

12 .NET Framework Classes Overview—a Small Selection
System.Data System.Diagnostics System.IO DataSet Debug File DataTable Trace FileStream DataColumn, etc. Path, etc. System.Math System.Reflection System.Security Sqrt Assembly Cryptography These are just a few of the available libraries available in the System class. Log Module Permissions Cos, etc. Policy TT108—Running Active Server Pages on NetWare

13 .NET Framework Classes Consistent and Unified Programming Model
User Interfaces Windows Forms (conventional Win32 apps) Web Forms (the forms engine for ASP.NET) Server Controls (reusable user interface components dwelling server-side) Console Applications (CLI lives) Program Interfaces Web Services (3rd party applications available over the Internet) .NET framework classes provide services and object models for data, input/output, security, etc. Can also work with XML/XSL. All languages have access to a single, unified set of programming interfaces. TT108—Running Active Server Pages on NetWare

14 A Quick Look at WinForms
Winforms are simply the name used to describe the creation of a standard Win32 application Instead of relying on 3 disparate APIs: COM components (ADO, MSXML, etc.); OS-specific (Win32, Win16, etc.); and Language-specific (Vbrun, MFC, etc.) you now have a single coordinated class framework While .NET will make developing ‘standard’ applications an order of magnitude easier, we’re going to get straight to the pertinent part: ASP.NET. TT108—Running Active Server Pages on NetWare

15 ASP.NET Features Language is now full-blown VB or C# (or any supported .NET language for that matter) Support for HTML Server Controls (session state supported on the server) Server-side processing of client-side events New control families including enhanced Intrinsics, Rich controls, List controls, DatGrid control, Repeater control, Data list control, and validation controls Web Services—canned application logic programmatically accessible via the Internet Intrinsics (check boxes, radio buttons, etc.) now have their state maintained w/o extra coding. Rich controls are the Calendar and Ad Rotator which are much more flexible. List controls interact with ADO.NET to display data. DataGrid control is a bound data grid. The Repeater control binds data to a list which can then be displayed with a template. Data List is a comprehensive data display and update control. Validation Controls handle data validation, as you might expect. TT108—Running Active Server Pages on NetWare

16 .NET Considerations Cross Platform Concerns—while the CLR and the .NET framework libraries can, in theory, be ported to other operating systems, the scope of support is unknown ASP.NET, however, is NOT designed to be ported You may be able to write Winform apps and deploy them on other supported platforms, but your Web platform will still be Microsoft It is widely rumored that Corel is porting the CLR and .NET framework libraries to Linux. Whether that is still the case is unknown. TT108—Running Active Server Pages on NetWare

17 .NET Considerations cont’d
Will Microsoft be able to create a groundswell of support? Reports in the field indicate that customers are already requesting .NET tools Will .NET be delivered on time? A loaded question, but much of the functionality appears to be in place

18 Why Should You Care? The benefits are compelling—multiple language support, garbage collection, possible cross-platform support The beta development tools do exist and people are using them Microsoft has enough marketing muscle to make the .NET initiative successful Your clients will want the benefits too…

19 But what’s Wrong with Current Frameworks for Apache?
ASP: Conducive to spaghetti code. HTML+Scripting is messy and unstructured. JSP: Elegant specification but complex—requires much greater investment PHP: More suitable for smaller projects. Lack tier-one support CGI: Performance is a concern—each time an application is access a separate process is spawned

20 Demo .NET HelloWorld application running on the .NET environment with IIS Same binary code running on Windows with Apache, without .NET environment Same binary code running on Linux with Apache, without .NET environment

21 Running .NET Application With Apache
Technology barrier Who is doing what Commercial implication Developer consideration

22 Java-based Solution An implementation of ASP.NET on Java requires the following: A Java-based version of the CLR (VM on VM) including plenty of optimization A Java-based version of the .NET Framework Classes A Java-based implementation of ASP.NET, including full support for the new extensions to VB as well as the server-side components and features

23 Why Java? Java is mature and robust on the server
Java has excellent development tools available for it Java is well-supported on practically every OS in existence Java will enable a .NET implementation that runs on any platform

24 Implementation Considerations
Must support at the very least VB.NET and all its enhancements Session management must be implemented for the server-side components Must have the same language flexibility as ASP.NET Must have a much of the required .NET class framework implemented as possible Must equal or exceed ASP.NET performance Must be able to leverage the excellent Microsoft and other 3rd party tools

25 Architecture Overview
Apache Web Server Java .NET Framework Java CLR Implementation Java .NET Servlet Engine Java .NET Class Libraries VB.NET support Session management support Java Services JDBC JDBC JDBC JDBC JDBC JDBC

26 Java .NET Implementation
VB.NET implementation IL to Java bytecode conversion for maximum performance System services are mapped from Microsoft services to Java services (e.g. ADO.NET to JDBC) CLR environment .NET class libraries

27 Java.NET Roadmap Late 2001: Fully implemented IL2Java conversion engine Fully implemented ASP.NET framework 80 percent of the core .NET framework libraries implemented for 95 percent of the functionality 80 percent of the .NET web services libraries implemented for 95 percent of the functionality 80 percent of the ADO.NET libraries implemented

28 Java.NET Roadmap Mid 2002: Fully implemented core libraries
Fully implemented web services libraries Fully implemented ADO.NET Fully implemented XML.NET Fully implemented Visual Basic.NET GUI .NET (late 2002)

29 Contact Information Phone: (408) x101 Web site:

30 Questions & Answers


Download ppt "President & CEO, Halcyon Software, Inc."

Similar presentations


Ads by Google