上一页 1 ··· 9 10 11 12 13 14 15 下一页
摘要: (续上篇)“到底如何去改良策略模式呢?”小菜恳切地问道。 “你仔细观察过没有,你的代码,不管是用工厂模式写的,还是用策略模式写的,那个分支的switch依然去不掉。原因在哪里?”大鸟反问道。 “因为程序里有下拉选择,用户是有选择的,那么程序就必须要根据用户的选择来决定实例化哪一个子类对象。无论是在客... 阅读全文
posted @ 2014-03-25 16:07 离散音符 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 小菜次日来找大鸟,说:“《深入浅出设计模式》的第一章我看完了,它讲的是策略模式(Strategy)。『策略模式』定义了算法家族,分别封装起来,让它们之间可以互相替换, 此模式让算法的变化, 不会影响到使用算法的客户。看来商场收银系统应该考虑用策略模式?” “你问我?你说呢?”大鸟笑道,“商场收银时如何促销,用打折还是返利,其实都是一些算法,用工厂来生成算法对象,感觉是不是很怪?而最重要的是这些算法是随时都可能互相替换的,这就是变化点,而封装变化点是我们面向对象的一种很重要的思维方式。” 策略模式的结构(源自吕震宇博客) 这个模式涉及到三个角色:环境(Context)角色:持有一个Strateg 阅读全文
posted @ 2014-03-21 18:33 离散音符 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 一、mongodb常用命令http://www.cnblogs.com/cxd4321/archive/2011/06/24/2089051.html二、MongoDB基本使用http://www.cnblogs.com/TankMa/archive/2011/06/08/2074947.html三、MongoDB中的BSON以及CRUDhttp://blog.csdn.net/lfsfxy9/article/details/20064661四、C# 对MongoDB 进行增删改查的简单操作http://www.cnblogs.com/viprx/archive/2012/09/07/2674 阅读全文
posted @ 2014-03-13 17:33 离散音符 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 昨日在公司收到游戏方发来一个1G多的数据文件,要求导入联运账号中。细细一看,纳尼!文件竟然是BSON格式。 哇塞,这不是去年给大家分享的NoSql中的MongoDB的备份文件吗?于是搭好环境1、启动服务:mongod -dbpath D:\MongoDB\data2、进入mongoDB的命令:cmdcd d:\MongoDBmongo.exeshow dbs3、数据备份mongodump可以用mongodump 来做MongoDB 的库或表级别的备份,下面举例说明:备份my_mongodb 数据库mongodump -d myDatabase -o D:\DBbak\(可以不写, 默认备份在当 阅读全文
posted @ 2014-03-13 01:02 离散音符 阅读(309) 评论(0) 推荐(0) 编辑
摘要: (续上篇) 小菜心里想:“大鸟要我做的是一个商场收银软件,营业员根据客户购买商品单价和数量,向客户收费。这个很简单,两个文本框,输入单价和数量,再用个列表框来记录商品的合计,最终用一个按钮来算出总额就可,对,还需要一个重置按钮来重新开始,不就行了?!”//声明一个double变量total来计算总计 double total = 0.0d; private void btnOk_Click(object sender, EventArgs e) { //声明一个double变量totalPrices来计算每个商品的单价(txtPr... 阅读全文
posted @ 2014-03-05 18:12 离散音符 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 几天后,小菜跑到大鸟处,说道:“大鸟哥,今天看到一个网站,叫妙句网,是用来收藏好句子用的,网站本身没什么太多希奇,但它用的技术却是最近非常火的Flex技术,作者说他也就学了不到两个月就做出了这个网站,你说会不会是真的?如果真的是这样,我也想学学,毕竟做出来的效果比一般的网站真的要酷很多哦。”大鸟:“哦?让我来看看。”大鸟打开了浏览器,键入了小菜说的网站。“嗯?怎么是flash的?”大鸟说。小菜点头道:“Flex其实就是开发出可以在Flash Player插件上运行的编程工具!你看,它整个网站就是一个Flash,开始下载是慢了点,但下载好了,大部分操作都不用再访问网络了,局部的更新数据,也只是局 阅读全文
posted @ 2014-03-05 10:52 离散音符 阅读(176) 评论(0) 推荐(0) 编辑
摘要: (续上篇) 次日,小菜再来找大鸟,问道:“你昨天说计算器这样的小程序还可以用到面向对象三大特性?继承和多态怎么可能用得上,我实在不可理解。” 大鸟:“小菜很有钻研精神嘛!好,今天我让你功力加深一级。你先要考虑一下,你昨天写的这个代码,能否做到很灵活的可修改和扩展呢?” 小菜:“我已经把业务和界面分离了呀,这不是很灵活了吗?” 大鸟:“那我问你,现在如果我希望增加一个开根(sqrt)运算,你如何改?” 小菜:“那只需要改Operation类就行了,在switch中加一个分支就行了。” 大鸟:“问题是你要加一个平方根运算,却需要把加减乘除的运算都得来参与编译,如果你一不小心,把加法运算... 阅读全文
posted @ 2014-03-04 14:11 离散音符 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 前阶段开发中存在的问题, 及改进建议(下面提到的问题在任何软件公司都会碰到,所以出现也是很正常,在今天讨论后,建议大家在今后的团队运作中尽量避免)1、前期需求不明,造成设计时目的不明确,开发时时常会因需求问题而困惑,测试人员也会提出一些需求建议,而由于已经开发完成,所以改动起来比较困难。改进办法:需求要完全明确是很难做到,但在局部相对独立功能上应该要尽量明确。如:尽量能明确注册需要哪些信息、每个表单是用什么控件、处于什么范围、列表显示哪些字段、查询需要什么条件有明确的说明,这样可以在后期测试时少掉一半的需求建议或bug。2、原系统有规范但没有较好的执行,由于团队初成立时,无人严格把控各人的代码 阅读全文
posted @ 2014-03-04 10:41 离散音符 阅读(387) 评论(1) 推荐(1) 编辑
摘要: (续上篇) 小菜:“你的意思是分一个类出来? 哦,对的,让计算和显示分开。” 大鸟:“准确的说,就是让业务逻辑与界面逻辑分开,让它们之间的耦合度下降。只有分离开,才容易达到容易维护或扩展。” 小菜:“让我来试试看。”class Encapsulation04{ static void Main(string[] args) { try { Console.Write("请输入数字A:"); string strNumberA = Console.ReadLine(); Console.Wr... 阅读全文
posted @ 2014-03-03 18:54 离散音符 阅读(264) 评论(0) 推荐(0) 编辑
摘要: (续上篇) 小菜:“我明白了,他说用任意一种面向对象语言实现,那意思就是要用面向对象的编程方法去实现,对吗?OK,这个我学过,只不过当时我没想到而已。”大鸟:“所有编程初学者都会有这样的问题,就是碰到问题就直觉的用计算机能够理解的逻辑来描述和表达待解决的问题及具体的求解过程。这其实是用计算机的方式去思考,比如计算器这个程序,先要求输入两个数和运算符号,然后根据运算符号判断选择如何运算,得到结果。这本身没有错,但这样的思维却使得我们的程序只为满足实现当前的需求,程序不容易维护,不容易扩展,更不容易复用。从而达不到高质量代码的要求。” 小菜:“鸟哥呀,我有点糊涂了,如何才能容易维护,容易扩展... 阅读全文
posted @ 2014-03-03 18:25 离散音符 阅读(265) 评论(0) 推荐(0) 编辑
上一页 1 ··· 9 10 11 12 13 14 15 下一页