小编And*_*sen的帖子

对象组合促进代码重用.(T/F,为什么)

我正在读考试,我正试图解决这个问题.具体问题是"继承和对象组合都促进了代码重用.(T/F)",但我相信我理解了问题的继承部分.

我相信继承促进了代码重用,因为类似的方法可以放在抽象基类中,这样类似的方法就不必在多个子类中相同地实现.例如,如果你有三种形状,并且每个形状的方法"getName"只返回一个数据成员'_name',那么为什么在每个子类中重新实现这个方法时,它可以在抽象基础中实现一次阶级"形状".

但是,我对对象组合的最好理解是对象/类之间的"有一个"关系.例如,学生有学校,学校有很多学生.这可以看作是对象组成,因为它们之间没有真正存在(没有任何学生的学校不完全是学校,是吗?等等).但我认为这两个对象作为数据成员彼此"拥有"的方式无法促进代码重用.

有帮助吗?谢谢!

c++ oop object-composition

5
推荐指数
2
解决办法
2583
查看次数

如何从mipmapping中消除纹理接缝

我在我的terrain的片段着色器中使用纹理混合来从一个纹理混合到下一个纹理.在仅使用我的草纹理和在泥土/草地或雪/草纹理之间混合的缝隙处,mipmaps似乎会造成难看的缝隙(见下图).禁用mipmapping可以解决问题但会使我的地形在远处变得非常颗粒状/丑陋.有没有办法在不禁用mipmapping的情况下消除这种接缝?


地形vs.glsl:

precision mediump float;

attribute vec3 Position;
attribute vec2 TextureCoord;

uniform mat4 uMVMatrix;
uniform mat4 uPMatrix;

varying vec2 texCoord;
varying float y;

void main(void) {
  gl_Position = uPMatrix * uMVMatrix * vec4(Position, 1.0);
  texCoord = TextureCoord;
  y = Position.y;
}
Run Code Online (Sandbox Code Playgroud)

地形fs.glsl:

precision mediump float;

uniform sampler2D dirt_texture;
uniform sampler2D grass_texture;
uniform sampler2D snow_texture;

varying vec2 texCoord;
varying float y;

void main(void) {
  if (y < -5.0) {
    gl_FragColor = texture2D(dirt_texture, texCoord);
  } else if (y < 0.0) {
    gl_FragColor …
Run Code Online (Sandbox Code Playgroud)

textures opengl-es mipmaps webgl

5
推荐指数
1
解决办法
2239
查看次数

可选的React Router参数

我正在尝试创建一个匹配以下所有网址的路由:

/product/foo
/product/foo/bar
Run Code Online (Sandbox Code Playgroud)

这是我目前的路线:

<Route path="/product/:productName(/:urlID)" handler={SomeHandler} />
Run Code Online (Sandbox Code Playgroud)

根据https://github.com/rackt/react-router/blob/master/docs/guides/basics/RouteMatching.md上的文档,此路由应完全匹配,但它与上述任一URL都不匹配.

我需要做些什么来支持这个可选参数?

我在React Router版本0.13.3上,如果我删除了(/:urlID)那么我可以匹配第一个URL而不是第二个URL.

react-router

5
推荐指数
1
解决办法
7062
查看次数

Twitter 的 URL 爬虫执行 JavaScript 吗?

当 Twitter 抓取 URL 以呈现 Twitter 卡片(通过元标签配置)时,Twitter 会首先执行你的 JavaScript 还是他们要求这些标签直接从服务器发送?

我问的原因是现在是 2016 年,所以我正在开发一个单页应用程序。无论您请求什么 URL,我都会返回 /index.html,它获取我的 JS 并在客户端动态加载您请求的任何页面(包括元标记)。

我知道 Google 会运行你的 JS,但 Twitter 会运行吗?

twitter twitter-card

5
推荐指数
1
解决办法
739
查看次数

如何使用react + router + redux同构处理子域?

我正在建立一个服务,其他公司可以在那里举办社区活动companyname.mydomain.com.我有一个Redux减速机叫做company该公司的某些状态.我希望能够根据请求的子域同构地获取有关该公司的数据.

如果我有一个功能getSubdomain:

function getSubdomain(host) {
  const hostWithoutPort = host.split(':')[0];
  return hostWithoutPort.split('.').slice(0, -2).join('.');
}
Run Code Online (Sandbox Code Playgroud)

然后在客户端上我通过执行以下操作来获取子域:

const subdomain = getSubdomain(window.location.host);
Run Code Online (Sandbox Code Playgroud)

在服务器上,由于窗口不可用且每个请求的主机不同,我会这样做:

const subdomain = getSubdomain(request.headers.host);
Run Code Online (Sandbox Code Playgroud)

基于此子域正确同构获取公司数据的正确策略是什么?我想也许我可以用状态中设置的子域来初始化我的商店?

react-router isomorphic-javascript react-redux react-router-redux

5
推荐指数
0
解决办法
817
查看次数

未收到 Microsoft Graph 更改通知

我想订阅用户删除,以便每当在 Azure AD 中删除用户时,我们的应用程序都可以做出相应的反应。

这是我的订阅请求:

const now = new Date();
const threeDaysLater = new Date(now.getTime() + 3 * 24 * 58 * 60 * 1000);
request.post({
  auth: {
    bearer: {...},
  },
  headers: {
    Accept: 'application/json',
  },
  json: {
    changeType: 'updated,deleted',
    clientState: {...},
    expirationDateTime: threeDaysLater.toISOString(),
    notificationUrl: 'https://{...}.ngrok.io/api/azure/webhook',
    resource: 'users',
    latestSupportedTlsVersion: 'v1_2',
  },
  url: 'https://graph.microsoft.com/v1.0/subscriptions',
});
Run Code Online (Sandbox Code Playgroud)

发送此请求后,我会收到一个发送到 my 的请求notificationUrl,我会使用验证令牌对其进行响应。

然后我收到来自初始请求的以下响应:

{
  '@odata.context':
   'https://graph.microsoft.com/v1.0/$metadata#subscriptions/$entity',
  id: {...},
  resource: 'users',
  applicationId: {...},
  changeType: 'updated,deleted',
  clientState: {...},
  notificationUrl: 'https://{...}.ngrok.io/api/azure/webhook',
  expirationDateTime: '2020-03-22T11:52:36.328Z',
  creatorId: {...},
  latestSupportedTlsVersion: …
Run Code Online (Sandbox Code Playgroud)

azure azure-active-directory microsoft-graph-api

5
推荐指数
1
解决办法
593
查看次数

regex/linux find命令无法按预期工作

背景:我试图通过将其输出汇总到我的根web目录(递归)中获取所有代码文件(.html | .htm | .php | .js | .css)的总行数xargs wc -l | grep total.

$ find . -regex '.+\.php'
./inc/db.php
./inc/userauth.php
./index.php
.......... etc.

$ find . -regex '.+\.js'
./inc/jquery-1.7.1.js
./inc/script.js

$ find . -regex '.+\.(php|js)'
(returns nothing)
Run Code Online (Sandbox Code Playgroud)

根据,

abc(def|xyz) matches abcdef or abcxyz
Run Code Online (Sandbox Code Playgroud)

所以不应该.+\.(php|js)匹配所有.php文件和.js文件?

regex bash find

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

Chrome自定义标签会隐藏地址栏

我正在开发一个客户可以集成到他们的应用程序的小部件.他们的用户必须自己进行身份验证(通过OAuth).因此,我的客户最好使用Chrome自定义标签,以便用户可能使用OAuth提供商(例如Facebook)登录.

有没有办法隐藏Chrome自定义标签的地址栏?该URL与最终用户并不真正相关.

chrome-custom-tabs

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

如何在flexbox中围绕对象(如浮动)包装文本?

假设我有一个display: inline带有一些文本孩子的容器,还有一些inline-block孩子:

在此输入图像描述

如果我给容器下面的CSS ...(并inline-block改为inline-flex)

display: flex;
flex-direction: row;
flex-wrap: wrap;
align-items: center;
Run Code Online (Sandbox Code Playgroud)

...然后它将文本元素视为自己的整个元素并包装整个事物,而不是将其分解.

在此输入图像描述

有没有"flexbox"方法来实现这一目标,还是我真的不得不回归显示内联?

html css css3 flexbox

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

Elastic Beanstalk和ES6

我正在尝试在Elastic Beanstalk上部署我的节点服务器,但它不起作用,因为最新版本Elastic Beanstalk支持开箱即用0.12.6(2015年7月).使用io.js或最新的节点版本(4.1.2)都是可行的选择,但不清楚如何通过beanstalk运行ec2实例来执行此操作.

我尝试了很多东西,包括:

  1. 将4.1.2源添加到我的.ebextensions配置文件,然后更新引用,/tmp/deployment/config/#etc#init#nodejs.confconsole.log(process.argv)仍然是0.12.6.更重要的是,第二次运行此操作时,我得到一些text file busy错误,大概是因为它在节点仍在运行时尝试更改节点包的源...(请参阅https://forums.aws.amazon.com/thread.jspa ?threadID = 169385)
  2. 添加一个下载4.1.2源文件的文件并对其进行ungzips并更新引用,如https://github.com/kopurando/better-faster-elastic-beanstalk,但这似乎也没有用(版本仍为0.12. 6)

为什么只运行最新稳定版本的节点以及在AWS上被广泛支持4个月的东西是如此困难?

javascript amazon-elastic-beanstalk

3
推荐指数
1
解决办法
2159
查看次数

安全地为其他人提供PHP服务

我有一个亚马逊ec2实例(Linux).

我希望你(是的,你)能够上传一个PHP文件,然后在www.mydomain.com/yourname上实时提供.我也希望能够为众多其他人(www.mydomain.com/theirname)做到这一点.

我担心你(或他们,不要指责)可以做恶意的事情(故意或偶然).例如,无限循环,在一个根目录之外读/写,关闭服务器,运行系统命令等.如果我想要恶意,我会尝试.

有没有办法设置PHP/apache/user权限,或者在服务之前搜索他们的代码,这样恶意至少会更难,更难?

php linux apache security amazon-ec2

1
推荐指数
2
解决办法
125
查看次数

Box Collision代码

我的箱子碰撞代码不起作用.

bool checkCollide(int x, int y, int oWidth, int oHeight, int xTwo, int yTwo, int oTwoWidth, int oTwoHeight)
{
   if (xTwo + oTwoWidth < x) 
      return false;  // box 2 is left of box 1

   if (x + oWidth < xTwo)
      return false;  // box 1 is left of box 2

   if (xTwo > x + oWidth) 
      return false;  // box 2 is right of box 1

   if (x > xTwo + oTwoWidth)
      return false;  // box 1 is right …
Run Code Online (Sandbox Code Playgroud)

c++ collision

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

Python中的范围

我想列出范围内的数字,我想找出范围内的数字量.

例如:

X = (5,6,5,1,2,3,4,5,6,7)
Y = (5, 5, 5,5 5,5 5,5 5)
range(X) # Want to know how many numbers in X.
Run Code Online (Sandbox Code Playgroud)

如果你们能帮助它会很棒.

python

0
推荐指数
1
解决办法
4554
查看次数