摘要: 对于正常的应用项目开发来说,入门显然有两块比较重要的:如何方便的设计界面,业务对象如果与界面交互数据。只有解决这两个问题,你才能真正开始动手。很显然,完全动态的用代码来一个个的在View中写控件这种方式,明显的属于高手范畴,很多人号称完全用记事本就能写程序。不过,从工业角度来说,这种炫耀的方式,显然是很奇怪的,为什么不能用最简单的办法? VC里我们唯一能够看到的可视化设计器,是对话框设计器。老... 阅读全文
posted @ 2011-12-12 12:11 玄歌 阅读(5004) 评论(3) 推荐(0) 编辑
摘要: 作为程序员,我们其实生活在一个荒诞的空间。每次看到白发苍苍的教授,很认真很庄重的说:“面向对象灰常灰常重要”的时候,我都完全忍不住要笑出来。我们用所有的词,第一个反映怕是从字面上来理解。对象,准备结婚的异性,面,你的脸,向,朝着她。你的脸朝着异性,接下来会发生什么,外交部曰:“那是他们的内政,各国无权干涉”。教授究竟在教我们什么? 所以在这个众牛奔腾的圈子里,好象每个人都生活在这样香艳的语境中。随随便便拉头牛过来,他估计能够告诉你面向对象是多么的重要、多么的牛,你不会面向对象你都不好意思摸着键盘。你要问他什么是面向对象,他会告诉你:“嗯,不是写个类就完了,这是一种思想,一种……”,然后还是归. 阅读全文
posted @ 2011-12-08 13:23 玄歌 阅读(2977) 评论(10) 推荐(1) 编辑
摘要: 中国的文人,有个根深蒂固的传统:皓首穷经。 从三百千千,到四书五经,到诸子百家,诗词歌赋,琴棋书画,每个学子往往要经历漫长的十几年甚至三十年。所谓十年寒窗无人问,一朝成名天下知,是所有文人的潜藏情节。所以,有老实人说出了老实话:百无一用是书生。我一直觉得他们仿佛在学东方不败大侠,先对自己狠心点,然后闭门苦练,最后终于明白了万物滋生的大道,乃至所向无敌。 作为普通人,我们还是尽早动手为好。 第一项任务很简单,精确点描述是这样的:创建一个应用程序,使用两个Ribbon按钮,在两个窗体中切换。 是啊,用户做的第一件事情,就是找到功能,然后进入相应的界面,菜单、工具栏还有Vc++2010提供的Rib. 阅读全文
posted @ 2011-12-06 08:42 玄歌 阅读(10600) 评论(38) 推荐(5) 编辑
摘要: 任何时候,我都希望做绝对有把握能够完成的事情。换句话说,是缺乏冒险精神。因此,对杨先生叫苦,很大程度上是一种讨价还价的手段。在同意做这个项目的前一天,我就做了完整的评估。风险主要体现在两个方面:1、语言不熟悉;2、算法具有一定复杂性;3、因为是海量的计算,而客户要求每位分析师都能在笔记本上使用,性能方面的问题会大幅增加工作量,甚至存在可行性问题。 编程语言是初哥们很重视的问题,不过从内心来说,我从来没有将这个当作问题。很多事情,都有一些人类考虑不到的死角,熟视无睹,则眼光永远无法漂移到那边。 就比如编程语言,你该怎么理解? 简单的说,编程语言是我们命令计算机完成一系列工作的工具。假设你面对的. 阅读全文
posted @ 2011-12-05 15:16 玄歌 阅读(4004) 评论(36) 推荐(3) 编辑
摘要: 一个月学会VC++2010 1.送上门的银子 那时,我在一间小型软件公司,技术人员少得可怜,在为一家企业做项目,工期还剩下2个月。整个小团队都觉得时间很紧张,但还没有到无法履行合同的程度。 然后,一个阳光不太明媚的日子,有客人过来拜访。 嗯,我的经理办公室装修的不错,老板桌、客人用的沙发、书柜、茶几看起来很有档次的样子。这当然不是我的功劳,是一位很富有的朋友,在公司成立的时候亲自挑选的。公司成立的时候找这家伙给自己加上“董事长”的头衔,理所当然的,他就拥有了决策能力。这种风格我觉得很暴发户的样子,不过坐在里面慢慢也习惯了,甚至偷偷的有些喜欢。事实上,这种为脸面和客户准备的暴发户环境,每个月.. 阅读全文
posted @ 2011-12-01 17:23 玄歌 阅读(4215) 评论(22) 推荐(1) 编辑
摘要: 我个人对C++毫无概念,但在实际做项目的时候,仅仅用了一个月的时间,在完成当月工作的同时,就能够没有障碍进行相当复杂的应用开发。这个过程耗时之短或许不可思议,但采纳同样的方法,相信所有程序员都能够做到。这种方法说白了,就是边学边干。对,就是很多培训机构强调的,在实际项目中学习。不过,略有不同的,是我更加强调以下几点: 1、绝不做成学习项目:即使是最简单的功能,要做成实际产品级别,这意味着几乎成倍... 阅读全文
posted @ 2011-11-29 10:56 玄歌 阅读(19287) 评论(233) 推荐(14) 编辑
摘要: 更新日线,是一项我们经常遇到的数据导入功能。 这项功能的说明文字,我是这么写的: 用户在初次使用本系统的时候,需要安装沪深两市从开市到本年度的所有历史数据,这些数据可以从某证券行情软件获得,是遵循一定格式的二进制文件。此后,每天两市交易结束之后,用户必须更新当天的日线行情,当然,用户也可能在几天后一次性更新最近几天的日线行情。用户更新日线,才能建立完整准确的数据基础,我们所有的分析工作都基于... 阅读全文
posted @ 2011-10-28 10:52 玄歌 阅读(1989) 评论(2) 推荐(0) 编辑
摘要: 一间私募基金,希望开发软件实现他们自己的一种分析思路,这是一个小项目,我们隐去他们的分析思路,仅就行情更新和显示K线图这部分内容作为具体的例子,演示需求分析、阶段划分、任务划分、问题和Bug处理、源代码版本管理的全过程。这个项目由我个人承担全部工作,三个月的业余时间完成,本系列描述的是前两个月的工作内容。 我们首先需要确定项目的目标。简单的表述为:查看股票的K线图。这意味着我们需要每天更新当天的股市行情、除权除息资料,同时能够按照他们习惯的方式绘制K线图。 第二步则是列出功能清单: 所谓需求,是围绕着项目目标来定的。 既然要分析股票的走势,那么股票每天交易的行情数据,显然要保存,所以有“更新. 阅读全文
posted @ 2011-10-27 10:17 玄歌 阅读(1903) 评论(6) 推荐(2) 编辑
摘要: 第一步当然是需求的采集,怎么做? 先和用户交流,弄清楚项目的目标,这个通常是几句话,用户的语言,但你必须理解,并且文字记录下来。然后我们需要做第二件事情,即软件需要提供哪些功能,来实现项目目标。当然,这和用户的作业流程、业务规则、具体岗位是有关系的,这里的产品是一份功能清单。第三个则是功能清单的说明,通常也就是一段话,使用用户的语言。 一般没有必要记录非常详细的业务规则,在交流过程中这些通常会... 阅读全文
posted @ 2011-10-19 16:48 玄歌 阅读(2586) 评论(2) 推荐(3) 编辑
摘要: 提到软件过程,大家首先会想到"传统的瀑布模型",当然,这个通常作为反面例子,来衬托各家的过程如何实用、先进。然后是CMMI、Rup这些重量级的软件过程,然后是Xp、Scrum这类敏捷过程。嗯,无论是哪一种软件过程,一般公司有实施过的,程序员常常会联想到两个字:痛苦。 是的,痛苦。漫长的培训、没有必要最后也没人看的文档,当然即使是XP的捉对编程也会令一些人感到私人空间收到侵犯,而单元测试这种一部分人寻找快乐的方法,也往往会让另一部分人感到繁琐。 通常叫嚣要建立良好的软件过程的人,是公司里的技术权威,或者准权威。通常这种叫嚣的结果,是所有人的无奈,和叫嚣者最后的颓败。 所以姑且 阅读全文
posted @ 2011-10-18 18:13 玄歌 阅读(2386) 评论(11) 推荐(3) 编辑