这是三天来一直困扰我的问题,在做程序时,我应该是一步一步走,怎样能做出效果就怎样写代码,还是思考再三,设计出一种好的程序结构,试程序具有更好的扩展性,而且不需要传递很多参数。
其实,这两种思路都有利有弊。第一种思路的好处是你很快就能达到目的,看到成果,然后可以发挥自己的想象力去做各种好看好玩的东西;缺点是这样写出来的程序往往逻辑混乱,结构糟糕,一旦你要改动某一处,就会有很多地方都需要改动,到时候容易把程序搞成一团浆糊。
第二种思路的好处可能是你做的程序会很简洁明了,也很容易扩展和修改,你对程序的理解也会更透彻;但缺点是你前期会花比较多的时间且进展缓慢,最糟的是你想了半天也想不出好的设计思路,或者你以为很不错的思路,一去执行(写代码)就发现根本不是这么回事。在你花了好几个小时甚至几天还没有多少进展,看着别人一个个华丽的功能实现啦,你却只有干瞪眼的分,那时真是想死的心都有啦,心浮气躁,没有信心做下去啦(我现在就是这样)。
我觉得,对于我们初学者来说,一开始还是尽量把功能实现的好,初步对所做的程序有个概念,有了一些第一手资料,再去设计会有底一点;另一方面,做出一些看得见的东西会有成就感,让自己更有信心。如果要去设计的话,还是找人或者和团队一起商量着干,一个人的思维毕竟有局限,尤其是自己一个人苦思未果的时候,最好不要埋着头硬干,这样收效甚微。(血的代价啊)
在做程序时遇到的最大的麻烦就要数在读取信息线程中读到一条完整信息后如何处理信息的问题。由于这个线程要负责读取各种类型的信息(文字,图形……),所以我们不在线程外部不知道它什么时候读完一条信息,也不知道这条信息是什么类型,所以很难再线程外部处理读到的信息。比较靠谱的是在线程里处理,一旦读好一条信息,就马上处理(在文本框里显示读到的文字,在画图板上画出图形……),但这样会需要给线程传入不少东西(文本框,画布……),先不说程序扩展时的麻烦,本来就要传入不少参数,构造方法都老长老长啦!
这是我的服务器流程图:
想了好久,想了好多办法,也实实在在地试过几种,都不行,最后灵光一现,想到一种不错的办法。由于要传的参数很多,我就把它们“集成”起来,把几个关联的参数作为一个类的属性,然后再在这个类里写获取这些属性的方法。比如把所有通信工具(文字聊天,联机画板……)放到一个“工具箱”里,到时只要在工具箱对象里新建各种通信工具的对象,然后再把工具箱对象传到读取信息线程里面就行了。
通信工具与读取线程流程图
通信,读写信息,处理信息的流程图
相关推荐
"android拖动控件,解决回到原点"这个标题揭示了一个常见问题:当用户拖动一个视图(View)后,由于父布局的刷新或其他原因,如ListView的滚动,拖动的视图可能会意外地返回到初始位置。这个问题的核心在于理解...
总结,FX5U-DDSZR指令是三菱FX5U PLC针对回原点操作的关键指令,它支持不同类型的原点检测方式,能够灵活适应各种机械结构,确保设备在开始作业前准确返回到预设的初始位置。理解并熟练应用这一指令,对于提升工业...
#### 三、FANUC 0i-M系统刀库原点设定方法 1. **刀号混乱情况下的处理**:如果在使用过程中发现刀号出现混乱,需要进行刀库原点的重新设定。 2. **具体步骤**: - 移除刀库中的所有刀具,确保刀库为空。 - 将...
根据所提供的文件信息,以下是关于“MR-JET-G实现CC-LINK IE Field Basic通信”的相关知识点总结: 1. 接线要点: - 驱动器上CN3控制接头的型号是MR-CCN1,为20针脚接头。 - 常用的接线包括前后极限、DOG点、紧急...
原点控制是伺服系统的重要功能,确保电机能够准确回到预设的零点位置,通常在设备启动或需要重新校准时使用。 2. **原点搜索与设置**: - **自动原点搜索**:系统通过设定特定的信号条件,比如按下原点返回按钮,...
三菱伺服MR-JE-C与FX-5U PLC两轴CCLINK-Basic总线通信:实现回原点、定位、速度与力矩模式无缝切换及附赠通信资料大全,三菱伺服MR-JE-C与三菱FX-5UPLC进行两轴CCLINK-Basic总线通信程序。 控制模式:有回原点,定位...
"mazak 伺服刀库原点设定" mazak 伺服刀库原点设定,是mazak伺服刀库系统中的一种重要设置。该设置主要用于恢复刀库的原点位置,以确保刀库的正常运行。 mazak 伺服刀库原点设定主要包括两个步骤:一是使用 MR-J2...
总结来说,三菱FX3U PLC伺服回原点的三种方法各有特点和适用场景。正确选择和实现这些方法,不仅能够满足不同工业应用场景的需求,还能为设备运行提供高精度和高稳定性的保证。这对于提升生产效率、降低生产成本以及...
分治法查找最小值代码,C语言编写,可能需要用input.txt输入,回到原点的骑士游历问题代码。
主要讲解三菱MR-JE-C产品,在配置文件方式控制模式下,通过CC-LINK IE Field Basic通讯,实现伺服原点回归、定位控置、速度控制功能。 一、内容包括:JE-C控制样例程序 +说明、JE-C伺服放大器资料集+轨迹模式篇 ...
XY2-100通信协议是激光打标领域中一种重要的数字通信标准,主要用于控制激光振镜系统,实现精确的图形和文字打标。本文将详细介绍该协议的原理、结构和应用,帮助激光打标行业的工程师更好地理解和运用。 XY2-100...
《三菱FX5U以太网CC-LINK BASIC总线控制4轴伺服MR-JE-40C通信详解》 在工业自动化领域,三菱FX5U系列PLC以其强大的功能和可靠性备受青睐。本资料主要围绕如何利用三菱FX5U PLC通过以太网实现对4轴伺服电机MR-JE-40C...
MR-JET-G实现CC-LINK IE Field Basic通信 MR-JET-G是一种高性能的伺服驱动器,能够实现CC-LINK IE Field Basic通信。CC-LINK IE Field Basic是一种工业现场总线协议,广泛应用于工厂自动化、机器人控制、运动控制等...
### 新代设定轴向原点方法详解 #### 一、概述 本文档旨在详细介绍新代控制器(TanLu.CNC)中轴向原点复归及软件行程设置的方法。该方法适用于采用新代控制器的机床设备,通过精确设置轴向原点,确保机床能够准确、...
### Win8.1系统还原点设置方法详解 #### 一、引言 在日常使用Windows 8.1操作系统的过程中,可能会遇到系统故障或误操作导致的重要数据丢失等问题。为了能够快速恢复到之前的状态,系统提供了“系统还原”功能。...
通过上述三个步骤,我们可以成功地将Allegro软件中的原点移动至板子的左下角,从而确保所有贴片元件的坐标均为正值。这对于后续的生产制造过程至关重要。此外,这些步骤不仅适用于初学者,也适合经验丰富的设计师,...
在机器人技术领域,原点位置的设定是机器人操作和编程的重要部分。对于Epson品牌的4轴和6轴机器人而言,正确设置原点位置对于机器人的精确控制和稳定运作至关重要。本文档提供了关于如何设定Epson 4轴和6轴机器人...
总结起来,FANUC机器人的原点校准流程包括:伺服上电、移动到Mark位置、通过示教器进入系统设置、PCA复位、设置零点位置、以及最后的校准确认。整个过程需要仔细操作,确保每一个步骤都准确无误,以达到最佳的机器人...
在本问题中,用户遇到了在PTO控制第三方伺服回原点后,"Done"位没有置1的情况,这可能与指令执行的机制有关。 首先,"Done"位通常是用于指示一个特定任务或动作是否已经完成的标志。在S7-1200的PLC程序中,当一个...