`
lovnet
  • 浏览: 6694577 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

庖丁解牛-Asp.net 3.5控件和组件开发技术一常见问题及书中问题纠正贴

阅读更多

各位好!
庖丁解牛一书已经成功出版. 为方便读者阅读,专门建立一个贴,您可以把:本书是否适合您阅读,本书阅读疑惑,常见问题及书中错误发到这里,我会一一回答您的问题,书中错误也会在下版纠正。

目前网友遇到的常见问题及解答:

http://topic.csdn.net/u/20090415/09/a210cadd-0984-43ac-a035-0f7a974c55e1.html?seed=602096462

目前为止网友提出的一些常见疑问及解答:


引用 54 楼 octverve 的回复:


如果是为找工作而学的人,建议找些更基础的书,组件开发在企业实际工作中用的很少很少{除非专攻组件的公司}



组件只是一种了解Asp.net的手段, 本书的要旨除能够让开发人员学会控件/组件开发外, 更重要的是可以让开发人员
了解Asp.net工作机制, 从而在开发过程中有种胸有成竹的感觉. 比如我们每天开发的页面就是一个Page控件,但对
Page控件知道甚少的话, 相当于在画皮, 如果一直处于这种方式则即使学习Asp.net很多年, 也感觉自己水平还是一般.

即犹如微软开发工具大中华区产品市场经理 胡建民 一针见血的评论:
80%的程序员都能应用20%ASP.Net的功能来画皮,但仅有20%的程序专家才能发挥另外的80%Asp.Net的威力来成就精彩的应用,其中的差异关键在于控件和组件的开发,而其中的秘诀尽在此书.不是诚心想成为杰出ASP.NET程序专家者,请勿浪费时间翻阅本书。
—— 胡建民 微软开发工具大中华区产品市场经理
大部分Asp.net开发人员, 甚至公司里的工作就是要求开发人员画页面("画皮"), 本书的内容就是推翻这种模式, 讲解一些
Asp.net更深层的东西; 否则, 技术水平会处于一直"画皮"的阶段.


引用 64 楼 logingod 的回复:
[color=#FF0000]我 的 承 诺
如果您之前没有从ASP.NET控件研究过ASP.NET开发,看了这本书您对ASP.NET技术的理解会提高三倍,对于已从事开发一两年的开发人员,对于本书75%以上的内容可能还没有接触到。本书就像“庖丁解牛”一样剖析ASP.NET,当然前提是您要有耐心把本书读完。由于本书介绍的是一些ASP.NET高级编程技术,可能有些技术初学者理解起来比较困难,遇到这种情况千万不要泄气,只要坚持把书看完就会做到前后技术连贯起…



效率上的优势也是有的. 比如, 我在我们的产品中用于显示一个列表的应用场景, 我会自己做一个控件, 且仅能够满足当前的
需求即可, 什么时候需求增加了, 自己再扩展即可, 效率当然要快于任何时候都用GridView或Repeater的方式, 因为它不会
生成一些无用的功能.
另外, 除了上面仅实现需求, '极限功能'法外, 控件也是一个类, 设计一个类的效率当然要取决于开发人员.


引用 72 楼 noflyzone 的回复:
引用 69 楼 ChengKing 的回复:


同意学习组件机制,但像你说的也太离谱为了一个用户的需要,就作一个控件?为什么?自己找累啊?根本不招边的话。说到你的控件效率会比.net自带的高多少,我不认同,一你没有数据,二没有示例,你说的根本没有说服了,如果是比.net的控件强几微秒,提它何用,如果说是考虑控件美观,功能灵活,我不用控件不就行了,多学习是好事如果只是学不知道为什么学,这不是在浪费生命吗,你遇到难服务的…



我说的意思你几乎没有理解对.
Q:同意学习组件机制,但像你说的也太离谱为了一个用户的需要,就作一个控件?为什么?自己找累啊?根本不招边的话。
A:根据应用场景选择是否自己开发. 我更强调的是一旦是自己开发的控件, 则更容易扩展功能, 因为控件是
自己写的,自己掌握源代码, 从理论上可以满足用户再增加的任何可行性功能;反而如果使用三方控件, 则只能看到一个dll, 扩展它也是有限制的(可以使用派生的方式). 而不是强调的满足用户的一个功能就自己开发.

Q:说到你的控件效率会比.net自带的高多少,我不认同,一你没有数据,二没有示例,你说的根本没有说服了,如果是比.net的控件强几微秒,提它何用,如果说是考虑控件美观,功能灵活,我不用控件不就行了,多学习是好事如果只是学不知道为什么学,这不是在浪费生命吗,你遇到难服务的…
A: 如果就显示一个简单的列表. 如果使用GridView控件, 它的代码要几百行; 如果使用我自己开发的最精简
的列表控件, 只要几十行代码即可以实现, 哪个效率高呢?
你说的可能是对的, 但前提是要实现两个功能完全相同的控件, 微软.net framwwork中的控件可能要比开发
人员自己开发的性能通常要高. 但通常下GridView提供的所有功能并不是在任何一个页面应用场景都用到.
包括Reapeater控件比我自己开发的控件也要复杂很多.
开发控件要取决于应用场景, 我在我公司产品中使用的控件有一半是自己开发的, 我是这么做的, 不是在胡说.


引用 79 楼 wanhot 的回复:
引用 73 楼 ChengKing 的回复:
A: 如果就显示一个简单的列表. 如果使用GridView控件, 它的代码要几百行; 如果使用我自己开发的最精简
的列表控件, 只要几十行代码即可以实现, 哪个效率高呢?



“它代码几百行”根本不影响效率,从客户端到服务器端效率都不影响,因为那些多余的功能你没用,这又何谈效率高低?楼主能不能明确指出你说的效率高,高在哪?难道就只为少了几行代码就高兴得不得了?



了解控件的主要目的是了解Asp.net的动作原理和运作机制, 而不主要是因为性能和效率方面而开发之.
学习一种技术, 要想提高, 必须得了解它. 就像开汽车. 不是因为我要开车, 我就必须要学会修车; 但您会修车, 假如在开车过程中听到你自己车有异常的声音, 也能够判断是发动机出了问题,
而不至

于车坏了, 目瞪口呆.


引用 83 楼 wanhot 的回复:
不太同意楼主的观点,要是开飞机还要学习修飞机?从我个人的学习经历来说,[size=24px]最有效的学习方法就是“先是为什么而学{达到什么目地或效果},然后才去向这个方向去学习,这样才不至于淹死在学海中”,最多学是好事??我不赞同,专才与通才的研发方向是不一样的,微软的讲师是对一些方向比较了解,但离精通{精通于实际项目}是很有限的。那些所谓的万金油,是从基本面上谈,因为他们比较强的处类旁通的学习能力的,但真是就实际开发与普通的高级程序员几乎无异。

说远了---,这个帖子中有些朋友和我有一样的问题,就是“看了这书”能对BS开发解决什么问题,也象上面朋友问的,我们是花100%精力学习了你书中的知识,而在应用中只用到不到10%,收益性也只有10%??还是我们是花100%精力学习你的书后,在应用中将收到超过我们期望的100%或更高的帮助呢?



扯远了,怎么可能收到不到10%? 可能你没有看过本书的五章试读章节, 还不甚了解本书的主旨. 不妨下载前五章阅读一下:
http://blog.csdn.net/ChengKing/archive/2008/08/18/2792440.aspx

:)


引用 151 楼 wf5360308 的回复:
引用 15 楼 zzxap 的回复:
楼主能不能给回帖的都送一本

这个提议不错哦,嘿嘿



哈哈, 我只是作者, 出版社负责印刷, 他们给了几本样书, 现在已经都分给同事了. 我现在自己都没留本呢.


引用 251 楼 passer000 的回复:
有问题:请教
我用光盘的VS08安装了之后打开项目,报错了,说什么不支持此项目,打开之后只有KINGCONTROLS可以看到,WEBSITE不能啊。怎么回事?



一般情况下只要打开源代码中的VS 2008文件夹下面的*.sln文件即可。遇到环境特殊情况,你可以新建一个空解决方案,再分别把站点和控件库工程加到方案中来。


引用 280 楼 zkvistor 的回复:
第五章第一节讲到Button的Click事件,有这么一段:假如我们没有对Button注册Click事件,则Button会执行一遍它内部的Click相关逻辑,并没有对Page对象产生任何影响;如果我们为Button定义了Click事件(如上面代码片段),则Button还是执行一遍它内部的Click相关逻辑,不同的是在执行自己内部逻辑的过程中它还执行了Page对象中的一些代码功能(即Button的事件体Button1_Click方法)

其中Button会执行一遍它内部的Click相关逻辑怎…



Button是个类, 点击Button时当然要先触发它内部的方法, 伪代码:
public Button:WebControl
{
public event EventHandler Click;

protected virtual void OnClick(EventArgs e)

{

if (Click != null)

{

Click(this, e);

}

}

}

"则Button会执行一遍它内部的Click相关逻辑"这句所指的是除: Click(this, e); 这句之外的上面的整个OnClick方法体.


引用 320 楼 Hack95 的回复:
¥79,对在校学生来说太贵了啊,要是便宜点,也许能和学生干部联系一下,帮你销售,人手一本,薄利多销。



你好! 出版社人员跟我说过, 如果批量订购, 我以作者名誉买可以7.5折直接由出版社发货, 63块钱一本. 多谢您关注!


引用 356 楼 a307172 的回复:
LZ
问下到底多少钱啦


你好! 各网上书店都有卖, 均在 60 多块. 还有淘宝也有很多店铺有卖.


引用 399 楼 hag_mon 的回复:
很希望买您的新书,但我发现一个问题哦,庖丁解牛-Asp.net 3.5控件和组件开发技术 书名是讲开发“控件”与“组件”的吧,可是我上网查了目录,书里只讲了如何开发控件,根本没讲开发“组件”的事哦,请你说说,到底书里讲没讲“组件”部分?



在Asp.net可以这么定义,可视化的控件称为控件;非可视化的控件称为组件,如数据源控件SqlDataSource,这种控件在本书中有讲解。


引用 419 楼 dfq 的回复:
希望能提供书的勘误表!



你好! 本书的诊误链接:
http://blog.csdn.net/ChengKing/archive/2009/05/02/4143088.aspx


如果您有新问题,请直接在本文后面发问即可, 多谢!

[附:本书资源]:

1. PDF和Word格式下载, 以及网页格式免费阅读:
http://blog.csdn.net/ChengKing/archive/2008/08/18/2792440.aspx
从事Asp.net技术的朋友不妨下载一下读一下.

2. MSDN格式五章内容免费阅读:
http://msdn.microsoft.com/zh-cn/dd567278.aspx
http://msdn.microsoft.com/zh-cn/dd567279.aspx
http://msdn.microsoft.com/zh-cn/dd567281.aspx
http://msdn.microsoft.com/zh-cn/dd567282.aspx
http://msdn.microsoft.com/zh-cn/dd567283.aspx

3. 购买
http://book.csdn.net/hi/BookClub_BookDetails.aspx?id=251924
另外, dangdang, china-pub,卓越网,taobao等书店也可以购买到了.


Thanks/King

引用 65 楼 logingod 的回复:
引用 62 楼 only_endure 的回复:
最近在学习这些东西,呵呵.


您是为什么而且学习组件开发呢??是为了提升对组件的了解吗?您能说说你学习它想达到什么效果呢?我就是不明白,为什么???如果说我学习了组件知识后在以后的开发中,我只是明白了asp.net组件的底层原理,可仍然在用着微软的组件,我是不是没有实际得到什么?我只是增加了一些应该明白的知识,而对实际的开发影响甚小???


希望哪位给说说我的迷惑哦



在我们公司的产品中, 经常会遇到人机和需求的"苛刻折磨", 他们会要求控件即漂亮又要支持很多功能又要效率快. 如果能够自己做控件了, 还怕实现不了的. 反而使用Asp.net标准控件, 功能即受到了限制, 出现"功能瓶颈". 还有, 我们公司是用的
RadControls一系列源码, 控件自身的一些bug和功能扩展, 也需要直接修改三方控件源码. 如果不会控件开发知识, 则简直无法工作.
其实实现一个需求要看开发人员怎么想的, 是否自己开发控件是取决于这个开发人员的. 我在开发时经常是考虑先自己实现一个.


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics