问题标签 [theory]

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

theory - 真的有解决问题的“最佳”方法吗?

我一直在研究很多这样的问题,询问执行此操作的“最佳”方式或执行此操作的“最佳”方式。

  • 一个人的最佳方式是否会成为每个人的最佳方式?
  • 真的有一种“最好”的方法来做一个特定的算法或解决一个问题吗?

  • 寻找最好的方法而不是以任何方式解决问题有什么危险?

0 投票
12 回答
89569 浏览

algorithm - 如何检查有向图是否是无环的?

如何检查有向图是否是无环的?算法是如何命名的?我会很感激参考。

0 投票
7 回答
5986 浏览

language-agnostic - 良好的命名空间命名约定

我正在为 CRUD 业务应用程序创建一个类库。业务对象(以及相关的数据访问层对象)的主要“类别”是:

  • 维护(用于处理数据库中的主表(主列表)
  • 事件(大多数对象与现实世界的事件有关)
  • 搜索(明显)

截至目前,我的命名空间设置如下:

  • BusinessObjects.Maintenance.Contacts
  • BusinessObjects.Maintenance.Products
  • BusinessObjects.Maintenance.Classifications
  • .
  • BusinessObjects.Incidents.Contacts
  • 业务对象.事件.产品
  • 业务对象.事件.分类
  • .
  • BusinessObjects.Search.Contacts
  • BusinessObjects.Search.Products
  • BusinessObjects.Search.Classifications
  • .
  • Dal.Maintenance.Contacts
  • Dal.Maintenance.Products
  • Dal.维护.分类
  • .
  • Dal.Incidents.Contacts
  • Dal.事件.产品
  • 达尔事件分类
  • .
  • Dal.Search.Contacts
  • Dal.Search.产品

请注意,每个类都以相同的名称结束。

这是好形式吗?

此命名空间约定是否会引起任何问题?对查看/使用此代码的其他人有任何可能的混淆吗?

我确实意识到,在表单代码中,一个缺点是我必须使用名称空间限定所有对象。对我来说,这没什么大不了的。如果那是一个词,我通常更喜欢一点明确性。

0 投票
3 回答
1212 浏览

vb.net - WinForms 应用程序数据缓存 - 在哪一层缓存?

我们在与我的应用程序数据库位于同一实例的数据库中拥有每晚更新的数据。因此,为了节省数据库调用,我想将此静态数据缓存到 List(Of MyObject) 中。从理论的角度来看,这个缓存的 List(Of ) 是否应该通过全局变量缓存在表示层代码中?它应该在 .DLL 的全局变量中吗?

我正在考虑 .DLL,因为我创建了一个服务层,它公开暴露给 GUI,并调用 .DLL 内的数据访问层:

我会以最好的方式解决这个问题吗?

0 投票
12 回答
889 浏览

theory - 对程序员更深入地了解 CPU 有何价值?

我最近突然想到,我(我认为大多数人)从 Visual Basic 之类的东西开始学习计算机编程。我开始怀疑我们是否先从较低级别开始,如果现在更容易。

作为一个程序员,你认为理解 CPU 的工作原理、基本指令之类的东西有什么价值吗?我的意思是,我们最终不是真的在谈论它吗?

如果我们从 CPU 级别开始并从那里开始教授,我们可能会发现我们可以更容易地理解如何在更高级别上操作它。

0 投票
5 回答
4370 浏览

artificial-intelligence - 基于瓦片的博弈论

我正在寻找有关基于瓷砖的游戏的文章,例如旧的 ultima 6 和 7,甚至是拼图海盗。具体来说:

  1. 他们如何跟踪地图上的对象。其他角色、树木或角色可以移动的物体等物体。
  2. 人物背后的人工智能。游戏如何处理地图上不在屏幕上的角色的角色行为。尤其是非常大的地图和众多的角色。
0 投票
10 回答
23235 浏览

regex - 计算机是否可以通过用户提供的示例“学习”正则表达式?

计算机是否可以通过用户提供的示例“学习”正则表达式?

澄清:

  • 不想学习正则表达式。
  • 我想创建一个程序,该程序从用户交互式提供的示例中“学习”正则表达式,可能是通过从文本中选择部分或选择开始或结束标记。

是否可以?是否有算法、关键字等可供我使用 Google 搜索?

编辑:感谢您的回答,但我对提供此功能的工具不感兴趣。我正在寻找理论信息,比如论文、教程、源代码、算法名称,这样我就可以为自己创造一些东西。

0 投票
4 回答
412 浏览

compiler-construction - 解释器实际上是否在内存中预编译?

好吧,伙计们,我想我会带上我的旧 CS 笔记并多看一下编译器理论。我不得不说我无法记住所有这些东西是如何工作的,但我确实有一个很好的大学时代的示例应用程序,可以帮助我理解一些事情。

此示例应用程序采用组合语言并将其编译为中间汇编代码,如语言。然后有一个简单的 VM 实现,它采用这种中间语言并执行语句。

我无法理解的是,如果我这是一个直截了当的解释器而不是编译器,它是否仍会在内存中构建这些中间命令以在最后执行。还是解释器实际上一次“执行”代码块的隐藏部分?

0 投票
5 回答
193 浏览

regex - 构造正则表达式

我使用正则表达式伙伴,它接受一个正则表达式,然后给出它的含义,从中得到它可以做什么?在类似的行中,是否有可能有一些引擎采用自然语言输入来描述一个需要匹配/替换的模式,并为该描述给出正确(几乎正确)的正则表达式?

例如匹配某个文件中的整个单词“dio”

所以正则表达式可能是:<dio>

\bdio\b

-广告。

PS = 我认为这里很少有人会认为这是一个“主观”“与编程无关”的问题,但我仍然需要问这个问题。为了我自己。- 谢谢。

0 投票
7 回答
1982 浏览

c# - 什么时候应该使用字段而不是属性?

任何人都可以清楚地说明您何时使用字段以及何时在类设计中使用属性?

考虑:

或者:

我意识到第二种方法更合适和灵活,所以这就是我通常尝试使用的方法。

但是为什么我看到人们使用第一种方法呢?他们只是懒惰,还是在某些特定情况下这是正确的选择?这只是偏好问题吗?