标签: theory

PHP中的接口有什么意义?

接口允许您创建代码,该代码定义实现它的类的方法.但是,您无法向这些方法添加任何代码.

抽象类允许您执行相同的操作,同时向方法添加代码.

现在,如果您可以使用抽象类实现相同的目标,为什么我们甚至需要接口的概念?

我被告知它与OO理论有关,从C++到Java,这就是PHP的OO基础.这个概念在Java中有用但在PHP中没有用吗?它只是一种避免在抽象类中乱丢占位符的方法吗?我错过了什么吗?

php theory oop interface

219
推荐指数
11
解决办法
9万
查看次数

SQL Server架构有什么用?

我不是初学者使用SQL数据库,特别是SQL Server.但是,我主要是一个SQL 2000的人,我一直对2005年以上的模式感到困惑.是的,我知道架构的基本定义,但它们在典型的SQL Server部署中实际使用了什么?

我一直只使用默认架构.为什么我要创建专门的模式?为什么要分配任何内置模式?

编辑:澄清一下,我想我正在寻找架构的好处.如果您只是将其用作安全方案,那么数据库角色似乎已经填满了......呃..嗯..角色.使用它作为命名空间说明符似乎是你可以用所有权完成的事情(dbo与用户等等).

我想我所得到的是,Schemas做了什么,你不能对业主和角色做什么?他们的特殊利益是什么?

theory schema sql-server-2005

183
推荐指数
9
解决办法
11万
查看次数

分布式哈希表(DHT)的简单基本解释

任何人都可以解释一下DHT的工作原理吗?

没什么太重,只是基础.

theory p2p dht

170
推荐指数
3
解决办法
7万
查看次数

如何编写简单的数据库引擎

我有兴趣了解数据库引擎的工作原理(即它的内部).我知道CS中教授的大多数基本数据结构(树,哈希表,列表等)以及对编译器理论的非常好的理解(并且实现了一个非常简单的解释器)但我不明白怎么去关于编写数据库引擎.我已经搜索了关于这个主题的教程,我找不到任何教程,所以我希望别人可以指出我正确的方向.基本上,我想了解以下信息:

  • 数据如何在内部存储(即如何表示表格等)
  • 引擎如何找到所需的数据(例如,运行SELECT查询)
  • 如何以快速有效的方式插入数据

以及可能与此相关的任何其他主题.它不一定是磁盘上的数据库 - 即使内存数据库也没问题(如果它更容易),因为我只想学习它背后的原理.

非常感谢您的帮助.

sql database theory database-engine

140
推荐指数
8
解决办法
6万
查看次数

为什么标题中的C++内联函数?

注意:这不是关于如何使用内联函数或它们如何工作的问题,更多的是为什么它们按照它们的方式完成.

类成员函数的声明不需要定义函数inline,它只是函数的实际实现.例如,在头文件中:

struct foo{
    void bar(); // no need to define this as inline
}
Run Code Online (Sandbox Code Playgroud)

那么,为什么一类功能的内嵌实施是在头文件?为什么我不能把内联函数放在.cpp文件中?如果我在哪里尝试将内联定义放在.cpp文件中,我会得到一个错误:

error LNK2019: unresolved external symbol 
"public: void __thiscall foo::bar(void)"
(?bar@foo@@QAEXXZ) referenced in function _main 
1>C:\Users\Me\Documents\Visual Studio 2012\Projects\inline\Debug\inline.exe 
: fatal error LNK1120: 1 unresolved externals
Run Code Online (Sandbox Code Playgroud)

c++ theory language-design inline c++-faq

109
推荐指数
7
解决办法
9万
查看次数

流式传输资源如何适应RESTful范式?

使用RESTful服务,您可以创建,读取,更新和删除资源.当你处理像数据库资产这样的事情时,这一切都很有效 - 但这又如何转化为流数据呢?(或者是吗?)例如,在视频的情况下,将每个帧视为我应该一次查询一个资源的资源似乎很愚蠢.相反,我会设置套接字连接并流式传输一系列帧.但这会打破RESTful范式吗?如果我想能够快退或快进流怎么办?这是RESTful范式内的可能吗?那么:流媒体资源如何适应RESTful范式?

作为一个实施问题,我正准备创建这样的流数据服务,我想确保我这样做是"最好的方式".我相信这个问题以前已经解决了.有人能指出我的好材料吗?

theory rest streaming

100
推荐指数
1
解决办法
4万
查看次数

什么是数据库事务?

有人可以提供一个简单(但不简单)的交易解释,应用于计算(即使从维基百科复制)?

database theory concurrency failover transactions

95
推荐指数
6
解决办法
8万
查看次数

您将如何从对象方法中访问对象属性?

从不是getter/setter方法的对象方法中访问对象属性的"纯粹"或"正确"方法是什么?

我知道从对象外面你应该使用一个getter/setter,但是你可以从内部做到:

Java的:

String property = this.property;
Run Code Online (Sandbox Code Playgroud)

PHP:

$property = $this->property;
Run Code Online (Sandbox Code Playgroud)

或者你会这样做:

Java的:

String property = this.getProperty();
Run Code Online (Sandbox Code Playgroud)

PHP:

$property = $this->getProperty();
Run Code Online (Sandbox Code Playgroud)

请原谅我,如果我的Java稍微关闭,那我用Java编程已经有一年...

编辑:

似乎人们假设我只讨论私有或受保护的变量/属性.当我学习OO时,我被教导为每个属性使用getter/setter,即使它是公开的(实际上我被告知永远不会公开任何变量/属性).所以,我可能会从一开始的错误假设开始.似乎回答这个问题的人可能会说你应该拥有公共财产,并且那些不需要吸气剂和制定者,这与我所教的内容相违背,以及我所谈论的内容,尽管可能需要讨论好.虽然这可能是一个不同问题的好主题......

php java theory oop

92
推荐指数
18
解决办法
1万
查看次数

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

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

澄清:

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

可能吗?我可以使用Google的算法,关键字等吗?

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

regex theory artificial-intelligence automata

89
推荐指数
6
解决办法
2万
查看次数

Wolfram在XKCD中的第34条规则

#505 xkcd中的悬浮"笑话" 吹捧"我在Wolfram的规则34中称之为规则34".

我知道规则34在互联网方面是什么,我已经用Google搜索了Wolfram是谁,但我很难弄清楚Wolfram的规则34是什么.

那么这个"规则34"究竟是什么呢?

这是漫画:http://xkcd.com/505/.

theory cellular-automata

84
推荐指数
7
解决办法
7万
查看次数