问题列表 - 第40229页

基于接口的编程,我做得对吗?

好的,所以我决定开始在我的代码库中使用接口,这对于某些任务来说非常好.例如,我有一个实现IUrlBuilder的URL构建器类,现在实现无关紧要.很棒,但以此界面为例.

namespace SproutMessagingFramework.Webtext.Interfaces
{
using System.Net;

public interface ICookieJar
{
    CookieCollection Collection { get; set; }
    CookieContainer Container { get; set; }

    void AddResponse(HttpWebResponse Response);
    void AddResponse(HttpWebResponse Response, string Path, string Domain);
}
}
Run Code Online (Sandbox Code Playgroud)

在我看来,这个界面非常具体,这两个方法除了具体类已经做的事情之外不会做太多其他事情.那我为什么要把它变成一个界面呢?好吧,如果我需要更改AddResponse的实现,我的想法是什么?

这是正确的还是我只是膨胀代码库?

.net c# interface

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

在Android中的Bundle中存储和检索数组列表

如何Bundle在Android中存储和检索数组的值列表?任何例子?

android android-bundle

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

找到表示行方式排序矩阵中最小整数的行

在最近的Java电话采访中我被问到这个问题:

您将获得具有以下属性的NxN二进制(0-1)矩阵:

  • 每行都排序(序列为0,后跟1的序列)
  • 每行代表一个无符号整数(通过读取位)
  • 每行都是独一无二的

例:

0 1 1
1 1 1
0 0 1
Run Code Online (Sandbox Code Playgroud)

每行中的位值被排序,行表示整数3,7和1.

找到表示最小整数的行.在上面的示例中,答案是第3行,它表示整数1.

我从二次复杂的蛮力开始.采访者回答说我没有利用排序的财产.

在思考了很多之后,我在每一行都使用了二元搜索,然后它来到了O(nlogn).他问我是否可以进一步改进.我想了很多但没有改进.

如果有人能提出任何关于改进它的指示,我将不胜感激.

另一个例子:

0 1 1 1
0 0 0 1
0 0 0 0
1 1 1 1
Run Code Online (Sandbox Code Playgroud)

答案是第3行,代表整数0.

language-agnostic arrays algorithm matrix

65
推荐指数
5
解决办法
4859
查看次数

270
推荐指数
4
解决办法
15万
查看次数

箭头键键入大写字母而不是移动光标

我已经使用自制软件安装了最新的vim,并且还从谷歌代码主页安装了mac-vim.在mac-vim中一切正常.但是当我在mac中的terminal.app中运行vim并进入插入模式时,我会得到箭头键的ABCD,这非常烦人.

我用Google搜索并尝试了所有解决方案,但没有任何对我有用!

当我运行vim时它会变得有趣,vim -u NONE -U NONE -N然后箭头键在插入模式下开始正常运行.

我的vimrc文件是janus的克隆(来自carlhuda)

你在终端有同样的问题吗?有没有办法在terminal.app中修复它?

macos vim terminal

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

与Python的3d游戏,从零开始

所以我们想为学校编写一个3D游戏,我们可以使用blender作为3d模型,但是我们完全不知道如何在游戏/应用程序中使用它们.

是否有任何推荐的指南/文档,我们应该阅读一般的3D游戏编程和python特定的东西.

我们也可能考虑用C++编程,但是现在我认为使用Python更容易,因为我们可以完全专注于这种方式的3d机制.

c++ python 3d

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

Delphi指针算法

如何编写这行代码以允许它编译

MoveMemory(poleFileDescriptorW
         , (oleDataPointer + SizeOf(oleFileDescriptorW) *Index + 4)^
         , SizeOf(oleFileDescriptorW));
Run Code Online (Sandbox Code Playgroud)

特别是这一部分

(oleDataPointer + SizeOf(oleFileDescriptorW)*Index + 4)^

我只是想按SizeOf(oleFileDescriptorW)*Index + 4字节移动指针

变量定义为:

pOLEFileDescriptorW : ^FILEDESCRIPTORW;
oleDataPointer : Pointer;
Run Code Online (Sandbox Code Playgroud)

delphi

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

我如何在 django 的请求之外访问当前用户

我正在 django 中开发一个中型项目,我希望能够从查询管理器中访问当前用户。我需要能够设计一个自定义管理器来限制结果和查询集,以便当前用户仅获取与他/她相关的信息。

我收到了一些建议,我还看到了不太受支持的使用 django 中间件中的 threadlocals 的示例。然而,我很困惑,因为这似乎是现在最有希望的解决方案。我正在寻找一种更好的方法来执行此操作,以便我可以从模型管理器中访问当前用户。

python django

6
推荐指数
1
解决办法
9303
查看次数

如何按住按钮

我想在点击该按钮时保持按下按钮.按钮的背景是使用完成的StateList

android android-layout

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

JSF 2:在阶段监听器对象中访问托管bean的实例?

是否可以在before-invokeApplication-phaselistener中获取对待执行的managedbean的引用?

在调用应用程序阶段之前,应该清楚要执行该方法的managedBean.

为了举例,假设有一个主要的管理bean来处理1个jsf页面.

所以我需要的基本上是:

  1. 用户从菜单访问该程序
  2. 因为它是从菜单访问的,所以调用主管理bean的init()方法来初始化诸如准备数据,进行授权检查之类的东西
  3. 后续提交不再需要再调用init()方法,直到从菜单中重新启动它

为了实现第2点,我想要拦截其中一个阶段

我已经检查了关于在阶段实现中获取托管bean的API文档,但我似乎无法找到任何.

在输入这个问题后,我意识到我可以在@PostConstruct或托管bean的构造函数中执行此操作,但这只会在第一次构造bean时执行,并且我需要每次从访问jsf时调用该方法菜单.

有什么建议 ?

此致,
Albert Kam

jsf jsf-2

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