问题标签 [boilerplate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1079 浏览

c# - 这是类层次结构的“传统”处置模式的合法替代方案吗?

我不喜欢样板代码:复制粘贴重用可能容易出错。即使您使用代码片段或智能模板,也不能保证其他开发人员做到了,这意味着不能保证他们做对了。而且,如果您必须查看代码,则必须理解和/或维护它。

我想从社区知道的是:我对类层次结构的IDispose实现是“传统”处置模式的合法替代方案吗?合法的,我的意思是正确的、性能相当好的、健壮的和可维护的。

我可以接受这种选择是完全错误的,但如果是,我想知道为什么。

此实现假定您可以完全控制类层次结构;如果你不这样做,你可能不得不求助于样板代码。对Add*()的调用通常在构造函数中进行。

这是一个“完整”的实现,因为我提供了对终结器的支持(知道大多数实现不需要终结器)、检查对象是否被释放等。真正的实现可能会移除终结器,例如,或创建一个包含终结器的DisposableObject的子类。基本上,我只为这个问题投入了我能想到的一切。

我可能错过了一些边缘情况和深奥的情况,所以我邀请任何人在这种方法中戳漏洞或通过更正来支持它。

其他选择可能是在DisposableObject中使用单个Queue<Disposer> 处理器而不是两个列表;在这种情况下,当调用处理程序时,它们会从列表中删除。我能想到其他一些细微的变化,但它们具有相同的一般结果:没有样板代码。

0 投票
2 回答
5312 浏览

iphone - 如何更改 MFMailViewController 消息正文中的样板“从我的 iPhone 发送”文本?

我正在使用 MFMailComposeViewController 从 iPhone v3.0 应用程序中发送电子邮件。我以编程方式创建消息正文文本并在显示选择器之前显示它。

在我的消息正文文本的底部是字符串“从我的 iPhone 发送”。有没有办法修改这个文本或阻止它出现?对 MFMailComposeViewController 类参考的粗略审查和快速谷歌搜索并没有发现任何问题。

提前致谢。

0 投票
3 回答
2099 浏览

asp.net - ASP.NET:可以访问它包装的控件的用户控件

我在我的 ASP.NET 项目中出现了很多此类样板代码。

正如您可能已经猜到的那样,该片段中的所有内容都是纯样板文件,除了最里面的文本字段。

在 ASP.NET 中避免此类样板的最佳方法是什么?在例如 Django 中,我会为它制作一个自定义标签,如下所示:

我在想也许我可以创建一个用户控件,但是我发现的所有关于 ASP.NET 用户控件的教程都非常简单和“自动关闭”,即他们不知道标签的内容。我需要一些类似的东西:

所以我的问题如下:避免样板的最佳方法是什么?

0 投票
7 回答
12500 浏览

java - Java: Is there support for macros?

I am just curious on how people solve this. I often write the same type of code all the time. For instance:

I keep changing the line where it says "Change this line" and then starting a thread. This change can be one line or a few lines. How would I go about compacting this code?

0 投票
2 回答
639 浏览

.net - .NET 的标准业务逻辑数据类

有许多“原始”样板类型的数据类可能出现在许多不同的程序中。

但是,我从未见过一个类或库集认识到需要将所有这些东西与它们所需的通用逻辑(例如验证)结合起来。

示例类([] 括号对应于假设库中的类):

地址(街道、邮政编码、城市、州/领地/省、国家/地区)
人员(姓名、联系信息([电话]/[电子邮件]/等)、[地址]、SSN/TIN、[信用卡])
电话(号码,国家代码等)
信用卡(类型,号码,到期,ccv)**

我敢肯定,有人会想出很多其他的。

我开发了自己的电话/地址/个人/信用卡类,我在项目中使用,完成了验证和逻辑。

但是,我只能验证基于美国的信息。理想情况下,我的电话号码类将继承自基本电话类,因为我实际上将号码分为 NPA、NXX 和 Station,并完全使用 NANP 标准对其进行验证。

网络中是否有一组库,其中包含经过适当验证的此类样板数据类的全面集合?

它是否包括对全球数据集或仅美国数据的验证?

而对于 CreditCard 的**,它是否能够满足 PCI 数据安全标准?

我知道这些是许多人可能已经用许多不同的语言编写过很多次的类,但是是否有任何 .NET 库可以满足这些需求?

我更喜欢开源/免费,但我会考虑付费的 3rd 方库集。

0 投票
4 回答
704 浏览

vim - 我可以让 Vim 忽略文件顶部的许可证块吗?

有没有办法使用折叠或其他一些 Vim 脚本黑魔法来隐藏文件顶部的许可证块?我不喜欢它们占据了我编辑窗格的很大一部分;当我第一次打开文件时,我喜欢了解文件在做什么,而不是满脸的样板。

0 投票
3 回答
399 浏览

java - 如何在解析复杂的 XML 文件时防止样板 Java 代码?

我用 DocumentBuilderFactory 为一个复杂的 XML 文件编写了一个 XML 解析器。因为有许多不同的节点类型,所以有许多样板代码。对于每个节点类型 (NodeName),我都有一个子元素循环和一个可能的子元素的开关。

是否只能为不同的节点类型注册所需的代码然后运行解析?

0 投票
2 回答
360 浏览

web-applications - 消除 Web 应用程序的样板代码。是火箭科学吗?

2010 年,我们仍然需要编写样板代码。假设我们正在构建一个在线应用程序(不管它是否花哨,而是一个功能性的应用程序)。我们首先进行数据库设计并在其上放置一些业务逻辑(存储过程,是否唯一等),然后我们在服务器端编写代码并在客户端编写大部分业务逻辑(actionscript-ajax,flex)。使用 ORM 有助于消除数据库部分。但是对于 gui 部分,我们必须了解太多 xhtml、css、javascript/ajax(嘿,我是程序员,我不必知道这些 ie6 技巧)。我们仍然需要在客户端重新实现一些业务逻辑(尤其是对于弹性应用程序)。Django admin 很好,但改变它的外观(布局不太关心颜色)并不容易。是不是觉得这里有问题?它没有 t 看起来像一门火箭科学,但我们仍然需要编写样板代码。我曾使用过一个非常适合做 Web 应用程序的专有系统。我们只是在编写小脚本,瞧,应用程序已经准备好了。开发团队正在尝试开发一个 gui 前端,以进一步消除仅使用 IDE 的编码脚本。那是一家小公司,团队也很小。

所以有成千上万的开源项目我还没有看到类似的项目。我只用 Django 和 Spring 框架编写过代码。

  • GWT 有帮助吗?我的意思是消除客户端和服务器端(也是数据库部分)的业务逻辑的重新实现。并且易于设计带有组件的 GUI。

  • LCDS 3 似乎将提供模型驱动的开发。但是使用起来太贵了。

我并不是真的要制作精美的网站,只是以 RAD 的方式制作受阻的 Web 应用程序。对 gui 布局的良好 IDE 支持会有所帮助,但不需要 xml 就可以了。您如何看待样板网页代码?您认为制作 RAD 平台火箭科学吗?

0 投票
3 回答
227 浏览

types - 在 OCaml 中考虑产品类型分配

我通常对编写这样的代码不满意:

我已经最小化了样板,但我想知道是否有任何 OCaml 魔法可以让我完全消除它。

0 投票
1 回答
173 浏览

generics - 了解 syb 样板消除

http://web.archive.org/web/20080622204226/http://www.cs.vu.nl/boilerplate/中给出的示例中

对于类型签名中提到的第一家公司,增加函数如何编译而不绑定任何内容。

是否类似于分配给部分函数?为什么会这样?