网站位置: >> 论文 >> 论文目录 >> 免费论文范文阅读

关于模块方面论文范文检索,与基于Perl的企业级代码编辑器的实现相关学士学位论文

这篇模块论文范文属于论文目录免费优秀学术论文范文,关于模块方面学士学位论文,与基于Perl的企业级代码编辑器的实现相关论文的目录怎么写。适合模块及文件及注释方面的的大学硕士和本科毕业论文以及模块相关开题报告范文和职称论文写作参考文献资料下载。

摘 要 :该文针对软件企业进行代码的整理工作这个需求,设计和实现了一个基于Perl的代码编辑器系统,让它按照企业要求进行整理代码的工作,达到提高软件质量管理的目的.

关 键 词 :PERL;代码编辑

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)22-5281-04

1.概述

为了管理代码,有些公司要求在软件产品完工后,按照自己规范标准整理代码.但是,每项软件产品可能是分给多个外包公司完成的,产品整合后,如果要一个个手动的删除所有外包公司的附加注释信息,再加入自己的版权信息,势必消耗大量的不必要的人力物力.

在这种情况下,该文描述了一种代码编辑器的设计与实现,它专门用于企业按照规范化的标准处理源代码.

2.设计思路

2.1开发工具选择

我要设计的代码编辑器与常见的UltraEdit等编辑器完全不同:首先,我们要处理的源文件容量非常大,有的源文件一个就有上百兆,普通编辑器根本无法打开.其次,我们要进行的处理比较特殊,普通编辑器也无法胜任——比如删除各种注释符这种操作,普通编辑器或者无法做到,或者会处理错误.

比较后我选择了Perl这种开发工具.它不需要编译器和链接器来运行代码,有一套功能非常强大的用于文本处理的特性,可以处理几乎所有我们能够想到的文本变换方式,对于为大型事件创建原型来测试潜在的解决方案是十分理想的.

正则表达式是Perl最强大的特性之一,它们几乎提供了所有用来匹配,置换和一般地截取文本的功能.在Perl中,向一块文本中插入字符称为插值.当Perl遇到一个可以被查值的字符串时,Perl先扫描整个字符串,看看其中是否有下面三个重要的字符:$,@和\.如果存在上面三个字符中的任意一个,而且该字符没有用反斜杠作前缀表示转义,则该字符马上会触发文本的插值操作.\为插入一个元字符或字符代码;$为在标量上下文中插入一个标量变量或计算一个表达式;@为在一个列表上下文中插入一个数组变量或计算一个表达式.如果没有,Perl会使用字符串本身.正则表达式可以用.来匹配任何单个字符.因此十分灵活.


这篇论文来自 http://www.svfree.net/mulu/467465.html

Perl中的文件句柄是一种非常独特的数据类型.这种数据类型与标量没有任何关系.文件句柄在符号表typeglob中有它们自己的槽.在进行数据写入时,首先将数据缓存在缓冲器中,直到有足够多的数据时才进行实际的发送;而在进行数据读取时,也从设备中读取比当前请求的数据量更多的数据到缓冲器中.对于文件,这样能最大限度减少所需的磁盘访问次数,而对于其它类型的文件句柄,这样做能够最大限度减少系统所需进行的中断次数.

虽然Perl的功能非常强大,但是它的文本运行模式导致它难以使用.因此,可视化是它的一个发展方向.而Perl/Tk为Perl程序的开发,分析和可视化方面提供了图形化的支持.用Perl/Tk可以包装Perl写出的所有脚本,本应该在文本模式下运行的命令可以在一个有同样效果的 GUI 控制面板上执行,用户把它启动后就可以方便地使用它而不必再输入命令.

2.2设计与实现

这个编辑器应该包括至少三个模块:

1) 功能设计模块.用于实现这个代码编辑器的各种功能.

2) 问题处理模块.用于处理编辑器运行中可能出现的问题.

3) 界面设计模块.用于将这个编辑器界面化,使之容易操作.

2.3 代码编辑器实现中的难点

误删是一个会导致所处理源代码出现错误的原因.为了处理这个问题,应设置Log记录和查看的功能.可以利用Perl的文件创建,输入输出等功能,在删除文件的同时,建立一个Log文件,记录被删除或更改的内容.在处理后查看Log文件确定操作是否正确.

3.系统设计

基于Perl的企业级代码编辑器运行在装有Perl和Perl/Tk的Linux平台上.该编辑器具有强大的文本处理能力,能删除各类注释行,整理Tab/Space空行,及在文件头加入特定注释,删除或替换想要处理的字符或字符串.

3.1 系统概要设计

3.1.1 功能模块

功能模块接受从界面传来的命令和参数,按照命令和参数调用相应的模块.它主要包括进行综合处理的模块,C注释符处理模块,C++注释符处理模块,#if 0注释符处理模块,Tab/Space处理模块.

综合处理模块负责接受界面传来的命令和参数,将它传给要调用的模块.调用的模块做完相应处理后,它要把结果再传给界面模块,让界面上显示相应的结果信息.模块还要根据返回值调用问题处理模块,根据返回值确定是做Log记录还是出错记录.


怎么写模块本科论文的参考文献
播放:36915次 评论:3701人

各个具体处理模块则负责进行处理并传送一个返回值给综合处理模块.C注释符处理模块删除所处理目录下的所有源文件的C注释符,C++注释符处理模块删除C++注释符,#if 0注释符处理#if 0注释符,Tab/Space处理模块处理Tab字符和文本整理.这些模块的返回值只有0和1,为0说明处&#

关于基于Perl的企业级代码编辑器的实现的硕士学位毕业论文范文
关于模块方面论文范文检索
29702;失败,为1说明处理成功.

特殊处理模块中Add操作处理只返回0或1,删除和替换处理还有可能返回一个为2的值:当返回值为2说明没有找到要处理的内容.功能模块得到这个值后传给界面模块,再显示相应的信息框.

3.1.2 界面功能模块

界面窗口由主窗口,两个文件夾对话框,一个文件对话框,一个文本框,8个信息提示框构成.主窗口由8个Frame构成,最上面的两个Frame中都有一个Label,一个输入框,两个按钮组成.在这里可以选择要处理的文件目录,要存放Log文件的目录,查看Log文件,进行代码处理.

下面又分为左右两部分.左边有一个Frame专门放置了一个列表框,用于显示要处理的文件目录中有哪些子目录和源文件.3个Frame用于放置做添加,删除,替换这些特殊处理的控件,控件由Label,输入框,按钮组成.可以在列表框里查看文件和目录.可以进行各种特殊处理. 界面右下有两个Frame,一个放置复选框控件和下拉框控件,另一个放置Exit按钮.

3.1.3 问题处理模块

问题处理模块要针对可能出现的问题进行设计.实际设计中包括两部分:对注释符的优先级进行判定;对Log的记录.

对注释符的优先级判定在处理每行时都要调用,设计时按照各种所见到的用例排定优先处理级别,之后按照顺序处理传输过来的代码行.

在功能模块得到返回值后,会调用Log记录模块,根据返回值做不同的记录:返回值为0,做错误记录;返回值为1,做处理记录.

3.2 主函数模块

3.2.1 Cleanup函数模块

在Cleanup函数中,定义了各类全局变量,调用了包括界面处理的Disp.pm等各模块,用变量获得界面部分传来的参数.

基于Perl的企业级代码编辑器的实现参考属性评定
有关论文范文主题研究: 关于模块的论文范文检索 大学生适用: 大学毕业论文、函授论文
相关参考文献下载数量: 79 写作解决问题: 毕业论文怎么写
毕业论文开题报告: 文献综述、论文设计 职称论文适用: 刊物发表、职称评初级
所属大学生专业类别: 毕业论文怎么写 论文题目推荐度: 最新题目

3.2.2 Main函数模块

在Main函数中,用全局变量g_type来传递操作类型:设置一个变量$oper_type接受g_type传来的值,如果它在0到8之间,那么值不变;如果它在9到16之间,那么将控制Tab/Space处理的布尔值$bTabSpace置1,再将$oper_type自身减去8以判断要进行的操作.如果是16,17,18,则进行相应的删除,替换,追加信息处理.

Main模块还要将运行产生的返回值传递给界面模块.返回值有3个:0位出错;1为执行成功;2为删除处理或替换处理中的特殊情况——没找到要删除或要替换的内容.

3.2.3 文件目录处理模块

程序通过ProcessFolder函数进行对文件夹的处理.

函数设了一个变量$sPureFolder,用判断其是否为空(””)来判断文件夹打开中是否产生错误.

如果在界面上选择了处理子目录,那么变量$bProcessSubFolders将被赋1,用正则式!/^\.\.?$/搜索出所有子项目,并且对这些子项目进行递归处理:如果是目录,那么用readdir DIRHANDLE更新存取目录的文件句柄;如果不是,则用closedir( DIRHANDLE )关闭目录句柄并返回0.

如果对文件夹的操作成功了,最后将返回一个1.那么再开始进行具体的处理.

3.3 功能模块

3.3.1 C注释符处理

3.3.2 C++注释符处理

3.3.3 #if 0注释符处理

3.3.4 Tab/Space处理

3.4 Log记录处理

在进行文件处理时,所处理的内容通过一个句柄放在一个临时文件里,如果在处理中产生错误,那么这个错误也会被写入log文件中.

程序运行时,中要打开上已被创建的目录,用my( $sLogFileName ) 等于 $sFileName . ".log";创建一个后缀名为.log的日志文件,之后做一个判断:因为进行Tab/Space操作是不记入Log的,所以要看所操作的类型以决定要进行的Log操作:如果操作模式不等于8,那么要不断把产生的记录追加到Log文件中;否则,不进行追加操作.函数中用一个临时句柄监控错误的发生.如果在创建或者打开Log文件时产生错误,那么将调用PrintErrLogFile句柄,并返回0;如果创建或打开Log文件时没有错误,在执行过程中产生了错误,那么先把产生的错误写到临时句柄中,再用将产生的错误记录到Log中,覆盖原记录,并返回0.如果一直没有错误,那么将一直在临时文件中追加记录,最后写入Log文件中.

4.结束语

该系统针对软件企业需要整理代码的需求设计而成,用于在Linux环境下整理大量的源代码.基于Perl的强大性,这个代码编辑器实现的功能可根据企业的需要作出不同调整.用Perl/Tk作出的界面也可根据个人喜好进行改动.

参考文献:

[1] Martin C B.Perl 5 Programmer’S Reference[M].Published by McGraw-Hill Professional,2001.

[2] Paul Hoffman.Perl For Dummies[M].3rd Edition,Published by John Wiley & Sons,2000.

[3] Deitel H M,Deitel P J,Nieto T R,Mcphie D C.Perl How To Program[M].Published by Prentice Hall,2001.

参考文献:

开放式实验室管理系统设计与开发

大规模定制模块化生产的模块预投产技术

电力多用户监控终端研制

基于RFID技术的汽车尾气检测系统电路设计

给自己的心安装一个爱

出版专业职专业技术资格系列,专业技术资格系列

基于Perl的企业级代码编辑器的实现word版本

论文编辑器
x系统上常用的论文编辑器latex,并且给电脑配置st2和ski。课程设计论文课程设计论文,本组本次课程设计的课题是文本编辑器.本人课程设计内容是编辑时钟,最后实现的功能是显示系统时。

论文参考文献代码
参考文献完整的论文为形式,论文参考文献代码表达清晰摘要与关键词,摘要是对学年论文的内容不加注释和评论的简短陈述.摘。烟草论文参考文献学校代码要结论和应用前景分析(最后一章),×.。

博士论文代码
生申请博士学位论文单位代码:。博士学位论文预答辩意见书北京邮电大学优秀博士学位论文申请表,所在学院:填表日期,论文题目作者姓名论文答辩日期获得博士学位日期论文涉及的研究方向一级学。

期刊论文代码
期刊论文标准期刊等级目录,期刊等级目录9.47/sipoasp/zljs.,?,附:?文献类型及其标志代码,文献类型普通图书会议录(文集)报纸期刊学位论文报告标。学位论文代码山东。

硕士论文文献代码
硕士论文文献代码江西,硕士论文文献代码翻译三)调研的方法6,(三)调研的方法6,三,文献综述的参考格式及一般要求7,(一)文献综述参考格式7,(二)文献综述的一般要求7,四,毕。

硕士论文代码
硕士论文文献代码江西,硕士论文文献代码翻译业论文(设计)的指导教师,原则上由具有讲师(或相当于讲师)以上职称的教师,科研人员,工程技术人员或管理人员担任.未取得讲师资格,具有硕士。

学位论文代码
学位论文代码山东"修改原始 .不需要注册新用户.),3.点击提交页面,输入电子邮箱,手机号码等,进入下一步.,论文信息填写,带*为必填项.论文语种选择"chi";学科代码根据各。

硕士学位论文代码
2016届研究生硕士学位论文,学校代码2016届研究生硕士学位论文学校代码:10273,学号,(以上内容用宋体四号字),业绩管理:从模型到实施,(中文论文题目用宋体二号字),院系。

硕士学位论文 代码
2016届研究生硕士学位论文,学校代码2016届研究生硕士学位论文学校代码:10273,学号,(以上内容用宋体四号字),业绩管理:从模型到实施,(中文论文题目用宋体二号字),院系。

大学生如何实现就业
养,现代大学生担负着建设社会的重担,所以要求其提高自身的综合素质,促进大学生实现其自我完善.培养大学生的综合素。重庆大学生就业市场,大学生如何就业论文重庆2016-2016学年第2学。

模块相关论文



相关频道推荐