c#-将事件处理程序用作“可重用代码”是不好的做法吗?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#-将事件处理程序用作“可重用代码”是不好的做法吗?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1603字,纯文字阅读大概需要3分钟。
内容图文
![c#-将事件处理程序用作“可重用代码”是不好的做法吗?](/upload/InfoBanner/zyjiaocheng/681/e5e2dd1cb2bc4e56ba3162dae9e8fe8e.jpg)
情况
这是一个概念性问题,我将尽力澄清.如果您对概念性问题不感兴趣,请不要阅读问题.
好的,我正在处理一些预先编写的代码,并且在此代码中,它们将事件处理程序作为某种形式的OOP重用.
一些事件处理程序的示例:
protected void btnSomeButton_Click(object sender, Eventargs e)
{
//SOME LOGIC
}
“重用”上述事件处理程序的示例:
注意:这是在Web应用程序中的任意点调用的,其目的是重用// SOME LOGIC部分.
{
btnSomeButton_Click(null, null);
}
为了清楚起见,有些要点
>以上方法有效.
>事件处理程序可以正常使用.
我认为应该做的
根据我的推理,执行此操作的正确方法是创建一个单独的方法,并在尝试重用代码时调用此方法. (随时纠正我)
protected void btnSomeButton_Click(object sender, EventArgs e)
{
somefunction();
}
并重用代码:
{
somefunction()
}
该方法是这样的:
void somefunction()
{
//SOME LOGIC
}
问题|我的问题
我想告诉上司为什么要更改此代码.他们所看到的只是这段代码可以“很好”地工作,但是看这种编码样式会伤到我的眼睛.
不按照第一个示例的编码方式进行编码的背后的概念原因是什么?还是可以接受,我应该离开吗?
解决方法:
我同意您将代码放入单独的函数中的理由.
在处理此类重用时,我遇到的主要问题是,通常不会期望看起来像某个框架事件处理程序的东西被框架之外的其他东西调用.
您的示例中的参数指出了一个非常重要的观点:目前它们尚未使用,但是将来可能会改变.框架通常会为参数提供一定的保证,例如,它们永远不会为空:编辑代码时,人们可能会说“为什么我不应该信任框架?”并省略所有空检查.对于仅传递null的非框架代码,这将失败.
我经常遇到的另一个问题是,处理程序以后可以使用在“手动”调用的情况下不希望甚至有害的代码进行扩展.想到的一个简单示例就是记录“用户单击的按钮”之类的东西,而实际上用户没有.
我更喜欢将在框架处理程序中执行的每个动作放入其自己的函数中,该函数具有明确的名称,可以单独调用.
内容总结
以上是互联网集市为您收集整理的c#-将事件处理程序用作“可重用代码”是不好的做法吗?全部内容,希望文章能够帮你解决c#-将事件处理程序用作“可重用代码”是不好的做法吗?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。