问题标签 [history]

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

coldfusion - 为什么 ColdFusion 的设计者决定从 1 而不是 0 索引数组?

我真的很好奇这个,有谁知道他们为什么打破这个惯例?

谢谢, 夏兰

0 投票
3 回答
569 浏览

.net - .NET 属性的历史前身是什么?

哪些语言或平台影响了 .NET 1.0 团队从一开始就内置了属性的概念?这是面向方面的事情吗?序列化?或者是其他东西?当时我还在 VB6 领域,从未使用过任何 1.0 之前的 .NET 版本。

0 投票
6 回答
1309 浏览

history - 桌面软件开发时间表

影响桌面软件开发的最重要事件是什么?我正在尝试制定一个好的时间表,但我知道我错过了一些重要事件:

  1. 个人电脑的介绍(70年代后期?)
  2. 发布 VisiCalc (1980)
  3. 1986 年的 WordPerfect 4.2
  4. 视窗 3.1 (1992)
  5. 视觉基础
  6. 视窗 95...

Java、X11、.NET、Delphi、PowerBuilder、QT?

0 投票
3 回答
3054 浏览

sql-server - Maintaining audit log for entities split across multiple tables

We have an entity split across 5 different tables. Records in 3 of those tables are mandatory. Records in the other two tables are optional (based on sub-type of entity).

One of the tables is designated the entity master. Records in the other four tables are keyed by the unique id from master.

After update/delete trigger is present on each table and a change of a record saves off history (from deleted table inside trigger) into a related history table. Each history table contains related entity fields + a timestamp.

So, live records are always in the live tables and history/changes are in history tables. Historical records can be ordered based on the timestamp column. Obviously, timestamp columns are not related across history tables.

Now, for the more difficult part.

  1. Records are initially inserted in a single transaction. Either 3 or 5 records will be written in a single transaction.
  2. Individual updates can happen to any or all of the 5 tables.
  3. All records are updated as part of a single transaction. Again, either 3 or 5 records will be updated in a single transaction.
  4. Number 2 can be repeated multiple times.
  5. Number 3 can be repeated multiple times.

The application is supposed to display a list of point in time history entries based on records written as single transactions only (points 1,3 and 5 only)

I'm currently having problems with an algorithm that will retrieve historical records based on timestamp data alone.

Adding a HISTORYMASTER table to hold the extra information about transactions seems to partially address the problem. A new record is added into HISTORYMASTER before every transaction. New HISTORYMASTER.ID is saved into each entity table during a transaction. Point in time history can be retrieved by selecting the first record for a particular HISTORYMASTER.ID (ordered by timestamp)

Is there any more optimal way to manage audit tables based on AFTER (UPDATE, DELETE) TRIGGERs for entities spanning multiple tables?

0 投票
2 回答
2334 浏览

git - 追溯 svn 导入到 git

这是我的问题:

  1. 我使用了一段时间的 Subversion,直到我切换到 Git。又过了一段时间。
  2. 没有将历史从 Subversion 导入到 Git。这是一个严格的结帐,删除 .svn 目录,然后是 git init。不是明智之举。
  3. 现在,在数千次 git 提交之后,我找到了第一次 git 提交时创建的 Subversion 存储库的备份。啊哈!

我想将 git repo 回滚到第 0 天,正确导入 svn repo,然后重新应用所有 git 更改,从而更正第一次未完成的操作。

有没有人尝试过这个?我该怎么做呢?这听起来像是所有变基之母。

0 投票
7 回答
5808 浏览

java - 在 Java 中创建状态历史

我需要保存 Java 应用程序中一些操作的状态历史记录,以便稍后重新加载以恢复某个操作的状态。换句话说,我有一个屏幕,它有一个与之关联的状态,我需要存储它以及历史记录中的任何更改,以便我可以随时恢复屏幕的状态。这有点像“撤消”,但不完全是因为两个状态之间的差异可能非常大,并且没有明确定义的动作可以改变状态。

让我用一个例子来解释一下:一个非常基本的屏幕状态可能只包含一个地图。在状态 A 中,此 Map 包含对具有键“Key1”的“Object1”和具有键“Key2”的“Object2”的引用。在状态 B 中,地图仍然包含对“Object1”的引用,但“Object2”已被修改并添加了“Object3”。我现在需要能够返回到状态 A,这将涉及“删除”Object3 并将 Object2 恢复到之前的状态。我无法定义任何自定义“撤消操作”,因为我不知道对 Object2 进行了哪些更改,甚至不知道 Object2 的类型是什么。此外,由于在状态 A 和 B 中 Object2 的引用保持不变,因此这些更改会反映在状态 A 中,因此 Object2 与以前不同。

我意识到最好的解决方案是实现克隆方法,但是因为我需要支持所有类型的对象(包括原语和标准集合),所以这是不可行的。我考虑过使用可序列化,一旦发生状态转换,我会序列化 Map,然后在再次需要时反序列化它,但这似乎是一个非常丑陋的解决方案。

有人有其他想法吗?谢谢你,里斯特雷托

0 投票
1 回答
276 浏览

version-control - 显示自上次“获取最新版本”以来的变更集?

使用 Team Foundation Server 和 Visual Studio 2008,有没有办法突出显示自我上次“获取最新版本”以来提交的内容?这将使我能够快速识别自上次“拉”以来提交的内容,而无需记住我上次同步的变更集。

谢谢。

埃里克

0 投票
2 回答
651 浏览

history - 计算/软件的历史 1995 年至今?

我刚读完 Mitchell Waldrop 的一本好书,叫做《梦想机器》。作者很好地连接了各个点,并展示了一幅详细的图片,详细说明了不同大学和公司的研究是如何结合在一起的,以及计算机是如何成为家用商品的。我非常喜欢这本书的地方是:

  1. 整个故事是如何讲述的,尽管标题暗示是 JCR Licklider(又名“Lick”)的自传,但它的意义远不止于此。它详细介绍了在美国不同角落发生的各种研究,以及它们如何在 Lick 和其他人的远见卓识的指导下共同为我们提供 PC。
  2. 故事的人性化角度,Lick 伟大的整体视野以及识别才华横溢的人并推动他们(推动他们)朝着共同目标前进的能力。施乐没有认识到艾伦凯和黑帮的潜力是愚蠢的。

现在来谈谈我的帖子的原因。当这本书的结尾只简短地提到了现代时代、Apple 的诞生以及 PARC 演示对史蒂夫乔布斯的影响时,我感到非常失望。微软的商业头脑和 IBM 看不到会发生什么等等。它一直在继续,我被迷住了,想要更多!!在 Waldrop 先生离开的当前计算发展时期,是否有任何类似的历史记录?类似的东西,只是没有干巴巴地描述这些技术,而是给它背后的人一个高峰。浏览器大战?谷歌?Java的诞生?谷歌?云计算,是未来吗?谁是现代克劳德香农,艾伦凯斯,冯诺依曼?谁是 Licks 和 Bob Taylors 将当前的伟大思想聚集在一起,或者这些事情已经成为过去?我们再也不会看到这种协调一致和有针对性的研究了吗?什么是真正的技术,什么只是营销绒毛?我知道很多这样的信息都在那里,但我已经被梦想机器宠坏了。我正在寻找 Dream Machine redux。我对这篇文章的希望是三个方面:

  1. 有人可以给我指一本已经出版的书,这太棒了。
  2. 一本书正在制作中,很快就会出版,这会给我一些值得一看的东西。
  3. 我可以启发某人写它:)。Waldrop 先生,如果你曾经在 Stackoverflow 停下来阅读这篇文章,怎么样?
0 投票
2 回答
421 浏览

architecture - 计算机类型

我最近在某处读到了一些与计算机相关的东西。

阅读内容与 Lisp 和 Emacs 相关,它们适合更像图灵机的“架构”模型。

另一方面,它是 C,“其他”架构模型是以我不记得名字的人命名的,但被命名为最成功的计算机类型,因为这是我们现在都使用的(即 cpu + ram + hd +等等等等)。

如果它不是图灵机,那这种计算机的名称是什么(那 afaik 是抽象模型而不是物理模型)

字节!

0 投票
1 回答
268 浏览

c# - C# 的属性从何而来?

我发现 C# 的 Attributes,Python 的 Properties 也是一个非常好的主意,我猜它们的直接祖先可能来自 Java 的 Annotations,但我很好奇这个概念最初来自哪里,有人有任何线索吗?