Delphi 项目总结
Delphi 项目总结
随着项目的失败,这些天一直在总结失败的原因,到底是为什么?
一、技术层面
1、少用指针类型,多用类。
虽然指针类型能有效的节约内存和加快运行速度,但指针远没有类来得稳定及易用。在日常使用中,往往指针对应的是record类型,例如
PDataColumns = ^DataColumns;2
DataColumns = record3
Name: string;4
Value: string;5
DataType: SqlDataType;6
Size: Integer;7
end;在实际使用中,指针往往会忘记释放或者过早的释放,造成内存泄漏。而类在使用中,却没有这样的问题,虽然也会有忘记释放内存的情况,但其稳定性和可靠性要比指针要好得多。
2、 建模工具的使用
在小项目的不觉得建模工具有多少的优势,反而会觉得有些累赘。但当实际代码行数达到2000行时,必须要用建模工具来辅助了。因为随着代码的增加,不可能都能记住关键代码的
位置,而图形化的建模工具能更精确的找到你要维护的代码,而且修改起来不容易出错。特别是在维护结构时,更是得心应手。
3、项目结构的把握
这是项目的精髓。结构的好坏,决定着项目的成败,决定着项目的稳定性、可靠性和易维护性。也体现了程序员的项目经验。经验不是一天两天能够得到的,是在不断的实践和摸爬滚
打中获得的。
4、项目测试
这是项目交付前的最后阶段。项目测试按我自己的理解,不需要由专业的程序员来完成,但他必须熟知项目每个模块的流程以及模块间的接口协议。还需要对关键模块或者说敏感的流程(如金额的计算等),进行严格的破坏性测试。
二、心理层面
1、项目的简易程度的把握
如果在项目初期没有把项目吃透,那么在项目推进阶段就会遇到很大的阻力。而且会对自己的信心造成影响。
2、要有充分的信心
信心十分重要,特别是马拉松式的项目,需要耐力和忍受力。要时常给自己打气,相信自己一定行。
3、多交流
交流有很多方面。技术方面,不能单靠一两个人的想法去实现一个简单但难实现的算法,要和更多的人交流得到稍复杂而容易实现的算法。前者需要花比较少的时间去写代码和测试,
但一旦成功则是一个不小的进步;后者不需要花很多的精力的测试算法的准确性,因为这些都是由一些经过了N次测试后成功的代码段实现的。前者适合研究性质,后都适合快速项目开发
性质。心理方面,要少钻牛角尖,正所谓进一步万丈深渊,退一步海阔天空。
总结,项目成功需要通过周密的项目分析,获得可行的项目结构,经过细致的编程和全面而周到的项目测试,才能最终实现。
Delphi 项目总结的更多相关文章
- delphi项目中的modelsupport文件夹
delphi项目中的modelsupport文件夹 今天写着写着突然发现多了一个这个文件夹..苦思不得其解 看着又难受 删了又重建 终于找到了 存此备查;Tools--option--toget ...
- 如何分析一个已有的Delphi项目源代码
分析一个已有的Delphi项目,应该从以下入手(按先后顺序):1. 编译条件,包括自定义的Condition以及inc文件里的标识2. 主项目文件dpr,因为窗体的windows消息循环只是程序的一部 ...
- 最想做的三个Delphi项目:Paint,IM,SQL,另外还有Smart,TMS,FMX,UML,FreePascal,Python4Delphi,Cheat Engine
都是绝美项目- 如果有时间,要做的项目:0. 整整5个Cloud项目(可带来商业收益,其中还包括手机发送, S/D/N/L/NetDriver)1. Heidi/front/SQLITE STUDIO ...
- Delphi 项目配置选项
打开项目设置窗口: 通过菜单:项目>选项 快捷键 :Shift+Ctrl+F11 Delphi编译器选项说明 Conditional defines 指定条件编译器指令中引用的符号. O ...
- 【翻译】在GitHub上通过星级评估排名前10的最受欢迎的开源Delphi项目
GitHub上有相当多的Delphi开源项目可以为你节省一些时间.我在GitHub上搜索了Delphi,然后按最主要的项目进行排序,并列出了前十名单.这里有一些非常好的东西,包括Awesome Del ...
- Delphi项目构成之单元文件PAS
单元文件是Pascal源文件,扩展名为.pas. 有三种类型的单元文件: 窗体/数据模块和框架的单元文件(form/data module and frame units),一般由Delphi自动生成 ...
- Delphi项目构成之项目文件DPR
1 2 3 4 5 6 7 8 9 10 11 12 13 program Project1; {关键字program,标准的Pascal源文件格式} ...
- Delphi 项目 结构 文件夹 组织
Delphi Project Structure Folder Organization http://delphi.about.com/od/delphitips2008/qt/project_la ...
- Delphi 项目失败的总结
随着项目的失败,这些天一直在总结失败的原因,到底是为什么? 一.技术层面 1.少用指针类型,多用类. 虽然指针类型能有效的节约内存和加快运行速度,但指针远没有类来得 ...
随机推荐
- 文件操作:fseek函数和ftell函数
1.fseek函数: int fseek(FILE * _File, long _Offset, int _Origin); 函数设置文件指针stream的位置.如果执行成功,stream将指向以fr ...
- SpriteBuilder中使用GUI界面快速搭建RPG游戏中的地图名显示动画
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 在RPG游戏中我们在进入一个新的场景时,比如一个房间,一个村庄, ...
- SDL2源代码分析8:视频显示总结
===================================================== SDL源代码分析系列文章列表: SDL2源代码分析1:初始化(SDL_Init()) SDL ...
- Java项目案例:酒店前台客服管理系统
import java.util.Scanner; public class HelloWorld { public static void main(String[] args){ String [ ...
- Win7/Win8/Win10下安装Ubuntu14.04双系统 以及常见问题
整理自网络. 1. 制作镜像 将ubantu镜像刻录到优盘(我使用UltraISO刻录,镜像下载地址:链接: http://pan.baidu.com/s/1bndbcGv 密码: qsmb) 2. ...
- volatile适用场合
volatile适用场合 要在多线程中安全的适用volatitle变量,必须同时满足: 1.对变量的写入操作不依赖其当前值 不满足:number++.count = count * 5等 ...
- Cocos2D:塔防游戏制作之旅(六)
现在,创建一个新的类用来表示炮塔.添加新的类文件,名称为Tower,继承于CCNode. 替换Tower.h文件为如下内容: #import "cocos2d.h" #import ...
- Java数组的应用:案例:杨辉三角,三维数组,字符串数组
//import java.util.Arrays; //包含Arrays //import java.util.Random; public class HelloWorld { public st ...
- Swift下自定义xib添加到Storyboard
猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/51657154 ...
- MFC的两个问题
1.启动WinApp的时候,报 ASSERT(AfxGetThread() == NULL)错误依赖的MFC DLL工程设置里面加上_USRDLL2. MFC误报内存泄露全局对象释放的问题,添加mfc ...