问题标签 [dos-donts]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
10 回答
432 浏览

file - 使用文件的注意事项

我正在为编程课的初级学生准备一个关于文件的讲座。我要阐述的要点之一是文件的良好做法。

在任何编程语言中使用文件时要记住什么?

0 投票
14 回答
5514 浏览

c# - 需要引用:使用预处理器是不好的 OO 实践

我相信,像这样的预处理器指令的使用#if UsingNetwork是不好的 OO 实践——其他同事不这样做。我认为,当使用 IoC 容器(例如 Spring)时,如果相应地编程,组件可以很容易地配置。在这种情况下,IsUsingNetwork可以由 IoC 容器设置属性,或者,如果“使用网络”实现的行为不同,则应该实现并注入该接口的另一个实现(例如:IService、、、ServiceImplementationNetworkingServiceImplementation

有人可以提供OO-Gurus 的引用或书籍中的参考资料,这些书籍基本上是“如果您尝试配置应该通过 IoC 容器配置的行为,预处理器的使用是不好的 OO 实践”?

我需要这些引用来说服同事重构......

编辑:我确实知道并同意在编译期间使用预处理器指令来更改目标平台特定的代码很好,这就是预处理器指令的用途。但是,我认为应该使用运行时配置而不是编译时配置来获得良好的设计和可测试的类和组件。换句话说:使用#defines 和#if 超出它们的用途将导致难以测试代码和设计糟糕的类。

有没有人读过这些方面的东西,可以给我,以便我参考?

0 投票
5 回答
270 浏览

c++ - 范围内的范围,做还是不做?

尽管下面的示例编译得很好,除了最后一行有错误,我想知道这个“范围”在一个范围内的来龙去脉?还有这个的术语,如果有的话。

考虑这些括号:

考虑一下:


编辑: 接受的答案来自bitmask,尽管我认为每个人都应该将它放在anio 's answer的上下文中。特别是,引用:“也许你应该把你的功能分成两个功能”

0 投票
3 回答
111 浏览

preview - 机器可读性:遵循指南,以便可以在 CKAN 上很好地预览数据

要在 CKAN 数据预览工具上很好地预览数据,要遵循哪些准则?我正在研究 CKAN,并且一直在上传数据或将其链接到外部网站。有些可以很好地预览,有些则不能。我一直在在线研究机器可读性,但找不到任何与 CKAN 有关的资源,这些资源说明了构造数据的正确方法,以便可以在 CKAN 上很好地预览。我希望收集你们所有人对注意事项的回应,以便将来对 CKAN 出版商和开发人员有用。

例如,数据必须采用带有标签的行和列的表格格式。数据必须存储在电子表格的第一个选项卡上,因为其他选项卡无法预览。电子表格不能包含公式或宏。数据必须以正确的文件格式存储(参考我的另一个主题:哪些文件格式可以在 CKAN 数据预览工具上预览?

谢谢!