写点什么

Jasper: 没有代码生成器或配置文件的 ORM

  • 2007-05-08
  • 本文字数:933 字

    阅读完需:约 3 分钟

Jasper 是微软为快速应用程序开发专门设计的新 ORM 项目。不像微软早期的其他类似项目,这个 ORM 不需要代码生成器。它的目标是:“让快速开发和访问数据真正变得既快又简单”。

常规的 ORM(Object-Relational Mapping)一般都具有如下三个特性的一种。第一,纯手工代码,每一个数据类都手动创建,不需要 IDE 的帮助。第二,微软惯用的代码生成器。从早期 的.NET 技术如 Typed DataSet(类型化数据集)到 LINQ,代码生成器都通过映射数据库结构来生成领域对象。

在 Java 和开源世界里,配置文件是最常用的。这些配置文件,通常使用 XML 来定义这些领域对象在运行时应该像什么样子。当有工具来辅助生成这些 XML 配置文件的时候,最终的效果和上面提到的代码生成器也就很类似了。

微软开发代号为“Jasper”的项目是为了满足快速而重复的数据库应用程序开发的需要而提供的一系列组件。在 Jasper 的帮 助下,你只需要连接到数据库,就可以马上开始直观的使用领域特定(domain-specific)的数据对象来编写访问数据的程序了。无需配置文件,无 需代码生成器。Jasper 能够在现有的应用程序框架(包括 ASP.NET,WinForms 和 WPF)和现有的数据库下很好的工作。

从实际情况看来,这意味着数据对象是在运行时基于数据库结构而生成的。理想的话,这将让你从 LINQ 中获得一个丰富的体验,而无需担心生成的代码是否和数据库结构同步。

对于这个最初的CTP 版本,能使用的语言只有 Visual Basic 9 IronPython 1.1 。C#由于不具备后期绑定的特性来和运行时生成的对象进行交互,所以不能在 Jasper 中使用。

由 DLR 提供的动态特性充分为 Jasper 进行了考虑。理论上,Jasper 将可以通过添加额外方法和属性的形式,让商业规则附加到运行时动态生成的数据对象上。

查看英文原文: Jasper: ORM without Code Generators or Configuration Files


译者简介:朱永光,IT 自由人和环境保护者,微软最有价值专家(MVP)和 MCSD。他有 14 年的编程实践经历,5 年软件构架和开发管理经验,擅长微软相关技术和产品,目前主要关注软件构架和开发框架,是成都.NET 俱乐部副主席和核心讲师,个人博客为 http://redmoon.cnblogs.com 。现在他作为共同创始人经营着一家环境保护技术公司。为InfoQ 中文站贡献内容,请邮件至 china-editorial@infoq.com

2007-05-08 00:00977
用户头像

发布了 254 篇内容, 共 60.1 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

CVPR2023|小红书提出 OvarNet 模型:开集预测的新SOTA,“万物识别”有了新玩法

小红书技术REDtech

深度学习 算法 小红书

.NET的基元类型包括哪些?Unmanaged和Blittable类型又是什么?一文带你深度解析

不在线第一只蜗牛

.net 编程

Spring事件监听机制使用和原理解析

不在线第一只蜗牛

spring springboot

数字化转型与架构-规划篇|满足用户期望和用户需求说:“不”

数字随行

数字化转型

实践讲解强化学习之梯度策略、添加基线、优势函数

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 6 月 PK 榜

这场世界级的攻坚考验,华为云GaussDB稳过

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

码控算法

qh12346

[Qt开发]一口气搞懂串口通信

EquatorCoco

通信 qt

这样做,轻松拿捏阻焊桥!

华秋PCB

工具 电路 PCB PCB设计 阻焊

精选Golang高频面试题和答案汇总

王中阳Go

golang 面试八股文 go面试题 Go面试宝典

低代码平台对程序员友好吗?

互联网工科生

低代码 可视化 JNPF

「学习笔记」记忆化搜索

互联网工科生

学习笔记

华为云能力中心开业暨项目签约活动圆满举办!

新消费日报

据平台流量回放最佳实践|精选

得物技术

前端 后端

618技术揭秘:探究竞速榜页面核心前端技术 | 京东云技术团队

京东科技开发者

前端 H5页面 海报生成 动画特效 企业号 6 月 PK 榜

关于项目初期,数据量小的内容推荐的实现方法

北桥苏

推荐算法 个性化推荐 协同过滤 内容推荐

和鲸助力中国大学生计算机设计大赛国赛作品评审标准落实研讨会召开,专家平台首发布

ModelWhale

人工智能 专家 数据科学 研讨会 中国计算机设计大赛

联合打造!嘉为蓝鲸携手麒麟软件共建智能运维解决方案

嘉为蓝鲸

运维 AIOPS

HTML5 游戏开发实战 | 五子棋

TiAmo

html html5 游戏 6 月 优质更文活动

一种读取亿级doris数据库的方法 | 京东云技术团队

京东科技开发者

MySQL 数据库 Doris 企业号 6 月 PK 榜

版本动态 | SolidUI 0.1.0 版本发布

李孟聊AI

Web 2D 3D AIGC ChatGPT

AI与企业信息安全的应用、技术以及前景

行云管家

AI 网络安全 信息安全 企业信息

NFTScan 与 Sender Wallet 达成合作伙伴,双方在多链 NFT 数据方面展开合作!

NFT Research

NFT\

软件测试/测试开发丨Python常用数据结构学习笔记

测试人

Python 数据结构 软件测试 集合 列表

嘉为蓝鲸入选《信息技术服务运维工具名录》及《IT服务工具图谱》

嘉为蓝鲸

运维 信息技术 ITSS

Maven进阶学习指南 | 京东云技术团队

京东科技开发者

maven 组件 依赖 Maven仓库 企业号 6 月 PK 榜

消息中间件最强笔记大全:MQ+Kafka+体系图+笔记

小小怪下士

Java 消息队列 消息中间件

一种接口依赖关系分层方案 | 京东云技术团队

京东科技开发者

依赖关系 接口优化 API 接口 企业号 6 月 PK 榜 接口分层

小程序技术分享| 小程序集成 pixi 渲染引擎

anyRTC开发者

小程序 音视频 canvas pixi 渲染

Jasper:没有代码生成器或配置文件的ORM_.NET_Jonathan Allen_InfoQ精选文章