仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2964|回复: 19
打印 上一主题 下一主题

[学习教程] JAVA编程:OOP和RDBMS不婚配,谁向谁让步,仍是找...

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-18 11:48:04 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Java的桌面程序开发在java程序员里通常叫swing开发,主要用的swing包里的类开发的,也就是通常说的c/s架构开发
OOP和RDBMS不婚配OOP的面向对象实际和RDBMS所基于的干系实际原本就不是一回事,实际分歧,不婚配是很一般的事变,次要有以下体现:
粒度为了观点的明晰和义务的单一,对象的计划粒度对照细。好比,一个User对象包括一个Address对象,Address内里有country,city,street等属性。可是,为了功能等方面的思索,数据库表的计划粒度绝对较粗,就上例来说,大概有一个只要User表,地点方面的country,city和street等只作为字段。多态多态是OO的特征,承继布局是很罕见的,可是RDBMS则没有多态。标识就Java而言,对象标识是reference,一样平常判别对象是不是不异是用equals()办法,而数据库表中的一行的标识是主键联系关系一个对象同其他对象产生联系关系,是经由过程持有其他对象的reference来暗示,而且无方向,能够是单向,也能够是双向,能够一对一,一对多,多对多。RDBMS中的两个表联系关系是经由过程外键,而且只要一个偏向,只能一对一或多对一,假如要多对多则必要加干系表了。OOP和RDBMS的冲突是在所不免的,就像两兄弟打骂,日子仍是要过,我们的程序仍是要写的。办理不婚配的成绩,一样平常就上面三招:向RDBMS让步这是最多见的了,既然你是“干系”数据库,那我不OO了还不成吗?数据库表布局建好了,我就环绕着这些个表编程。不论是间接上SQL仍是用大批只包括数据的VO,总之,面向历程。优点是,简单了解,如许程序员最好找;不敷嘛,手艺上和营业上的反复代码都太多,难以保护,没有审美,只要委靡。向OOP让步,用面向对象数据库这个不说了,我还没见过传说中的面向对象数据库,而且在可预感的未来持续看不见。用个和稀泥的作中介,抚慰两方该OOD/OOP咱还OO,该用干系数据库咱还用,找个ORM工具让两方各得其所。这大概是最好的办理计划了,就算不克不及办理全体的成绩,能办理九成的成绩,就年夜年夜的节俭了我们的工夫,而且年夜年夜的进步了体系的可保护性。谁都晓得,Java天下里,ORM实事上的尺度是Hibernate。
为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。
沙发
 楼主| 发表于 2015-7-1 03:21:37 | 显示全部楼层
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-23 20:03

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表