勇于实践,突破自我。
班级:__信管112___
学号:__3110561032___
姓名:__王___晨___
勇于实践,突破自我。
2012--2013学年的暑假是我大二的暑假,在我看来,这应该是我上学期间的最后一个暑假了。但是,我毅然放弃了在这个暑假出去旅游的机会,而是在西安图论软件****参加了暑假社会实践,虽然我实践的时间有限,只有短短的一个月时间。但是,这段时间的实践让我学到了很多的东西,在增长见识的同时,也增强了自我能力。
在实践的过程中,无论是动手能力还是与人交际能力,团队合作意识都得到了很好的锻炼。非常感谢学校能组织这样的暑期社会实践活动。
西安图论软件****是一家从事c/c++ 编程语言培训的公司,我在此公司学习c、c++ 的同时,也参与了几个练习项目的编写,其中包括:基于mfc的图书馆管理信息系统、基于linux的自己的shell环境编写、大数据的加、减、乘、除、求余、取模算法设计和基于大数据处理的文件加密、解密项目等。在参与这些项目的过程中,不但提高了自己的编程能力,也培养了自己团队合作的能力。
首先,在经历了一个学期的c/c++ 课程培训之后,我系统的学习了c语言与c++语言。在暑假伊始,就开始着手做基于mfc的图书馆管理信息系统。刚开始因为学习的只是一些简单的c++ 编程技巧,对于一个实际的项目应该从何入手,真的是一窍不通。
尤其是在怎样全面的分析用户需求,怎样让自己所编写的项目能够达到用户需求,怎样全面的解决用户的要求等方面百思不得其解。还好我们有老师带着我们分析用户需求,而且老师也在我们学习mfc的应用时,具体的教授了我们主要控件的使用,变量的添加、初始化以及怎样将变量刷新到程序中。事务处理程序的编写,怎样将控件与事务处理函数相关联。
从而,我的脑海中逐渐出现了项目编写的思路。而且对于自己将要干的事情更加的清晰。之后,我们主要学习了利用ado技术链接sql server 2005数据库,通过编写**将数据库中存储的信息提取到程序中,并将其显示到mfc的界面上。
这样,我们就有了编写这个项目的基础。
在接下来的一个周内,我几乎每天都在研究这个项目的编写。即使我们已经学习了mfc的应用,可是在编写这个项目时,还是遇到了各种各样的问题:
第一,根据编程规范,我们要将**的层次结构分离,降低**的耦合性,提高**的复用性。老师只是给我提到了一个设计模式:单例模式。
可是对于单例模式的使用,没有一点可行性的想法。通过在网上查找资料,仔细的阅读查找的资料,并不断的同同学讨论,最终很好的解决了这个问题,利用c++ 语言面向对象这一特点,结合static这一关键字的使用,将数据库操作**与数据处理**相分离。从而解决了**层次分离的问题。
第二,在ado连接数据库的学习时,我们只是学习了怎样将数据库中的数据提取到**中,而此项目的要求不仅仅是能够查看信息,还要能够输入信息并存到数据库中,对于将数据刷新到数据库中的技术我从未涉及,更不知怎样编写**。同样的,我只能是上网查找资料,并与同学**。最后,通过调用ado所封装的内部函数addnew和put_collect将输入的数据信息刷新到数据库中。
在这个项目的编写过程中,虽然只是经历了一个周的时间,但是在这一个周内,我感觉到了我的成长。我已经不单单的是一个学生,而是一个一只脚已经迈进了社会的大学生。在这个项目中,我不但学会了自己不懂的东西自己找资料,自己学习,而且必须是自主自愿的学习。
没有人会强迫我,完全要依靠自己的自控能力。还必须学会与同学或者同事合作,讲究团队精神,这样才真正能够事半功倍。
其次,在我们学习了一些linux的基本操作命令之后,老师要求我们编写一个自己的shell环境。并且要求已经明确的给了我:要实现系统所带的shell的基本功能,例如:
创建目录命令(mkdir)、删除目录命令(rm -r)、创建文件命令(touch)等等。由于我们之前所接触的最多的就是windows 系列的操作系统,windows系统是图形界面的操作系统,便于我们的操作。对于第一次接触linux操作系统的是我而言,所有的一切都是那么的别扭。
总是感觉在linux下编写**不是那么的顺手。可是当老师给我们看了一份一位已经工作了的学姐发来的工作心得之后,我决心不管有多大的困难,我都要努力学习linux操作系统。因为在将来的工作中,可能要经常使用linux操作系统,现在学好,总是要比工作时在临时抱佛脚的好。
这一次,我已经有了之前编写mfc的项目的经验,不在是慌慌张张的不知道自己该干什么了。首先,我并没有急于去编写**。而是在仔细的分析老师给的项目的要求。
因为有系统的shell环境为例子。所以,我认真的分析并研究了系统的shell环境所能提供给用户的所有的功能。并分析了其提供给用户的命令的书写格式。
因为这是前人经过很久的完善才达到现有的效果,这样设计必然有其合理之处。所以,我决定就仿照系统的shell环境编写自己的shell环境。其次,在分析了需求之后,我大概想了自己的shell环境所要用到的关键技术难点。
并查找相关的资料,在《unix环境高级编程》这本书中。我找到很多自己以前并不知道的知识点。接下来,我就开始设计自己的shell环境编码的架构,因为用c语言编写这个shell能够更加简单清晰一些,所以我采用了c语言编写这个项目,而放弃了用c++编写。
在设计好了我的**架构之后,我就开始着手写自己的shell环境**了。
虽然之前做了很多工作,但是在调试运行的过程中,还是出现了一些问题。在显示目录内容时,很难做到字节对齐,展示出来的信息因为信息的长度不同,在界面上是乱作一团,和系统的shell比起来真是不忍直视了。再尝试了各种方法调节字节对齐后,还是做不到系统的效果。
这个时候,我已经精疲力竭了。没办法,我只好停下来换一种思路解决这个问题。于是,我翻开了我们刚开始学习c语言是用的那本书。
在介绍printf函数的那个章节里,我看到了字节对齐问题的解决办法,看到这个方法真的让我欣喜若狂。在解决了这个问题之后,也引起了我的反思:学知识绝对不能今天学明天忘,古人有云 “温故而知新,可以为师矣!
”,所以,在今后的学习中,不但要努力学习新的知识,还要不但温习已经学过的知识。这样才能做到真正的博学广知,才能真正的提高自我能力。
在接下来的进程后台运行时也出现了问题,当一个进程执行后台运行后,虽然达到了后台运行的效果。但是,在之后运行进程是,无论是前台运行还是后台运行,其结果都是执行了后台运行的程序。在不断的修改**,改变思路后,还是没能够解决这个问题。
不得已,只好求助于老师了。老师在看过了我的问题和**之后,只是告诉我了这个问题是在后台程序运行完之后产生的问题。在子进程运行完之后会向父进程发送一个信号,而我的程序并没有这样的信号处理函数。
所以才会在运行前台程序时,前台的wait( )函数接收了前一次运行的进程所返回的信号,从而达不到前台运行的效果。在得到老师的提醒之后,通过翻看《unix环境高级编程》,找到了linux的各种信号宏定义,并学会了信号处理函数的编写。之后修改了**,顺利的解决了这个问题。
之后还是出现了这样的那样的小问题,但是通过我的努力,还是一一解决这些问题。
通过这次编写自己的shell环境项目。不仅是在编程能力及对linux的了解程度上的提高。更重要的是,我学到了很多,以前认为自己学的还不错,老师让写的**,总是能够很快的完成。
可是这次我知道了,其实自己的能力是有限的,还有很多东西,自己并不熟悉,甚至说,自己一点都不知道。生活中的事情也是这样,不能够总是沾沾自喜自己已经获得的成就,而是要不断的向前看齐。不断努力的做的更好。
或许我们不是最出众的哪一个人,但是我们必须学会做最好的自己。这样才能得到别人的尊重。
在最后的剩下的时间里,我跟着老师一起编写了大数据的处理程序。因为老师想通过这个项目告诉我们怎样才能编写一些好的**,所以这次的编写基本是由老师完成的,我只是学习老师编写**的思路。但是,老师通过对一个问题用了不同的方法处理,之后比较这几种方法只之间的差异。
让我知道了,好的**,不仅仅是实现用户的所有需求。更重要的是,怎样才能更快,更高效的处理这些问题。怎样才能提高设备的使用率,而减少处理时间。
因为就目前的发展形势来看,未来是一个处理海量数据的年代。如何高效率,高速度的在海量数据中找到所需的数据才是未来的发展方向。生活方面也是如此,我们不能安于现状,不思进取。
做任何事情都要精益求精,这样才能将事情做的更加完美,更加漂亮。
经过这次的社会实践,我不在是那个整天只知道憧憬未来的青少年,我也不再是那个没有压力,整天得过且过的大学生。这次我迈进了社会,亲身体验了社会中的竞争与压力,让我突然之间长大了不少。而且,这次的实践也让我看到了很多自身的不足与缺点,也锻炼了团队合作能力、自学能力、与人交际能力。
总之,非常开心学校能组织这样的社会实践活动,之前从来没有想过要进入社会中去锻炼,只是想着这都是毕业之后的事。但是这次社会实践改变了我的想法。作为当代大学生,我们应该积极的进入社会,更早的了解社会。
在社会中历练一番,才能发现自身的不足,才能真正提高自己的能力。这是在学校学习过程中所学不到的东西。
社会实践报告暑假社会实践报告
三一文库 报告范文 社会实践报告 暑假社会实践报告 这个暑假,我到银行实习,时间很快就过去了,在银行的实习过程中,我学到了很多,以下是我这次的实习报告 一 银行实习调查内容 大学校园就像一个小社会,入学已经两年了,我们已经渐渐地适应了这个小社会的生活,然而作为大学生,接触社会,适应社会是必不可少的。...
社会实践报告暑假社会实践报告
三一文库 报告范文 社会实践报告 暑假社会实践报告范文 暑假社会实践报告范文。我以我心看家乡安龙历史悠久,古迹众多,山川秀丽,是个风情浓郁的多民族县。安龙人民勤劳,朴实,聪慧,用辛勤的劳动建设自己的家乡。在中国共产党的领导下,全县各族人民正团结奋斗,继往开来,共创美好的明天。自中国共产党十一届三中全...
it暑假社会实践报告社会实践报告
一 实践目的。通过实践,培养综合运用j a语言的面向对象编程能力 培养动手能力 培养良好编程规范 编程方法 以便能较全面地理解 掌握和综合运用所学的知识,提高自身的编程能力 增强自己的团队协作意识,了解软件开发的思考角度和主要流程。通过理论与实际的结合 学校与社会的沟通,进一步提高自己的思想觉悟 业...