我对Java还是很陌生,但到目前为止仍然喜欢它。我的问题是,我对课程有点不熟悉。我知道它们是什么,以及我通常不知道该如何使用它们,因为我对编程并不陌生,但我想征询专业人士的意见。
我目前正在编写一个小的多线程程序,以通过在csv中为目标计算机生成cmdline来启动并行power shell会话,捕获输出并写入csv。
我是否应该将所有内容都放在一个类中,并将逻辑操作分解到该类中的方法并将它们串在一起?还是我应该使一个Thread executor类,cmdline powershell类,一个csv操作类等(我的想法是允许代码重用,但是那样会很耗时,在我看来这是不切实际的,因为我必须指定未来新情况的数据类型和返回类型)。
任何帮助将不胜感激!
答案 0 :(得分:2)
可以这么说,没有“办法”, 这都是您的偏好。
但不要将所有内容都塞进一堂课。 通常,您希望尽可能保持整洁。
将来,您将感谢您使用不同的类。 如果您的项目不断壮大,并且一个bug诞生了,那么您不想遍历一个很长的类,而是简单地分解一下。
假设您有以下课程: 全球定位系统, 主要, 搜索
有人报告GPS不能正常工作的错误。 我没有到处乱说,我将GPS代码放在哪里, 就在你眼前!
答案 1 :(得分:0)
我去了每个人的链接,发现该信息非常有帮助。到目前为止,我已经提出了这个建议。
制作一个包含执行特定任务集的类的包(也不要制作通用的实用工具包)。在我的情况下,该软件包将称为com.jt.threads.powershell或其他名称。
使类保持较小,并按概念类型拆分程序。 (即,文件系统上的数据读取和写入操作应放在一类中,重点是帮助程序包执行特定任务或一系列任务。)
类中的方法应着重于获取,设置,更改对象属性或添加逻辑。
程序入口点应将其全部连接在一起,除非是大型应用程序,否则应使用接口(仍要了解它们)。
对于真正的OOP,我认为创建可重用的代码不是一个好主意,除非它支持一系列非常非常相似的任务(这样,如果我必须进行某些更改,就不会破坏其他类)在包装之外)。
谢谢大家!知道自己处在正确的轨道上,我感觉好多了。我担心在很多情况下都无法使代码可重用,这导致我做错了事。我从6个月前开始使用Python进行编程,但是我完全不理会类,我想养成良好的编程习惯,并尽我所能应用OOP! Python绝对是方便的和很好的入门语言,但是我希望我先学习Java,这样我才能对OOP有所了解。
答案 2 :(得分:-1)
没有“方式”来组织或分组课程。只要能按预期工作,任何事情都会发生,您会明白自己写的东西。
作为程序员,您只需要, 1.知道并理解你写的东西。 2.知道并理解其他程序员所写的内容。