问题标签 [application-structure]

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 投票
3 回答
539 浏览

javascript - CanJS 文件夹结构

创建简单项目时,我们直接在同一个文件中指定模型和控制器,然后编写。我的 app.js 看起来像这样:

和单个 html 文件

对于复杂的应用程序,我将为控制器、模型和视图提供不同的文件夹。我的第一个问题是

1 当我将控制器放在不同的文件夹中并将模块放在不同的文件夹中时,调用将如何发生。有人可以帮助我使用将调用所有控制器的基本文件模板吗?

1.如果我有一个用于特定控制器而不是 ejs 的简单 html 文件,它会起作用吗?

我知道这在某种程度上听起来可能很愚蠢,但我很困惑。

问候,

0 投票
1 回答
93 浏览

javascript - 在大型 JS 应用程序中,我应该在哪里将自定义方法放入库和插件中

我有一个相当大的 javascript 应用程序,主要使用 jquery 和淘汰赛。本质上,我在我的文件夹结构app中做了一个主要的分离,其中包含我编写的所有代码,并进一步分为常量、视图、模型和视图模型。然后我得到vendor了我没有写的代码,比如 jquery、knockout、插件等。我遇到的问题是我应该把介于两者之间的东西放在哪里。我已经为敲除编写了一些自定义绑定并扩展了一些 jquery 插件的一些功能,它们只是位于我的目录的根app目录中。什么是最佳实践或命名约定。

0 投票
1 回答
162 浏览

php - What to do about those page specific little classes that don't seem to fit as Models or Libraries in CodeIgniter?

In my current implementation of the MVC design pattern (demonstrated using PHP and CodeIgniter):

Let's say I have a "page" located at "www.mysite.com/blue/page" that is ultimately generated by the following (greatly simplified) files:

/libraries
    session_lib.php
/controllers
    /red
    /white
    /blue
        page.php
/models
    /red
    /white
    /blue
        funky_class.php
        page_model.php
/views
    /red
    /white
    /blue
        page.php

And here's an easy to understand controller:

And now the question...

What is the best procedure for these "funky" little page specific classes that don't interact with the database? In this example I store the little class with the models, and in some cases might just add additional methods inside the model class to do the funky stuff. Is this good practice? Or should the library and funky class both go inside the model so the controller is even skinnier (however the model might be used in other places without the need for sessions and funkiness)?

0 投票
2 回答
34 浏览

php - 在哪里编写自定义函数以及如何导入它们?

这是我的小故事:我在我的实体帐户上使用 DoctrinExtensions Tree。用户可以在 UI 中编辑树,然后将其保存。我将所有帐户的数组发回给 PHP。然后我想将它重建为树并使用扩展的方法保存/编辑帐户。

所以我想将 UI 返回的数组与数据库中的原始树进行比较。我通过执行以下操作获取数据:

所以我把我的树放在一个数组中。我现在想要的是通过它的 ID 在这个数组中找到一个对象。我知道如何编写函数,但在 MVC 中,我不知道编写和调用它的正确位置是什么,也不知道它是否是正确的方法。

我试图创建一个文件夹“模型”和一个文件 Functions.php,如下所示:

然后从我的控制器调用它

但这不起作用。请告知我应该如何做到这一点,以及在 MVC 理念的范围内是否有更正确的方法。

谢谢

0 投票
2 回答
452 浏览

canjs - CanJs 应用结构

我是canJs的新手。寻找一个好的应用程序结构来构建一个 canjs 应用程序。我想将模型、控制器和视图/模板逻辑分开到单独的文件夹中。canjs 站点中可用的 todo 应用程序是一个简单的应用程序,它将所有内容都写在一个文件中。任何帮助表示赞赏。

提前致谢

0 投票
1 回答
1799 浏览

asp.net-mvc-4 - 我们应该在同一解决方案中从 MVC 应用程序调用 Web API 吗?

我正在 MVC 中开发一个具有移动应用程序的项目,所以很清楚我们必须使用 Web API,以便它可以在移动应用程序中使用。

在我们开始开发网站的时候创建了 API 之后,我们很困惑,并且讨论过是使用 API 还是直接访问 Business 对象。我们最终得到了更有经验的开发人员的意见,以使用 Web API 而不是直接使用业务对象。

我对此解决方案结构感到困惑。

1)为什么我们应该使用Web API并发出HTTP请求(这很耗时)来获取或放置数据而不是直接在同一解决方案中的业务对象。

2)在争论之后,他们说如果客户想要在不同的云服务器上托管 API 和 Web 并仅在 API 上应用缩放,或者他可能想要有不同的 url 来访问 API 和 Web(这是合乎逻辑的)。那么在这种情况下,我们应该在同一解决方案中从 MVC 应用程序调用 Web API 吗?

3)如果我们在不同的主机上托管 API 和 Web,这意味着我们的 Web 将使用 WebClient 并在每个导航上都有 HTTP 调用。这样对吗?

4) 如果我们将在不同服务器上同时创建 API 和 Web 托管业务对象,那么如果 BL 发生变化,则需要在两台服务器上更新构建。

5)或者我们应该只为API创建一个项目,并且可以添加视图或html页面来开发Web界面,这样我们就可以直接从ajax调用API。

据我所知,#5 是最好的解决方案,或者 API 仅适用于第 3 方访问。如果我们在同一个解决方案中有 DB、EF、数据层和业务层,那么我们不应该使用 API 进行 HTTP 调用并直接访问业务对象。(如果我错了,请纠正我)当移动应用程序或桌面或任何人想要访问应用程序时需要 API,这样我们就可以拥有相同的存储库和数据层。

在我的场景中,我必须创建 API,因为我们也有移动应用程序,在项目 API 方面,我们称为业务层(单独的项目),业务层与数据访问层(单独的项目)进行通信。所以我的问题是,如果我们将 API 和 Web 托管到不同的服务器上,那么调用作为 HTTP 请求的 API 可能需要更长的时间,而不是在我们创建项目时使用来自业务层的方法,并且我们拥有业务层的 .dll。在 API 控制器中,我们只是将我们的业务输出转换为 json 格式。

我在网上搜索过,但没有得到令人信服的答案。我发现了一个博客http://odetocode.com/blogs/scott/archive/2013/07/01/on-the-coexistence-of-asp-net-mvc-and-webapi.aspx讨论了同一点但又一次在那个博客中,我的问题是为什么我们需要考虑场景 #3?

0 投票
1 回答
321 浏览

ios - iOS / XCode 在目标中分离层

我对 iOS 和 XCode 相当陌生,并且来自 .Net 背景。因此,在 Visual Studio 中,我通常会将应用程序的层(例如 WebApp 层、业务逻辑层、数据访问层等)分离到单独的项目中,这样我就可以控制每个项目所依赖的内容等。

所以我的问题是 XCode 中是否有类似的东西?我尝试将静态库模板用于目标,它似乎正在工作,但我想知道这种方法是否有任何缺点?我在互联网上找到的所有示例都只是在应用程序目标中显示了图层的文件夹结构,这是首选的方法吗?为什么?

如果这有什么不同,我也在使用 Swift,但我仍然依赖于用 Objective-C 开发的 3rd 方库

0 投票
2 回答
100 浏览

ios - 显示/关闭演练 - iOS 应用程序结构

当应用程序第一次启动时,我需要展示经典的演练,但是,考虑到我的实现,我最终得到了一个结构,将演练保持为层次结构的第一个控制器......我没有像那样。这是我的实现的描述:

1)didFinishLaunchingWithOption我检查 UsereDefault 以赶上第一次启动

2)如果是第一次启动,我用演练rootViewController代替window

3)演练完成后,我会展示first view controller of the App

问题在于第3点。从演练中呈现控制器我最终将整个应用程序呈现为演练的模式......我想要的是用标准的第一个视图控制器完全替换演练。

你能建议一个好的模式来显示/关闭演练吗?

0 投票
2 回答
304 浏览

yii - Yii 2 中的应用程序文件重组

我已经建立了新的 Yii2 项目。现在我想在两个文件夹“public”和“app”(实际上代表受保护的文件)中重新组织文件夹结构。

框架中的所有代码都在“app”文件夹中。在“公共”文件夹中,我只有一个名为“index.php”的脚本,我从中调用该应用程序。那里的代码如下所示(我只修改了原始“index.php”中的路径)。

应用程序/index.php

同样的方法在 Yii 框架中工作,我们得到了不同的命令语法。但现在在 Yii 2 中,我遇到了以下问题:

在此处输入图像描述

所以看起来所有的路径都指向正确的文件(我已经检查过了),但我仍然得到了错误。那么我在这里缺少什么?为什么 basePath 仍然识别“公共”文件夹?

更新 1:

遵循@marche 的评论并将以下代码添加到配置文件中:

我不再收到屏幕错误,但现在加载的内容没有任何 CSS 样式且没有 JS 文件(他们仍在从错误的位置提取 URL)。

0 投票
0 回答
37 浏览

javascript - React 将所有输出 .html 文件调用到单个父 .html 文件中

您知道如何使用 bundle.js 将每个 .html 调用到具有布局的单个父 .html 吗?

这里实现的主要关键是隔离每个模块(文档、营销)的开发,以便团队可以看到他们的工作预览。

堆栈:React、React-Router、Redux

PS:我使用构建工具来运行每个 webpack 配置进行编译。