问题标签 [code-organization]

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 投票
6 回答
43688 浏览

java - 用于折叠/展开方法的 NetBeans 快捷键

JAVA - NETBEANS

这是一个IDE问题

我一直在使用折叠的方法,因为我希望能够一起查看我的方法。这有点耗时,因为我必须使用鼠标向上滚动到方法的声明并单击 -(减号)图标。然后分别转到我要处理的方法并单击+(加号)图标。

有没有办法通过键盘快捷键进行折叠(以及分别展开)?

0 投票
2 回答
2094 浏览

c++ - 嵌套命名空间,纠正静态库设计问题

我目前正在开发一个相当大的静态库,完成后某些工具将使用该库。现在,由于这个项目比我迄今为止参与的任何项目都要大,我意识到是时候为这个项目考虑一个好的结构了。使用命名空间是这些合乎逻辑的步骤之一。

我目前的方法是将库分成几部分(它们不是独立的,但它们的目的需要这样的分离)。我有一个“核心”部分,它现在只包含一些非常常见的 typedef 和常量(由库的许多不同部分使用)。其他部分是例如一些'utils'(散列等)、文件i/o等。这些部分中的每一个都有自己的命名空间。我几乎完成了“utils”部分,并意识到我的方法可能不是最好的。问题(如果我们想这样称呼它)是在 'utils' 命名空间中,我需要来自 'core' 命名空间的东西,这导致包含核心头文件和许多 using 指令。

所以我开始认为这可能不是一件好事,应该以某种方式改变。我的第一个想法是使用嵌套命名空间来拥有类似 core::utils 的东西。由于这将需要一些繁重的重构,我想先在这里问一下。你怎么看?你会怎么处理这个?或更笼统地说:如何根据命名空间和代码组织正确设计静态库?如果有一些关于它的指南或文章,也请提及。谢谢。

注意:我很确定还有更多的好方法,而不仅仅是一种。随意发表你的想法、建议等。因为我正在设计这个库,所以我希望它真的很棒。目标是使其尽可能干净和快速。唯一的问题是我将不得不集成大量现有代码并对其进行重构,这确实是一个痛苦的过程(叹气)——这就是为什么好的结构如此重要)

0 投票
4 回答
149 浏览

php - 寻求用 PHP 组织课程的最佳方式的意见

我非常愿意使用 Java 包命名约定

com.website.app.whatever

但我不确定在 PHP 中执行此操作的最佳方法。

选项1:

创建目录结构

现在这就是 Java 的做法,它使用文件夹来组织层次结构。然而,这在 PHP 中有点笨拙,因为没有对它的原生支持,而且当你移动东西时,你会破坏所有包含。

选项 2

使用句点为包命名类,因此名称就像在 Java 中一样,但都可以在同一个目录中,从而使 __autoload 变得轻而易举。

这里唯一真正的缺点是所有类都在一个文件夹中,这可能会让大型项目感到困惑。

征求意见,哪个是最好的还是有其他更好的选择?

0 投票
8 回答
2168 浏览

.net - 在 .NET 表单中组织 UI 代码

我是自学编程的人,没有接受过任何正式的 .NET 编程培训。

不久前,我开始使用 C# 开发一个 GUI 程序来控制传感器,并且该项目已经开花结果。我只是想知道如何最好地在我的表单中组织代码,尤其是 UI 代码。

我的表格目前一团糟,或者至少在我看来是一团糟。

  • 我有一个构造函数,它初始化所有参数并创建事件。
  • 我有一个巨大的 State 属性,当用户通过由 States 枚举控制的应用程序(即:断开连接、连接、设置、扫描)时,它会更新我所有表单控件的启用状态。
  • 我有 3-10 个通过属性访问的私有变量,其中一些在更改表单元素的值方面有副作用。
  • 我有很多“UpdateXXX”函数来处理依赖于其他 UI 元素的 UI 元素 - 即:如果更改了传感器,则更改波特率下拉列表。它们被分成区域
  • 我有很多事件调用这些更新函数
  • 我有一个后台工作人员负责所有的扫描和分析。

我的问题是这似乎一团糟,尤其是 State 财产,并且变得无法维护。此外,我的应用程序逻辑代码和 UI 代码在同一个文件中,并且在某种程度上混合在一起,这似乎是错误的,这意味着我需要进行大量滚动才能找到我需要的内容。

您如何构建您的 .net 表单?

谢谢

0 投票
2 回答
194 浏览

c# - C# Remoting 类组织

我正在开发一个远程处理类库,以便我可以将数据库交互和业务对象保留在服务器上而不是客户端上。

我希望能够将我自己的对象返回给客户端,以便他们可以通过服务器本身与它们进行交互。

例如(半伪代码):

服务器

客户

如何组织我的类/命名空间?我特别想知道我的系统的类引用和可伸缩性。

任何形式的批评/建议都非常感谢。

0 投票
3 回答
181 浏览

assembly - 将两个 ORG 放在一起

我正在构建一个引导加载程序来引导位于1000h软盘部分的内容。我是用Fasm做的(因为我的朋友只使用 Fasm,他正在帮助我),但我更喜欢使用Nasm,现在我遇到了语法问题,然后我想知道我该怎么做这在纳斯姆:

PS:我已经%include使用 Nasm-syntax 样式放置了指令,在 Fasm 上它应该只是include.

0 投票
1 回答
2116 浏览

c# - 代码组织:如何最好地对函数、类等进行分组

场景:您有一个规模合理的项目,其中包含一些表单、类等。

问题:您将如何对您的功能进行分组?您会将所有表单共有的功能放入一个单独的类还是根据功能放入多个类?你的数据库调用呢?你会拥有一个包含所有数据库函数的类吗?或者您会创建一个处理调用的实用程序类吗?

原因:我正在寻找有关如何最好地“分组”功能的一些方向。例如,我可以看到将所有数据库函数放在一个类中会使以后更容易更改/调试,但这有必要吗?我偏爱为您处理所有连接并返回格式化结果的实用程序,但 SQL 代码确实到处都是。

尾注:我知道有很多问题,但正如我所说,我正在寻找方向,您不必接受每个答案并将其回答为 T,但一些编码指南或过去经验中的一些编码智慧将是非常感激

非常感谢,

0 投票
2 回答
257 浏览

sql - 有没有更好的方法来组织和使这个 SQL 查询更具可读性?

我继承了我正在为报告系统工作的一段 SQL。该系统以采购订单为中心,以及何时创建、传输、确认和确认。这些状态是进步状态。我正在查看的 SQL 片段如下所示,来自 WHERE 子句:

我发现 CreateJob 可能因为作业失败而没有结束时间。但是,作业可以执行多个采购订单,因此有时实际创建了给定的采购订单,但作业没有收到结束时间,因为后来兄弟失败了。这会创建一个场景,其中 PO 的状态仍在进行中,但它仍然显示在此问题报告中,因为 CreateJob.endtime 为 NULL。

首先,上面的系统和架构存在一些明显的错误,但这是与我目前正在解决的问题不同的问题。

不过,我似乎可以通过将渐进式检查添加为 AND 语句来修复报告。所以第一次检查 CreateJob 也发生了变化:

这是丑陋的,并开始混淆事物以被遗忘。有什么方法可以在 SQL 中执行与以下等效的操作吗?基本上是某种宏或#define系统?

如果我正在尝试做的事情有一个通用术语或名称,也许有人可以将它添加到标题中?

0 投票
1 回答
3097 浏览

c# - C#:具有服务层、接口和模拟的文件夹结构?

我最近开始创建服务层并进行如下声明:

这是受到一些 ASP.NET MVC 视频的启发,我喜欢这种模式。

然后我开始创建接口和模拟,例如:

所以我可以隔离部分代码进行测试。但现在我的服务层文件夹加载了类、接口和模拟类:

你如何以合乎逻辑的方式组织这些?

0 投票
3 回答
230 浏览

language-agnostic - 从哪里开始构建真正的代码库?

目前,我有一组或多或少有条理的项目我正在工作或从事。有些经过重构、记录和单元测试,有些则没有。

当我想重用以前编写的代码时,我会花几分钟时间搜索我编写此代码的项目,而不是将此代码复制粘贴到新的项目中,如果需要,进行重构、记录和单元测试.

它很丑,因为它需要做额外的工作,记住写的内容和位置,以及(可能是最丑的)跨项目复制代码。在没有共同代码库的情况下与其他开发人员合作也是一个问题。

现在,我想创建一个代码库,但我对此一无所知,也从未在任何公司见过认真的代码库。

那么从哪里开始呢?是否有书籍或在线文档解释如何创建这样的代码库或描述现有或想象的代码库、它是如何工作的、它是如何维护的等等?