通常我编写了一个.rb文件中有多个类的程序。同样我也更新了使用多个类的程序,但是,每个类都在它自己的.rb文件中。我可以假设,让他们在不同的文件中可以让团队更容易一起工作或拆分工作。但是在几乎每个我分配的项目中,我都把所有的类放在一个文件中。使用一个文件与多个文件的主要优点或缺点是什么,哪一个更好的“红宝石”礼仪?.rb文件包含多个类与多个.rb文件,每个类中有一个类
1
A
回答
1
那么,你已经有了一个很好的理由:“......将它们放在不同的文件中可以让团队更容易协同工作或分散工作。”
另一个原因是组织。假设我想知道User类的定义。如果有一堆文件和一个名为user.rb
,这是一个很好的线索。如果有一堆文件,并且它们中没有一个被命名为user.rb
,我必须开始搜索文件或使用文件搜索工具,并浪费我的时间。此外,如果我正在读取一个文件,并在顶部显示require "user"
,我会自动知道该文件可能需要一些名为User的文件。如果它顶部显示require "script"
,我不知道它正在加载什么,或者这个文件需要什么,所以我必须四处挖掘,而我的时间被浪费了。
第三个原因是封装。保持内存中的代码具有真正的性能影响。如果script.rb
中有十二个不同的类,而我做的是require "script"
,那么即使我只想要用户,我也会加载所有这些类。更不用说你的测试 - 从而你的整个工作流程 - 如果他们只需要加载他们真正需要的东西,运行速度会快得多。
+0
真棒,它使得因为需要一个文件会让你加载所有的类,而不是只有一个,使性能显着下降,这取决于你的文件有多大。非常感谢! – Schylar 2014-09-29 21:53:43
相关问题
- 1. 在视图中包含.rb文件
- 2. 每个类在jar文件中有两个类文件
- 3. PHP中的一个'压缩'类与多个类文件的文件
- 4. 仅包含一个PHP类文件
- 5. Intellij多个文件类型
- 6. 创建从一个文本文件与多个数据类型
- 7. 如何多次要求一个包含类的PHP文件?
- 8. fxcop自定义规则 - 避免每个文件有多个类
- 9. 如何在另一个文件中包含一个类?
- 10. InputStream包含多个文件
- 11. 包含多个包的jar文件之外的公共类
- 12. 自动加载在laravel中包含多个类的PHP文件
- 13. 单个Java文件中的多个类,每个类都有一个主方法 - 意外行为?
- 14. System.io.Directory.GetFiles多于一个文件类型
- 15. 为什么每个Java源文件有多个字节的代码类文件?
- 16. 一个类应该包含多少行?
- 17. 类型安全配置:不能包含多个文件
- 18. 包含一个包含多个数组的php文件
- 19. 如何从输入类型=“文件”中删除一个,两个文件多个?
- 20. 在每个源文件中包含一个头文件
- 21. 一个java文件可以有多个类吗?
- 22. 具有多个实现文件的一个类
- 23. 对于同一个表,多个HBM文件具有多个类别
- 24. 在每个类中包含相同的头文件
- 25. C++烦人包含在文件中的两个或多个数据类型
- 26. 多个批处理文件(执行文件RB)的最后一个不肯收,我将失去我的脑海
- 27. 多个Perl包在一个文件中?
- 28. Nodejs使用多个源文件中的modules.export导入多个类
- 29. 将8+类的模块拆分成一个包,每个类都包含在自己的文件中
- 30. PHP类包含一个文件,但该文件无法访问类
它只依赖于类的复杂性... – 2014-09-29 21:26:38