标签: boilerplate

什么是样板代码?

一位同事从未听说过这一点,我无法提供真正的定义.对我来说,它总是一个'我知道 - 当我看到它'的例子.

奖金问题,谁来源于这个词?

terminology definition boilerplate

364
推荐指数
11
解决办法
14万
查看次数

Java错误:默认构造函数未定义隐式超级构造函数

我有一些简单的Java代码,在其结构中看起来与此类似:

abstract public class BaseClass {
    String someString;
    public BaseClass(String someString) {
        this.someString = someString;
    }
    abstract public String getName();
}

public class ACSubClass extends BaseClass {
    public ASubClass(String someString) {
        super(someString);
    }
    public String getName() {
        return "name value for ASubClass";
    }
}
Run Code Online (Sandbox Code Playgroud)

我将有很多子类BaseClass,每个子类以getName()自己的方式实现该方法(模板方法模式).

这很好用,但我不喜欢在子类中使用冗余构造函数.打字更多,难以维护.如果我要更改BaseClass构造函数的方法签名,我将不得不更改所有子类.

当我从子类中删除构造函数时,我得到了这个编译时错误:

Implicit super constructor BaseClass() is undefined for default constructor. Must define an explicit constructor

我正在尝试做什么?

java inheritance dry boilerplate

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

HTML5 Boilerplate与HTML5重置

嘿大家 - HTML5 BoilerplateHTML5重置是两个HTML,CSS和JavaScript模板,内置了许多现代最佳实践.他们的目标基本相同:

  • 快速,强大,现代的Web开发
  • HTML5(呃!)
  • 跨浏览器规范化(包括对IE6和移动浏览器的支持)
  • 渐进增强和优雅降级
  • 性能优化
  • 不是框架,而是您下一个项目的起点

显然,它们在功能上非常相似.它们的实现方式有何不同(例如,可能使用不同的技术实现IE特定的CSS修复)?它们的范围有何不同?看起来HTML5 Boilerplate有点大(构建工具,服务器配置等),但是当涉及到人们会看到的实际网站时,很难知道HTML5重置的范围.

html javascript css html5 boilerplate

54
推荐指数
1
解决办法
7444
查看次数

一个很好的HTML骨架

我想再次开始创建网站,但我已经离开了HTML场景一段时间了.我只是想知道这是否是一个网站的好骨架.如果没有,我应该更改,添加和/或删除什么?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<html>
    <head>
        <rel="stylesheet" type="text/css" href="css/main.css" />
        <meta http-equiv="content-type" content="text/php; charset=utf-8" />

        <title>Site Template - Welcome!</title>
    </head>

    <body>
        <div class="Container">
            <div class="Header">

            </div>

            <div class="Menu">
                <ul id="nav"> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                    <li>menu item</li>  
                    <li>menu item</li> 
                </ul> 
            </div>

            <div class="Body">

            </div>
        </div>

    </body>

    <footer>
        <div class="Footer">
            <b>Copyright - 2010</b>
        </div>
    </footer>
</html>
Run Code Online (Sandbox Code Playgroud)

html boilerplate skeleton-code

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

Project Lombok有哪些风险?

我想出了新的一年的性能目标,我认为我的目标是减少代码库的大小,特别是样板,我会觉得很有趣.我提出的解决这个问题的一个动作就是使用Project Lombok来使bean尽可能短.但我习惯于忽视新软件和方法的缺点,所以我依赖Stack Overflow社区:谁能告诉我为什么龙目岛是个坏主意?

java boilerplate java-ee lombok

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

Python中的"Boilerplate"代码?

谷歌有一个Python教程,他们将样板代码描述为"不幸",并提供了这个例子:

#!/usr/bin/python

# import modules used here -- sys is a very standard one
import sys

# Gather our code in a main() function
def main():
  print 'Hello there', sys.argv[1]
  # Command line args are in sys.argv[1], sys.argv[2] ..
  # sys.argv[0] is the script name itself and can be ignored

# Standard boilerplate to call the main() function to begin
# the program.
if __name__ == '__main__':
  main()
Run Code Online (Sandbox Code Playgroud)

现在,我听说样板代码被描述为"看似重复的代码,一次又一次地出现以获得一些似乎应该更简单的结果"(例子).

无论如何,在Python中,上面例子中被认为是"样板"代码的部分是:

if __name__ == '__main__':
  main()
Run Code Online (Sandbox Code Playgroud)

现在,我的问题如下:

1)Python中的样板代码(如提供的示例)是否与我提供的定义具有相同的定义?如果是这样,为什么?

2)这个代码甚至是必要的吗?在我看来,代码运行是否有主要方法.是什么让这个代码变得更好?它更好吗? …

python boilerplate

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

site.webmanifest 文件的主要用途是什么?

我正在使用 HTML 样板文件,我看到一个名为site.webmanifest. 网上查了资料,不明白怎么用。

是网页开发中的必填文件吗?何时以及为何使用它?我怎么知道什么时候需要使用它?

html javascript manifest boilerplate manifest.json

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

从Strings构造简单的Scala案例类,严格没有样板

我寻求简洁的代码来初始化Strings中的简单Scala案例类(例如csv行):

case class Person(name: String, age: Double)
case class Book(title: String, author: String, year: Int)
case class Country(name: String, population: Int, area: Double)

val amy = Creator.create[Person]("Amy,54.2")
val fred = Creator.create[Person]("Fred,23")
val hamlet = Creator.create[Book]("Hamlet,Shakespeare,1600")
val finland = Creator.create[Country]("Finland,4500000,338424")
Run Code Online (Sandbox Code Playgroud)

Creator这样做最简单的对象是什么?我会从Scala那里学到很多很好的解决方案.

(注意伴侣的对象Person,BookCountry不应被强迫存在.这将是锅炉板!)

constructor scala boilerplate case-class

29
推荐指数
1
解决办法
1390
查看次数

如何避免编写这种类型的Haskell样板代码

我经常遇到这种情况,因为它很烦人.

假设我有一个总和类型,它可以包含一个x或一堆其他与之无关的事物x-

data Foo x = X x | Y Int | Z String | ...(other constructors not involving x)
Run Code Online (Sandbox Code Playgroud)

要声明一个Functor实例,我必须这样做 -

instance Functor Foo where
    fmap f (X x) = X (f x)
    fmap _ (Y y) = Y y
    fmap _ (Z z) = Z z
    ... And so on
Run Code Online (Sandbox Code Playgroud)

虽然我想做的是 -

instance Functor Foo where
    fmap f (X x) = X (f x)
    fmap _ a = a
Run Code Online (Sandbox Code Playgroud)

即我只关心X构造函数,所有其他构造函数都只是"通过".但是当然这不会编译,因为a左边是 …

haskell boilerplate

28
推荐指数
3
解决办法
1771
查看次数

如何减少当前序列化所需的样板

我们的软件抽象出硬件,我们有代表这个硬件状态的类,并且有很多数据成员用于该外部硬件的所有属性.我们需要定期更新有关该状态的其他组件,为此我们通过MQTT和其他消息传递协议发送protobuf编码的消息.有不同的消息描述硬件的不同方面,因此我们需要发送这些类的数据的不同视图.这是一个草图:

struct some_data {
  Foo foo;
  Bar bar;
  Baz baz;
  Fbr fbr;
  // ...
};
Run Code Online (Sandbox Code Playgroud)

让我们假设我们需要发送一条包含foo和的消息bar,并且一封包含barbaz.我们目前的做法是大量的锅炉板:

struct foobar {
  Foo foo;
  Bar bar;
  foobar(const Foo& foo, const Bar& bar) : foo(foo), bar(bar) {}
  bool operator==(const foobar& rhs) const {return foo == rhs.foo && bar == rhs.bar;}
  bool operator!=(const foobar& rhs) const {return !operator==(*this,rhs);}
};

struct barbaz {
  Bar bar;
  Baz baz;
  foobar(const Bar& bar, const Baz& baz) : bar(bar), baz(baz) {}
  bool …
Run Code Online (Sandbox Code Playgroud)

c++ redundancy boilerplate stdtuple

28
推荐指数
2
解决办法
927
查看次数