回顾一年的IT学习历程与大学生活

今天是2015年8月27日,距离成为大三狗还有一个多星期,在这个不算繁忙的暑假的下午来总结一下这一年来,在IT方面的学习。

一、入门(2014.3)

  我大一的专业是信息工程,信息工程听上去就是信息(Information)工程(技术~Technology)貌似就是IT技术了,但却是如假包换的硬件电子技术专业,在读高中时翻到过一本C++的书,对当时的我来说,简直是噩梦,一个高中生怎么会看得懂。于是没有填报计算机专业,来了这个硬件专业。

  好在大一下的时候开设了C语言这门专业课,浓郁的兴趣让我我花了两个星期的课余时间把我们的谭浩强老先生的课本看完了,然后又把《C Prime Plus》过了一遍,这个时候开始懊悔自己没有选择计算机专业,所谓高中时期让我难懂的代码,其实就是一个思考的流程而已,并不是很难。除了C语言这个专业课以外,对电路、电工这类专业课毫无兴趣。经过一个星期的思想斗争,提出了转专业的申请。

二、转专业(2014.4)

  自己大一做了一整年的学生干部,当辅导员和校里某科室的科长助理,对学校的相关政策也是比较了解的。转专业这件事,其实只要低调,对学校运行影响不大,老师就会给放过的,我们学校的计算机专业在计算机学院,我在信息学院,跨学院转专业需要协调好我和两个学院的书记院长的关系。好在自己信息学院有一个数字媒体技术专业,听起来和计算机毫无关系。实际上这个专业是计算机科学与技术的二级学科,专业课程虽然有什么素描、色彩、广告、影视、传播、三维、平面设计等这种艺术设计课程,但也有Java、DB\OS\CN 这类计算机课程。而且完全没有什么电路相关的硬件课程。算是减轻了我的课业压力。转来这个专业,简直就是虐狗般的轻松,在原来的那个专业排23/48名,但在这个专业排到了6/53名。虽然上色彩课什么的感觉不愠不火,但始终提不起兴趣,包括ps、corlDRAW等课,但至少比数电模电学起来轻松很多。但在后面,对我个人做项目时,GUI设计起了很大的帮助。

三、加入工作室(2014.7)

  我加入了我们院的一个偏软件的工作室,我们院共2个软件类的工作室,PHP和Java,但我们学院不开PHP课,所以我选择了Java,而且Java工作室的考核是最严格的。

  7月,我们兴奋的把自己的笔记本电脑带来工作室,开始了学习,结果第一周我报名了暑期社会实践,去“服!务!社!区!”了,真是不懂自己的脑洞,为什么要去做那个,结果导致自己的学习进度比别人慢了一个多星期。但最后磕磕碰碰,也总算把JavaSE部分学完了,这里说一下我的学习方法:

学习资料:《SCJP考试指南》

学习视频:马士兵JavaSE

每天早上7:00到工作室按指纹签到,9:00退签。

其实学习进度安排的不算快,主要是这些知识点:

面向对象、异常断言错误、字符串以及相关类API、IO、格式化与解析正则表达式序列化日期、包装类、泛型与集合、内部类、线程

每天学习8小时。

看书+不懂的看视频、搜索+上机自己联系。

暑期虽然花了一个多月学完了JavaSE部分的内容,但都不是很熟,毕竟没有做项目。

四、OCJP(2014.9)大二了

工作室历来的规定:学程序组的必须考取OCJP认证[O(ORACLE)C(认证)J(Java)P(程序员)],虽然自己恨死了这个制度,因为这个证用Oracle学院打折后还要700的报名费,但通过开学9月份的刷题,刷OCJP的题库,才发现暑期学的JavaSE基础超烂,最后查漏补缺。才觉得自己JavaSE学的OK了。

五、小知识的学习(2014.10)

十一国庆节,在学校把XML学了,学了什么DTD\Schema\DOM4J的什么乱七八糟的鬼技术,然后是学了下HTML,然后再准备准备OCJP就去武汉把证考了,最后好像是78分来着,集合和泛型那一块和垃圾回收器错的挺多的,这个时候的确不太懂。也认栽。不过好歹把证考到手了,工作室不会刷我了。这个时候我才发现,工作室就剩下2个男的了,我和另外一个……我才发现原来女生也有这么多学编程的。

十一月被财务处喊去做2015年的财务预算,要我帮忙,差不多一整个月都没有来工作室了= = ,真是对不起工作室啊。

六、Android技术的学习(2014.12)

财务处的事情差不多忙完了,赚了1200多,虽然在校内能赚这么多是挺难得的。但这个时候我也意识到,我作为一个大学生,真的没必要为这一点钱那么拼,学生嘛,学生干部的本质其实还是学生,就应该以学习为重,虽然1年来我做的行政事务已经很多了,但这也是我以后就业的下策,还是要靠编程吃饭,就跟老师说我第二年不来了,老师也极力挽留了我,但还是婉拒了。

然后12月开始学android了,我就是我、不一样的烟火~!!!!!!

为什么?

我加的是一个Web小组,去做Android!

然后就开始处处碰壁了……

我作为我们年级唯一一个学android的,没有人带,没有人指导,从自己下载Eclipse,然后用free g***翻去android官网下ADT和SDK。挂了一个通宵都没下好。我当时心都死了,最后到处搜,才发现了用大连东软的镜像就可以下载了……光自己配环境就花了一个多星期= = 。老师是个新来的,好像也不懂啊啊啊啊啊啊啊啊啊啊啊啊啊啊。

七、大二寒假(2015.1)

复习以及考完了期末之后,回到工作室继续学习android了,我居然买的是坑爹的《疯狂Android讲义》,动不动就说,这个和Web里面的Servlet是一样的!!!我TMD就没学过Servlet。简直难受!!最后寒假憋了两篇软件设计类论文共12000字,因为宿舍断洗澡水什么的,就回家了。

这个时候,我啥项目能力也没有,自卑的很!!!!工作室其他人都慢慢的在搭建自己的网站了。

八、大二下(2015.3)

一开学,粪发涂墙!!开始学软件测试和继续学Android,因为三月底要考计算机三级,选的是软件测试,虽然最后没过,但这个月也算是把软件测试的知识点过了一遍,我们专业不开这门课,android也把四大组件和数据存储看完了……然而啥感觉都没有。这里推荐一本书《第一行代码》——郭霖,比那个什么鬼疯狂android讲义更好入门一些。

九、“接手”项目 (2015.4)

这个时候、一大波项目涌入工作室了,当然全是web站点的项目。我就充当了一下小前台,做了5个网站前台需要的Flash,把AS 3.0学了下。这个时候,除我以外的所有人都有项目了,我很不甘心,自己android学的还不咋,只能做只有1个Acivity的计算器!!

十、转做后台(2015.5)

工作室项目太多了,别人都在催了,这个时候我也不太甘心,自己一个人乱摸索Android开发,自己连MVC模式都不清楚,就转做JavaWeb开发了,学习安排如下:

JSP:5天

Servlet:5天

JDBC+SQL+Mysql:2天

JSTL+EL:2天

MVC+留言板项目:8天

差不多24天左右,把Javaweb的基础学完了,这个学期有双学位的课,所有的周末都在上课,也比较忙。

十一:继续学习(2015.6)

花了一个星期把JS学完了,然后花了2个星期写了大学生创业扶植的申报材料以及商业计划书,超级痛苦的,作为工科生,但还是咬咬牙一个人把公司的事务全部扛下来了。最后得到了省里至少3万元的创业补助,也想想这个月的付出值了。

十二:项目实战(2015.7)

期末考试后,就是暑假了,因为家里出事了,又耽搁了一个多星期。在暑假,做了这些事

1、基金会网站后台搭建,与前台css修改——7天:第一次做项目,这种兴奋感很难得,终于算证明自己会Web项目开发了

2、微信二次开发技术学习:通过慕课、CSDN博客以及书,做了一个公众号,有银行卡号、医保卡号、人脸识别、笑话、天气等等功能的一个小应用型App,想进一步了解的可以关注mige1995,这个是用Java开发的,网上资料大部分微信开发的资料都是基于PHP开发的。

3、湖北省重点实验室网站后台搭建:和基金会类似,但界面要求比较高,所以花了3天修改后台界面的模板,最后还是花了7天完成的这个项目。

4、复习之前学的android技术,有了web技术,学android简直易如反掌,花了3天复习完之前学习的android,简直后悔一开始学android。要是我之前先学了web也不会让我进度如此的慢了,真希望有一个前辈带我,马上大三了准备继续学习Android和SpringMVC +Spring+Mybatis。然后考研,毕竟自己技术还是很渣。

最后:如果有新人的话,我会这么建议你的开发学习流程,不一定科学,仅供参考:

1、C语言

花2个星期把谭浩强过一遍,如果还感兴趣,可以继续学习C Prime Plus。这个时候C语言基础应该算不错,可以通过计算机二级考试了,当然也可以不考。

2、Java语言

一个月的时间把JavaSE部分学完,并且用OCJP题库练习一遍,总共300道选择题。有很多重复的,要是弄懂了JavaSE的基础也算很好了,对于传统的书面考试85+或者90+应该不成问题。

3、JavaWeb技术

3~4周的时间

学习 JSP/JDBC/Servlet/JSTL/EL这些技术

然后学习MVC的思想,做一个小型的项目(如:留言板)。

4、项目实战

用一周的时间可以做一个较大的网站了,如学院的官网等。(配合使用Kindeditor)

5、知识补充

需要补充的知识有:

Javascript、Jquery

Ajax(约2周)

以上主要是学网页局部刷新与表单验证的使用。

以及

XML \ JSON \ JSOUP (一周)

用于从其他开放平台获取数据,如从中国天气网获取天气数据。

6、其他技术

有兴趣的可以学学用Java 的

表单技术、Excel、PDF、验证码技术、等

7 、拓展

学习微信开发或框架技术了

推荐使用SSM

可以了解git与github以及Maven是干嘛的 。

或者这里转行做android也是可以的。

回首一年的学习,其实自己缺乏一个好的导师,跌跌撞撞的学了一年别人培训班3个月的东西,又不在计算机学院,而且最后工作室就剩下我一个男的了。 虽然来博客园不久,自己水平也不足以分享特别有技术含量的东西,但我还是会努力继续学习IT技术,感谢所有支持我的人。

时间: 2024-11-10 07:04:24

回顾一年的IT学习历程与大学生活的相关文章

登录模块的进化史,带大家回顾java学习历程(二)

接着前面的登录模块的进化史,带大家回顾java学习历程(一) 继续往下面讲 前面我们去实现登录功能,都是想着要完成这个功能,直接在处理实际业务的类中去开始写具体的代码一步步实现,也就是面向过程的编程. 那么现在我们站在设计的角度上去实现该如何做呢?实际上在项目开发的时候,需求规划和数据库设计好之后,我们开始写代码,往往只用写一些接口出来,接口里面只有一些各个业务对应的空方法,没有具体的实现,在架构师进行接口设计的时候,就已经想好了该功能之后通过实现与调用这个接口肯定是可以实现的,等各个功能相关的

android金阳光自动化测试——学习历程:自动化预备知识上&&下

章节:自动化基础篇——自动化预备知识上&&下 网易云课堂: 上:http://study.163.com/course/courseLearn.htm?courseId=712011#/learn/video?lessonId=877113&courseId=712011 下:http://study.163.com/course/courseLearn.htm?courseId=712011#/learn/video?lessonId=877114&courseId=71

我的Linux学习历程:那些我看过的Linux书籍们

[+]查看原图http://www.ituring.com.cn/article/119401 来北京工作已经一个多月,大都市的生活比起读大学要忙碌得多,尤其是出行,基本以小时为基本的计时单位.有时茫然看着窗外车水马龙,会有些迷茫自己选择的是对还是错. 题外话不多说,回归这次的主题,扒一扒我看过的那些Linux相关的书籍. 对于Linux的了解和接触,缘起自大一时候的Linux限选课,老师说这门课可选可不选,但是选修后考试挂了的话需要补考.当时的我还比较爱学习,于是兴冲冲地选修了这门课,用的是清

java的学习历程(二)

接着前面的登录模块的进化史,带大家回顾java学习历程(一) 继续往下面讲 前面我们去实现登录功能,都是想着要完成这个功能,直接在处理实际业务的类中去开始写具体的代码一步步实现,也就是面向过程的编程. 那么现在我们站在设计的角度上去实现该如何做呢?实际上在项目开发的时候,需求规划和数据库设计好之后,我们开始写代码,往往只用写一些接口出来,接口里面只有一些各个业务对应的空方法,没有具体的实现,在架构师进行接口设计的时候,就已经想好了该功能之后通过实现与调用这个接口肯定是可以实现的,等各个功能相关的

大三仍是Linux系统小白的我给大家讲讲学习历程

我与Linux结缘是在大三的时候.我与Linux熟识是在偶然遇到<Linux就该这么学>的时候.因为我是电子信息工程专业,在高年级时开设了嵌入式课程,嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分.所有带有数字接口的设备,如录像机.车子等,都使用嵌入式系统,有些嵌入式系统还包含操作系统.嵌入式操作系统包括μC/OS-II.嵌入式Linux.VxWorks等,但大部分嵌入式操作系统是不开源且不能免费使用,只有Linux是基于GPL协议,所以它成为了嵌入式系统的绝对主流. 我们学校的嵌入

SOC学习历程概述

从开始接触soc到现在大概有两年半左右的时间了,经历了ORSOC到minsoc再到mkg-soc的搭建,以及现在的大小核系统的搭建 首先先讲下学习的前期需要具备的知识,前面3点是必须,后面3点可以中间学习的过程再学习.之所以有这些要求主要是以防中间的学习过程中,有些东西看不懂而走弯路. 学习的前期准备:1.学过数电,有一定的电路基础.2.熟练掌握verilog语言.3.对于计算机组成原理,体系结构有一定的了解.4.学过单片机编程,写过一些简单的裸机程序,最好能够玩过microblaze这样对于软

java基础知识回顾之java Thread类学习(八)--java多线程通信等待唤醒机制经典应用(生产者消费者)

 *java多线程--等待唤醒机制:经典的体现"生产者和消费者模型 *对于此模型,应该明确以下几点: *1.生产者仅仅在仓库未满的时候生产,仓库满了则停止生产. *2.消费者仅仅在有产品的时候才能消费,仓空则等待. *3.当消费者发现仓储没有产品可消费的时候,会唤醒等待生产者生产. *4.生产者在生产出可以消费的产品的时候,应该通知等待的消费者去消费. 下面先介绍个简单的生产者消费者例子:本例只适用于两个线程,一个线程生产,一个线程负责消费. 生产一个资源,就得消费一个资源. 代码如下: pub

java基础知识回顾之java Thread类学习(七)--java多线程通信等待唤醒机制(wait和notify,notifyAll)

1.wait和notify,notifyAll: wait和notify,notifyAll是Object类方法,因为等待和唤醒必须是同一个锁,不可以对不同锁中的线程进行唤醒,而锁可以是任意对象,所以可以被任意对象调用的方法,定义在Object基类中. wait()方法:对此对象调用wait方法导致本线程放弃对象锁,让线程处于冻结状态,进入等待线程的线程池当中.wait是指已经进入同步锁的线程,让自己暂时让出同步锁,以便使其他正在等待此锁的线程可以进入同步锁并运行,只有其它线程调用notify方

java基础知识回顾之java Thread类学习(六)--java多线程同步函数用的锁

1.验证同步函数使用的锁----普通方法使用的锁 思路:创建两个线程,同时操作同一个资源,还是用卖票的例子来验证.创建好两个线程t1,t2,t1线程走同步代码块操作tickets,t2,线程走同步函数封装的代码操作tickets,同步代码块中的锁我们可以指定.假设我们事先不知道同步函数用的是什么锁:如果在同步代码块中指定的某个锁(测试)和同步函数用的锁相同,就不会出现线程安全问题,如果锁不相同,就会发生线程安全问题. 看下面的代码:t1线程用的同步锁是obj,t2线程在操作同步函数的资源,假设不