问题标签 [principles]

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 投票
1 回答
86 浏览

principles - 文件恢复的 Hello World 示例?

如何恢复已删除的文件(这些磁盘恢复工具如何完成这项工作)?

无论哪个 fs 或 os 都有一个例子可以遵循吗?

0 投票
5 回答
446 浏览

java - 你如何命名一个只调用其他方法的类/方法?

假设我遵循单一职责原则,并且我有以下课程。

如您所见,它遵循原则,所有类/方法的名称都说明了它们的作用。现在我有另一个类有这样的方法。

如您所见,“someMethod”-Method 确实调用了提取、转换和添加。我现在的问题是,你怎么称呼这样的类/方法?它实际上不是提取、转换或添加,而是调用这些?如果你以它的职责命名该方法,那会是什么?

0 投票
1 回答
198 浏览

dry - 正交性是否与 DRY 原则成反比?

根据 The Pragmatic Programmer 一书“正交性与 DRY 原则密切相关”。我不确定我是否按照作者希望读者的方式理解它。所以我问上面的问题。

例如,您有 A 类和 B 类。这两个类都有相似的方法。使用DRY原理,我做了一个C类,然后把A类和B类的类似方法移到C类,把C类指定为A和B的父类,是不是就不是正交的了?

0 投票
4 回答
87 浏览

oop - 编程原则:赋值与条件

我做了一些研究,但找不到我正在寻找的答案,所以我想我会在这里解决这个问题。我想最好使用示例来演示它,因此请考虑以下代码片段:

相对

例如,一个非常简单的现实世界场景是:假设我正在创建一个窗口窗体,它可能在左侧包含一个图像,但可能不包含。如果没有图像 - 在左侧创建所有其余的表单控件,如果有图像,则将所有其他控件移动到图像的右侧(将增量添加到每个控件的 X 位置)。

我正在编写一个 C# XNA 游戏(因此性能有些相关,但不应以任何方式省略 OOP 原则),因此我的问题是 - 如果“some_condition”在 50% 的时间内为真,那么哪些代码会运行得更快? 还有,哪个代码块更容易维护/阅读?

我知道这不是一个大问题,但我只是想养成编写“最好”代码的习惯。任何输入甚至个人经验都将不胜感激。

谢谢。

0 投票
1 回答
340 浏览

push-notification - iPhone 上的推送通知原理(测试运行了,现在呢?)

我想为我的应用添加推送通知。我用谷歌搜索了一个在测试模式下运行的东西。我:

  • 设置证书,配置文件,一切
  • 设置实时服务器
  • 获得了我的设备代码
  • 使用 simplepush.php 向我的设备发送推送

瞧;我收到一条推送消息。但现在呢?

我想在几天后将我的应用程序添加到 App Store,那么这在现实生活中如何运作?

1)除了从开发人员到分发(应用程序和推送)和服务器 sandbox.push.apple.com 到 push.apple.com 的配置文件之外,我还需要更改什么?2) 我用 simplepush.php 将推送发送到什么设备代码?我是否需要将每个设备代码保存在某个数据库中的某个地方,并使用脚本将其发送到每个设备代码(Apple 检查该设备是否真的需要推送)或者是苹果负责这一切,我可以将它发送到我自己的设备代码?或者是其他东西?3) ...?

非常感谢任何澄清。提前致谢!

0 投票
2 回答
688 浏览

kohana - kohana 框架是用来做什么的?

我是第一次学习 kohana,需要了解有关 mcv 原理的一些基本事实。到目前为止,我只使用了 html 页面标题中引用的 Javascript 框架(ext、openlayers 等)。然后提取这些类并在应用程序中使用。我可以拥有任意多个引用一个 Ext.js 框架安装的独立应用程序。

Kohana,作为一个mvc框架,显然是不同的,但是它实现了哪个目的呢?它是否用于在 Kohana 安装中创建 Web 应用程序,即。一个 Web 应用程序...还是用于创建无穷无尽的应用程序?据我所知,一个人下载了 kohana 框架,并调整/扩展该框架以制作应用程序..例如 web cms。我在正确的路线上吗?

干杯,

0 投票
2 回答
87 浏览

c# - 是否有临时字段以节省模块之间的昂贵工作

我有:

  • 原始对象:包含导入系统之前的原始数据
  • 模块 #1:验证器,它将验证原始对象
  • 模块#2:更新器将使用经过验证的原始数据(无效数据已被删除)来生成真实对象

模块 #1 必须确定数据库中是否存在ItemCode(只是一个示例,实际的键数是几十个)。模块 #2 必须通过查询数据库中的ItemCode来获取Item 对象

开发人员想要将外星属性.TempItem添加到原始对象,以便模块 #1 将Item 对象分配给.TempItem属性(因为这样做非常容易),而模块 #2 只需要使用.TempItem而无需第二次查询数据库。

我的技术专家建议这样做不好。

我想遵循编程原则和最佳实践,但不知道如何。

任何帮助表示赞赏。

0 投票
2 回答
437 浏览

php - 为什么像 PHP 这样的服务器端脚本能够控制客户端 cookie?

我是一个新手,目前我正在通过设计一个小而基本的网页来学习 PHP。我想在我的代码中添加一个 cookie 处理脚本。首先我打算用Javascript来做。但是当我浏览 PHP 的 cookie 管理功能并看到它们的详细程度时,我感到非常惊讶。

但我不明白这背后的机制。PHP 据说是一个服务器端脚本。它如何控制我电脑中的 cookie?它是如何做到的?

0 投票
3 回答
3052 浏览

c# - ArrayList 内部实现

希望这不是重复的。

在任何事情之前,我知道 ArrayList 不是最好的选择,但这只是好奇。

简单地说,我想知道 ArrayList 的实现。我查看并发现它使用数组进行存储。

对于数组,当你有:

arr 指向数组的第一个元素,因为它是整数类型,编译器知道跳转到哪里:

现在,由于 ArrayList 是无类型的,我想知道编译器如何确定下一项在哪里。我猜想有一个开销告诉数据是什么,以便编译器可以执行指针算术。

因此,ArrayList 应该比任何其他类型化集合慢得多,因为它不能只跳转到数据,因为它需要知道之前的内容。这与 LinkedList 非常相似。

0 投票
1 回答
1172 浏览

c# - 在构造函数中与 MVC 一起使用时出现 StructureMap 错误

当我为我的项目安装StructureMap并使用时:

运行后出现服务器错误消息:

没有为此对象定义无参数构造函数。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。异常详细信息:System.MissingMethodException:没有为此对象定义无参数构造函数。...

但是我对依赖倒置的原理了解不多。请帮我解决这个问题。

这是ObjectFactory

接下来我需要做什么?