Monday, April 30, 2007

"Jasper" to Deliver Dynamic ADO.NET 3.0

During Monday morning's MIX07 keynote, Andrew Conrad spilled the beans about the project he's been working on for the past few months: "Project Jasper." Also known as Dynamic ADO.NET, here's the official description of this new data-access technology from Andrew's blog post:

Microsoft Codename “Jasper” is a set of components aimed at fulfilling the need for a rapid and iterative development experience for data. With Jasper, you are able to just point at a database and immediately begin coding against its data using intuitive, domain-specific data classes. No configuration and no source code generation are required. Jasper works with existing application frameworks (including ASP.NET, WinForms, and WPF) and existing, real-world databases.

Jasper provides a programming interface to your data that is well-suited to rapid development. Jasper provides two main services:

  • Data Access: query and update facilities for reading and writing data, exposed via an Object-Relational (O/R) API.
  • Data Binding: presentation of data in controls that form the visual user interface of the application.

And here's a second description from the download page for the MIX07 Community Technical Preview (CTP):

Jasper leverages the power of dynamic languages and the concept of convention over configuration to provide a programming surface for data that enables rapid development of data-bound applications. While most other rapid data access frameworks are only capable of working against simple databases, Jasper can scale to almost any database, regardless of size or complexity. This is possible because Jasper takes advantage of the ADO.NET Entity Framework’s significant investments in mapping and conceptual data modeling. [Emphasis added.]

Jasper's dependence on the ADO.NET Entity Framework (EF) is significant, considering Saturday's announcement that Orcas has dropped the EF from the RTM, after an earlier postponement of the Entity Data Model (EDM) Designer.

According to Andrew:

For CTP release, we are specifically targeting Visual Basic 9 (Orcas version of VB.NET) and Iron Python 1.1. In other words, these are the languages we did a bulk of our testing for the CTP release. The reality is any CLR language that supports late binding can be used with the Jasper framework

I plan to give the MIX07 CTP a workout this week and will add links to reports of my results here.

Update 4/30/2007 14:17 PM: The ADO.NET Team posted Project Codename "Jasper" - Announced at Mix 07 which describes Jasper as an "ADO.NET incubation project for building quick, clean and iterative applications." The post says:

Using “Jasper”, developers start with a connection string and can immediately begin programming the core of an application. “Jasper” uses a set of new technologies to make this happen:

  • Dynamic generation of data classes so there is no configuration or design time code-gen to carry around.
  • Rich query and O/R capabilities because “Jasper” is built on top of the Entity Framework.
  • Auto-binding capabilities for ASP.NET, WinForms, and WPF to make binding data to a UI simple and automatic.

Carl Perry offers additional details about Jasper in his Announcing Project Jasper - A RAD vision for the Entity Framework post.

Shyam Pather adds his interpretation of Jasper and excerpts from the Jasper Technical Overview in Microsoft Codename "Jasper" CTP Released!

Note: Andrew also mentioned that the Dynamic Language Runtime (DLR) will be announced at MIX07.

Update 5/2/2007: The video for the Sam Druker and Shyam Pather "Jasper" presentation is available for viewing or download at the following link:

DEV18 - Rapidly Building Data Driven Web Pages with Dynamic ADO.NET

Speakers: Samuel Druker - Microsoft, Shyam Pather - Microsoft
Audience: Developer

Come learn about how new technologies from Microsoft bring together the concepts of dynamic languages and ADO.NET and allow you to quickly develop data driven Web pages using ASP.NET dynamic data controls, scalable to even the most complex databases.

For more information on the DLR, listen to Jon Udell's podcast: A conversation with John Lam about the dynamic language runtime, Silverlight, and Ruby.

Update 5/5/2007: Andrew Conrad's Jasper and C# post asks "Is Jasper usable from C#?"

The short answer is – We designed Jasper specifically for CLR languages with late-bound facilities such as VB and IronPython.  C# doesn’t currently support late-bound calls and hence the answer would be no though some aspects of Jasper may still be applicable.

He then goes into an explanation of how C# might be used. The real question is "Why would anyone want to use C# in a dynamic, late-bound environment?" Andrew then moots the issue with:

[W]e are actively working on moving Jasper over to the dynamic language runtime - the freshly announced .Net addition to the runtime designed to extent the CLR for dynamic typed CLR languages (VBX, IronPython, IronRuby).  Based on early analysis it is a strong possibility that we move away from the base class mechanism and support a more dynamic model where data class types (or even specific instances!) can be modified at runtime to allow the user to add their own business logic.

Update 5/8/2007: Andrew Conrad reports that Channel 9 has posted a pre-MIX07 interview with the Jasper team:

Project Jasper is geared toward iterative and agile development. You can start interacting with the data in your database without having to create mapping files or define classes. You can build user interfaces by naming controls according to your model without worrying about binding code. In this interview Shyam Pather, Carl Perry, Andrew Conrad and Jeff Derstadt, go deep whiteboarding and demoing Jasper.

3 comments:

Anonymous said...

Cool! The Jasper guys have reinvented Access!!

Anonymous said...

NO! :-), ADO.NET team hopefully tries to remake 15-20 years old czech AGILE and DECLARATIVE and ENTITY driven relational database system PC-FAND for CP/M and lately MS-DOS, which was written in TurboPascal (hello Anders, tnx again:-))... AND THAT FACT IS SIMPLY BEAUTIFULL, MANY THANKS !!! Its FINE to wait, to have all relaetd thing TIGHTLY integrated, where needed :-)). Have a nice code, at MS :-)

Anonymous said...

qcsglll
车库门
卷帘门
伸缩门
翻译公司
道闸
挡车器
伸缩门
货架
货架
货架
货架
货架
电动伸缩门
车库门
自动车库门
防火卷帘门
阳光房
除湿机
抽湿机
比歘情



电动伸缩门
伸缩门
卷帘门
车库门
道闸
挡车器
岗亭
道闸
伸缩门
自动门
车库门
岗亭
日上
日上防盗门
电动伸缩门
卷帘门
伸缩门


自动车库门
车库门
伸缩门
自动门
电动门
伸缩门
卷帘门
车库门
电动伸缩门
道闸
岗亭
自动车库门
电动伸缩门
岗亭
卷帘门
车库门
伸缩门
电动门
自动门



卷帘门
电动门
自动门
卷帘门
道闸
车库门
伸缩门
岗亭
岗亭
岗亭
岗亭
岗亭
岗亭
车库门
道闸
卷帘门
防火卷帘门
电动伸缩门
道闸


防火卷帘门
自动车库门
车库门
伸缩门
电动伸缩门
挡车器
北京SEO
专业SEO
专业SEO
专业SEO
锅炉安装
Oracle数据库容灾复制
Oracle容灾备份
Oracle备份恢复
北京铁艺





bgwldwzjzzxh!!
妇科
六合彩
热门图库
热门图库精