自我介绍
我是一名大一新生,学习软件工程,现在正在学习C语言。因为曾经从未了解过计算机语言和软件的有关技术,所以我现在需要好好的弥补曾经欠下的基础,努力学习,争取创造出属于自己的价值,在这个世界上留下自己的痕迹。
编程目标
一、计算机语言的学习(按时间顺序)
1、C语言(深入了解)
为什么学?
因为C语言是最基础,同时也是最经典的计算机语言,我希望通过学习C语言来了解计算机,了解编程,从而开始进入程序员的世界。
(怎么学习编程?)怎么学?
目前我购买了《C Primer Plus》和《C语言程序的现代方法》作为教材进行自学,同时也基本学完了b站上鹏哥的C语言教程(有兴趣的可以点进去了解)。经过一个月的自学,我对C语言已经有了一个基本的了解,同时也发现了学C的一些方法与陷阱。
方法
1、坚持:显而易见,C语言对初学者是有要求的,没有人可以一次性搞明白C语言中的语法,关键字,语句的含义。所以在初学之时,困惑丛生,难免会气馁,但是如果因此就放弃学C,那么就太过可惜。也许有人就会问怎么避免这个局面,有没有什么方法可以不至于“初学之时,困惑丛生”,我只能说——没有办法,唯有坚持。确实只要坚持学习10到15天(我根据自己的情况瞎估的),就会有足够的了解与反馈让我们这些初学者坚持下去。
2、规律:养成一个规律的学习习惯和学习时间可以在很大程度上促进我们的学习,无论是学习时间的长短还是学习效率的高低。
那如何养成呢?
学会开头,每天在固定的时间内告诉自己,现在我就看书,不求多,一页就行,然后你就会发现你看了不止一页,久而久之习惯就养成了。
3、刷题(确实是实践):没错,就是像你的高三一样,刷题。要知道,掌握知识的最好方法
就是实践,只是目前对于我们这些初学者而言,实践就是刷算法题,通过这种手段了解库函数,关键字,不同的语句,以及编程思想等等。
陷阱
1、只看书,不实践:不得不说,只看书是没有任何价值的,因为根本记不住,而且枯燥异常,同时又没有正向的反馈,只会白白消耗学习热情。
2、停留在舒适区:所有的知识都不会自己跑过来,所以我们不能只停留在昨日的水平,必须时时向前。
2、C++(待定)
计划11月初开始学习
3、Phython(必须掌握)
计划学完C++后立刻开始
4、Java(待定)
无计划
二、数据结构的学习
目前买了一本《数据结构(C语言版)》,还没有开始学习,所以没有太多文字。计划今天开始看书,加以了解。
三、还有更多的,以后了解
实际上,我啥也不懂,所以还需要搜集学习资料,了解学习路径,确定职业技能。
时间规划
周一 | 周二 | 周三 | 周四 | 周五 | 周六 | 周日 | |
1 | 课 | 课 | 课 | 课 | C | ||
2 | 课 | 课 | 课 | 课 | C | ||
3 | 课 | 课 | 课 | 课 | 课 | C | |
4 | 课 | 课 | 课 | 课 | 课 | C | |
5 | |||||||
6 | |||||||
7 | 课 | 课 | 课 | 课 | |||
8 | 课 | 课 | 课 | 课 | |||
9 | 课 | 课 | 课 | 课 | |||
10 | 课 | 课 | 课 | ||||
11 | C | C | C | ||||
12 | C | C | C | C | C | C | C |
13 | C | C | C |
平均每日2到3个小时,每周20个小时左右。
职业规划
华为
一、软件工程师
【岗位要求】
1、计算机、软件、通信等相关专业本科及以上学历;
2、热爱编程,基础扎实,熟悉掌握但不限于JAVA/C++/C/Python/JS/HTML/GO等编程语言中的一种或数种,有良好的编程习惯;
3、具备独立工作能力和解决问题的能力、善于沟通,乐于合作,热衷新技术,善于总结分享,喜欢动手实践;
4、对数据结构、算法有一定了解;
5、加分项目:
(1)熟悉TCP/IP协议及互联网常见应用和协议的原理;
(2)有IT应用软件、互联网软件、IOS/安卓等相关产品开发经验,不满足于课堂所学,在校期间积极参加校内外软件编程大赛或积极参于编程开源社区组织;
(3)熟悉JS/AS/AJAX/HTML5/CSS等前端开发技术。
二、软件开发工程师
- 嵌入式技术
- 数据结构
- 多线程
- 网络编程
- 网络协议
- 虚拟机技术
- 分布式技术
- 多进程