2018寒假作业:总结

Wesley13
• 阅读 361

#2018寒假学习总结

##前言 今年寒假刚开始前,本打算好好的学习服务器后端建设以及趁着寒假的空余时间配合ACM队的寒假比赛学习算法,却在开始后不久就收到了班主任和助教学长学姐的关怀,送来了C++寒假学习套餐,使得原本双开就比较繁忙的寒假生活变得更加的忙碌。不过寒假虽然忙,但是却没有初高中赶寒假作业那般枯燥,有趣的题目以及兴趣使得我的这个寒假变得极其有趣和充实。


##寒假作业(C++)学习内容总结 花费时间 | 锻炼代码行数

  • | :-: | - 大约每天两小时|数千行 ###1、由面向过程程序设计(C语言)向面向对象程序设计(C++语言)的过渡 在现代,一个优秀的大型程序需要依靠团队的充分配合来共同完成的,而面对庞大的项目,选择合适的语言来开发能达到事半功倍的效果。C++语言便是一种适合团队开发的优秀语言,通过对程序数据+算法结合的数据类进行分开管理,大大简便了系统的维护和升级,对开发大型软件系统提供极大的便利。 ###2、类:数据+算法 在C语言中,可以自定义数据类型(关键字struct),即结构体。在C语言中,结构体仅能将一些数据进行集中管理,但是依然极大的方便了程序员的操作,最直观的好处就是节约变量名(起名字什么的可是很麻烦的)。C++中对结构体进行了全面的升级,它不仅可以包含成员变量,也可以包含成员函数,使得数据与算法可以进一步整合集中管理。 而在C++中除了结构体,还有一种新的数据类型定义的方法——。在自定义的类中可以定义成员变量,定义成员函数,与结构体的不同使得类能更完美的结合数据与算法,而且使得代码的重用变得更加容易,开发大型软件变得更加简单。 ###3、STL(标准模板库):简化程序设计 C++自带的标准模板库将世界上众多科学家呕心沥血想出的算法和容器整合在一起,有了STL的帮助,可以标准化程序设计,这样就不用重新开发,直接使用现成的组件。 ###存在的疑问 C++中是如何高效重用代码的,大型软件开发的团队协作究竟是如何协调完成的等等。

##模拟电梯作业的总结&收获 第一次进行比较大规模的开放程序设计,对结构化程序设计有了一个较大的认识。结构化的程序设计将一个对象的数据整合进一个模块内集中管理,方便程序员的调用;将一些重复的代码整合为子函数,在主函数中在需要使用这些代码的地方之间调用子函数,不仅使代码更加好看易懂,更重要的是省去了重复编码的时间(写完函数后只需要一句话就能用函数简直爽啊!)。 其次的一点是让我深刻意识到了错误的代码风格和注释习惯对后期代码的查错和维护造成的不利,对于仅150行左右的代码便写的焦头烂额。软件并不是小程序那样解决完问题就可以丢一边不管的东西,它需要随着时间去不断的发展,所以代码的重用性和可再修改性非常重要,对于有一段时间没有了解的代码,要能在非常短的时间内了解到这个程序的思路,某个函数的作用,某个变量的意义,才能快速的修改。扩大范围来说,在团队中一致的良好代码风格显得更加重要,不同的人所负责的代码不同,而编写子程序的人就需要依靠和编写主函数的人约定好的风格编写子程序,才能方便编写主函数的人快速利用子函数,如果没有用通用的代码编写风格,团队的效率便大打折扣,甚至根本无法配合。 其三,想好思路再下手!想好思路再下手!想好思路再下手!上百行的代码推掉重写可是很不爽的,第一次作业简直血的教训啊。


##后记总结 寒假作业也是检验我们自学能力的一场考试。刚看到作业就提出这么难的问题,确实是在考验我们通过自己学习去解决难题的本领。班主任通过寒假作业来帮助我们自学,对于货真价实的知识,从中强化的自学的能力更为重要。


#End

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Karen110 Karen110
2年前
​一篇文章总结一下Python库中关于时间的常见操作
前言本次来总结一下关于Python时间的相关操作,有一个有趣的问题。如果你的业务用不到时间相关的操作,你的业务基本上会一直用不到。但是如果你的业务一旦用到了时间操作,你就会发现,淦,到处都是时间操作。。。所以思来想去,还是总结一下吧,本次会采用类型注解方式。time包importtime时间戳从1970年1月1日00:00:00标准时区诞生到现在
Stella981 Stella981
2年前
Python之time模块的时间戳、时间字符串格式化与转换
Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。 time.struct_time(tm_y
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
2年前
Android蓝牙连接汽车OBD设备
//设备连接public class BluetoothConnect implements Runnable {    private static final UUID CONNECT_UUID  UUID.fromString("0000110100001000800000805F9B34FB");
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这