首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

看来面向类的编程和数据库驱动编程在很多人的大脑里已经根深蒂固了解决方法

2012-03-18 
看来面向类的编程和数据库驱动编程在很多人的大脑里已经根深蒂固了参考http://topic.csdn.net/u/20100215/

看来面向类的编程和数据库驱动编程在很多人的大脑里已经根深蒂固了
参考http://topic.csdn.net/u/20100215/16/0B7A7EC6-0E4E-4BB3-BF6D-F1ABE7C19DE0.html
我没想到问题这么严重,我再强调一遍:
1、面向class≠面向对象!分层不一定非要用class!物理上你可以把一个层放在多个地方,包括放在数据库里。当然,把思路打开,还有很多手段;
2、数据库就是个存储介质,逻辑上可以放任何层的内容,在逻辑上db就不是一个层,db只是物理上的层;
3、由于数据库在逻辑上的多层性,实际上可以把最终投产的数据库按逻辑功能拆分为各种单一职责的数据库,比如业务逻辑相关的应用程序数据库AppDB、应用程序无关的应用程序中心AppCenterDB(这只是举个例子);
4、AppDB在整个开发驱动的链条上是末端的,也就是你完全可以在项目最终发布的时候才一同发布AppDB

抛砖引玉



[解决办法]
完全不了解你要说什么

分层最终的目的就是要让不论是别人还是自己在修改维护代码时容易理解,
那么你用大家都不习惯的东西,除了让后人迷惑以外有什么好处?


[解决办法]
楼主的功力又深了一层
[解决办法]
看来面向类的编程和数据库驱动编程在很多人的大脑里已经根深蒂固了
----------是的,相楼主学习。你说的很好。
----我认为,我写程序时使用一种自己熟悉方式,而且这个方式经过大家实践的,又能给我的工作带来很大的方便。我就暂时接受了。程序的改进就是来方便程序员工作的。
想一想 , 我不搞程序教学,程序系统环境开发,钻它做什么那?
[解决办法]
数据库可以放任何层的内容?

I不明白U.
[解决办法]
OO和数据库本来就没什么关系,
纠结于数据库设计的同时,也就抛弃了OO。
[解决办法]
数据库就是个存储介质,逻辑上可以放任何层的内容,在逻辑上db就不是一个层,db只是物理上的层;
-----------------------
这个移植和扩展不方便,团队开发不好
也不利用自己封装dll。

[解决办法]
呵呵,知道为啥吗??

原因就是因为 

有太多太多像lZ这样非要去条条框框去限制,非要把架构等同于数学,非要去整个公式出来的所谓的布道者太多了

就像lz上个帖子,让我去看petshop!嘿嘿,知道petshop是如何架构的人,是不会让人去看petshop滴,只有那些自以为懂了的才会去推荐petshop。

petshop是个结果,他是某种策略下的结果。结果只是结果,他体现策略,但他不是策略本身。而且petshop是作为一个教科书式的demo,他只是一个实验!就像北大青鸟的那些课堂实验一样,只是一个实验。实验的目的是演示如何在策略控制下去编程,但是他只是实验,不是现实,petshop本身过与教条,他并不美,也并不流畅,所以我才说如果理解他的策略的人,是不会去推荐的。如果不去追究策略,他只会困住你的手脚,并把你带入沟里

这就好比,我喜欢下围棋,如果有人问我如何下围棋,我说自己去看李昌镐和常昊的下的一盘棋。不,我觉不这么推荐,那是结果。如果冒然向一个不知道下棋策略的人,去推荐这样的棋,你只能把他带沟里。

ok,废话我也不多说。来看看真正的架构师是怎么说的。


如何看到一滴水的美丽
  支付宝(中国)公司业务架构师
  《大道至简》作者周爱民(aimingoo)
  
【一】
  架构是一个过程,而非一个结果。
  【二】
  在大多数人的谈论中,架构是一个目标产物,而作为架构师的责任就是去生产它。所以无论如何,架构是可以“做”出来的,而且也应该有一些“做”的方法、技术、技巧。
  有人问过我:架构的最主要产出是什么?我的答案是:图。这里面有两层含义:一层含义是如同建筑师描绘的蓝图一样,用于引导实施者;另一层含义是架构师头脑中清晰的目标系统。如果架构师头脑中没有系统清晰的图像,他是没有办法把它画出来的。
  【三】
  画家画的无非是物我。画物的画家,最终画的还是我见。所以,画家的笔最终描绘的是他自己心里的映像。
  【四】
  艺术是不可能被“生产”出来的,生产出来的,叫“艺术品”。
  【五】
  架构这个过程,是架构师洞见系统内在结构、规律、原则和逻辑的过程。真正的架构师是可以将自己放在系统中去的(例如作为系统中的任何一个角色),只有清晰地理解系统,才能简洁地描述它。而当架构师拿出了他所描述的“作品”的时候,架构这一过程就已经结束了。
  【六】
  一滴水滴落的过程中,有多少个形态的变化?‘

-----------------------------------
 架构的架构
  北京无限讯奇信息技术有限公司产品技术高级总监
  黄冬
  一位想要创业的朋友跟我说要寻找一位懂得“架构”的高人与他一起创业。要知道与代码不同的是,“虚幻”的架构常常让人认为其有很多玄妙之处,只因它大多难以落在纸上。特别是与很多大师谈及架构时,经常落入他们的一些“陷阱”,并往往为自己达不到大师的精明与技巧而叹息。殊不知,被我们所津津乐道的这些架构,是他们在日常工作里经历了大量的错误、重复的尝试、无数的代码、长久的考验所积淀下来的只言片语。

--------------------------------------------------

美丽架构之道
  《构建高性能Web站点》作者
  Web架构实践者
  郭欣
  我无法给架构下一个简单的定义,因为任何定义都会束缚你对架构的无限想象。不可否认,架构师早已出现在人类几千年前的各项生产活动中,比如建筑、音乐。而在计算机软件及Web领域,架构的设计直接影响着系统的生产,比如开发过程和效率、代码和组件复用性等,同时也影响着系统的可用性、可伸缩性、性能、容量可预测性等。
  在本书中,我们更加关注架构之美。美丽的架构同样无法定义,可它却一定是自然的、简单的、可复用的、人文的,甚至是外行人也可以细细品味其思想的。当我看到超市的多个收银台排满长队时,便想到服务器并发处理性能和容量;当我看到十字路口的车辆等待转弯时,便想到它通过缓存思想来提高交通吞吐率。
  那么如何设计出美丽的架构呢?从代码逻辑到物理网络,从单机到分布式,无数的技术可供架构师选择,如分层、组件化、服务化、标准化、缓存、分离、队列、复制、冗余、代理等,不过它们仍然只是“术”的范畴,而何时何处如何恰到好处地使用它们才是“道”的范畴,比如顿悟变化的道理,在博弈中寻找平衡,以系统化的角度来分析问题,寻找相对与绝对的奥秘、开放的心态……
  然而,这个领域实在是太年轻了,我们需要更多的例子和经验,本书将让你大开眼界!

----------------------------------------------
看出来吗?所有优秀的架构师在关注啥?在关注过程而非结果,过程中的策略,过程中的平衡,过程中的变与不变------------方法学的意义在于体现策略,而非体现结果。知道游击战的十六字真言,你才会了解游击战
倘若你只去看结果(地道战,地雷战),你只能感叹他们咋就那么聪明呢?
------解决方案--------------------


玩抽象玩疯掉了~~~~
[解决办法]

探讨
1、在目前我们的水平上,架构在同一个业务领域是项目无关的,
2、通过架构,团队的技术依赖降至基本不需要Coder的水平,
3、通过架构,项目可以快速重建,
4、通过架构,项目迭代没有数据库参与,
5、通过架构,代码不仅是可重用的,也是可重复的,这很重要,
实现同一个需求,在同一个架构下的n个技术人员生产出的代码都是一个样的,




[解决办法]
探讨
1、在目前我们的水平上,架构在同一个业务领域是项目无关的,
2、通过架构,团队的技术依赖降至基本不需要Coder的水平,
3、通过架构,项目可以快速重建,
4、通过架构,项目迭代没有数据库参与,
5、通过架构,代码不仅是可重用的,也是可重复的,这很重要,
实现同一个需求,在同一个架构下的n个技术人员生产出的代码都是一个样的,

[解决办法]
探讨
1、在目前我们的水平上,架构在同一个业务领域是项目无关的,
2、通过架构,团队的技术依赖降至基本不需要Coder的水平,
3、通过架构,项目可以快速重建,
4、通过架构,项目迭代没有数据库参与,
5、通过架构,代码不仅是可重用的,也是可重复的,这很重要,
实现同一个需求,在同一个架构下的n个技术人员生产出的代码都是一个样的,




[解决办法]
不识庐山真面目,只缘身在此山中!
——其实 lz 并没有跳出来!
[解决办法]
楼主说要摆事实 讲根据 我就结合我的实际情况 说写意见 大家仁者见仁 智者见智。。
  
我们公司以前买了个ibm的技术 做手机浏览器中的一个网关转换功能。
ibm也算是大品牌 这技术的设计师 名字我忘了 也是给了我们很多技术支持 ,文档信件,源代码。ibm中国分公司 还派人来接洽。 
接手后就发现他们的技术向和我们的产品无缝融合是不可能的,因为中国手机的版面格式和美国手机不一样。
我们有32X24 而美国手机没有 或者说 它对某几种显示格式不是很支持。
这就可以看出 这是他工作的百密一疏 虽然不是什么大问题但是我们却无能为力 只能在后面补救效果不理想。
然后回馈给他们 ,他们也是没办法,因为他们就是按照楼主说的 完全架构开发,不给Coder主管能动力,Coder有时候甚至不知道自己写的东西是用在哪里的。其结果就是 只能我们后续解决。

如果写这个代码的Coder知道它用在哪里,那么他必然要考虑 这个功能的适用性 其耦合程度 是否足够。
但是架构师可能想不了这么细,他们会把大量精力放在性能与效果上。 于是这个问题就成为了盲点。
大家对ibm这群工程师的看法马上从天上 拉到和我们一个水平线了。
这就是我的理念。 一个人不可能考虑到所有问题。既然是架构 指定大方向就足够了。没必要事无巨细 都那么死板。没有主观能动力的代码 没有生命的。Coder不注入创作热情,是不会有好代码的。
[解决办法]
语文水平和技术水平成正比
[解决办法]
up
[解决办法]
新年快乐!-----对不起,您回复内容太短了! 

热点排行