摘要: 1. 进到一家开发组织,要主动去了解业务,了解领域知识。这种努力或者说这个过程,可以帮你更胜任工作,与业务人员合作更加愉快,获得组织内更高的认可和发展;另一方面, 结合具体的业务场景/特殊的业务需求,讲述设计方案,更能体现一个人的设计经验和素养,也更能向听众准确的传达设计思想。2. 哪里都有政治,自清也别忘表现,不结怨。3. 技术领域广阔,每个人关注的层面也不尽相同,找到自己感兴趣的领域,做更好的自己。4. 技术管理是个难题,执着与妥协交替,尤其合作者间没有很明确的分工。5. 方案和实现都要评审,不然日后补救的可能就是你自己。6. 无论何种开发方法,设计过程中确定下来的内容,一定要有哪怕是最简 阅读全文
posted @ 2012-03-11 02:01 sinlight23 阅读(204) 评论(2) 推荐(0) 编辑
摘要: 需要在公用组件里提供一个方法, 直觉的使用了为某个类型扩展方法的方式.编码结束后, 回想为什么没有采用静态方法的方式. 开始觉得前者通过VS的智能提示, 更容易向程序员即时传达"你可以试试这个"的信息.但隔天再想, 在这一点上两种方式并无明显区别, 而要结合上类型的使用频率和场景. 比如对List<T>做扩展, 扩展方法的方式较好;但对IDataParameter[]做扩展, 因为使用场景较局限, 程序员较少用到对象的成员, 所以友好的类名+静态方法的方式可能更佳.当然, 是否引入扩展方法, 往往首要考虑的不是有效告知程序员的因素.但在编码时多考虑人的因素, 是 阅读全文
posted @ 2012-03-11 01:27 sinlight23 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 休息的时候趴在同事旁边, 看他写代码.为了对某些方法注入相同的处理逻辑, 他选择在方法上增加Attribute的方式,但是对于一些Web Service代理类的方法, 则是采用另外一种方式:将方法名放到配置文件中。两者皆是通过某第三方框架完成实际的注入.他的考虑是代理类是工具自动生成的, 依赖于外部变化, 所以没有采用在代理类中为方法加上Attribute的做法.这点很对. 但是当外部变化发生时, 手工维护那么多配置项会是件低效易错的事.于是我们讨论了改进的方法:1) 利用Visual Studio的自动从类中提取接口的功能, 为代理类生成对应的接口.2) 原本使用代理类的地方替换为接口.3) 阅读全文
posted @ 2012-03-11 01:24 sinlight23 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 重构前:Cache.Add(DXCacheKey.A, Register(DXCacheKey.A, DXCacheKeyType.A, dal.GetItemA, dal.GetItemAById)); Cache.Add(DXCacheKey.B, Register(DXCacheKey.B, DXCacheKeyType.B, dal.GetItemB, dal.GetItemBById));......此次重构的目标是将规则的建立和使用进行分离(IDXCacheItemWrapper), 副产品是将某一形式的规则进行了封装(DXCacheItemWrapper)。分离的好处:一是,增强 阅读全文
posted @ 2011-07-19 17:37 sinlight23 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 老生常谈的问题, 网络上铺天盖地的处理方法, 还有抄来转去的"博文". 在此主要说明今日遇到的特定于IE8的一个特定问题. function autoSetFrameHeight(name) { try { var iframe; if (!name) return; iframe = document.getElementById(name); if (iframe.contentDocument) $("#" + name).height(iframe.contentDocument.height + "p... 阅读全文
posted @ 2010-12-24 16:03 sinlight23 阅读(873) 评论(0) 推荐(0) 编辑
摘要: 今天整理一个Visual Studio 2005的老项目, 其中用到了ASP.NET 2.0 AJAX的系列组件, 虽说是过时的东西, 但以后还是有些老项目要维护的. 出于备忘目的, 搜集整理相关信息如下 项目名称安装包程序集命名空间ASP.NET 2.0 AJAX ExtensionsASPAJAXExtSetup.msiSystem.Web.Extensions.dll v1.0.61025System.Web.ExtensionsASP.NET 2.0 AJAX FutureASPAJAXCTP.msiMicrosoft.Web.Preview.dllMicrosoft.Web... 阅读全文
posted @ 2010-12-23 17:32 sinlight23 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 此方案是一次将MVC的思想引入客户端的尝试. 结合AJAX , 并借鉴了一些ASP.NET MVC的实现模式.示例是一个简单的事件管理系统, 只有一个页面, 用户可以提交事件(post), 回复(reply). 页面打开时列表方式展现事件及回复.Controller公开一系列action 给调用方.action主要做三类事:1. 使用ajax方式与服务器端通信(ajax) 2. 维护viewModel实例的状态 3. 刷新页面的局部视图Controller定义如下:Controller引用着一个ViewModel的实例, ViewModel的定义如下:调用示例:这个示例是jquery版的, D 阅读全文
posted @ 2010-08-17 03:30 sinlight23 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 经过又一天的努力,终于让数据库项目全编通过。现在的解决方案里已经有十个项目了,其中八个数据库项目,一个服务器项目(SQL Server 2005 Server Project),一个单元测试项目。直到下午还是满屏的Error,但经过不断的搜索(资料不多)和数次尝试,找到了关键问题和应对方法,后面就是对其余的项目重复几次这个过程,终于迎来了曙光。再次给出关于 数据库引用的资料链接(MSDN)简单整理... 阅读全文
posted @ 2010-05-27 21:12 sinlight23 阅读(870) 评论(0) 推荐(0) 编辑
摘要: 今天尝试在VS 2010中使用SQL Server 2005 Database Project 管理一个老项目使用的若干数据库,主要目的有两个,一是为了还过去的“债”,半年前的一个分支版本由于以前一直没有对数据库进行相应的版本控制,导致目前将要进行的版本合并难以进行;二是为了今后避免此问题的发生。建立解决方案后,将几个数据库建立了同名项目,然后连接到开发数据库服务器,进行导... 阅读全文
posted @ 2010-05-26 21:18 sinlight23 阅读(1115) 评论(2) 推荐(0) 编辑
摘要: 朋友在做一個類似SpeedText 的IPhone 軟件, 實做下來, 目前性能和筆畫的流暢優美程度都不及這個日本人做的小軟件. 這是周六晚上閑來無趣, 跟朋友聊天時談到的, 這個軟件的用途是, 找回過去人們寫信讀信的感覺, 將字跡or書法躍然于信紙(圖片)之上, 發送到友人的郵箱中.順著朋友的指引, 知道了要想做到筆畫流暢, 一般采用調用貝塞爾函數的方式來連接點. 于是找到一個同事, 給自己做了些科普工作, 了解到一般貝塞爾函數是以三個點的坐標作為輸入, 產生一個一元二次方程. TrueType 字型就运用了以贝塞尔样条组成的二次贝塞尔曲线. (不要問我什么是樣條, 偶全然不知. 囧) 也有 阅读全文
posted @ 2010-01-18 02:54 sinlight23 阅读(431) 评论(0) 推荐(0) 编辑