问题标签 [project-structuring]
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.
c# - DTO、结果对象等放在哪里?
我有一个相当干净的 ASP.NET MVC 项目结构。但是,我正在努力研究如何组织大量的 DTO(数据传输对象)类,例如仅封装来自表单(视图模型)的发布数据,但不代表完整的域对象或任何接近的对象;然后是我拥有的许多“结果”对象,它们将复杂的结果信息从我的服务层传回控制器。你把这些东西放在哪里/你如何组织它们?我现在有一个文件夹,里面有 60 多个课程,而且变得杂乱无章。欣赏建议!
c# - Visual Studio/ASP.NET MVC 项目组织和结构链接、示例和个人偏好
我正在寻找有关出色项目组织/结构的多个输入,尤其是对于复杂的 ASP.NET MVC 项目(这肯定会超出项目类型最初创建的几个文件夹)。
项目组织还包括命名约定、类的集中器/拆分器偏好、实际项目的数量与文件夹结构、一种方式与两种方式的依赖关系等主题。我的最终目标是将这些想法合并到我个人认为对我当前复杂的 ASP.NET MVC 应用程序有益的东西中,并学习其他人如何成功地构建他们的项目。因此,如果您有良好的链接、指向相关论坛/博客条目/文章的指针或个人偏好(可能在特定部分?例如,也许您有一定数量的项目,您总是将其用作基础框架?),请让我学习从中!
谢谢!
c# - 模型中的非数据类?
非数据类(不代表数据库中的任何内容)是否仍被视为应用程序域模型的一部分?您会将它们与您的 Linq2Sql 域模型或其他地方放在一起吗?
编辑:关于类的信息:例如,我有一个在某些情况下实例化的“StatusMessage”类,可能会被丢弃或显示给用户。它与数据库中的数据无关(既不检索也不存储)。另一个例子是“邀请”类。我网站上的用户可以互相“邀请”,如果他们这样做,则会创建一个 Invitation 类,该类将加密一些信息,然后输出一个用户可以提供给其他人的链接。我有> 25这些课程。它们不是用于数据传输的,它们是做实际工作的,但它们与数据库无关,我不会说它们都是“帮手”?!……
asp.net-mvc - 在这种情况下,如何在 asp.net mvc 应用程序中构造视图/控制器/操作(/区域?)?
顶部有一些关于 foo 的最有用的信息。
在水平线之间有一些直接的动作,如果它们可用的话,可以在 foo 上执行/与 foo 一起执行。
下面是困扰我的事情。有标签,关于 foo 的详细信息。
这些选项卡也可以包含一些操作,并且可以非常主权。
所以问题是 - 如何正确构建这个东西(应该是控制器,动作,它们如何相互交谈)以避免不必要的麻烦?
我很困惑,因为下面的这些标签就像一个单独的岛屿。
在模型中 - 有一个奇怪的事情:1 对 1 关系。就像有一个Contest
(Foo) 和Participant
. 选项卡是 的详细说明Participant
。
目前我已经将它们都建模为聚合根。但这可能是一个错误的选择。
所以 - 如果有两个根,如果它们都有控制器并且Contest
并不真正负责保存所有数据,这似乎很自然。
似乎子动作将是要走的路,但我预见到一些复杂性。When tabs will hold some actions, they will need to know how to redirect back to Contest
details and how to pass info how to render correct tab. 我想避免这种耦合,但似乎没有办法做到这一点。
delphi - 具有 3rd 方组件的项目目录结构
我必须维护用 Delphi 编写的旧软件。源代码树真是一团糟。我正在尝试做两件事:制作干净的目录结构并设置自动构建过程。
现在我已经制作了以下目录树
\src
目录包含*.pas
和*.dfm
文件和project.dpr
. 各种资源(图标、图像和字体)都驻留在\res
目录中。\env
用于创建用于调试目的的各种环境。IDE 设置为将 project.exe 构建到此目录中。构建脚本存储在build
文件夹中。dist\release
这些脚本dist\debug
在dcc32.exe
. build\output
用于在 IDE 或构建脚本内部的构建过程中保存 dcu 文件。
我的方法有一个小缺陷。我无法从新计算机开始,从我的回购中签出代码,开始构建脚本并接收准备使用的项目分发。我需要先打开 IDE,安装所需的组件(例如RXLib
和MemoEx
),设置库路径等等。只有在这些步骤之后,我才能运行我的构建脚本。
直到上周,这还不是什么大问题。我已经修改了第 3 方组件以修复错误(此组件不再维护 :-(),因此我必须将此组件的代码添加到我的项目结构中。此时如果我将从repo 我需要检查 3rd 方库的代码是否有变化。如果库的代码发生了变化,我需要重新编译组件并重新安装它们。
问题
- 有没有办法从命令行重新安装 Delphi 7 中的组件?没有硬编码D7的安装路径有什么办法吗?
- 您将如何在项目树中存储第三方组件的代码?
- 我应该在哪里放置
bpl
以及dcu
在构建组件期间将产生哪些。我应该把它们放在Project\build\output
吗?或者最好将输出放置到另一个位置(不要覆盖Delphi设置),但是在项目配置中更改库路径?
javascript - 构建 Coffeescript 并使用 @ 关键字
这可能是非常基本的东西,但我被卡住了,有点无能为力。
我最近在 CoffeeScript 中编写了一个 Snake 游戏,但我对构建代码的方式一点也不满意。
我正在尝试使用类重写它。我有一个游戏课、一个蛇课、一个食物课。在我看来这样做是有道理的。但是,为了访问变量和函数,我使用了 '@' (this) 关键字,我觉得我完全做得过火了。例如,我的 Game 类顶部有一个常量列表。我必须将它们全部声明为@CONSTANT
能够访问它们。或者,在方法内部:
方法调用也是如此。例如:
有人可以告诉我这是否可以,或者我应该如何构建我的代码?如果有人愿意为我审查它,我可以将链接指向我目前正在使用的代码。(编辑:实际上在这里)
非常感谢。
python - Python 结构化 - 我真的需要一个类吗?
我有一个问题,解决方案似乎是创建一个类。但是,这个类中的所有方法都是静态的,我只会实例化一次类,所以我想知道使用类是否是正确的方法。
更具体地说,我希望有一个单独的模块来存储本质上是程序骨架的一些函数和一些变量。这些函数和变量取决于定义我的模型的一些参数(并且我不想将这些参数作为参数传递,因为我可能会在以后指定相关的其他原因)。前任。:
在另一个模块上,我对这些参数“m”和“k”的一些值进行了扫描,对于这些值中的每一个,我想找到 V 的最小值:
当然,这是行不通的,因为 my_model.V 不知道 m 和 k 是什么。正如我所说,我考虑在 my_model 文件中创建一个类,在该类中定义函数 V(和其他!),并在 scan.py 中实例化该类,传递参数“m”,“k”作为参数。但是,正如我所说,这在我看来是对类特性的过度使用。例如,显然上面的函数 V 将是静态的,因此在此类中的所有其他定义中都会发生。那么有没有其他更合适的方法来实现我想要的,或者我只是“反应过度”和/或完全误解了 Python 中类的使用?
java - Java Servlet:构建一个遗留的 webapp。什么框架或技术?
我正在用java(在tomcat上运行)开发一个Web应用程序(不幸的是一个遗留应用程序),它有一个非常小的,但组织得不好(至少在这个特定的项目上),组,让我首先说我们没有多少servlet 编程经验。
问题如下。
当我们在这个 web 应用程序中实现新功能时,servlet 的数量不断增长,我遇到了一些麻烦。我们没有要遵循和构建的项目。只是突然突然要求新功能的克林特。
我只想说我们的 web.xml 是一团糟。我认为我们应该避免每次都用新的 servlet 污染 web.xml(现在大约有 800 行,而且越来越难以维护),但我不确定我应该怎么做。
我正在探索不同的可能性,但我们不能探索太多,所以我想听听比我们更有经验的人的一些想法或最佳实践。
我在想也许我们应该使用类似的 CORBA 矿石来实现某种 RPC。因此,在将常见功能分组到几组 servlet 中时,我们可以克服混乱。这可能是个好主意吗?
我想到的是一些 servlet,它们充当请求的入口点。我想按他们给出的回应类型对他们进行分组。因此,例如,我有一个 servlet 在调用其他一些实际执行提取数据或操作数据的工作的类之后为我提供 json。或者我会有一个 servlet 为我提供文件,另一个类或 servlet 生成的文件。等等。我是否以正确的方式看待问题?
我看了一些像 DWR(Direct Web Remoting)这样的框架,但我们需要将它与一个带有丑陋 jsp 页面的遗留 webapp 集成,并且我们无法在有限的时间内跳转到完整的 ajax 网页。有项目。我们需要更轻量级的东西。
我寻找解决方案的次数越多,我发现的可能性(REST、ORB、RPC、JSON-RPC ......)就越让我感到困惑和不知所措,所以我寻求你的帮助。在此先感谢您的每一个答案和提示。
python - forms.py 文件应该放在哪里?
我现在开始编写我的第一个 Django 项目,我需要forms.py
为应用程序制作文件。我已经看到一些教程将文件存储在项目的主文件夹下,有些则存储在 app 目录中。
如果我想制作仅适用于一个应用程序的表单,哪种布局最适合我?
是否适合制作多个文件来保存我的表单代码?
谢谢!
angular - Angular 中共享模块的理想大小
我有一个包含多个功能模块的 Angular 项目,但我不确定构建共享模块的最佳实践是什么。
- 即使它包含仅在少数而不是所有功能模块中使用的组件、管道、指令等,是否最好在每个功能模块中导入一个大文件?
SharedModule
- 还是将它们拆分为更小的模块(逻辑单元)并一一导入以仅在需要它们的地方提供功能模块更好?
我认为(1)听起来更容易编写,但我有点担心将部分未使用的代码导入每个功能模块可能会减慢我的应用程序并使延迟加载变得毫无意义。如果有人能阐明这两种策略的优缺点,那将是非常受欢迎的。谢谢!