Delphi&BCB一线程序员开发经验

数18753786829

数18753786829

2016-02-19 20:47

下面图老师小编要向大家介绍下Delphi&BCB一线程序员开发经验,看起来复杂实则是简单的,掌握好技巧就OK,喜欢就赶紧收藏起来吧!
Delphi&BCB一线程序员开发经验

本鲨于2003年1月份从事程序开发工作,至今有19个月之久。其中断断续续地工作皆因自己经验不足开发出来的东西粗制滥造,以致于漂泊不定,就业困难!而今本鲨已达了合格程序员的能力了。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

一般来说 针对刚毕业的程序员开发任务只是一个项目中子项目中的一个模块。 一个模块差不多有5-6个窗体代码量约有2000行。其实这种任务量和毕业设计不上下,应该能完成得了,只是开发的时间比较少,约6-12天的工作日,而不是学校里的1-2个月,另外还有同学帮助。所以对开发者对开发工具,语法,框架和库熟练。另外对系统平台运行机制和算法要求能了解,知道是怎么回事。要求对程序员能积极主动地工作,而不是被动工作。能主动去找资料,询问同事,以及要求同事给予任务不明之处的协助。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  本鲨主要从事数据库系统前台的开发任务,因此主要使用数据库常用组件来说明下,其实数据系统的前台的任务是最繁重而总是遭受到用户的指责。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  一般本鲨的开发步骤是:

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

0 了解任务需求

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

1先实行功能

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

2 解决功能的异常处理

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

3 实现用户友好性

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

4 解决用户友好性

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

性能问题就交给以后数据量大时用户实在忍受不了再去解决!目前赶任务要紧,做数据库前台 无非是新增 删除 修改 保存 查询 统计!常用到以下组件

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

TEdit TComboBox TListView TTreeView TCheckListBox TLabel TDBGrid TImage TMemo TButton TDBChart TPanel TMaskEdit TDateTimePicker TPageControl

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

1代码风格 只有在面试的时候, 你的代码风格才会对面试官产生影响.风格是给人看的,自然要符合美观条件.虽然有很多公司整了一套风格标准,我觉得很无聊得事情.风格之类没有必要强求.既然大家用的是Borland工具最好遵循Borland风格.

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

2组件属性设置

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

1 TLabel : AutoSize = Flase;

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

2 TEdit  设置 MaxLength值 默认输入法的值

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

3 TComboBox 如果只容许选择的话 Style:= csDropDownList; Sorted :=True;

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

当向其的Items添加数据时该

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  FontCombo-Items-BeginUpdate(); // prevent repaints until done

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  FontCombo-Items-Add(“XXX”); //

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  FontCombo-Items-EndUpdate(); //reenable painting

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

这点无论数据多少 TListView TTreeView TDBGird 都有类似的数据显示屏蔽的功能

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

4 TTreeView 如果不修改节点的文字 要ReadOnly RowSelect = true;

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

5 TListView ViewStyle vsReport要ReadOnly RowSelect = true; 如果不修改

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

6 TPageControl 在FormShow 或者Create事件中 PageControl1.ActivePageIndex := 0;

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

7 TDateTimePicker DateFormat := dfLong  如果把时间复制到Edit中时

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

Edit.Text := DateTimeFormate(“YYYY-MM-DD”,DateTimePicker1.Date)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

8 TButton 要设置 Cancel  ModalResult Hint

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

3 界面布局 相同的组件要放在一起 并且与周围的对齐,上下左右对齐. 并且跟其他容器的组件对齐 ,这点很多新手忽视了!因为Borland对齐工具只能对亲本容器下的 ,最后给人一整齐的美观.

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

界面布局细则

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

1):完成相同或相近功能的按钮用Frame框起来,常用按钮要支持快捷方式。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

2):完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

3):按功能将界面划分局域块,用Frame框括起来,并要有功能说明或标题。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

4):界面要支持键盘自动浏览按钮功能,即按Tab键的自动切换功能。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

5):界面上首先应输入的和重要信息的控件在Tab顺序中应当靠前,位置也应放在窗口上较醒目的位置。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

6):同一界面上的控件数最好不要超过10个,多于10个时可以考虑使用分页界面显示。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

7):分页界面要支持在页面间的快捷切换,常用组合快捷键Ctrl+Tab

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

8):默认按钮要支持Enter及选操作,即按Enter后自动执行默认按钮对应操作。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

9):可写控件检测到非法输入后应给出说明并能自动获得焦点。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

10):Tab键的顺序与控件排列顺序要一直,目前流行总体从上到下,同时行间从左到右的方式。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

11):复选框和选项框按选择几率的高底而先后排列。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

12):复选框和选项框要有默认选项,并支持Tab选择。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

13):选项数相同时多用选项框而不用下拉列表框。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

14):界面空间较小时使用下拉框而不用选项框。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

15):选项数叫少时使用选项框,相反使用下拉列表框。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

16):专业性强的软件要使用相关的专业术语,通用性界面则提倡使用通用性词眼。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

4 代码

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

1功能检查:检查需求所要求的功能和限制条件是否全部实现

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

2 界限检查:对功能进行界限检查 比如不同的数据类型输入 或者是不同范围的数据

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

3非法访问检查:测试是否存在非法内存访问错误。判断是否属于此类错误的参考错误信息类似:

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

”…not found”, ”List index out of bounds…”, “Access violation at address…”

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

4:提示信息指导性检查:在任何可输入的地方,包括编辑框、表格框、选择框随意输入任何字符,包括英文字符和中文字符,测试是否会引发非法访问错误、对不可接受的字符是否有提示、提示指导性是否强。

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

5单元化检查:检查本单元内的 单元头说明, 各个函数说明,注解说明是否正确。引用说明是否有多余之引用

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

//尤其是C++ 头文件包含了不必要的Include 会给其他单元发生不必要的问题

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

其实这些叫做白合测试和单元测试内容。 如果是按照测试书而言 你要另外去写测试的代码,我想每个开发人员都不原意的!可不作又不行,容易出错不好交货的。因此非常有必要了解测试的方法,这些方法

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

大学的软件工程都有介绍,而且考软件设计师也要考的。每当写程序时你就会留心考虑不同的情况下可能会出什么错误! 虽然在实现函数时要用到的变量是否会为空?值是否有效?是否溢出越界?是否清空变量的空间?是否大小写的要求?是否前后有空格?

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

这些判断首先要写在函数,过程的开始处!

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

if(TreeView-Selected ==NULL) //变量是否会为空?

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

then return ;

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

std::vecotrint intArray;// 是否溢出越界?

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

if(intArray =0)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

then return;

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

if( i ListView.Items-Count) // 是否溢出越界?

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

Edit-Text = ListView-Items-Item[i].Caption;

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

Edit-Text.Trim();//是否前后有空格?

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

 

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

char a[10];

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

memcpy(a,”

展开更多 50%)
分享

猜你喜欢

Delphi&BCB一线程序员开发经验

编程语言 网络编程
Delphi&BCB一线程序员开发经验

资深Linux程序员的开发经验谈

Linux Linux命令 Linux安装 Linux编程 Linux桌面 Linux软件 Linux内核 Linux管理
资深Linux程序员的开发经验谈

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

常用的BCB & Delphi 函数

编程语言 网络编程
常用的BCB & Delphi 函数

接受改变:从VB程序员到VB.Net程序员

电脑网络
接受改变:从VB程序员到VB.Net程序员

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

JSP程序员成长之路之一

Java JAVA基础
JSP程序员成长之路之一

三层数据库与应用程序服务器的小型介绍(Delphi&BCB)

编程语言 网络编程
三层数据库与应用程序服务器的小型介绍(Delphi&BCB)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

DELPHI中数据文件路径的管理

DELPHI中数据文件路径的管理

网页制作:从切图到生成网页

网页制作:从切图到生成网页
下拉加载更多内容 ↓