C# 形宾问题
对于表单对象应该处理哪种类型的代码,而不是让对象本身来处理它,有人有什么硬性规定吗?例如,如果有一场比赛,参加比赛的对象(比如马)应该作为马的一部分来处理比赛,还是最好将其放在表单对象中?我想我要问的是,一个人如何决定什么进入一个对象,比如说一个方法,什么进入一个形式对象而不是一匹马。在这种情况下,您是否可以使用任何规则来确定代码的最佳抽象位置?这称为“关注点分离”。让表单处理显示和用户交互。让C# 形宾问题,c#,abstraction,rules,C#,Abstraction,Rules,对于表单对象应该处理哪种类型的代码,而不是让对象本身来处理它,有人有什么硬性规定吗?例如,如果有一场比赛,参加比赛的对象(比如马)应该作为马的一部分来处理比赛,还是最好将其放在表单对象中?我想我要问的是,一个人如何决定什么进入一个对象,比如说一个方法,什么进入一个形式对象而不是一匹马。在这种情况下,您是否可以使用任何规则来确定代码的最佳抽象位置?这称为“关注点分离”。让表单处理显示和用户交互。让赛车手处理比赛。这称为“关注点分离”。让表单处理显示和用户交互。让赛车手来处理比赛。我尝试开发我的软件
赛车手处理比赛。这称为“关注点分离”。让表单处理显示和用户交互。让赛车手来处理比赛。我尝试开发我的软件,以便将不依赖于用户界面的核心功能抽象为负责其任务的类
试着想想:
我如何编写它,以便既有GUI界面又有控制台界面,而无需复制任何代码
UI应该只处理视觉效果和用户交互。其他一切都应该根据其角色进行组织。我尝试开发我的软件,以便将不依赖于UI的核心功能抽象为负责其任务的类
试着想想:
我如何编写它,以便既有GUI界面又有控制台界面,而无需复制任何代码
UI应该只处理视觉效果和用户交互。其他一切都应该根据其角色进行组织。不确定这里是否有绝对正确的答案。但同意约翰·桑德斯的观点。“表单”作业主要负责向用户显示数据并接受数据输入。你离那越近,就越孤独。想想什么时候有其他地方可以使用这种类型的数据,如果代码在其他地方,它可以被重用
让一个“业务对象”或一个“门面”来处理竞争的逻辑和显示它的表单。不确定这里是否有绝对正确的答案。但同意约翰·桑德斯的观点。“表单”作业主要负责向用户显示数据并接受数据输入。你离那越近,就越孤独。想想什么时候有其他地方可以使用这种类型的数据,如果代码在其他地方,它可以被重用
让一个“业务对象”或一个“门面”来处理竞赛的逻辑和显示它的形式。试着用现实世界中的方式来表示事物。描述马的属性或动作的任何内容都属于马对象。任何描述比赛属性或动作的东西(可能包括马对象的集合)都属于比赛对象。表单不是一个真实的对象,只是一个用于显示来自马/比赛/任何东西的信息的小工具。因此,除非需要在屏幕上显示真实数据,否则不要在表单中存储任何内容。尝试以真实世界中的方式表示事物。描述马的属性或动作的任何内容都属于马对象。任何描述比赛属性或动作的东西(可能包括马对象的集合)都属于比赛对象。表单不是一个真实的对象,只是一个用于显示来自马/比赛/任何东西的信息的小工具。因此,除非需要在屏幕上显示真实数据,否则不要在表单中存储任何内容。由于表单是UI的一部分,我将应用我的UI硬性规则:
UI=格式化、排序和显示数据,以及接受和验证输入由于表单是UI的一部分,我将应用我的UI硬规则:
UI=格式化、排序和显示数据以及接受和验证输入您是在谈论WinForm还是WebForm?您是在谈论WinForm还是WebForm?