1.什么是subversion,他与vss,cvs的区别在哪里,或者各有什么优劣
2.怎么使用subversion,在个人电脑上安装subversion并实践之。
Subversion是一个免费的、开放源码的版本控制系统。
就是说,Subversion管理随时改动的文件和目录。
文件树被放在一个中央资料库(Repository)中。
这个资料库象一个普通的文件服务器,但是它可以记录文件和目录的每次改动。
它允许你恢复以前旧版本的数据,或者检查数据变化的历史。
因此,很多人把版本控制系统看成某种“时光机”。
CVS只跟踪单个文件的历史,但Subversion实现了一个“虚拟”的版本化文件系统,
可以跟踪整个文件目录树随时间的改变。文件和目录都版本化了。
自己以前从未使用过VSS和SVN
1.什么是blog,你有过个人blog吗
2.在个人电脑建立自己的blog并每天坚持使用
3.什么是团队或者项目blog,他与个人blog的区别在哪里,怎么维护团队的blog
blog的全名应该是Web log,中文意思是“网络日志”,后来缩写为Blog.
Blog 以个人为主线 展示自我成果,众人参与讨论 以我为主,我的地盘听我的
曾经一段时间使用QQ空间写日志.
团队BLOG就是用来交流项目,如开发中碰到的问题和心得体会等
1.什么是wiki,关于程序项目的wiki你使用过哪些
2.wiki对你有帮助吗,wiki与程序文档的差别在哪里
3.怎么建立一个wiki,在你的个人电脑上建立wiki并实践之
Wiki 以信息为主线 成千上万个志愿者在修改成千上万个文档
大家都在表达自己的思维,自己的见解。
大家都在发布自己的所见,其他人补充
信息为主,是大家在分享、更新与创造
Wiki不在于热闹,而在于它的成果—— 一个不断完善的知识库。
享用这个知识库的人要比为这个知识库作贡献的人多得多,
而且能引领一种巨大的商业价值,可以创造出与百度一样伟大的互连网巨擎。
自从维基百科wikipedia被中国政府封了以后就很少用WIKI了..
1.什么是tdd,你使用过吗
2.tdd的关键在哪里,跟传统的单元测试相比,有什么优越性
3.实践下tdd
TDD(Test-Driven Development)
测试驱动开发方法
一种开发模型,先根据预期要求写测试代码,然后编写系统代码以让写好的测试通过。
最后再对代码优化。
是XP(Extreme Programming)思想的一种实现。
优点:在任意一个开发节点都可以拿出一个可以使用,含少量bug并具一定功能的产品。
缺点:增加代码量。测试代码是系统代码的两倍或更多。
TDD = TFD + Refactoring
(TFD -- Test First Development)
1.什么是单元测试,你用过哪些单元测试的工具
2.他们的区别和好处各自有哪些,以至于你倾向于那一种
3.单元测试需要注意的地方在哪里
1.什么是单元测试,你用过哪些单元测试的工具
2.他们的区别和好处各自有哪些,以至于你倾向于那一种
3.单元测试需要注意的地方在哪里
单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、
很明确的功能是否正确.通常而言,一个单元测试是用于判断某个特定条件(或者场景)
下某个特定函数的行为
单元测试的优点
1、它是一种验证行为。
程序中的每一项功能都是测试来验证它的正确性。它为以后的开发提供支缓。
就算是开发后期,我们也可以轻松的增加功能或更改程序结构,
而不用担心这个过程中会破坏重要的东西。而且它为代码的重构提供了保障。
这样,我们就可以更自由的对程序进行改进。
2、它是一种设计行为。
编写单元测试将使我们从调用者观察、思考。特别是先写测试(test-first),
迫使我们把程序设计成易于调用和可测试的,即迫使我们解除软件中的耦合。
3、它是一种编写文档的行为。
单元测试是一种无价的文档,它是展示函数或类如何使用的最佳文档。
这份文档是可编译、可运行的,并且它保持最新,永远与代码同步。
4、它具有回归性。
自动化的单元测试避免了代码出现回归,
编写完成之后,可以随时随地的快速运行测试。
单元测试工具知道CppUnit,不过没有使用过
1.什么是编程规范,你倾向于什么样的规范,他的好处在哪里
1.什么是mfc,你经常使用哪些mfc的类,那么为什么很多人不主张使用mfc
1.什么是头文件依赖,你注意过这个问题吗,你注意过编译时间吗,你怎么改进编译时间
1.什么是面向对象,你在哪方面用过面向对象,带来了什么好处,又有什么弊病
1.什么是接口编程,com,他带来了什么好处,适用于什么地方
1.什么是设计模式,使用设计模式有什么好处,列举你使用过的设计模式
编程规范就是为了便于自己和他人阅读理解源程序,而制定的一个规范
编程规范只是一个规范,也可以不遵守,但是要做一个有良好编程风格的程序员,
就一定要遵守编程规范,不仅方便自己以后的阅读,也方便与其他程序员的交流
个人现在喜欢这种,如函数接口,动宾结构的postMessage()动词第一个小写,名词第一个大写
MFC(Microsoft Foundation Class)
主要使用类:CWnd,CDialog,CView,CDC,CGdiObject,CList,CStringList,
CPoint,CRect,CSize,CString,CTime
很多人不主张使用MFC,因为里面的很多方法是Microsoft自己实现,有些不是使用标准
库,效率比较低
头文件依赖问题,在*.h文件中使用前向声明(如class A;),尽量不要把其它头文件包含
在使用的头中,可以把它放在CPP文件上面.这样可以加快编译时间
面向对象是指,我们考虑问题时,以对象为单位,考虑它的属性及方法
面向过程是指,我们考虑问题时,以一个具体的流程(事务过程)为单位,考虑它的实现
设计模式就是解决某一类问题的方法论。把解决某类问题的方法总结归纳到理论高度,
那就是设计模式模式
因为模式是一种指导,在一个良好的指导下,有助于你完成任务,
有助于你作出一个优良的设计方案,达到事半功倍的效果。
而且会得到解决问题的最佳办法。
自己曾经使用过Factory工厂模式,Singleton单件模式,Prototype原型模式