问题列表 - 第657页

你如何证明重复工作给你的吝啬老板?

您刚刚编写了一堆代码,以便在压力下提供一些重要功能.你已经削减了一些角落,你已经将一些代码混合到一些名称如SerialIndirectionShutoffManager的过度膨胀的类中.

你告诉你的老板,你需要一周的时间来清理这些东西.

"干什么?"

"我的代码 - 它是一个猪圈!"

"你的意思是还有一些bug修复?"

"不是真的,它更像......"

"你会让它跑得更快吗?"

"也许,但不是......"

"那么当你有机会的时候你应该写得很好.现在我很高兴你在这里,是的,我将不得不继续前进,并要求你在这个周末来这里."

我读过Matin Fowler的书,但我不确定我是否同意他对此事的建议:

  • 鼓励定期进行代码审查,因此鼓励重构工作作为开发过程的自然部分.
  • 只是不要说,你是开发人员,也是你职责的一部分.

这两种方法都不需要与您的经理沟通.

你告诉老板你怎么了?

refactoring

16
推荐指数
5
解决办法
2203
查看次数

消除重复的枚举代码

我有大量实现此接口的枚举:

/**
 * Interface for an enumeration, each element of which can be uniquely identified by it's code
 */
public interface CodableEnum {

    /**
     * Get the element with a particular code
     * @param code
     * @return
     */
    public CodableEnum getByCode(String code);

    /**
     * Get the code that identifies an element of the enum
     * @return
     */
    public String getCode();
}
Run Code Online (Sandbox Code Playgroud)

一个典型的例子是:

public enum IMType implements CodableEnum {

    MSN_MESSENGER("msn_messenger"),
    GOOGLE_TALK("google_talk"),
    SKYPE("skype"),
    YAHOO_MESSENGER("yahoo_messenger");

    private final String code;

    IMType (String code) { …
Run Code Online (Sandbox Code Playgroud)

java enums enumeration

22
推荐指数
3
解决办法
7381
查看次数

如何将Perl中字符串中每个单词的首字母大写?

将字符串的每个单词中的第一个字母大写的最简单方法是什么?

title-case perl capitalize

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

运算符>>读取int十六进制和十进制?

我可以说服C++中的operator >>同时读取十六进制值AND和十进制值吗?以下程序演示了如何读取十六进制错误.我想要相同的istringstream能够读取十六进制和十进制.

#include <iostream>
#include <sstream>

int main(int argc, char** argv)
{
    int result = 0;
    // std::istringstream is("5"); // this works
    std::istringstream is("0x5"); // this fails

    while ( is.good() ) {
        if ( is.peek() != EOF )
            is >> result;
        else
            break;
    }

    if ( is.fail() )
        std::cout << "failed to read string" << std::endl;
    else
        std::cout << "successfully read string" << std::endl;

    std::cout << "result: " << result << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

c++

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

如何打包我的Perl脚本以在没有Perl的机器上运行?

人们也经常会问"如何编译Perl?" 而他们真正想要的是创建一个可以在机器上运行的可执行文件,即使他们没有安装Perl.

我知道有几种解决方案:

  1. IndigoStar的perl2exe它是商业的.我从未尝试过.它的网站说它可以交叉编译Win32,Linux和Solaris.
  2. 来自ActiveState的Perl Dev Kit.它是商业的.几年前我在Windows上使用它,它可以很好地满足我的需求.根据其网站,它适用于Windows,Mac OS X,Linux,Solaris,AIX和HP-UX.
  3. PAR或者更确切地说PAR :: Packer是免费和开源的.基于测试报告,它可以在Windows,Mac OS X,Linux,NetBSD和Solaris上运行,但理论上它也可以在其他UNIX系统上运行.最近我开始在Linux上使用PAR进行打包,并且也将在Windows上使用它.

其他推荐解决方案

perl executable compilation distribution

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

如何为您的网站设置API密钥系统?

假设我有一个网站,其中包含一些可以从外部访问的信息.这些信息只需由受尊敬的客户进行更改.示例:Google Analytic或WordPress API密钥.如何创建一个像这样工作的系统(无论编程语言)?

api-design

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

为什么XSLT从来没有见过互联网热潮期间出现的许多其他语言的流行?

使用XSLT(XML样式表语言转换)从未见过互联网热潮期间出现的许多其他语言的普及.虽然它正在使用中,并且在某些情况下由大型成功公司(即暴雪娱乐公司)使用,但它似乎从未成为主流.你为什么认为这是?

xml xslt

12
推荐指数
6
解决办法
3689
查看次数

如何在运行时给定数组类型实例化Java数组?

在Java集合框架中,Collection接口声明以下方法:

<T> T[] toArray(T[] a)

返回包含此collection中所有元素的数组; 返回数组的运行时类型是指定数组的运行时类型.如果集合适合指定的数组,则返回其中.否则,将使用指定数组的运行时类型和此集合的大小分配新数组.

如果你想实现这个方法,你将如何创建一个只在运行时才知道的a类型的数组?

java arrays collections

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

什么是一个很好的JavaScript插件颜色选择器?

我制作了很多网络应用程序,有时我需要一个颜色选择器.我可以像API一样使用什么,不需要插入大量代码?我还需要它在所有浏览器中工作.

javascript color-picker

11
推荐指数
2
解决办法
8563
查看次数

如何访问向量中的最后一个值?

假设我有一个嵌套在数据帧中的一个或两个级别的向量.是否有快速而肮脏的方式来访问最后一个值,而不使用该length()功能?PERL的$#特殊变量是什么?

所以我想要像:

dat$vec1$vec2[$#]
Run Code Online (Sandbox Code Playgroud)

代替

dat$vec1$vec2[length(dat$vec1$vec2)]
Run Code Online (Sandbox Code Playgroud)

r vector dataframe

267
推荐指数
10
解决办法
29万
查看次数