Ela*_*nda 5 .net c# architecture asp.net
我阅读了以下关于Microsoft .Net的架构:由Dino Esposito和Andrea Saltarello 构建企业应用程序:
无论何时采用声明性方法进行编码而不是命令式方法,您都要将一些职责委托给其他一些代码层 - 一个您无法完全控制的层.因此,您最终希望中间工具能够正确理解您,并且在此过程中不会遇到任何问题.在软件开发中,委派给第三方可以加快开发速度,但是您应该保证用户能够得到您想要的结果.
这并不意味着您不应该信任Visual Studio 2008或类似的基于向导的产品.这一点完全是另一回事.在一个可能由几个团队开发的大型系统中,经典的声明性编程只是不起作用.您需要在演示文稿中包含一层代码,用于决定要显示的内容,在何处阅读设置以及如何应用这些设置.声明性编程仍然是一个很好的选择,但只有你编写引擎和向导.
有人可以用简单的语言向我解释究竟什么是声明性和命令式编程?
例子.
声明性编程:
<asp:DropDownList runat="server" DataSourceID="ObjectDataSource1" />
<asp:ObjectDataSource runat="server" ID="ObjectDataSource1" ItemUpdating="..." />
Run Code Online (Sandbox Code Playgroud)
命令式编程:
ObjectDataSource source = new ObjectDataSource();
source.ItemUpdating += ...;
DropDownList list = new DropDownList();
list.ID = "";
list.DataSource = source;
list.DataBind();
Run Code Online (Sandbox Code Playgroud)
声明式编程——应该做什么
命令式编程 - 你想要的事情应该如何完成。
声明式编程要求开发人员说出要做什么。命令式编程要求开发人员逐步定义代码应如何执行。
示例:C# 中的 LINQ 是声明性的。
阅读此处了解更多信息:http://www.informit.com/articles/article.aspx? p=1330154&seqNum=4