鉴于短暂的冲刺,放弃TDD在冲刺中"完成任务"是否可以接受.
例如,一个给定的工作可能需要说冲刺的1/3来围绕现有实现设计对象模型.在这种情况下,你可能最终会得到实现的代码,比如sprint的一半,没有任何测试(在这个"设计"阶段实现单元测试会增加很多努力,测试很可能会丢失几次直到最终"设计"以此为基础).
然后,您可能会在第二周花一两天时间在事后添加单元/集成测试.
这可以接受吗?
我想要一个具有以下API的方法:
//get all users with a role of admin
var users = myRepository.GetUsers(u => u.Role == Role.Admin);
Run Code Online (Sandbox Code Playgroud)
这样的事情会起作用吗?
IList<User> GetUsers(Func<User, bool> predicate)
{
var users = GetAllUsers();
return users.Where(predicate).ToList();
}
Run Code Online (Sandbox Code Playgroud)
如果是这样,我将能够指定更复杂的谓词,如(伪代码):
myRepository.GetUsers(u => u.CreatedDate is upto 14 days old);
Run Code Online (Sandbox Code Playgroud) 我的网络应用程序托管在上面mydomain,其中以下URI与域名相关联:blah.net.
我可以使用以下任一用户名登录:
在Windows身份验证的上下文中,每种登录类型的名称(有没有差异)是什么?
将样式导入Web组件的规范方法是什么?
以下给出了一个错误HTML element <link> is ignored in shadow tree:
<template>
<link rel="style" href="foo.css" />
<h1>foo</h1>
</template>
Run Code Online (Sandbox Code Playgroud)
我使用以下方法使用shadow DOM插入它:
var importDoc, navBarProto;
importDoc = document.currentScript.ownerDocument;
navBarProto = Object.create(HTMLElement.prototype);
navBarProto.createdCallback = function() {
var template, templateClone, shadow;
template = importDoc.querySelector('template');
templateClone = document.importNode(template.content, true);
shadow = this.createShadowRoot();
shadow.appendChild(templateClone);
};
document.registerElement('my-nav-bar', {
prototype: navBarProto
});
Run Code Online (Sandbox Code Playgroud) 是否存在同步承诺这样的概念?使用promises语法编写同步代码会有什么好处吗?
try {
foo();
bar(a, b);
bam();
} catch(e) {
handleError(e);
}
Run Code Online (Sandbox Code Playgroud)
...可以写成(但使用同步版本then);
foo()
.then(bar.bind(a, b))
.then(bam)
.fail(handleError)
Run Code Online (Sandbox Code Playgroud) 以下失败并出现错误.
TS7018:Object literal的属性'scopes'隐式具有'any []'类型.
我想定义foo为一个数组any.如何在对象文字中执行此操作?
{
foo: [],
}
Run Code Online (Sandbox Code Playgroud) Babel 转译输出如下。生成评论的目的是什么/*#__PURE__*/?
function foo() {
return (<div>
<p></p>
<p></p>
</div>)
}
Run Code Online (Sandbox Code Playgroud)
转换为:
"use strict";
function foo() {
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("p", null), /*#__PURE__*/React.createElement("p", null));
}
Run Code Online (Sandbox Code Playgroud) 我设想能够编写流畅的代码,为代码库中的数字增加意义.假设您想要一个数字来表示以英里为单位的距离.你有类似的东西:
用法:
var result = myMethod(100.Miles());
Run Code Online (Sandbox Code Playgroud)
我认为这比简单传递int更具可读性,而且你可以将边界检查应用于Miles类型.
扩展方法和结构实现:
static class IntExtensions
{
public static Miles(this int i) { get { return new Miles { Count = i }; } }
}
public struct Miles
{
public int Count { get; private set; } //optionally perform bounds checking
}
Run Code Online (Sandbox Code Playgroud)
这样的想法是否有用,或者在炎热的星期五为时已晚?
编辑:是的,没有扩展属性看起来不那么整洁......对于匆忙的无效代码抱歉.这只是一个想法.
javascript ×4
c# ×2
.net ×1
agile ×1
algorithm ×1
func ×1
html5 ×1
lambda ×1
linq ×1
predicates ×1
promise ×1
prototype ×1
shadow-dom ×1
sprint ×1
struct ×1
tdd ×1
typescript ×1
unit-testing ×1