想象一下,你为一家小型精益软件公司工作.您知道公司未来的竞争力在于拥有良好的可重用代码库.管理公司的再利用政策以确保您今天的交付,同时为未来提供支持,这将是非常重要的.
在我看来,在业务中编写可重用代码有两个原因; 1)在公司内共享以提高未来的速度和效率2)在网络上发布和其他人将有助于改进代码(从某种意义上说是众包).
开发人员应该始终运用常识来重复使用.但是为了从管理角度处理这个问题,我想要一些整体的代码重用指南,以确保我们现在和将来都具有竞争力.这些指南应鼓励开发人员询问"我的代码是否为重用候选人?".这些指导方针应该说什么?
我最初的想法:在最低级别编写可重用的代码是不值得的(例如,我有一些内联代码在字符串的末尾添加了一个"s"),这个代码的代码太多了.甚至筛选,发现有人已经做过了.在最顶层(即应用程序)编写可重用代码也是不值得的,因为您的客户报告应用程序最终会被通用化为SQL客户端 - 对大多数用户来说是无用的.
可重复使用代码的主要障碍:除非您知道它存在,否则不能重复使用它; 信任 - 它已经完成,但你相信吗?使代码通用/可重用(并记录)的初始时间.
鉴于我有这个结果集结构(多余的字段已被剥离)
Id | ParentId | Name | Depth
----------------------------
Run Code Online (Sandbox Code Playgroud)
是有可能有树的顺序返回即记录Parent,然后Children,如果Child是Parent,那么他们的Children,如果没有的话Sibling,等?例如,
Id | ParentId | Name | Depth
----------------------------
1 NULL Major 1
2 1 Minor 2
3 1 Minor 2
4 3 Build 3
5 3 Build 3
6 1 Minor 2
/* etc, etc */
Run Code Online (Sandbox Code Playgroud)
我能想到这样做的唯一方法就是遵循这篇文章 -
并包含每个记录的字段[LeftExtent]和[RightExtent]字段.现在文章中的SQL在Ids唯一时工作正常,但在这个特定的树结构中,具有相同记录的记录Id可以出现在树内的不同位置(ParentId显然字段不同).我认为问题出在本文的SQL中 -
INSERT INTO @tmpStack
(
EmployeeID,
LeftExtent
) …Run Code Online (Sandbox Code Playgroud) 我有一个文本框,我绑定到viewmodel的字符串属性.字符串属性在viewmodel中更新,它通过绑定显示文本框中的文本.
问题是我想在字符串属性中的一定数量的字符后插入换行符,我希望换行符显示在文本框控件上.
我尝试在viewmodel中的字符串属性中追加\ r \n但是换行符没有反映在文本框上(我在文本框中将Acceptsreturn属性设置为true)
任何人都可以帮忙.
例如,创建一个名为Car_Model具有表的外键的表的语法是什么(如果可能的话)Car_Make,并给出Car_Make一个列,该列是该表的Car_Models存在数Car_Make.
(如果这看起来很简单或像家庭作业一样,因为我只是在家里玩一些python试图重现我在工作中遇到的问题.我们在工作中使用MS-SQL.)
我在一个涉及一个或多个句子的长字符串的数据库中存储和编辑一些字段.每当我在文本框中输入单引号并想要保存它时,它会抛出一个异常,例如 "l'附近的语法不正确.字符串''后面的未闭合引号." 有什么想法可以避免吗?
编辑: 查询是:
SqlCommand com = new SqlCommand("UPDATE Questions SET Question = '[" +
tbQuestion.Text + "]', Answer = '[" +
tbAnswer.Text + "]', LastEdit = '" +
CurrentUser.Login +
"'WHERE ID = '" + CurrentQuestion.ID + "'");
Run Code Online (Sandbox Code Playgroud) 以名称"RootNode"检索时,以下代码不运行,因为rootNode为null
treeView1.Nodes.Add(new TreeNode("RootNode"));
...
//get the rootNode by its name
TreeView1 rootNode = treeView1.Nodes["RootNode"]
//rootNode is null so following line throws an error
rootNode.Nodes.Add(new TreeNode("ChildNode"));
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么?如何通过它的名称获取特定节点?
我有一个表的时间戳值如下:
2009-07-14 02:00:00
我需要在运行时显示它们,添加13个小时,如:
2009-07-14 15:00:00
在PHP中最简单的方法是什么?
哪个代码段会提供更好的性能?以下代码段是用C#编写的.
1.
for(int counter=0; counter<list.Count; counter++)
{
list[counter].DoSomething();
}
Run Code Online (Sandbox Code Playgroud)
2.
foreach(MyType current in list)
{
current.DoSomething();
}
Run Code Online (Sandbox Code Playgroud) 例如,输出>>w = whos;返回结构数组.我想构造一个数组,其元素是每个结构中特定字段名称的标量.
这样做最明显的方法并不是按照我的意愿返回数组,而是分别回答每个数组.
>> w(1:2).bytes
ans =
64
ans =
128
Run Code Online (Sandbox Code Playgroud)
我可以用循环来做,但是想知道是否有更好的方法.
以下是针对各种语言讨论的大量隐藏功能.现在我好奇XAML和WPF的一些隐藏功能?
我发现的是ListView的标题点击事件
<ListView x:Name='lv'
Height="150"
GridViewColumnHeader.Click="GridViewColumnHeaderClickedHandler">
Run Code Online (Sandbox Code Playgroud)
未列出GridViewColumnHeader.Click属性.
到目前为止的一些相关功能:
也可以看看:
c# ×3
sql ×2
wpf ×2
agile ×1
arrays ×1
binding ×1
code-reuse ×1
dynamic-sql ×1
for-loop ×1
foreach ×1
matlab ×1
nested-sets ×1
performance ×1
php ×1
sql-server ×1
sqlite ×1
textbox ×1
time ×1
tree ×1
treeview ×1
xaml ×1