有关如何组织Java类的建议

时间:2019-08-27 23:32:20

标签: java class

我对Java还是很陌生,但到目前为止仍然喜欢它。我的问题是,我对课程有点不熟悉。我知道它们是什么,以及我通常不知道该如何使用它们,因为我对编程并不陌生,但我想征询专业人士的意见。

我目前正在编写一个小的多线程程序,以通过在csv中为目标计算机生成cmdline来启动并行power shell会话,捕获输出并写入csv。

我是否应该将所有内容都放在一个类中,并将逻辑操作分解到该类中的方法并将它们串在一起?还是我应该使一个Thread executor类,cmdline powershell类,一个csv操作类等(我的想法是允许代码重用,但是那样会很耗时,在我看来这是不切实际的,因为我必须指定未来新情况的数据类型和返回类型)。

任何帮助将不胜感激!

3 个答案:

答案 0 :(得分:2)

可以这么说,没有“办法”, 这都是您的偏好。

但不要将所有内容都塞进一堂课。 通常,您希望尽可能保持整洁。

将来,您将感谢您使用不同的类。 如果您的项目不断壮大,并且一个bug诞生了,那么您不想遍历一个很长的类,而是简单地分解一下。

假设您有以下课程:     全球定位系统,     主要,     搜索

有人报告GPS不能正常工作的错误。 我没有到处乱说,我将GPS代码放在哪里, 就在你眼前!

答案 1 :(得分:0)

我去了每个人的链接,发现该信息非常有帮助。到目前为止,我已经提出了这个建议。

  1. 制作一个包含执行特定任务集的类的包(也不要制作通用的实用工具包)。在我的情况下,该软件包将称为com.jt.threads.powershell或其他名称。

  2. 使类保持较小,并按概念类型拆分程序。 (即,文件系统上的数据读取和写入操作应放在一类中,重点是帮助程序包执行特定任务或一系列任务。)

  3. 类中的方法应着重于获取,设置,更改对象属性或添加逻辑。

  4. 程序入口点应将其全部连接在一起,除非是大型应用程序,否则应使用接口(仍要了解它们)。

对于真正的OOP,我认为创建可重用的代码不是一个好主意,除非它支持一系列非常非常相似的任务(这样,如果我必须进行某些更改,就不会破坏其他类)在包装之外)。

谢谢大家!知道自己处在正确的轨道上,我感觉好多了。我担心在很多情况下都无法使代码可重用,这导致我做错了事。我从6个月前开始使用Python进行编程,但是我完全不理会类,我想养成良好的编程习惯,并尽我所能应用OOP! Python绝对是方便的和很好的入门语言,但是我希望我先学习Java,这样我才能对OOP有所了解。

答案 2 :(得分:-1)

没有“方式”来组织或分组课程。只要能按预期工作,任何事情都会发生,您会明白自己写的东西。

作为程序员,您只需要, 1.知道并理解你写的东西。 2.知道并理解其他程序员所写的内容。