![]() |
1
5
我完全不同意在教育环境中使用ORM。在运行之前,您需要能够行走,并且使用ORM消除了学习过程中有关在应用程序中使用关系数据库的一个非常重要的步骤。您应该坚持使用一个非常轻量级的数据访问框架——它要求学生编写自己的SQL,并且(最多)不允许将此范围的代码绑定到UI,或者(至少)不需要它。 无可否认,我对Java世界并不熟悉,因为它与实际的企业开发有关,但我意识到(有些不情愿地)这是教育系统中的环境。虽然我认为学生们应该接触.NET,但这是另一次的争论;)在任何情况下,我都很确定有某种框架可以满足这一点。 我敢打赌,有一些东西提供了一些代码生成功能。在我以前的工作中,我们只使用.NET数据库库来(相对地)从数据库中低级读取数据。我们没有使用任何存储库或更改跟踪技术,而是使用了自己的技术。SQL命令是手工编写的,但是框架仍然提供类型安全和丰富的设计器支持。我的观点是两者都有可能。我建议在Java中找到类似的东西,要求学生手工编写其中一个或两个适配器的代码,以了解其中的内容,然后让代码生成器根据它们的SQL语句执行另一个“gruntwork”管道。
|
![]() |
2
3
作为一个欣然接受OO,而RDBMS却不情愿的人。。。我鼓励,甚至恳求,计算机科学部门保持关系数据库理论和实践的前景。如果即使在使用ORM作为OO类时也能做到这一点,那么就去做吧。但我更愿意看到大学毕业的学生理解面向对象关系映射 是 很难,而且 这很难,而且这并不意味着关系模型已经损坏。
非常 不管怎样,坏了。 |
![]() |
3
1
关于提供一个像Hibernate这样的ORM,我并不认为它对学生来说是一个巨大的学习空间。关于Hibernate最好的事情之一是它的难度与你对它的深入研究程度有很好的相关性。它有一个非常低的进入门槛(不到一天,我的国际海事组织)开始与基本的滚动,通常基本的是你所需要的一切-特别是像一个原型,这是你所说的是这个活动的目标。当然,它不需要学习到这样的程度,它将坚持与学生超出课程范围。基本的冬眠使用可以是一个一次性技能。 总之,我建议坚持使用RDBMS,并提供类似于Hibernate的ORM。 |
![]() |
4
1
看一看 DataObjects.Net -is共享OR/M框架和对象数据库(如果使用内置存储提供程序)的好处,允许在受支持的存储之间透明地迁移。 从体系结构和扩展的角度来看,它是相当先进的:例如。 this post 关于它的查询优化技术。 |
![]() |
5
0
我认为这在很大程度上取决于学生们进入这门课所知道的东西。我之所以这么说,可能是因为最好从他们都熟悉的东西开始,然后再往前走。根据我的经验,大多数学生都了解什么是对象以及如何使用它们,因此将SQL表表示为对象似乎是一个很好的开始。 如果到目前为止你同意我的观点,那么你可能也同意ORM是一个将年轻程序员从面向对象编程的舒适区过渡到数据库编程的新世界的好方法。 概念 数据库编程,而不用花太多时间讨论 是的。然后,一旦他们掌握了这些概念,您就可以回滚并向他们展示如何在OOP之外执行类似的实现(使用SQL、PHP、JSP等)
祝你好运! |
![]() |
Montaser Majid · 用于从多行中提取单行的SQL查询 3 年前 |
![]() |
Chance · 根据Sequelize中的字段拉入特定记录/行 3 年前 |
![]() |
lambchop01 · GORM如何为相似实体之间的关系建模 3 年前 |
![]() |
Shale · 如何将此查询更改为ORM? 3 年前 |
![]() |
Daniel Morales · 替换mongo DB中的嵌入字段 3 年前 |
![]() |
Vinay P · NodeJS和ORM? 7 年前 |
![]() |
MadDoctor5813 · 在Django模型中创建“简单”字典? 7 年前 |