首页 > 其他分享 >代码设计及重构

代码设计及重构

时间:2023-06-10 17:47:04浏览次数:44  
标签:重构 String 处理 代码 OptionsWidget NPC 对话 设计 Options

 案例一  NPC和自身对话选项面板的设计:

 NPC A 和NPC OptionsWidget的交互需要传递 TaskInfo(TaskID,TaskUnitIndex,isMainTask)。Widget显示的时候需要自己提取string,处理的时候自身的处理,但是考虑到设计上的单一职责,

NPC A对NPC Options负责 options的处理,所以有如下改进: 

NPC OptionsWidget 与NPC A 的交互 只需要 Options String,而不是TaskInfo,完成了模块低耦合,
NPC A对外提供对应的Options String,别人提供索引Index即可自身完成对对话的处理。

 

案例二, 在当前有主线直线任务数据表的时候,如何处理NPC常用对话或者固定对话? 主要是配置问题 

      目前采用方案:   固定项,在代码中直接写死固定处理

      

标签:重构,String,处理,代码,OptionsWidget,NPC,对话,设计,Options
From: https://www.cnblogs.com/yang131/p/17471630.html

相关文章

  • 一行Python代码计算两点间曼哈顿距离
    以下图为例,图中白色方块表示楼房,是无法穿越的,只能绕行,那么从左下角出发到达右上角,红色、蓝色、黄色三条路线的距离是相等的,也就是所谓曼哈顿距离,或者实际行走距离。对于平面上的两个点(x1,y1)和(x2,y2),曼哈顿距离的定义如下:对于空间向量(x1,x2,x3,...,xn)和(y1,y2,y3,...,yn),曼哈顿......
  • Android 自定义View模板代码记录
    原文地址:Android自定义View模板代码记录-Stars-One的杂货小窝每次写自定义View,需要重写3个构造方法,如果使用AndroidStudio直接创建,会导致View代码过多,于是稍微删了点多余代码,搞一份简洁的模板代码供自己使用模版代码importandroid.content.Contextimportandroid.util.......
  • 代码整洁之道读书笔记
    可读性至关重要:代码应该易于阅读、理解和维护。命名清晰明了,函数和类的功能单一且一目了然。采用一致的代码风格和格式,使用注释来解释代码的意图和重要细节。函数的简洁性:函数应该短小精悍,只做一件事情,并且只有一个抽象层级。避免函数过长,可以通过提取功能单一的子函数来降低复杂......
  • 第一行代码读书笔记
    Android是一个开放的移动操作系统,由Google开发。它提供了丰富的开发工具和库,使开发人员能够构建功能强大的移动应用程序。 Android应用程序由组件组成,其中最重要的组件是Activity、Service、BroadcastReceiver和ContentProvider。 Activity是用户与应用程序交互的窗口,每个Ac......
  • 重要更新|《Python程序设计开发宝典》例12-7代码有bug
    下图是《Python程序设计开发宝典》第330页例12-7的代码,本意是使用多线程技术进行文件复制,重点演示嵌套函数定义、多线程编程技术以及队列在多线程同步时的用法。在代码中,使用内嵌函数add()创建一个线程负责往队列q中添加要复制的文件和文件夹名称,使用内嵌函数copy()创建多个线程负......
  • 设计模式的概念
    设计模式简介设计模式是一种最佳实践长期以来总结出来的解决一系列问题的一种套路。使用设计模式的目的:代码重用、工程化设计模式一般有多少种:23种、不设上限设计模式的类型设计模式的类型一共有四种:1.创建型设计模式:创建对象的同事隐藏创建的业务逻辑★工厂模式、★单......
  • 代码随想录算法训练营第四天|24. 两两交换链表中的节点 , 19.删除链表的倒数第N个节点
    24.两两交换链表中的节点 个人感觉这个不太难,刚开始打算用步进值为2,来搞,但是没有想到链表应该是怎么样的,原来可以直接用: 1cur=cur->next->next 学到了,这是我自己写的代码:1ListNode*MyLinkedList::swapPairs(ListNode*head)2{3ListNode*dummyHead=new......
  • 报告PPT--Python程序设计,不仅仅是学习编程(35页)
    本文PPT是董付国老师在“全国青少年STEAM创客教育论坛暨粤东青少年创客文化节”的报告内容。学习任何程序设计语言,都应结合具体的实际问题,不可空学语法纸上谈兵,更不能把程序设计作为一门孤立的课来讲。作为大学任课教师,可以结合学生专业理论课中的理论、算法或问题来讲Python;作为中......
  • Python+pywin32操作Excel文件常用功能(268行代码+注释)
    问题描述:使用Python扩展库pywin32操作Excel文件。准备工作:安装Python,安装扩展库pywin32,安装Office或WPS。参考代码:运行结果:公众号“Python小屋”......
  • Python逐块执行另一个Python程序中的代码观察运行过程
    任务描述:给定一个Python程序,编写程序逐块执行其中的代码,单行代码作为一个块来执行,选择结构、循环结构、异常处理结构、函数定义、类定义作为一个块来执行,每个块之间间隔1秒,以便观察执行过程。以Python+pywin32操作Excel文件常用功能(268行代码+注释)一文中的代码为例,编写程序逐块执行......