Longhorn, Another New Possibility

Recently, I received over 120 email messages asking me about Longhorn and what it's all about. Because I don't have enough time to reply to all these messages (sorry folks), I thought a better idea would be to write a brief article on Longhorn and how it will change the way everyone working in IT with Microsoft technologies must think. Although this new intelligent operating system won’t be released until at least 2006, it's not a bad idea for you, as a developer, to begin mapping your mind.

Contributed by
Rating: 5 stars5 stars5 stars5 stars5 stars / 33
September 07, 2004
Rate this Article:
MEH MEH++


SEARCH ASP FREE
TOOLS YOU CAN USE

advertisement

Introducing Longhorn

Microsoft’s next operating system (code-name Longhorn) will be more stable, secure, smart, powerful, and faster than any of the current Microsoft operating systems, or other vendors for many reasons.

You can think of Longhorn as a complete step to further computerize the world. I think that Microsoft spent many years researching on their current operating systems and their existing problems, as well as how to fix them. For example, as you know security is one issue that Microsoft tries to improve on with each new release of its Windows OS beginning with NT4 to Windows 2000 to Windows XP, as well as Windows 2003. But, Longhorn is the first OS designed and developed using .NET and managed code. So all the features that .NET programmers know about (and actually like) in .NET are implemented by the fine folks over at Microsoft. Longhorn will bring us many new features with a new programming markup language called XAML, which is an XML-based language. So let's take a step by step look into Longhorn.

Another Way for Developing Applications with Longhorn

Developing applications with Longhorn is very different from developing applications using the current operating systems. In the traditional Windows-based applications (including Web-applications because they run on a browser of the current Windows OS) we have two types of applications, Windows-based applications and Web-based applications.  Before you begin your development you must know whether you are developing the application as a Web application or as a Windows application. 

The Microsoft Longhorn design team has been thinking about the gap between Windows applications and Web applications -- as you know Windows applications are very powerful and in most cases faster than Web applications. Nevertheless, Web applications have no problems related to deployment and installing of the application’s components.  This design team designed a structure for Longhorn applications so that when you program you will develop only one structure which can be a Windows application or a Web application without creating two separate and different types of applications. Even better, you will not need to modify your code structure. 

Longhorn will help us in the issue of deployment as well. You will only need to deploy the file of the application without deploying any other files regardless of whether it's a Windows or Web-based application (because it's just one structure which can work as both).

Now imagine the future with Longhorn, just a single instance of the work and it will function on both sides of the game. What can I say --except that I'm preparing myself and my team to get the first Longhorn application done soon!

In the messages that I received about Longhorn, .NET and C# developers asked me if C# will be dead with the release of Longhorn. I will attempt to answer that question in a very simple way.

Will C# and .NET Die After Longhorn?

Just think about it. Would the Microsoft .NET design team and C# design team spend many years designing C# and the .NET Framework so that it would be used for only 4 or 5 years? I don't think so. In fact, Microsoft is using .NET as the first development technology for many of its products such as Visual Studio.NET and now Longhorn. So Longhorn is a managed application (you can think of it like that for now). Even better is that Longhorn was developed using the concepts of .NET, such as Object Oriented Programming (OOP). That means when I tell you that there is a class called Application, which is a key class in Longhorn, you will understand the big picture much more.

The name '.NET' may soon start to get blurry, and other terms may replace some technologies, but the technologies and tools used in .NET will exist in the background. For example, CLR, GC, compilers for C#, VB.NET, etc. will be there. Also note that your .NET application will work well on Longhorn and you can still create Longhorn applications using your favorite .NET programming language.

Longhorn Application Architecture

Let's talk a little about Applications Architecture in Longhorn.

Because Longhorn is a Managed Operating System (actually the first one) and it is developed using Managed Code, its applications will also be developed using OOP concepts. The core Class in Longhorn is called the Application class, and this class is the root class for the applications that you will develop for Longhorn. This class contains Methods, Properties and Events which give you a new way to program under Longhorn.

Using the application class, you will create markup pages like HTML but which are better customized to work for the Longhorn Application Model. These pages will not only give you the power to create your Windows-based applications, they will still contain markup that a browser can understand. In the same way as the Object class in .NET supports basic functionality of an object, the Application class supports basic functionality for any application that can run on Longhorn. 

XAML

Microsoft said that the Application class will be used when your applications are not complex and neither needs the navigation system nor State Management. If your applications are complex, you can inherent from the Application class and add support for them. You can think of Longhorn applications as a collection of markup pages including Managed Code. The markup language that will be used with Longhorn is a new language called XAML -- Extensible Application Markup Language --.  You’ll then write Managed Code in either C#, VB.NET, etc. 

Using XAML you can control the layout of the pages including text layout, controls layout, as well as new features that will make developing applications more fun and much easier. We currently use HTML to layout static Web pages; however, XAML will be used to layout applications in Longhorn. So you can use XAML to write a simple Longhorn application that can be hosted by a window or a browser.  Even better is that you have the choice of using Managed Code to write Longhorn applications or using XAML with Managed Code to write Longhorn applications. You will find that some functionality you perform can be done using XAML or can be developed using Managed Code. In the end it will be your decision on which to use. 

The trick that Microsoft designed in Longhorn is that you will not need to modify (or create a separate project) your Windows application to make Web applications. You’ll simply change one property that has values for Windows applications or Web applications. I hope that you understand the power of this ultimate victory feature for Microsoft and its customers.

The Application Object

As I said before, the Application object is the root of Longhorn applications and it provides the basic functionality for your applications. The Application object is a key element in the Longhorn application structure. Longhorn applications are typically a collection of XAML pages which contain Managed Code, where the application’s root object is derived from the Application object. In fact, you need the Managed Code with XAML pages in order to create complex applications. The combination of .NET with the simplicity of XAML is what will give you faster performance and more security over your applications.

You derive your application's root object from the Application class because the Application class is the Longhorn monitor over your application. What I mean is that the Application object gives you all the features you need to develop the best applications ever. It's responsible for the security of your application, memory management and for managing resources of your application, as well as being responsible for the user-navigation mechanism according to the application design.

In Longhorn applications users will navigate from one page to another; however, the navigation mechanism will appear as replacing the current page with the next one. Do not worry, as you’ll still have the ability to open new pages (ex: pop-up windows).  These pages will be created using XAML with, or without, Managed Code.

As much as Microsoft solved the problem of classic ASP’s inline-code with ASP.NET’s code-behind classes, Microsoft designed Longhorn pages using XAML to use inline or code-behind Managed Code classes.  So you can write your XAML page and your Managed Code will be in a code-behind class.

This was just a very simple introduction to Longhorn. I promise you that in my next article I will begin with an introduction to XAML, as well as demonstrating how to write XAML pages!

blog comments powered by Disqus
.NET ARTICLES

- .Net 4.5 Brings Changes
- Understanding Events in VB.NET
- Objects, Properties, Events and Methods in V...
- Install Visual Web Developer Express 2010
- Microsoft Gadgeteer an Open Source Alternati...
- Best DotNetNuke Modules
- Facebook Image Viewer in Visual Basic
- Murach`s ADO.NET 4 Database Programming with...
- 5 Must Have Visual Studio 2010 Extensions
- Dynamic Web Applications with ASP.NET Mono u...
- PDFSharp: HTML to PDF in ASP.NET 3.5 using V...
- Using the PDFSharp Library in ASP.NET 3.5 wi...
- Sending Email in ASP.NET 3.5 using VB.NET wi...
- ASP.NET 3.5 Role Based Security and User Aut...
- Creating ASP.NET Login Web Pages and Basic C...

ASP Web Hosting ASP.Net Web Hosting Windows Web Hosting
ASP Free Forums 
 RSS  Tutorials RSS
 RSS  Forums RSS
 RSS  All Feeds
Site Map 
Request Media Kit
Write For Us Get Paid 
Weekly Newsletter
 
Developer Updates  
Free Website Content 
Privacy Policy 
Support 


© 2003-2012 by Developer Shed. All rights reserved. DS Cluster 2 - Follow our Sitemap
Most Popular Topics
All ASP.Net Tutorials