剖析DNN架构
剖析DNN底层架构,研究DNN核心框架...
本Blog将新增一个栏目,暂时取名为"剖析DNN架构",名号似乎有些大了,但考虑到这也算是鞭策所写文章质量的一种手段,故最后暂且不做更改了。对于为何出现这一栏目,主要是一直以来跟一些DNN爱好者们的交流所促使的。曾有几位朋友所在公司想利用DNN这一开源平台或开发产品,或与现有系统整合,或优化框架以便满足需求等等,故他们都愿意招聘能真正担当起这一重担的“千里马”,想想这将要求所聘之人具备以下一些条件:
1) 熟悉DNN核心架构和框架脉络。
2) 有一定的架构经验,懂得设计模式相关知识。
3) 精通DNN模块开发流程及其皮肤机制。
等等,“DNN架构师”也就从此诞生了,当时我听到他们的招聘要求之后,唯一的想法是在国内,此等“千里马”实在是凤毛麟角,恐怕他们只能望梅止渴了。因为想想国内研究DNN的氛围,人气之淡,交流之稀,凭何能促进DNN这一开源平台的兴盛呢?
对于DNN入门的门槛,就我个人的观点还是蛮高的,当然你想借助DNN搭建一个网站倒是及其容易的,也就是1-3分钟即可,而目前DNN模块及其皮肤资源还是蛮多的(其中包括免费或商业的),只要你合理利用还是可以满足大部分需求的。但如果你想定制业务或布局修改的话,那就必须得了解一些编程技巧或HTML,CSS布局原理等。对于非专业人员,恐怕是力所不及的。而对于刚入门的开发人员,你需要了解的更多,其中包括DNN基本架构,模块开发流程,API调用等等,想真正开发一个高级模块,也不是一蹴而就的。最不幸的是,由于国内相关资源的欠缺,一些刚入门者屡屡碰壁也就不足为怪了,在此我还是鼓励大家,如果你想真正好DNN,那么请你耐着性子看看英文资料吧,其中包括DNN官方的第一手资料。相反,可喜的是如今大家已经逐渐看好DNN,各方面应用不断涌现,比如电子商务,游戏站点,社区论坛,ERP整合,电子政务等等,可以这么说,DNN应用在国内这一潜在市场正在形成中,群雄逐鹿,看看你是否可以在此市场中分得一杯可观的羮。
最后,再聊点本人认识的DNN,DNN可算是.net下最大的开源平台,其优势是显而易见的,其地位也是举足轻重的,DNN可谓为Microsoft也作出了相当大的贡献,想想DNN本身是VB.Net开发的,这也可以理解为留住VB开发人员的一个诱饵吧,更深的一层就是由DNN带动的.net项目不在少数,曾有官方数据对此进行佐证,可惜我没有记得链接,似乎是DNN OpenForce '07大会 ...
Read the rest of entry »
何谓IMC, IMC的全称是Inter Module Communication,它主要负责模块之间的通信,我们可以利用IMC在DNN模块开发中完成很多有用的功能,比如和第三方模块的交互等等....
Read the rest of entry »
因为DNN 4.6.2引入了接口IHydratable而让CBO更为强大,这让CBO真正成为王者之军,从而我们又可以重归CBO,这是为何,源头是什么呢?再谈一谈CBO...
Read the rest of entry »
如果你开发过DNN模块或阅读过模块的代码,你应该会知道模块控制类所经常使用的一个对象CBO,它在DNN里是大名鼎鼎的,几乎所有的模块开发都会涉及并使用这一对象. 究竟CBO是什么呢, 如何使用呢?它有什么优势和缺点么?请听我慢慢道来 :)
Read the rest of entry »
在此简单解析DNN在国内的现状和发展前景及其DNN本身存在的弊端和一些缺陷, 如果你正在考虑是否采用DNN作为开发或产品的平台, 那你在作决定之前不妨先看看这篇文章, 但愿可以帮助你一些.
Read the rest of entry »
先简单交代一下DAL, 所谓DAL, 即是DNN数据访问层(Data Access Layer), 主要负责数据库和业务逻辑的交互, 利用设计模式中的工厂模式来实现数据提供者的分离, 从而可兼容不同数据库. 在此将解析DAL的最新升级版本(或者说是衍生品)DAL+, 它算是DNN的新宠儿, 利用DAL+可以更加简化DNN数据访问, 有兴趣不妨看看其中的奥秘.
Read the rest of entry »