摘要: #南京程序员俱乐部# 联合#江苏互联网俱乐部#,#南京PHP俱乐部# 将在本月7月31日(星期天)举行#WEB开发者交流大会#,#第一届江苏WEB开发者大会#,报名地址:http://www.njpro.cn/forum.php?mod=viewthread&tid=80或私信新浪微博 @南京程序员俱乐部 或 @大雨仔或联系QQ 502086 注明活动说明有资深开发者,资深IT培训专家进行技术分享,设计主题《PHP产品开发》主题分享 王亚春(PHP俱乐部创始人)《JAVA WEB产品开发》主题分享 孙永(雷迈EDM)《NET 产品开发》主题分享 袁永福(擎天科技)《移动互联网市场展望》阅读全文
posted @ 2011-07-14 16:02 拒绝潜水的鱼 阅读(1353) 评论(3) 编辑
摘要: #南京程序员俱乐部# 联合#江苏互联网俱乐部#,#南京PHP俱乐部# 将在本月7月31日(星期天)举行#WEB开发者交流大会#,#第一届江苏WEB开发者大会#,报名地址:http://www.njpro.cn/forum.php?mod=viewthread&tid=80或私信新浪微博 @南京程序员俱乐部 或 @大雨仔或联系QQ 502086 注明活动说明有资深开发者,资深IT培训专家进行技术分享,设计主题《PHP产品开发》主题分享 王亚春(PHP俱乐部创始人)《JAVA WEB产品开发》主题分享 孙永(雷迈EDM)《NET 产品开发》主题分享 袁永福(擎天科技)《移动互联网市场展望》阅读全文
posted @ 2011-07-14 16:02 拒绝潜水的鱼 阅读(1353) 评论(3) 编辑

      最近一件事情另我非常摇摆不定,就是在使用快速开发的时候,是使用设计的模型直接生成数据库和代码,还是选择先设计模型,再建立数据库,而后根据数据库生成代码。通常我是通过数据库,使用代码生成器生成代码的,这样做的好处显而易见,使用的可选择的工具很多,生成规则非常明显,因为数据库的字段属性等等都是非常明了的。

 

      但是从模型对象生成数据库和代码似乎已经是趋势,微软的EF,就是提倡直接生成数据库和代码,显然,这样开发人员不需要关心数据库,直接根据业务模型开发系统,使用系统提供的方法和函数。

 

      我们都知道一般一个系统的研发,需要从需求分析到架构开始构建整个系统,E-R图式必须的,UML之类的也是非常好用(当然我从来不用,因为不懂这个)。如果根据客户的需求,和分析师的分析,建好了模型,就能生成一切,开发人员搬动代码调整逻辑关系,生成可运行的系统版本?似乎一切都是那么完美吗。代码工作者的工作如此简单吗,问题是,我时常考虑模型生成数据库的可行性,稳定性,和易维护性方面,除非模型与数据库有着相同的规则,相同的约束,一切都是无缝集成,完美的,否则,任何一点瑕疵得地方都会导致数据库的不兼容,和程序性能或BUG。

 

      在此之前其实已经有人将EXCEL同数据库形成了统一的平台,通过EXCEL设计表单或列表来形成系统,这有很多出色优秀的功能,但是这恐怕不是完美所说的系统。我现在的设计思路大概是这样的,需求分析--系统分析--E-R图(或业务流程图)--数据库设计--代码生成--根据业务变动重新设计部分数据库--调整业务层代码--系统运行调整性能--项目完工。

 

      当然我认同从对象生成数据库和基础性的代码是正确的,符合面向对象的设计要求,但是数据库和基础代码就是对我们来说是完全透明的。而设计数据库和根据数据库生成代码,不易管理,散乱,使用ORM则会出现两种问题。真是左右为难啊。

 

      以上只是自言自语,勿以为是精华。

posted @ 2011-02-04 20:11 拒绝潜水的鱼 阅读(72) 评论(0) 编辑
这几天回家过春节,有时间去思考一些技术性的东西,说实话,我做的项目从来没有什么高深的技术,我只为实现业务做一些事情,简单的数据库操作,简单的工厂模式,简单的业务处理,简洁的界面,现在静下心来又看了一些关于框架关于DDD模式的开发,总的感觉,这些东西只是一种概念思路,偶尔有人用来实践与研发的项目(不是重构)。但是困难重重,被模式中,被框架中,时而着重业务,时而又关系模式。
 
现在总结下来,觉得技术之路可能是分两种的,一种是实践的,一种是理论的。实践的技术并不需要考虑技术的规范,模式等等(或者说,已经是成熟的技术规范、模式),他们考虑的是项目(产品)的研发成本,商业价值,项目周期等等。理论的技术仍然是完美主义者的宠儿,他们需要的是完美的模式,或者说他们需要的是完美的但却局限的带有前瞻性的技术。
 
当然我们都幻想着这两者有完美的结合,就是有一套成熟的技术框架作为项目的支撑,而研发不需要关心技术细节,只是简单的业务拼装等等,比如我们不需要考虑用什么数据库,不需要考虑缓存性能问题,不需要考虑事务并发等处理,不需要考虑日志问题,不需要考虑复杂的界面元素,AJAX,报表等等,不需要考虑流程,甚至我们不需要考虑权限怎么配置,颗粒度有多细。我们紧紧需要根据客户的需要来组装这些现有的东西。
 
事实上现在有很多中间件已经做到了这点,只是中间件相对于研发,缺少开放性,扩展性,而且没有开源的中间件,价格不菲,这就说明,我们仍然需要成熟的技术框架来支持项目研发。仍然这样那样的框架已经很多了,哪些更适合,哪些更成熟呢?首要选择当然是自己团队根据经验加上技术编写的框架,其次可以采用网上开源的项目。
 
1、数据库支持多数据库,支持事务处理,并发处理,分页处理,最好有切面编程方面的东西,比如集成日志等。
 
2、常用的函数方法库是必不可少的,比如对XML操作、文件操作、字符处理、图像处理、文件上传等。
 
3、常用的富媒体控件库,支持AJAX,支持分页处理(例如像EXTJS 演示站点一样,当然不需要那么多)。
 
4、支持大型站点、海量数据处理的技术架构基础。
 
 
 
 
 
 
posted @ 2011-02-02 16:01 拒绝潜水的鱼 阅读(40) 评论(0) 编辑

临时占用首页

1、具体安排如下

活动地点:榴园宾馆 新华厅,

本次技术大会分上下午两场,上午半场(东大榴园宾馆)侧重于技术主题的讲座,让大家通过技术讲座及时了解新知识,下午半场(欧美亚自助餐厅)主要侧重于开发人员之间的线下面对面的交流,为大家创造一个结交志同道合朋友的机会,参加过俱乐部组织的活动的开发人员都知道这是一个结交朋友的绝好机会。

时间 主题
8:00~8:30 签到,领取资料袋,留影
8:30~10:00 Win7发布会(预览、开发新特性等讲座)
10:00~10:15 茶歇(大会提供饮料及点心)
10:15~11:45 技术专题(.NET、Ruby、Java、PHP、项目管理等讲座)
11:45~12:00 大会合影
12:00~12:15 大巴统一接送至第二分会场(欧美亚自助餐厅)
12:15~14:00 午餐、休息、收取调查反馈表并发放小礼品(真空保温水杯)
14:00~16:30 开发人员交流,同时开展技术主题交流及讨论
16:30~17:30 大会散会,参会人员合影或继续交流

2、说明

    自2004年8月1号南京程序员俱乐部成立已来,我们已经组织过5次大型的技术大会和很多的线下程序员交流活动,由于从去年开始俱乐部主要负责人工作繁忙,俱乐部活动频率大大减少,俱乐部希望通过这次的技术大会作为一个起点,重新规划俱乐部的日常工作,吸收更多的志愿者加入俱乐部的日常管理中,为南京程序员带来一个更好的交流平台。大会发布第二天(10月16号),团购票已经超过130张,散票60张!(总票数暂定250张)下载赞助商手册

3、活动入场卷 50元/人 包括下午自助餐及下午茶,报名地点 http://www.njpro.cn/

4、大会礼品及奖品

参加大会者将获得个性的俱乐部礼品,奖品以及赞助商提供的神秘大奖

(现已有近190人报名参加)

详情请进 http://www.njpro.cn/ 

posted @ 2009-10-20 11:20 拒绝潜水的鱼 阅读(1782) 评论(9) 编辑

GBK编码 代码为 936

Encoding.GetEncoding(936);

以GBK编码方式发送

HttpUtility.UrlEncode(sp.ToString(),Encoding.GetEncoding(936));

 

:(倒腾

posted @ 2009-04-27 09:30 拒绝潜水的鱼 阅读(563) 评论(0) 编辑
摘要: 正确写法CREATE TRIGGER [更新外部票据表单] ON [dbo].[票据基本信息库_主表] FOR UPDATEASBEGINUPDATE UfNote_001_2009.dbo.CN_NoteManageList SET Purpose=B.支票用途,[money]=B.票据金额,[Payee]= B.收款人名称,STATEID=3,RemitDate=B.出票日期 FROM UfN...阅读全文
posted @ 2009-04-24 17:07 拒绝潜水的鱼 阅读(509) 评论(0) 编辑
摘要: int format=9;num.ToString().PadLeft(format,'0');//在数字前面加9个0num.ToString().PadRight(format,'0');//在数字后面加9个0str.ToString().TrimStart('0');//去掉字符前面的0str.ToString().TrimEnd('0');//去掉字符后面的0阅读全文
posted @ 2009-04-16 15:35 拒绝潜水的鱼 阅读(61) 评论(0) 编辑
摘要: 勤哲EXCEL服务器8.3以上版本可能存在的BUG回写公式中新建表单,如果新建表单中的回写公式满足条件,那么就会自动执行新建表单中的回写公式。如保存A表单,其中A中有新建B表单的表间公式B中有新建C表单的表间公式。那么保存A表单的时候就会新建了B和C表单。阅读全文
posted @ 2009-04-14 11:52 拒绝潜水的鱼 阅读(176) 评论(0) 编辑
摘要: 这种折磨人的BUG晕死,差点重装啊其实这些窗口不是不能显示,而是全部显示到屏幕之外的地方了……(估计是VS的Bug,我用2008也出了这个问题) 所以解决的方法是:更改你的屏幕显示分辨率,改变后所有窗口都会重现在可视范围内,然后再将分辨率改回来即可。阅读全文
posted @ 2009-03-28 21:53 拒绝潜水的鱼 阅读(215) 评论(0) 编辑
摘要: 递归与迭代都是基于控制结构:迭代用重复结构,而递归用选择结构。递归与迭代都涉及重复:迭代显式使用重复结构,而递归通过重复函数调用实现重复。递归与迭代都涉及终止测试:迭代在循环条件失败时终止,递归在遇到基本情况时终止。使用计数器控制重复的迭代和递归都逐渐到达终止点:迭代一直修改计数器,直到计数器值使循环条件失败;递归不断产生最初问题的简化副本,直到达到基本情况。迭代和递归过程都可以无限进行:如果循环...阅读全文
posted @ 2009-03-25 02:01 拒绝潜水的鱼 阅读(679) 评论(0) 编辑