问题标签 [application-design]

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 投票
2 回答
1180 浏览

sql-server - 具有本地数据库的 WPF 应用程序的最佳部署方法是什么?

  • 我想制作一个存在于一个目录中的WPF应用程序,包括它需要的所有文件:.exe.mdf数据库、.xml配置文件等。
  • 无论应用程序位于哪个目录中,它都应该可以工作,以便它支持这种情况
    • 人 1执行应用程序c:\temp\wpftool.exe
    • 应用程序读取和写入c:\temp\wpftool.mdf 数据库
    • 人 1压缩该目录并通过电子邮件将其发送给人 2
    • 人 2将其解压缩c:\Users\jim\documents\checkout\wpftool.exe,应用程序读取和写入该目录中的同一数据库 ( c:\Users\jim\documents\checkout\wpftool.mdf)
    • 人 2再次压缩目录并将其发送回人 1 以继续对其进行更改

创建支持上述方案的 WPF 应用程序的最佳方法是什么?,考虑:

  • 不应该有 编码的数据库连接字符串
  • 什么是最好的部署 方法,单击一次?或者只是将 .exe 文件从 /release 目录中复制出来?
  • 合理的安全性,使用户必须根据数据库中的密码登录,而如果第三人恰巧截获了电子邮件,他将无法轻易查看数据库中的数据
0 投票
1 回答
154 浏览

actionscript-3 - AIR 应用程序设计

我想做一些 AIR 应用程序,用于跟踪公司内部的工作。
这个想法是创建一些数据库来处理所有数据,并且当其他用户从其他计算机修改数据时,它总是保存在同一个“服务器”上。
因此,多个用户可以编辑同一个数据库,如果所有数据都不断“刷新”(如果一个用户编辑和保存数据,其他用户计算机上的数据会立即更新),那就太好了。应用程序将仅在本地网络中使用。
我在 Excel 中有一些数据,所以我也想知道 AIR 是否可以以某种方式处理它?还是重新构建整个数据库更好?

那么,我应该使用哪种数据库?我读过 AIR 非常喜欢 SQLite,这很好,因为我使用 MySQL...
AIR(与 SQLite 结合使用)是否能够满足我的所有需求(通过网络工作、共享相同的数据库、刷新数据、创建服务器/客户端应用程序或其他东西等)?

非常感谢您的任何想法!
米。

0 投票
3 回答
524 浏览

apache-flex - AS3:如何组织代码,以防调用远程服务

在我的 flex 应用程序中,我经常使用服务。我需要他们更新我在应用程序中的数据,所以经常给他们打电话。目前我通过以下方式实现它:

1)有一个服务提供者(AMFLoader 类) 2)和响应处理程序(Responder 类)

代码如下所示:

和结果处理程序类:

为了调用服务,我扩展了基本的 Result 处理程序类,并制作了自定义函数来处理结果。通常在最新阶段,我将从服务接收到的数据绑定到我在主应用程序中定义的全局变量,然后在其他类中使用它。

目前我注意到使用全局变量是一件很烦人的事情,不确定这是否是一种好的编程风格。例如,当我尝试重构我的代码时,我注意到有时很难理解谁、何时(以及为什么)在那里填充了数据。

也许您可以建议一种存储服务调用数据的方法。我无法理解的主要事情是我们不能只创建一个方法,例如getData,然后在应用程序的某个地方调用它,因为调用服务和存储数据是不同的事情(因为数据只在某些事件上接收) ……

提前致谢。

0 投票
3 回答
212 浏览

.net - 寻求在我们的应用程序中实现版本控制功能的建议

我正在启动一个为我们的软件(.NET 3.5 / SQL Server 2008)创建“对象版本控制”功能的项目,基本上它需要这样做:

  • 用户正在查看客户
    • 姓氏是“史密斯-约翰逊
    • 2个地址(保存在不同的表中)
    • 购买了1 件产品
    • 1个员工联系人(保存在不同的表中)
    • 200 封邮件(保存在不同的表格中)
  • 用户单击“查看过去状态”按钮并选择“ 2009 年 9 月 25 日 15:00 ”,这将打开一个显示同一客户的单独视图:
    • 姓氏是“史密斯”(从那时起名字已经改变)
    • 1 个地址(此后添加了一个地址)
    • 购买了1 件产品(但与上述不同,因为他买了这个,后来退货又买了一个新的)
    • 2 名员工联系人(因为此后其中一名已被删除)
    • 10 封邮件

在思考这个问题时,一般会出现一些问题:

  • 应该在什么级别记录更改,例如在数据库 级别(记录每个表的每个属性的每个更改)或对象级别(在更改后序列化和存储每个对象及其依赖项)
  • 如何处理结构的变化 ,例如,如果“姓氏”列更改为“姓氏”,如何跟踪列中的数据,因为它们都属于同一列(因此版本控制服务不会报告“这个客户在 9 月 25 日没有姓氏”,但知道查看姓氏。
  • .NET / SQL Server 2008 领域中存在哪些支持技术可能支持这一点,例如我正在研究 SQL Server 2008 的更改跟踪功能
  • 版本控制存在什么样的模式,例如,我正在考虑可用于在应用程序中创建撤消功能的命令模式。
  • 此版本服务不需要执行回滚。它只需要能够显示对象的状态以及它们的依赖关系。

您在软件中实现版本控制功能的经验是什么?你有什么建议?

0 投票
5 回答
6065 浏览

build-process - 多个网站在同一个代码库上运行?

我们正在开发一个将作为托管解决方案提供的应用程序。我很惊讶如何在不复制基本代码的情况下使用具有相同代码的多个站点。

例如:网站 1:www.example.com 和网站 2:www.sample.com 将在相同的代码上运行,但会有不同的配置设置和不同的主题......就像我们在 wordpress 中运行我们自己的域名一样。

我想知道我该怎么做。

同样在数据库的情况下..我会更好地为每个网站创建单独的数据库,或者使用具有网站 ID 的相同数据库作为每个表中的列。

请帮助我。

[澄清]它不是域别名。就像...这将是一项服务。不同的客户将在他们自己的域名上以不同的主题提供相同的应用程序。类似于博主所做的事情......拥有自己的域名但相同的博客应用程序

[技术] 具体我在看如何使用主机名来确定使用哪个配置我们使用的是PHP和MySQL

0 投票
2 回答
176 浏览

php - PHP语言障碍设计问题

背景

我需要设计一组实用程序类来简化对多种类型的远程服务(本地、FTP、WebDAV、SVN、SSH)的文件系统访问,而我似乎无法获得“完美”的设计,主要是因为一种语言障碍 - 我觉得我选择的每条设计路径都被刮掉了,因为 PHP 不支持特定功能。

我觉得这很令人沮丧,而且我没有想法。

要求

FileSystem每个其他文件系统类型都继承的基本抽象类或接口。该类FileSystem(及其子类)是实现基本 FS 操作(例如“移动”、“删除”、“创建”等)的“驱动程序”。

这些驱动程序操作不应该暴露给类用户,相反,FileSystem它也是一个根据请求获取文件信息记录的工厂。

文件也基于抽象类或接口File,子类Directory的实现者FileSystem可能会或可能不会子类化。类的用户FileSystem并不“关心” a 的类型FileSshFile并且SvnFile应该以相同的方式工作)。

File(and Directory) 类应该是与以某种方式创建它的文件系统驱动程序对话的类,而用户无法通过驱动程序手动完成FileSystem

我试过的

自然地,我创建了FileSystem一个抽象类,然后继续编写该类的代码File,结果发现 PHP 不friend支持,因此File无法访问FileSystem受保护的驱动程序方法。

另一个被废弃的想法是类中的类 -FileSystem而且FileSystem::File- PHP 没有嵌套类。

划分FileSystemFileSystemDriverand FileSystemFactory,但这让我遇到了同样的原始问题。

赏金奖励300声望点

对于 PHP 缺乏封装所需的编程实用程序的原始想法的解决者。

0 投票
1 回答
1720 浏览

iphone - iPhone多视图应用程序设计问题

我有一个关于 iPhone 应用程序设计方法的问题......我想制作一些复杂的应用程序,我认为满足我需求的最佳基础是“标签栏应用程序”模板。其实我一直在找一些iPhone上的应用,AppStore的设计绝对是我需要的;一个基于选项卡栏的应用程序,顶部有不同的选项 - 分段控件、搜索栏、导航栏等。每个选项卡栏的视图内部都会有另一个“基于导航的应用程序”或“实用程序应用程序”......

我花了很多时间寻找我的“问题”,但我仍然无法理解如何在一个应用程序中“嵌套”几个导航控件......真的,任何链接或想法都会非常感激!甚至你关于如何完成我需要的事情的思绪也很好,因为我在这里完全是在黑暗中敲击......

顺便提一下,我是 Objective-C 的新手,而且我听说过一些关于代表团的东西,但我不知道如何使用它......这会帮助我建立我的想法吗?

非常感谢您的宝贵时间!

0 投票
4 回答
347 浏览

oracle - 通过设计克服“日志文件同步”?

一些应用程序设计所需的建议/建议。

我有一个使用 2 个表的应用程序,一个是一个临时表,许多单独的进程写入该表,一旦一个“组”进程完成,另一个作业就会出现,将结果汇总到一个最终表中,然后删除那个'暂存表中的组'。

我遇到的问题是,当临时表被清除时,会生成大量重做,并且我在数据库中看到很多“日志文件同步”等待。这是与许多其他应用程序共享的数据库,这会导致一些问题。

应用聚合时,对于暂存表中的每 20 行,最终表中的行减少到大约 1 行。

我正在考虑解决这个问题,而不是使用一个“临时”表,而是为每个“组”创建一个表。一旦完成,这个表就可以被删除,这应该会导致更少的重做。

我只有 SE,所以分区表不是一个选项。同样,用于重做的更快磁盘在短期内也可能不是一种选择。

这是一个坏主意吗?有没有更好的解决方案?

谢谢。

0 投票
1 回答
544 浏览

web-applications - 代码点火器中的主题可以脱离系统吗?

我正在开发应用程序,我想在代码点火器中使主题独立于系统。

这些主题只是 css 文件和图像,不一定是视图。在代码点火器 MVC 中。

这些主题应由数据库变量选择。

我怎么能这样做?

0 投票
3 回答
1334 浏览

asp.net - ASP.NET:基于角色的安全性和页面设计

我有一个带有几个网格的页面和一个带有 7 个控件的小表单。网格显示辅助数据。总体而言,大约有 320 行代码隐藏处理各种事件。我的要求是一个特定角色只能编辑 7 个字段中的 3 个字段,而有权访问此页面的所有其他角色都可以编辑所有这些字段。

现在我的问题。我们通常采用将基于角色的安全性限制在页面级别的方法,因为通过在 .Net 中执行该安全性变得完全可配置。但是在这种情况下,由于这个要求,我即将破例,这是我没有模式的新领域。为仅访问 3 个控件的角色创建一个单独的页面,我必须做大量的代码重复,这使得这不是一种选择——即使我将一些东西放入用户控件中,这似乎是不合理的工作量反正。

我的第一个想法是禁用 page_load 事件中当前用户无法访问的所有控件,但这感觉很难看。有没有更好的方法来做到这一点?