第一篇:软件编程实习总结_工作总结
软件编程实习总结_工作总结
实习时间:3月1日———5月9日 实习地点:广州xx大学生实训基地 实训目标:
1.通过系统性的实训,熟练掌握java se、java ee知识体系,具备java开发经验;
2.了解企业软件开发流程规范,初步具备正确的软件开发编程思路,掌握软件开发的基本方法,养成规范化项目开发习惯; 3.以项目案例带动实训,以企业开发为基础,对参加实训学生进行项目分组管理,学生需按要求完成每天布置的项目案例,实训结束时必须按要求完成多个项目开发工作,通过案例练习、企业项目开发、评审,使学生初步具备软件开发的实战能力; 实习单位概述:xx科技以中关村科技园区为依托,在中国软件业发达城市——北京、上海、广州、深圳、大连、南京、武汉、杭州、西安、苏州、成都、太原等20大城市,建立了近40家培训中心,占地2万平米,年培训1万多名软件人才。已累计为ibm、微软、摩托罗拉、华为、中软、用友、yahoo、阿里巴巴、tom、新浪、搜狐、百度、联想、神州数码、大唐电信、亚信等知名it企业培养输送了7万多名中高级软件人才,目前xx全国拥有600多名员工,年产值近2亿元,是中国领先的中高端软件人才培训机构。xx科技目前提供的职业培训包括:外企软件开发工程师、软件测试工程师、oracle数据库管理员、unix系统
管理员、网络系统工程师。实习概况:
1.java语言简介。包括java的发展、java语言的特点、java应用程序的运行机制和环境、java的垃圾回收机制、java开发环境的安装和配置和java源程序的编译和运行等。
其中,配置java开发环境时,需要修改环境变量(先在系统变量中新建一个java_home的变量,将其值设置为jdk1.6.0的安装路径;然后修改path变量,在该变量值类加入路:%java_home%bin;%java_home%jrebin;接着再修改classpath变量,若没有手动加入,在其值类加入路径:.;最后利用javac-version测试java的版本);在编译和运行java源程序时,先使用javac *.java进行编译,再利用java *进行运行。
2.java基本语法。包括java的命名规范、注释、标识符、数据类型、变量、运算符、表达式、控制语句等。其中,java的命名规范包括:以字母(unicode)﹑“$”﹑“—”﹑为开头。第二个字符开始是字母(unicode)、数字、“$”﹑“—”,不限制长度,不能是 java的关键字,区分大小写和可以是中文;java的基本数据类型有八种:整型类型(byte,short,int,long)、浮点类型(float,double)、字符型(char)和布尔型(boolean);java的控制语句包括:选择语句(if-else,switch-case)、循环语句(for,do-while,while)和循环跳转语句(break结束整个
循,continue结束本次循环)。
3.mysql数据库基本指令。包括创建、查询、删除数据库和表,向表中添加、删除、更新数据和查询表,修改表的结构等。其中,列出数据库实例和表: show databases; show tables; 使用数据库实例: use databasename; 显示表中列的属性: desc tablename; 创建一张表:
create table tablename(属性及其数据类型); 查询数据:
select * from tablename(where id=); 添加数据:
insert into tablename(属性1,...)values(属性值1,...);删除数据:
delete from tablename(where id=); 更新数据:
update tablename set 字段名=„„,字段名
=„„(where id=); 表结构的修改,如增加一个字段格式:
alter table tablename add column(字段名,字段类型); 4.数组的介绍。包括数组的申明,初始化(静态和动态初始化),数组的访问、遍历和复制等。
5.string中一些api方法。如找到指定位置的字符charat(int index),求字符串的长度length(),字符串的连接concat、判断字符串是否以指定的字符结束engswith(‘c’)、判断两个字符串是否相等equal等。
6.接口的介绍。包括collection、list、hashmap等,以及这些接口的一些api的使用。7.类的封装和重载。
8.mysql数据库与myeclipse的连接,需要在工程中导
第二篇:软件编程规范总结
软件编程规范总结
本规范的内容包括:基本原则、布局、注释、命名规则、变量常量与类型、表达式与语句、函数与过程、可靠性、可测性、断言与错误处理等。
一、基本原则
1.2.3.4.5.6.7.保持代码的简明清晰,避免过分的编程技巧。所有的代码尽量遵循ANSI C标准。
编程时首先达到正确性,其次考虑效率。避免或少用全局变量。尽量避免使用GOTO语句。尽可能重用、修正老的代码。尽量减少同样的错误出现的次数。
二、文件布局
1.头文件必须要避免重复包含。
2.包含标准库头文件用尖括号 <>,包含非标准库头文件用双引号 “”。3.遵循统一的顺序书写类的定义及实现。类的定义(在定义文件中)按如下顺序书写:
公有属性
公有函数
保护属性
保护函数
私有属性
私有函数
类的实现(在实现文件中)按如下顺序书写:
构造函数
析构函数 公有函数 保护函数 私有函数
4.程序中一行的代码和注释不能超过80列。5.定义指针类型的变量,*应放在变量前。
6.源程序中关系较为紧密的代码应尽可能相邻。iLength iWidth = 10;
= 5;// 矩形的长与宽关系较密切,放在一起。
StrCaption = “Test”;
7.禁止使用TAB键,必须使用空格进行缩进。缩进为4个空格。
8.程序的分界符‘{’和‘}’应独占一行并且位于同一列,同时与引用它们的语句左对齐。{ }之内的代码块使用缩进规则对齐。
9.if、else、else if、for、while、do等语句自占一行,执行语句不得紧跟其后。不论执行语句有多少都要加 { }。
if(varible1 < varible2){
varible1 = varible2;}
10.11.声明类的时候,public、protected、private关键字与分界符{} 对齐,这些部分的内容要进行缩进。
12.结构型的数组、多维的数组如果在定义时初始化,按照数组的矩阵结构分行书写。13.相关的赋值语句等号对齐。
14.在switch语句中,每一个case分支和default要用{ }括起来,{ }中的内容需要缩进。
15.不同逻辑程序块之间要使用空行分隔。16.一元操作符如“!”、“~”、“++”、“--”、“*”、“&”(地址运算符)等前后不加空格。“[]”、“.”、“->”这类操作符前后不加空格。
17.多元运算符和它们的操作数之间至少需要一个空格。18.关键字之后要留空格。(if、for、while等关键字之后应留一个空格再跟左括号‘(’,以突出关键字。)
19.函数名之后不要留空格。(函数名后紧跟左括号‘(’,以与关键字区别。)20.(’向后紧跟,‘)’、‘,’、‘;’向前紧跟,紧跟处不留空格。‘,’之后要留空格。‘;’不是行结束符号时其后要留空格。
21.长表达式(超过80列)要在低优先级操作符处拆分成新行,操作符放在新行之首(以便突出操作符)。拆分出的新行要进行适当的缩进,使排版整齐。
22.函数声明时,类型与名称不允许分行书写。
三、注释
1.一般情况下,源程序有效注释量必须在20%以上。2.注释符与注释内容之间要用一个空格进行分隔。
3.文件头部必须进行注释,包括:.h文件、.c文件、.cpp文件、.inc文件、.def文件、编译说明文件.cfg等。
4.函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、访问和修改的表、修改信息等。
5.包含在{ }中代码块的结束处应加注释,便于阅读。特别是多分支、多重嵌套的条件语句或循环语句。
void Main(){
if(…){
… while(…)
{
…
} /* end of while(…)*/ …
} /* end of if(…)*/ // 指明是哪条语句结束 } /* end of void main()*/
// 指明函数的结束 // 指明该条while语句结束
6.保证代码和注释的一致性。修改代码同时修改相应的注释,不再有用的注释要删除。7.注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释)相邻位置,不可放在下面,如放于上方则需与其上面的代码用空行隔开。
8.全局变量要有详细的注释,包括对其功能、取值范围、访问信息及访问时注意事项等的说明。
9.注释与所描述内容进行同样的缩排。
10.对分支语句(条件分支、循环语句等)必须编写注释。11.尽量避免在注释中使用缩写,特别是不常用缩写。
四、命名规则
1.标识符要采用英文单词或其组合,便于记忆和阅读,切忌使用汉语拼音来命名。严格禁止使用连续的下划线,下划线也不能出现在标识符头或结尾(预编译开关除外)。
2.程序中不要出现仅靠大小写区分的相似的标识符。
3.用正确的反义词组命名具有互斥意义的变量或相反动作的函数等。
4.宏、常量名都要使用大写字母, 用下划线 ‘_’分割单词。预编译开关的定义使用下划线 ‘_’开始。
5.变量名长度应小于31个字符,以保持与ANSI C标准一致。不得取单个字符(如i、j、k等)作为变量名,但是局部循环变量除外。
6.程序中局部变量不要与全局变量重名。7.使用一致的前缀来区分变量的作用域。
g_
:全局变量 s_
:模块内静态变量
空:局部变量不加范围前缀
8.使用一致的小写类型指示符作为前缀来区分变量的类型。说明:常用变量类型前缀列表如下:
i
: int
f
: float d : double c
: char uc
: unsigned char 或 BYTE l : long p
: pointer b
: BOOL h : HANDLE w
: unsigned short 或 WORD dw : DWORD或 unsigned long a
:数组,array of TYPE str
:字符串 t :结构类型
9.完整的变量名应由前缀+变量名主体组成,变量名的主体应当使用“名词”或者“形容词+名词”,且首字母必须大写。
float g_fValue;10.函数名用大写字母开头的单词组合而成,且应当使用“动词”或者“动词+名词”(动宾词组)。
11.结构名、联合名、枚举名由前缀T_ 开头。事件名由前缀EV_ 开头。12.标识符前最好不加项目、产品、部门的标识。
五、变量常量与类型
1.定义全局变量时必须仔细分析,明确其含义、作用、取值范围及与其它全局变量间的关系。
2.明确全局变量与操作此全局变量的函数或过程的关系。3.一个变量有且只有一个功能,不能把一个变量用作多种用途。4.循环语句与判断语句中,不允许对其它变量进行计算与赋值。5.宏定义中如果包含表达式或变量,表达式和变量必须用小括号括起来。6.使用宏定义多行语句时, 必须使用 { } 把这些语句括起来。
建议:
尽量构造仅有一个模块或函数可以修改、创建的全局变量,而其余有关模块或函数只能访问。
对于全局变量通过统一的函数访问。
尽量使用const说明常量数据,对于宏定义的常数,必须指出其类型。 最好不要在语句块内声明局部变量。
7.结构和联合必须被类型化。typedef struct {
char acName[NAME_SIZE];WORD wScore;} T_Student;
T_Student *ptStudent;
建议:
使用严格形式定义的、可移植的数据类型,尽量不要使用与具体硬件或软件环境关系密切的变量。
结构是针对一种事务的抽象,功能要单一,不要设计面面俱到的数据结构。 不同结构间的关系要尽量简单,若两个结构间关系较复杂、密切,那么应合为一个结构。
结构中元素的个数应适中。若结构中元素个数过多可考虑依据某种原则把元素组成不同的子结构,以减少原结构中元素的个数。
仔细设计结构中元素的布局与排列顺序,使结构容易理解、节省占用空间,并减少引起误用现象,对于结构中未用的位明确地给予保留。
结构的设计要尽量考虑向前兼容和以后的版本升级,并为某些未来可能的应用保留余地(如预留一些空间等)。
合理地设计数据并使用自定义数据类型,尽量减少没有必要的数据类型默认转换与强制转换。
当声明数据结构时,必须考虑机器的字节顺序、使用的位域及字节对齐等问题。
六、表达式与语句
1.在表达式中使用括号,使表达式的运算顺序更清晰。
if(((iYear % 4 == 0)&&(iYear % 100!= 0))||(iYear % 400 == 0))2.避免表达式中的附加功能,不要编写太复杂的复合表达式。3.不可将浮点变量用“==”或“!=”与任何数字比较。
4.应当将指针变量用“==”或“!=”与NULL比较。
5.在switch语句中,每一个case分支必须使用break结尾,最后一个分支必须是default分支。
6.不可在for 循环体内修改循环变量,防止for 循环失去控制。
建议:
循环嵌套次数不大于3次。
do while语句和while语句仅使用一个条件。 当switch语句的分支比较多时,采用数据驱动方式。
如果循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面。
for语句的循环控制变量的取值采用“半开半闭区间”写法。 在进行“==”比较时,将常量或常数放在“==”号的左边。
七、参数
1.如果函数没有参数,则用void填充。
void SetValue(int iWidth, int iHeight);float GetValue(void);2.如果参数是指针,且仅作输入用,则应在类型前加const。(防止该指针在函数体内被意外修改。)
3.当结构变量作为参数时,应传送结构的指针而不传送整个结构体,并且不得修改结构中的元素,用作输出时除外。
4.不要省略返回值的类型,如果函数没有返回值,那么应声明为void类型。5.对于有返回值的函数,每一个分支都必须有返回值。(为了保证对被调用函数返回值的判断,有返回值的函数中的每一个退出点都需要有返回值)
6.对输入参数的正确性和有效性进行检查。7.防止将函数的参数作为工作变量。
void SumData(int iNum, int *piData, int *piSum){
int iCount;
int iSumTmp;// 存储“和”的临时变量
iSumTmp = 0;
for(iCount = 0;iCount < iNum;iCount++)
{
iSumTmp += piData[iCount];}
*piSum = iSumTmp;} 反例:
void SumData(int iNum, int *piData, int *piSum){
int iCount;
*piSum = 0;
for(iCount = 0;iCount < iNum;iCount++){
*piSum += piData[iCount];// piSum成了工作变量,不好。} }
8.必须对所调用函数的错误返回值进行处理。(函数返回错误,往往是因为输入的参数不合法,或者此时系统已经出现了异常。如果不对错误返回值进行必要的处理,会导致错误的扩大,甚至导致系统的崩溃。)
八、可靠性
1.在程序编制之前,必须了解编译系统的内存分配方式,特别是编译系统对不同类型的变量的内存分配规则,如局部变量在何处分配、静态变量在何处分配等。
2.防止内存操作越界。
3.必须对动态申请的内存做有效性检查,并进行初始化;动态内存的释放必须和分配成对以防止内存泄漏,释放后内存指针置为NULL。
4.变量在使用前应初始化,防止未经初始化的变量被引用。5.指针类型变量必须初始化为NULL。6.指针不要进行复杂的逻辑或算术操作。
7.如果指针类型明确不会改变,应该强制为const类型的指针,以加强编译器的检查。8.减少指针和数据类型的强制类型转化。9.移位操作一定要确定类型。
10.对变量进行赋值时,必须对其值进行合法性检查,防止越界等现象发生。11.类中的属性应声明为private,用公有的函数访问。
12.在编写派生类的赋值函数时,注意不要忘记对基类的成员变量重新赋值。13.构造函数应完成简单有效的功能,不应完成复杂的运算和大量的内存管理。14.不要在栈中分配类的实例,也不要生成全局类实例。
15.正确处理拷贝构造函数与赋值函数。
16.过程/函数中申请的(为打开文件而使用的)文件句柄,在过程/函数退出之前要关闭,除非要把这个句柄传递给其它函数使用。
九、可测试性
1.在同一项目组或产品组内,为准备集成测试和系统联调,要有一套统一的调测开关及相应信息输出函数,并且要有详细的说明。统一的调试接口和输出函数由模块设计和测试人员根据项目特性统一制订,由项目系统人员统一纳入系统设计中。
2.在同一个项目组或产品组内,调测打印出的信息串要有统一的格式。信息串中应当包含所在的模块名(或源文件名)及行号等信息。
3.在编写代码之前,应预先设计好程序调试与测试的方法和手段,并设计好各种调测开关及相应测试代码(如打印函数等)。
十、断言与错误处理
1.整个软件系统应该采用统一的断言。如果系统不提供断言,则应该自己构造一个统一的断言供编程时使用。
2.使用断言捕捉不应该发生的非法情况。不要混淆非法情况与错误情况之间的区别,后者是必然存在的并且是一定要作出处理的。
3.指向指针的指针及更多级的指针必须逐级检查。4.对较复杂的断言加上明确的注释。
5.用断言保证没有定义的特性或功能不被使用。
6.用调测开关来切换软件的DEBUG版和RELEASE版,而不要同时存在RELEASE版本和DEBUG版本的不同源文件,以减少维护的难度。
7.正式软件产品中应把断言及其它调测代码去掉(即把有关的调测开关关掉)。8.在软件系统中设置与取消有关测试手段,不能对软件实现的功能等产生影响。9.用断言来检查程序正常运行时不应发生但在调测时有可能发生的非法情况。
第三篇:软件编程实习心得体会
软件编程是一个计算机专业的专业技能,在开展了专业培训工作之后,我们要学会总结。以下是小编整理的软件编程实训心得体会,欢迎大家阅读!软件编程实习心得体会1
此次暑期实习的主要目的是做一个与数据库有关的小系统。比如:学生信息管理系统、工资管理系统等。熟悉数据库的基本操作,掌握SQL语言。
我们小组所做的是关于学生宿舍的信息管理系统。在这次实习中,我们运用的平台是vs2010(c#),因为大三的软件工程课也是运用了vs2010,而且大二时学习windows程序设计时用的是MicrosoftVisualStudio2005,基本一样。而数据库的选择,选用了Access2010,Access供了一个能在办公室环境下使用的、操作简便、易学好用的关系型数据库管理系统,,而我们在大一暑期实习时也学习了这一方面的内容。
通过对老师提供的几个例子的学习,我们开始了我们的数据库系统设计。通过这个学生宿舍管理系统的设计和实现,我们虽然遇到了一些困难,但是最后我们都一一解决了这些问题,了解并掌握了自己对数据库和VS的不足,并且学到了很多东西。
数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。
设计完我们的数据库,我们就开始了VS2010和Access的连接。但是在最开始的时候,我们只知道这两个独立的工具,对于它们的连接可以说是一无所知,通过学习,我们终于了解了,数据库与vs2010连接要先创建数据容器,创建数据集,填充数据集,从而把数据库中的数据显示在vs2010的控件中,学习过后才感觉到不是东西太难,而是我们对新事物的恐惧和不了解。
如果说数据库的连接是我们工作的第一步和最基础的一步,那么接下来怎样对数据进行增添,删除和修改是很关键的问题。数据库与VS的连接一定要有,不过在数据更新之前,肯定要在vs2010控件中实现数据修改的实现工作,然后更新到数据库中,这不仅仅涉及到了数据库的问题,同时要对vs2010中的控件的功能和一些固定函数有所了解。例如我们在做dataGridView控件内容的修改,添加,删除,还原,以及对数据库内数据的更新的时候,就碰到了一些困难,主要是对dataGridView控件的一些属性和函数不了解。通过后来的查书和网络查询,我们才发现原来很多东西都是我们不知道的。
对于数据的修改和删除的关键之处在于对数据的选择,而这恰恰是关于dataGridView的属性了解。同学间的相互讨论最终解决了这个问题。
具体到数据的添加、修改、查询、修改后需要运用SQL语言,我们在大三学过SQLserver,而,SQL语言的基本语句是一样的。因此在简单回顾数据库的书后,我们队气加深了印象,在vs平台下进行操作需要加双引号,这使得代码有些繁琐,第一次编写时尝尝吧单引号,“+”和双引号弄混,所以这时候需要耐心,仔细地查找错误,又一次甚至因为一个小括号的中文输入和英文输入造成了几个小时没找出错误,弄得我们都很郁闷。
当对主要的操作界面设计完后,我们需要将它和登录界面进行相连,但是一个上午,我们用调用Form,却发现虽然界面调用了,可是另一个Form无法对数据库进行连接,我们左思右想,始终找不到解决的办法,于是我们只能想办法把所有的界面放在同一个Form中,而解决这个问题是办法是用很多个groupBox,按照设计要求对其实现可见和不可见。这样才解决了这一个艰巨问题。
在最后的检查工作,我们需要对代码进行修复和完善。这时候要体现系统的用户友好型,对用户的错误操作进行有请提示。对于条件的判断,更需要细致的逻辑思维。
软件编程综合实习已经告一段落,但在实习中我们收获颇多。这是我们完成的第一个数据库系统,也是到目前为止最为完善的系统。这一过程,我们掌握到了软件开发的一系列步骤,这能应用到今后的工作生活中去。我相信能给我们带来很大的帮助!
我们需要对整体有个了解,然后细致地一步一步做下去。有很多东西,我们不可能都掌握得很彻底,但是我们可以对其进行了解,知道有这么一回事,所以开始前浏览SQL宝典和c#的书是非常必要的。当了解后,我们可以利用资源丰富的网络进行查询,这样会事半功倍。另外对于困难的问题,如果投入过多时间还是不能解决,那么就须要选择另外一种方法,不能堵死在一条路上。
在本次实习中我们遇到的没能解决的问题,我们会在接下来的时间中全力解决。
同时,我觉得自己要在以下几个方面加以注意:
首先,在编程的时候要注意理论联系实际。注意将课本上的知识应用到日常的操作中,真正做到学以致用。只有这样,才能做到目的明确,才能有足够的学习动力。
其次,在工作过程中要经常与其他成员进行交流,讨论所遇到的问题,并一起解决。在讨论中解决问题,会节约很多时间,并且在交流的过程中,我们也可以学到更多的东西。
软件编程实习心得体会2目前在国内制造业对数控加工高速增长的需求形势下,数控编程技术人才出现了严重短缺,数控编程技术已成为就业市场上的需求热点。以市场为导向的职业教育不断开辟这一领域的新课题,在传统职业的知识和技术上溶入了数字化信息的新技术、新知识、新工艺。国家大力发展职业教育,大力进行职教师资培训。以骨干教师为重点的培养培训活动在全国各个重点建设职教师资基地纷纷开展。我就是2007年第二批次国家级骨干教师培训的学员,培训地在济南数控编程培训学校,专业是数控加工技术。在济南学习期间,对于数控机床编程技术的学习心得写下来跟朋友们一起探讨。一、学好数控编程技术需要具备以下几个基本条件:
(1)具有基本的学习资质,即学员具备一定的学习能力和预备知识。
(2)有条件选择好的培训机构和培训教材。
(3)在实践中积累经验。
二、学习数控编程技术,要求学员首先掌握一定的预备知识和技能,包括:
(1)基本的机械制图基础。
(2)基本的机械加工常识。
(3)机加工工艺基础。
(4)基本的三维造型技能。
三、选择培训教材应考虑的因素包括:
(1)教材的内容应适合于实际编程应用的要求,以目前广泛采用的基于CAD/CAM软件的交互式图形编程技术为主要内容。在讲授软件操作、编程方法等实用技术的同时也应包含一定的基础知识,使读者知其然更知其所以然。
(2)教材的结构。数控编程技术的学习是一个分阶段不断提高的过程,因此教材的内容应按不同的学习阶段进行合理的分配。同时,从应用角度对内容进行系统的归纳和分类,便于读者从整体上理解和记忆。
四、学习方法与技巧
同其他知识和技能的学习一样,掌握正确的学习方法对提高数控编程技术的学习效率和质量起着十分重要的作用。下面是几点建议:
(1)短期目标规划,在一个较短的时间内集中完成一个学习目标,并及时加以应用,避免进行马拉松式的学习。
(2)系统课题设计,按照课题要求有目的进行实操训练。
(3)注重培养规范的操作习惯,培养严谨、细致的工作作风,这一点往往比单纯学习技术更为重要。
(4)做好实践笔记,将平时所遇到的问题、失误和学习要点记录下来,这种积累的过程就是水平不断提高的过程。
总之,理论指导实践,而实践丰富了理论。理论联系实践才是数控编程技术学习的指导思想。
软件编程实习心得体会3此次只实训了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的理解,不仅使我在理论上对Java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益非浅。除此以外,我知道了什么叫团队,怎样和团队分工合作;同时我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。这也是第一次让我亲身感受到理论与实际的相结合,让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也是受益菲浅的,在短短的三周中相信这些宝贵的经验会成为我今后成功的重要的基石;这对于我的学业,乃至我以后人生的影响无疑是极其深远的。
这次实训虽然是我们的第一次,不过同学们表现不错,由此看来,我们在进入大学的这几个月里学到了不少的专业知识,只是自己感觉不到而已。对于所学专业,我们不能过于自卑和担忧,否则会妨碍自己学习。实训是学习Java的重要环节,有利于我们巩固专业知识、掌握工作技能,提高就业筹码。
我把本次为期三周的实训看作是“理论与实践相结合的桥梁”。通过这周的实训和学习,我知道了此次实训的目的,也清楚目前自己的不足,那就是缺乏相应的知识与经验,对所学的专业知识不能够很好地运用于实践操作。正所谓“百闻不如一见”,经过这次自身的切身实践,我才深切地理会到了“走出课堂,投身实践”的必要性。平时,我们只能在课堂上与老师一起纸上谈兵,思维的认识基本上只是局限于课本的范围之内,也许就是这个原因就导致我们对专业知识认识的片面性,使得我们只知所以然,而不知其之所以然!限制了我们网络知识水平的提高。但是课本上所学到的理论知识是为我们的实际操作指明了方向、提供相应的方法,真正的职业技巧是要我们从以后的实际工作中慢慢汲取的。而针对实际操作中遇到的一些特殊的问题,我们不能拘泥于课本,不可纯粹地“以本为本”。
在这次实训中我得到了许多收获,我第一次体会到Java工程师的工作是什么样子的,也发现了很多不曾注意到的细节,在实训的演示过程中,我对作为一名Java工程师注意的事项应该从小事做起、从基本做起。把职业能力训练与职业素质有机的结合起来。相信这对我接下来学习专业知识会起到很有效的帮助,在接下来的几个月里,我会以作为一名职业人的身份在这几个方面要求自己,严格自我,向Java工程师靠近。
而经过这次实训,让我明白如果是一个完整项目的开发,必须由团队来分工合作,否则,即费力又费时还做不好这个项目。因此不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要学做人,要明白做人的道理,如何与人相处是现代社会的做人的一个最基本的问题。对于自己这样一个即将步入社会的人来说,需要学习的东西很多,他们就是最好的老师,正所谓“三人行,必有我师”,我们可以向他们学习很多知识、道理。
实训结束了感觉虽然辛苦,但很充实。我想这就是Java工程师的工作。我也体会到Java工程师成功地完成一个任务的那种兴奋,那种小有成就的感觉是只有置身其中的人才能体会的。
总之,这次实训为我提供了与众不同的学习方法和学习体会,从书本中面对现实,为我将来走上社会打下了扎实的基础。作为在校计算机专业的学生,现在我能做的就是吸取知识,提高自身的综合素质,提高自己的职业技能,自己有了能力,到时候才会是“车到山前必有路”。我相信在不久的未来,会有属于我自己的一片天空。
我希望计算机专业的同学在以后的学习或工作中以务实的态度给提供更多的机会锻炼自己,为大家的成才与就业奠定坚实的基础;并希望同学们要做好角色定位,将自己所学的知识,学熟、学精。
多学习和收集与项目有关的资料,来提高自己的业务水平,同时多请教经验丰富的老师,使他们好的经验能够对自己起到借鉴作用,在他们的帮助下,能够很快的培养自己的管理技能及节省时间,避免做无用功,也可以让自己了解很多项目管理上的捷径,从而减少自己会遇到的挫折和错误。
第四篇:软件编程学习心得
软件编程学习心得
随着计算机技术的发展和工作的需要,为了能够更好的维护公司生产管理系统;公司安排我们到北大青鸟APTECH进修。我们选择了时下最流行、发展速度较快的语言C#。C#学习共分三个阶段,目前我只学习了第一个阶段;现将我在北大青鸟学习第一阶段为期两个月的学习心得总结如下:
C#是一种新的面向对象的编程语言,专门用于.NET运行时。C#编译器只能生成受管制的代码,也可以使用.NET基类。C#语言自C/C++演变而来。但是,它具有简单、现代、完全面向对象和类型安全等诸多特性。下面就简单说说简单和现代其中两种特性。
1、简单
C#具有C++所没有的一个优势就是学习简单。该语言首要的目标就是简单。很多功能(还不如说是缺少了C++的一些功能)有助于C#全方位的简单。
在C#中,没有C++中流行的指针。默认地,您工作在受管理的代码中,在那里不允许如直接存取内存等不安全的操作。我想没有C++程序员可以声称,从没有使用指针访问过不属于他们的内存。
C#弃用其它操作符,名字空间、成员和引用仅使用单个操作符 “.”。现在一个程序员所需要理解的就是嵌套名字的注解了。
C#使用统一的类型系统。这种系统充许您把各种类型作为一个对象查看,它是一个原始类型还是一个full-blown 类。和其它编程语言相比,由于加框(boxing)和消框(unboxing)的机制,把简单类型当作对象处理并不能获得性能的改善。稍后将详细解释加框和消框,但基本上仅当需要时才使用对象访问简单类型这种技术。
2、现代
投入学习C#的努力是一笔大投资,因为C#是为编写NGWS 应用程序的主要语言而设计。很多用C++可以实现或者很费力实现的功能,在C#中不过是一部分基本的功能而已。根据应用程序的特殊需求,可以很容易地创建出新的一种数据类型。
指针不再是编程武器的一部分。运行时NGWS提供了一个垃圾收集器,负责C#程序中的内存管理。因内存和应用程序都受到管理,所以很必要增强类型安全,以确保应用的稳定性。
异常处理是C#的主要功能。C#的异常处理与C++的不同点在于它是交叉语言的(运行时的另一个功能)。在没有C#之前,您必须处理怪异的HRESULTs,但现在由于使用了基于异常的健壮的出错处理,这一切都结束了。
对于现代的应用程序,安全是首要的,C#也不会例外。它提供了元数据语法,用于声明下述NGWS安全模式的能力和许可。元数据是NGWS运行时的一个关键的概念。
通两个多月学习,我能够很好的掌握C#语言的基本语句、语法以及老师补充的一些要点;能够编写简单的应用程序,例如电子邮件的收发等,为接下来的第二、第三阶段学习打下了良好的基础。
第五篇:软件编程测试部工作总结
软件编程测试部工作总结
2010年已近尾声,回顾这一年里的工作收获颇多。年初一直在参与中行对公系统的测试工作,中国银行对公代客资金管理系统已2月份对公系统顺利投产。紧接着春节后又开始了xx银行的X-FUND2.0项目的全程介入测试。跟随项目组一同到北京现场开发测试,以及后期配合用户的压力测试,项目投产内部演练和支持等工作。目前中信X-FUNDS2.0系统也已经投产完毕。
8月份后回到公司,主要从事公司内部集成测试和系统测试工作,主要测试系统包括福建分行日积月累系统、SGE与K+接口管理系统、xx银行利率衍生品交易系统、浦发银行离岸交易系统、中国银行新一代做市商系统等。目前正忙于新一代做市商系统测试工作,该项目计划年底投产。
补丁测试方面主要有部分辖内对公系统补丁测试、部分中行对公代客管理系统补丁测试、澳门资金管理系统补丁测试、中信X-FUNDS2.0系统补丁测试等。
压力测试方面主要有中信X-FUNDS2.0系统、中信外汇电子交易系统压力测试、统一登录系统压力、浦发离岸系统压力、新一代做市商系统压力测试等。
从年初的中行对公项目到xx银行X-FUNDS2.0项目再到中行新一代做市商项目。一个个项目完成测试任务并顺利投产或进行中。
从本内主要项目的测试及跟进客户测试方面经验教训进行总结,以便更好的提高项目介入测试的质量和完善自己的能力与不足之处。
一、测试组内部要有计划。介入项目测试以后,理论上讲是应该配合项目组的测试工作。但个人认为这样测试组方面工作会比较被动,跟随项目组指定的测试并不能比较全面的覆盖到系统全部功能或者绝大多数功能。如更新一块,就让你测一块,这样无形中就会疏漏其他模块。测试组内部可以根据项目整体工作的安排情况也应该有自己的测试计划,即完整测试轮次的计划,这样能更好的把握系统整体功能情况。这部分工作在进驻客户现场测试时应与项目组长沟通,明确每日工作流程,如版本更新时间约定、内部更新测试安排以及配合指导用户测试等工作。[莲~山课件 ]
二、项目的测试进度控制。主要是按照项目计划进行的,按照项目组计划要求完成测试任务、提交测试类相关文档,包括制定内部测试计划、测试案例的完善、执行测试、缺陷跟踪以及BUG回归测试等。协调项目的内部测试工作,配合项目工作,共同保证项目质量。项目测试的问题跟踪及处理采用每日进行修改问题回归测试工作,每日同步更新问题跟踪单的模式,按照规划时间完成系统更新测试等。
三、要加强学习和沟通。在进驻客户现场测试后,测试人员的工作要配合项目组,也要指导和协调客户测试。项目组内部共同探讨解决问题的方法,向各模块负责人学习模块功能处理方式,向业务人员了解系统中涉及的业务知识点,两者结合起来进行模块功能测试。与客户接触吸收新的业务知识,积累测试方面必须的业务知识点,这些都做公司系统测试应有的测试基础,或者说银行金融行业项目测试工作的素养。也可以进步一提高与客户、与项目组内的沟通能力和协调能力。多参考客户测试的测试案例及测试过程中提出的问题,也能为自己的测试工作打下一个好的基础。
四、善于总结和吸收项目经验教训。总结回顾以往的项目测试经验可以更好的指导以后的测试工作,也会提高系统缺陷和业务处理流程方面不合理情况的发现率。测试出来的问题与项目组沟通也会比较容易.。鉴于以前的项目经验,也可以向项目组提出了一些完善性意见和功能实现的处理方式。
五、个人得失及不足。作为几次项目测试的负责人,对于日常的测试流程、测试任务分配、测试执行、缺陷跟踪、协调内部测试及协调客户测试方面能力均得到了进一步提高,理清了项目整个过程中测试小组的工作过程以及后期的项目移交工作。同时也对系统相应的业务知识有了更进一步认知。相关业务知识方面还需要进一步加强,测试技能及测试管理方面还需要进一步完善学习。更好的吸收项目经验,做好以后的补丁测试工作及其他项目的测试工作。
项目测试中,维护部门配合介入的测试工作比较难分配及管理。维护人员并不是很积极从事项目的测试工作,且分配的任务也不情愿去完成。在中信X-FUNDS2.0项目和新一代做市商项目组中都能明显体现出来。他们多是认为项目组的测试过程中的工作不属于自己的职责范围,认为自己只是一个简单的配合过程,要求加班时间要么不来,要么就做其他无关工作的事情。项目组也认为维护人员只是做自己的维护工作,抱怨时只会对测试人员。项目测试工作量也比较繁重,频繁的超负荷工作,给测试人员也造成比较大的压力。
公司是否可以通过下放部分考核比例,由测试负责人给组内测试人员和维护人员的工作进行考核打分,来约束和督促内部测试工作的合理进行。
公司是否应该考虑制定比较合理项目开发和测试周期计划及人员分配比例,切实减少超负荷工作带来的压力。
公司的业务逐年扩展,测试部门人员缺口较大,主要测试工作基本都落在了部门几个人身上,望明年公司能合理补充人员,并能在薪资待遇方面能有比较合理的增长。
测试部内部是否应该经常在和合适的时间组织测试技能、业务知识以及项目经验方面交流的讨论会等,以便更好的分享各自的经验教训,为今后的工作提供更多的基础支持,同时也应加强新人的培训力度。