`
1000copy
  • 浏览: 72505 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论
文章列表
  图来自于MartinFolwer(简称MF)本人的博客中的文章:VcsSurvey。他做的一个调查,调查样本为ThoughtWorks公司的100名(咨询师)。图的纵坐标为“回应比例”,横坐标为“赞成比例”。分别表明使用的普及程度和美誉度方面。   1.          只要看VSS,Subversion
  继续以delete_dept为例。   作为存储过程,当“如果dept内有对应的person,那么提示用户不能删除”这个需求提出的时候,delete_dept是无法在运行时提醒用户的,因此它必须和UI代码达成协议:当delete_dept返回-1
  还是以上面提到的存储过程delete_dept为例。delete_dept实在是太过粗糙,缺乏基本的错误检查。现在用户需要在删除前给它加入一个检查,和现实的代码更接近一些。 检查为:“如果dept内有对应的person,那么提示用户不能删除”,代码如下:   CREATE PROCEDURE [dbo].[
  如果我们写了一个存储过程,比如叫做delete_dept,功能非常简单——就是删除指定id的部门:   CREATE PROCEDURE [dbo].[delete_dept]  
  在平台和产品合作开发的模式下,产品并不拥有全部代码。因此有些产品的问题,需要和平台代码联调,如果环境搭配对了,解决问题往往是比较容易的事情。但是没有调试环境下,仅仅静态查看代码就常常陷入僵局。 因此,环境安装是平台和产品程序员顺利高效合作的重要部分。这里面最为重要的是一键运行——拿来代码,打开工程,按Run——然后该干嘛干嘛。   但是现在的情况并不乐观。局部来自于delphi本身的设计不合理,也来自于我们对这个环境建立的过程不够重视。常常会遇到的问题是:   1.          需要目录来输出
“声明型数据库发布”在IDE内操作起来是非常方便的。但是在做安装包给用户的时候,或者在DailyBuild服务器上不可能也不应该安装Visual Studio。还好MS提供了auto deploy的命令行方法。这个命令叫做vsdbcmd 。   这是一个vsdbcmd的运 ...
某天早晨,我问一个程序员:“如果你接受了一个修改一个存储过程的任务,那么你会如何一步步的完成这个工作"?他的回答是:“先启动vss,找到这个文件,然后用‘查询分析器’修改,调试,然后提交”。   都是些什么阿猫阿狗的啊。vss就不怎么样了,用它来定位文件是很麻烦的。通过查询分析器修改sql也很老套。并且这个工具没有代码提示,没有重构支持,也没有TDD!sql开发是应用开发的不可或缺的一部分,和它起到的作用相
sql server 2008 R2  Data-tier Application 提供新的数据库升级方法   数据库的升级总是比应用程序的升级要困难。应用程序升级不外乎就是完整的覆盖文件。而数据库的升级不能简单的做文件整体覆盖,而必须考虑用户数据的存在,保 ...
SQL Server 2008 R2开发代号 “Kilimanjaro”,我用中华人民屡试不爽的拼音来猛力一拼,就觉得好像是挺熟悉的样子。还别说,它还真的就是乞力马扎罗(非洲最高峰)。这个名字绝对暗藏着微软开发人员的雄心:我们的SQL SERVER 2008 R2虽然不过十几年的技术,但是敢于和几百万年就在那里的苍茫的雪山相比肩。 拿什么来和高山相比?不外乎是要有些一般人平常想也想不到,当某天突然发现自己其实现在就需要、然后满世界的去找,发现还真的就有的高档配置吧。从2000到2005再到2008 ,sqlserver的发展是比较有规律的。sqlserver一直在加强可伸缩性方面的 ...
任何事件都会在人身上体现出情感。愉快令人奋进,懊恼令人无力——这些都意味着改变,意味着潜能的发挥,新的一扇门在你的面前打开。 今天谈到的是安全感。 程序中有些不必要的代码如何产生的? 比较典型的老代码: bool foo = IsBook ?true:false 其实等效于: bool foo = IsBook 多出了“?true:false”这样的语句,其实并无必要,也不能提高可读性,但是显得很明确、很安全。 我记得n年前,写过很多这样的代码: bool IsBook; if (IsBook==true) // more code 为何我这样写,而不是 bool IsBook; ...
brooks 写的 《人月神话》是IT行业的经典,大家都非常多的引述关于没有银弹的断言。 不过在这本书内,我还注意到他提到了一个关于bug的故事: 一个非常优秀的IBM程序员,主动拿出自己的代码来做评审,虽然信心满满,但是在一个15行的代码块内被找出了7个bug 来。 看到这里,我合上书,想想,这是一段怎样的代码,是那个行业的,用了什么样的语言?这个IBM程序员真的那么能干吗? 虽然缺乏这样的信息,我觉得15对7都是一个令人惊讶的数字。可是别人的例子到底不是自己的例子,感同身受的角度来说,终究还是差了点。就好比一个人来到了罗马和在相片上看到了罗马,差距是非常大的。 冥冥中自有安排。终于我也碰上了 ...
刚刚做了统计,当前我们的项目的函数已经达到了8000以上。这样多的代码,如何找出要优化的? 以往的做法都是用代码矩形法。这个矩形的长度为代码行数,宽度为代码嵌套深度,公式为: 代码矩形面积=  代码行X代码嵌套深 ...
switch case ,是复杂度很高的结构。 我发现很多人喜欢用switch的。 其实switch有很多时候,可以用数组来替代。 比如把 今天转换为的星期来表达,如周二,周三等。可以用数组的方法。 private static string ChinaWeekDay(DayOfWeek DayOfWeek) ...
很多奇技淫巧,没有用到不知道,用的多了,奇技淫巧就变成了实用技巧。 用了dotnet这样的语言,使用对象的前提是必须判断null,于是大量的if(obj!=null)obj.foo()之类的代码就应运而生。 还好dotnet引入了 ?? 操作符号。 原代码:这段代码的目的是连接系列号字符串——把 serialout 和 serialin两个字符串用 splitter 连接起来,但是必须考虑到null的情况。          // old code var serials = ""; ...
以佛为喻,加持重构 释迦牟尼和他的弟子如何推广佛教? 佛教经典《金刚经》共五千字,我零零星星的背了两年,把前8节背了下来。现在有几个月没有背,又忘了不少。 作为一个“甚深经典”,你去试着读一下,感觉可能和我一样——文字美妙,莫名其妙。 对大部分人而言,理解《金刚经》可能都是一个问题,佛教如何获得广大信徒呢? 没有关系,还有《般若波罗蜜心经》呢,这本经共200多字。这样就容易多了,可以经常默念,长期以往,达到修行的目标。 可是社会太复杂,还有些不识字的白丁、没有时间的忙人、居无定所的流浪汉,又怎么办呢? 佛不会忘记你们——念6个真言吧:南无阿尼陀佛。 于是,信徒们”闻是章句,皆大欢 ...
Global site tag (gtag.js) - Google Analytics