欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年Delphi开发 .pdf

    • 资源ID:39724107       资源大小:82.07KB        全文页数:13页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年Delphi开发 .pdf

    Delphi 源程序格式书写规范tianhaiyise(翻译)(转载自)1.规范简介本规范主要规定Delphi 源程序在书写过程中所应遵循的规则及注意事项。编写该规范的目的是使公司软件开发人员的源代码书写习惯保持一致。这样做可以使每一个组员都可以理解其它组员的代码,以便于源代码的二次开发记忆系统的维护。2.一般格式规范2.1 缩进缩进就是在当源程序的级改变时为增加可读性而露出的两个空格。缩进的规则为每一级缩进两个空格。不准许使用 Tab。因为 Tab 会因为用户所作的设置不同而产生不同的效果。当遇到begin 或进入判断、循环、异常处理、with 语句、记录类型声明、类声明等的时侯增加一级,当遇到 end 或退出判断、循环、异常处理、with 语句、记录类型声明、类声明等的时侯减少一级。例如:if TmpInt 100 then TmpInt:=100;2.2 Begin.Endbegin 语句和 end 语句在源程序中要独占一行,例如:for I:=0 to 10 do begin/不正确的用法end;for I:=0 to 10 do/正确的用法begin end;2.3 空格在操作符及逻辑判断符号的两端添加空格,例如:I:=I+1;,a and b 等,但添加括号时不需要空格。例如:if(a b)then/错误的用法If(a b)then/正确的用法又例如:procedure Test(Param1:integer;Param3:string);3.Object Pascal语法书写格式规范3.1 保留字Object Pascal 语言的保留字或关键词应全部使用小写字母。3.2 过程和函数名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 13 页 -3.2.1 命名及格式过程和函数的名称应全部使用有意义的单词组成,并且所有单词的第一个字母应该使用大写字母。例如:procedure formatharddisk;/不正确的命名procedure FormatHardDisk;/正确的命名设置变量内容的过程和函数,应使用Set 作为前缀,例如:procedure SetUserName;读取变量内容的过程和函数,应使用Get 作为前缀,例如:function GetUserName:string;3.2.2 过程和函数的参数3.2.2.1 命名统一类型的参数写在同一句中:procedure Foo(Param1,Param2,Param3:Integer;Param4:string);3.2.2.2 命名所有参数必须是有意义的;并且当参数名称和其它属性名称重了的时候,加一个前缀A,例如:procedure SomeProc(AUserName:string;AUserAge:integer);3.2.2.3 命名冲突当使用的两个unit 中包括一个重名的函数或过程时,那幺当你引用这一函数或过程时,将执行在 use 子句中后声明的那个unit 中的函数或过程。为了避免这种uses-clause-dependent需要在引用函数或过程时,写完整函数或过程的出处。例如:SysUtils.FindClose(SR);Windows.FindClose(Handle);3.3 变量3.3.1 变量命名及格式首先所有变量必须起有意义的名字,使其它组员可以很容易读懂变量所代表的意义,变量命名可以采用同义的英文命名,可使用几个英文单词,但每一单词的首字母必须大写。例如:var WriteFormat::string;同时对于一些特定类型可采用一定的简写如下:指针类型P 纪录类型Rec 数组类型Arr 类Class 循环控制变量通常使用单一的字符如:i,j,或 k。另外使用一个有意义的名字例如:UserIndex,也是准许的。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 13 页 -3.3.2 局部变量在过程中使用局部变量遵循所有其它变量的命名规则。3.3.3 全局变量尽量不使用全局变量,如必须使用全局变量则必须加前缀g,同时应在变量名称中体现变量的类型。例如:gprecUserCount:point;/名称为 UserCount 的全局变量,其类型为指向一结构的指针但是在模块内部可以使用全局变量。所有模块内全局变量必须用F为前缀。如果几个模块之间需要进行资料交换,则需要通过声明属性的方法来实现。例如:type TFormOverdraftReturn=class(TForm)private Private declarations FuserName:string;FuserCount:Integer;Procedure SetUserName(Value:string);Function GetUserName:string;public Public declarations property UserName:string read GetUserName write SetUserName;property UserCount:Integer read FuserCount write FuserCount;end;3.4 类型3.4.1 大小写协议保留字的类型名称必须全部小写。Win32 API 的类型通常全部大写,对于其它类型则首字母大写,其余字母小写,例如:var MyString:string;/reserved word WindowHandle:HWND;/Win32 API type I:Integer;/type identifier introduced in System unit 3.4.2 浮点类型尽量不使用Real 类型,他只是为了和旧的Pascal代码兼容,尽量使用Double 类型。Double 类型是对处理器和数据总线做过最优化的并且是IEEE 定义的标准数据结构。当数值超出Double 的范围时,使用Extended。但 Extended 不被 Jave支持。但使用其它语言编写的DLL 时可能会使用Single 类型。3.4.3 枚举类型枚举类型的名字必须有意义并且类型的名字之前要加前缀T。枚举类型的内容的名字必须包含枚举类名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 13 页 -型名称的简写,例如:TSongType=(stRock,stClassical,stCountry,stAlternative,stHeavyMetal,stRB);3.4.4 数组类型数组类型的名字必须有意义并且类型的名字之前要加前缀T。如果声明一个指向数组类型的指针必须在该类型的名字之前加前缀P,例如:type PCycleArray=TCycleArray;TCycleArray=array1.100 of integer;3.4.5 记录类型记录类型的名字必须有意义并且类型的名字之前要加前缀T。如果声明一个指向数组类型的指针必须在该类型的名字之前加前缀P,例如:type PEmployee=TEmployee;TEmployee=record EmployeeName:string EmployeeRate:Double;end;3.5 类3.5.1 命名及格式类的名字必须有意义并且类型的名字之前要加前缀T。例如:type TCustomer=class(TObject)类实例的名字通常是去掉T的类的名字。例如:var Customer:TCustomer;3.5.2 类中的变量3.5.2.1 命名及格式类的名字必须有意义并且类型的名字之前要加前缀F。所有的变量必须是四有的。如果需要从外部访问此变量则需要声明一属性3.5.3 方法3.5.3.1 命名及格式名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 13 页 -同函数和过程的命名及格式。3.5.3.2 属性访问方法所有的属性访问方法必须出现在private 或 protected 中。属性访问方法的命名同函数和过程的命名另外读方法(reader method)必须使用前缀 Get.写方法(writer method)必须使用前缀 Set。写方法的参数必须命名为 Value,其类型同所要写的属性相一致。例如:TSomeClass=class(TObject)private FSomeField:Integer;protected function GetSomeField:Integer;procedure SetSomeField(Value:Integer);public property SomeField:Integer read GetSomeField write SetSomeField;end;3.6 属性3.6.1 命名及格式同其用操作的,出去前缀F的类的变量的名称相一致。3.7 文件3.7.1 项目文件3.7.1.1 项目目录结构程序主目录-Bin(应用程序所在路径)-Db(本地数据库所在路径)-Doc(文档所在路径)-Hlp(帮助文件所在路径)-Backup(备份路径)-Tmp(临时文件路径)3.7.1.2 命名项目文件必须使用一个有意义的名字。例如:Delphi 中系统信息的项目文件被命名为SysInfo.dpr。3.7.2 Form 文件3.7.2.1 命名同 Form 的名称相一致:例如:Form 的名称为 FormMain 则 Form 文件的名称就为FormMain.frm。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 13 页 -3.7.3 Data Module 文件3.7.3.1 命名data module文件的命名应该有意义,并且使用DM 作为前缀。例如:用户 data module 被命名为DMCustomers.dfm。3.7.4 Remote Data Module 文件3.7.4.1 命名remote data module文件的命名应该有意义,并且使用RDM 作为前缀。例如:用户remote data module 被命名为 RDMCustomers.dfm 。3.7.5 Unit 文件3.7.5.1 普通Unit 3.7.5.1.1 Unit 文件命名unit 文件的命名应该有意义,并且使用unit 作为前缀。例如:通用 unit 被命名为 UnitGeneral。3.7.5.2 Form Units 3.7.5.2.1 命名Form unit 文件的名字必须和Form 的名称保持一致。例如:主窗体叫 FormMain.pas 则 Form Unit 文件的名字为:UnitFormMain。3.7.5.3 Data Module Unis 3.7.5.3.1 命名Data Module unit 文件的名字必须和Data Module 的名称保持一致。例如:主 Data Module 叫 DMMain.pas 则 Data Module Unit 文件的名字为:UnitDMMain。3.7.5.4 文件头在所有文件的头部应写上此文件的用途,作者,日期及输入和输出。例如:修改日期:作者:用途:本模块结构组成:名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 13 页 -3.7.6 Forms 和 Data Modules Forms 3.7.6.1 Form 类1.Form 类命名标准Forms 类的命名应该有意义,并且使用TForm 作为前缀。例如:About Form 类的名字为:TAboutForm=class(TForm)主窗体的名字为TMainForm=class(TForm)2.Form 类实例的命名标准Form 的类实例的名字应同期掉T的 Form 类的名字相一致。例如:Type Name Instance Name TaboutForm AboutForm TmainForm MainForm TCustomerEntryForm CustomerEntryForm 3.7.6.2 Data Modules Form 3.7.6.2.1.Data Module Form 命名标准Data Modules Forms 类的命名应该有意义,并且使用TDM 作为前缀。例如:TDMCustomer=class(TDataModule)TDMOrders=class(TDataModule)3.7.6.2.2.Data Module 实例命名标准Data Module Form 的类实例的名字应同期掉T的 Data Module Form 类的名字相一致。例如:Type Name Instance Name TCustomerDataModule CustomerDataModule TordersDataModule OrdersDataModule 名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 13 页 -3.8 控件3.8.1 控件实例的命名控件的实例应使用去掉T该控件类的名称作为前缀,例如:输入用户姓名的Tedit 的名字为:EditUserName。3.8.2 控件的简写控件的名称可使用以下简写,但所用简写于控件名称之间药添加_:3.8.2.1 Standard Tab mm TMainMenu pm TPopupMenu mmi TMainMenuItem pmi TPopupMenuItem lbl TLabel edt TEdit mem TMemo btn TButton cb TCheckBox rb TRadioButton lb TListBox cb TComboBox scb TScrollBar gb TGroupBox rg TRadioGroup pnl TPanel cl TCommandList 3.8.2.2 Additional Tab bbtn TBitBtn sb TSpeedButton me TMaskEdit sg TStringGrid dg TDrawGrid img TImage shp TShape bvl TBevel sbx TScrollBox clb TCheckListbox spl TSplitter stx TStaticText 名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 13 页 -cht TChart 3.8.2.3 Win32 Tab tbc TTabControl pgc TPageControl il TImageList re TRichEdit tbr TTrackBar prb TProgressBar ud TUpDown hk THotKey ani TAnimate dtp TDateTimePicker tv TTreeView lv TListView hdr THeaderControl stb TStatusBar tlb TToolBar clb TCoolBar 3.8.2.4 System Tab tm TTimer pb TPaintBox mp TMediaPlayer olec TOleContainer ddcc TDDEClientConv ddci TDDEClientItem ddsc TDDEServerConv ddsi TDDEServerItem 3.8.2.5 Internet Tab csk TClientSocket ssk TServerSocket wbd TWebDispatcher pp TPageProducer tp TQueryTableProducer dstp TDataSetTableProducer nmdt TNMDayTime nec TNMEcho nf TNMFinger nftp TNMFtp nhttp TNMHttp 名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 13 页 -nMsg TNMMsg nmsg TNMMSGServ nntp TNMNNTP npop TNMPop3 nuup TNMUUProcessor smtp TNMSMTP nst TNMStrm nsts TNMStrmServ ntm TNMTime nudp TNMUdp psk TPowerSock ngs TNMGeneralServer html THtml url TNMUrl sml TSimpleMail 3.8.2.6 Data Access Tab ds TDataSource tbl TTable qry TQuery sp TStoredProc db TDataBase ssn TSession bm TBatchMove usql TUpdateSQL 3.8.2.7 Data Controls Tab dbg TDBGrid dbn TDBNavigator dbt TDBText dbe TDBEdit dbm TDBMemo dbi TDBImage dblb TDBListBox dbcb TDBComboBox dbch TDBCheckBox dbrg TDBRadioGroup dbll TDBLookupListBox dblc TDBLookupComboBox dbre TDBRichEdit dbcg TDBCtrlGrid dbch TDBChart 名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 13 页 -3.8.2.8 Decision Cube Tab dcb TDecisionCube dcq TDecisionQuery dcs TDecisionSource dcp TDecisionPivot dcg TDecisionGrid dcgr TDecisionGraph 3.8.2.9 QReport Tab qr TQuickReport qrsd TQRSubDetail qrb TQRBand qrcb TQRChildBand qrg TQRGroup qrl TQRLabel qrt TQRText qre TQRExpr qrs TQRSysData qrm TQRMemo qrrt TQRRichText qrdr TQRDBRichText qrsh TQRShape qri TQRImage qrdi TQRDBMImage qrcr TQRCompositeReport qrp TQRPreview qrch TQRChart 3.8.2.10 Dialogs Tab OpenDialog TOpenDialog SaveDialog TSaveDialog OpenPictureDialog TOpenPictureDialog SavePictureDialog TSavePictureDialog FontDialog TFontDialog ColorDialog TColorDialog PrintDialog TPrintDialog PrinterSetupDialog TPrintSetupDialog FindDialog TFindDialog ReplaceDialog TReplaceDialog 3.8.2.11 Win31 Tab 名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 13 页 -dbll TDBLookupList dblc TDBLookupCombo ts TTabSet ol TOutline tnb TTabbedNoteBook nb TNoteBook hdr THeader flb TFileListBox dlb TDirectoryListBox dcb TDriveComboBox fcb TFilterComboBox 3.8.2.12 Samples Tab gg TGauge cg TColorGrid spb TSpinButton spe TSpinEdit dol TDirectoryOutline cal TCalendar ibea TIBEventAlerter 3.8.2.13 ActiveX Tab cfx TChartFX vsp TVSSpell f1b TF1Book vtc TVTChart grp TGraph 3.8.2.14 Midas Tab prv TProvider cds TClientDataSet qcds TQueryClientDataSet dcom TDCOMConnection olee TOleEnterpriseConnection sck TSocketConnection rms TRemoteServer mid TmidasConnection 4修改规范本规则所做的规定仅适用于已经纳入配置管理的程序。在这类修改中,要求保留修改前的内容、并标名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 13 页 -识出修改和新增的内容。并在文件头加入修改人、修改日期、修改说明等必要的信息。41 修改历史记录对源文件进行经过批准的修改时,修改者应在程序文件头加入修改历史项。在以后的每一次修改时,修改者都必须在该项目中填写下列信息:修改人修改时间修改原因修改说明即如何修改42 新增代码行新增代码行的前后应有注释行说明。/修改人,修改时间,修改说明新增代码行/修改结束43 删除代码行删除代码行的前后用注释行说明。/修改人,修改时间,修改说明/要删除的代码行(将要删除的语句进行注释)/修改结束44 修改代码行修改代码行以删除代码行后在新增代码行的方式进行。/修改人,修改时间,修改说明/修改前的代码行/修改结束/修改后的代码行修改后的代码行/修改结束名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 13 页 -

    注意事项

    本文(2022年Delphi开发 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开