The Future According to ASP+

原创 2000年12月14日 16:27:00

Author:Casey Kochmer

As both an ASP and JSP programmer, I started a series of articles
to examine the differences between ASP and JSP. After I released
part one and part four of the articles, ASP+ was announced. ASP+
changes the game to the point that I delayed writing additional
articles until I could examine ASP+ in greater detail.

I am currently working on a JSP project and on a separate ASP
project.  The ASP project itself is very interesting.  It is
starting off in ASP 3.0 and will be translated into ASP+ by time
the project is be done. As a result of these projects I will be able
to examine ASP+ closely, providing solid ASP+ to JSP comparisons.

This article presents my early observations of ASP+ and the impact
it has on an average developer such as myself.

In an initial comparison of ASP+ and JSP I found the following:

1) Object Orientation:
   ASP+ introduces C# as an object oriented language. In many respects
   it will become Microsoft's version of a Java-like language. The
   other fun fact about C# is that every object created automatically
   becomes a COM object. What this all boils down to is, if C# lives
   up to all or even 75% the marketing hype, it will give ASP+ Java-
   like capabilities but with faster performance due to its tight
   coupling with the Windows environment. C# is the single most
   important improvement for ASP+ development.

   Microsoft has engineered C# to be a stiff competitor of Java.
   It is a major part of Microsoft's reinvention of their .Net
   framework. I see C# as Microsoft's push to be the dominant player
   in the programming market place. I expect to see Microsoft put its
   full weight behind this product. As a result of all this, it's a
   safe bet C# will become the language of choice for many programmers. 

   The consequence of C# will be the intensification of the battle
   lines between the Sun and Microsoft product lines. This actually
   will be of benefit to the consumer, as it will spur both Java
   and C# to new improvements.
  
2) Database Connectivity:
   The one place that ASP really shines is in the use of the ADO
   Object, ODBC, OLE-DB and the Transaction Manager. Among all
   these pieces it is very easy to build fast and simple  ASP
   database web applications. ASP+ takes all this and marches onward
   to even more features, while ADO+ is being released with even
   more enhancements and speed boosts. JSP and JDBC currently lag
   behind in ease of use and features when compared to the current
   implementation of ASP/ADO. With the new release of ASP+/ADO+ the
   gap with JSP will widen even further.  I personally hope SUN will
   put serious effort into catching up with ASP+/ADO+ combination.

3) Large Scale Sites:
   ASP+ will have better support for large web farms. In fact,
   Microsoft is pushing this idea pretty hard. ASP+ wants you to
   think in terms of multiple servers. As you need more power, just
   add an extra server. The whole .Net framework has solidly embraced
   this methodology. ASP+ introduces external session state support
   providing built-in web farm support.  In addition, since all the
   components required to support a web farm are built fully optimized
   with each other, it will be fast.  The end result is that ASP+ will
   now equal JSP in its ability to scale to large projects. In fact,
   ASP+ will have a cost benefit over JSP since all the components
   will be part of your server operating system from Microsoft. In JSP,
   you currently need to purchase expensive Server Application servers
   to achieve similar results.

4) ASP+ offers many other new features that I will review in more detail
   in future issues. For example,
      *Built-in object caching and page result caching.
      *Built-in XML support for easy handling of XML data sets.
      *Server controls which offer fuller interactive controls to
       be used on the client page. Initial indications, however,
       show these are costly items in terms of round trips to use.

I am finding that ASP+ truly expands what is possible in ASP.

My preliminary conclusion, after looking at ASP+, is the majority
of my future projects will still be Java and JSP based. The three
reasons for this are:

1) To really unlock the full potential of ASP+ you will need to use
   C# or vb.net. These two languages will become the standard
   scripting heart of ASP+.

   This is a good thing for the future of ASP. I never liked
   building com objects in the current version of Visual Basic.
   The new scripting heart of ASP+ is a substantial improvement
   over ASP and will really energize the possibilities of web
   applications built within ASP+.

   All of the new development in ASP+ is making it clear I need
   to make a personal decision to choose the language into which I
   desire to put the most time and effort. I learned Java back when
   it all started and I feel Java is a language that will be around
   for the rest of my programming career. As a result, JSP is my
   primary choice for web development. When my current ASP project is
   done, I will reconsider if C# convinces me to re-gear my programming
   tool belt.  As I am now a big JSP fan, if Microsoft converts me,
   it has a real winner! I suppose I am taking the ASP+ challenge.

2) ASP+ is still pretty squarely locked into Microsoft's operating
   system. JSP has a major edge over ASP+ in its flexibility to work
   on other server configurations.  Keeping in mind, however, the
   rising predominance of the Windows 2000 operating system, this
   won't be a problem for many developers.

3) I am not sure if I agree with aspects of the new ASP+ architecture.
   I need to perform a more in-depth analysis on several issues before
   feeling comfortable with ASP+. As a result, I am hesitant to plan on
   using it for future projects. This may change after I have used it
   for a month or two. After all, this is a high level overview of a
   beta product. I will provided more information in a future in-depth
   review of ASP+.

As an ASP developer, ASP+ gives me pause to think. The next eight
months are going to be a hard time to start a new ASP project. Why? 
ASP+ and C# introduce a dilemma for development shops as they aren't
available yet and won't be introduced until the first quarter of
2001. This means if you are starting a new project now you are
faced with some seriously hard choices. I am in charge of setting
up the technical aspects of such projects and appreciate these
considerations.

Since ASP+ is only available as beta software it makes my first
choice easier. My current project will start in ASP 3.0. I consider
any beta language to be vaporware until the production release is
available.

I cannot ignore ASP+, however, as in six months it will be available
and it represents the future of ASP. Managers of ASP projects in
production now or in the near future should consider how to ensure
migration to ASP+ will occur as smoothly as possible. While a savvy
design will ensure a smooth upgrade to ASP+, the cost for development
increases as extra time is spent in creating and implementing the
design, as well as implementing the upgrade.  This approach is sensible,
however, to prevent even higher costs over the long term when the final
upgrade does happen.

A side effect of all this is that it makes both PHP and JSP more 
attractive alternatives to ASP for the near future.  After all,

   1) To use ASP+ you will need some extra time to learn new tools.

   2) The new tools are still to be released, so why not look at
      something that currently exists?

   3) JSP already has many of the new features of ASP+.

   4) ASP+ locks you down into a Microsoft-only architecture.
      (I have read one news story about Microsoft porting .Net to
      Linux, but I discount this as being unrealistic at this
      point in time. Until the code is released, it fits in my
      vaporware category.)

As a result, I predict quite a few people will make the leap into PHP
and JSP. However, I also feel many people will stay the course due to
the sheer excitement that ASP+ brings to the field. (I have never seen
such an explosion of material for any beta programming product). Below
is a VS.net article which nicely illustrates both of these points.

For something that started as freeware, ASP+ has grown to become a
cornerstone of Microsoft's .Net framework.  Sun may find a lesson in
this.  Extra caution and care, however, is warranted when upgrading
to ASP+ as it is being integrated with so many other products and
the overall size of the .Net framework is so large.  I usually wait
for the first service pack of any product before assuming it is safe
to use in a production environment. So, even if ASP+ is released in
the first quarter of 2001, for planning purposes, I am not expecting
ASP+ to be ready for my production environment until second quarter
of 2001. Of course, since ASP+ has generated so much excitement, many
shops will switch over to ASP+ as soon as it becomes available. In fact
I have already come across ASP web sites using the beta release ASP+!
For example, the link to the ASP+ site I reference below is written in
ASP+, you can tell by the .aspx extension. All this suggests to me
that Microsoft will release the first service pack for ASP+ in record time. 

The next year will be a very interesting time to watch the marketplace,
how Sun and Microsoft react to the current situation and what choices
programmers will make.


ADDITIONAL REFERENCES

First Look at VS.net  (DevX 9/2000)

FAQ on ASP+  (ASPFree.com)

Another View on .Net (Jim Farley 8/2000) (A very good analysis of .Net)

Java Future接口、Future模式理解

Future接口介绍: 在Java中,如果需要设定代码执行的最长时间,即超时,可以用Java线程池ExecutorService类配合Future接口来实现。 Future接口是Java标准API...
  • D137716858
  • D137716858
  • 2014年04月11日 16:42
  • 2231

java Future用法和意义

在并发编程时,一般使用runnable,然后扔给线程池完事,这种情况下不需要线程的结果。 所以run的返回值是void类型。 如果是一个多线程协作程序,比如菲波拉切数列,1,1,2,3,5...
  • dabing69221
  • dabing69221
  • 2013年12月26日 23:22
  • 4573

Scala新手指南中文版 -第九篇 (Promise和Future实践)

译者注:原文出处http://danielwestheide.com/blog/2013/01/16/the-neophytes-guide-to-scala-part-9-promises-and-...
  • thomassuns
  • thomassuns
  • 2014年08月04日 14:01
  • 2598

Java并发编程:Callable、Future和FutureTask原理解析

返回结果的任务Callable与FutureExecutor框架使用Runnable作为其基本的任务表示形式。Runnable是一种有很大局限的抽象,它不能返回一个值或抛出一个受检查的异常。Runna...
  • codershamo
  • codershamo
  • 2016年07月13日 20:00
  • 5056

Java Future用法和意义一句话击破

在并发编程时,一般使用runnable,然后扔给线程池完事,这种情况下不需要线程的结果。  所以run的返回值是void类型。  如果是一个多线程协作程序,比如菲波拉切数列,1,1,2,3,5,8....
  • doc_sgl
  • doc_sgl
  • 2015年04月04日 18:12
  • 819

Future方式中断线程实现

java future方式实现线程中断
  • everlasting_188
  • everlasting_188
  • 2016年04月13日 17:26
  • 946

Java并发编程之异步Future机制的原理和实现

Java并发编程之异步Future机制的原理和实现           项目中经常有些任务需要异步(提交到线程池中)去执行,而主线程往往需要知道异步执行产生的结果,这时我们要怎么做呢?用r...
  • a1282379904
  • a1282379904
  • 2016年08月27日 14:27
  • 5749

c++ 11 多线线程系列----future

一、future头文件中有哪些类        二、std::promise 类介绍       promise 对象可以保存某一类型 T 的值,该值可被 future 对象读取(可能在另外一个线程中...
  • chenxun2009
  • chenxun2009
  • 2015年11月12日 22:32
  • 849

scala进阶:Future的理解及使用

看了下scala future的官方文档,融合了自己的理解整理在这里,例子全部来自官方文档:http://docs.scala-lang.org/overviews/core/futures.html...
  • cykic
  • cykic
  • 2015年06月20日 16:11
  • 6980

Java并发编程:Callable和Future使用

在Java中,创建线程一般有两种方式,一种是继承Thread类,一种是实现Runnable接口。然而,这两种方式的缺点是在线程任务执行结束后,无法获取执行结果。我们一般只能采用共享变量或共享存储区以及...
  • u013405574
  • u013405574
  • 2016年04月06日 13:32
  • 2642
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:The Future According to ASP+
举报原因:
原因补充:

(最多只允许输入30个字)