悟已往之不谏,知来者之可追。

       时光荏苒,不知不觉我已求学十七八年。

       我来自一个农村家庭,父亲初中学历,母亲小学学历。庆幸的是他们干了点小生意,经济条件还算过得去。报考大学专业的时候,我甚至是因为听着专业名字好听选择了电气工程及其自动化,因而没进入天坑。父母对我选择专业的态度是:我们都不懂,你看着报吧。大学前三年过的浑浑噩噩,打游戏吃外卖或靠室友带饭躺平度日,关系还算融洽,现在对那帮兄弟甚是想念。对于我的学习我父母基本上都是问,这次考了多少分,多少名,大学后从未问过,钱没了给钱,吃饱穿暖都没问题。我爸妈很希望我读书,但是他们并不懂得教育,我自己也不太懂,跌跌撞撞的也算考上了研究生,希望我能教育好下一代。我的研究生专业是电子信息控制方向,经过一段时间的项目跟进,不太喜欢,我的本科也学C和计算机原理之类的,也算一个半科班出身吧,遂与导师商讨更换到C/C++方向。

        主流的后端开发语言以C++领衔,很多学了C++的同学会选择去面试后台开发的岗位。其实软件开发工程需要掌握的技能不外乎那么几点,各种经验分享和面经都已经说烂了。但是那些只是大的方向,具体涉及到的概念和技术点非常多,在这里也没办法全部罗列。后端开发需要你有扎实的C语言基础,这个基础扎实首先意味着你比较熟悉C++这门语言了,知道不同版本的语言特性(比如C++11以及新出的C++20的区别),对常见的语言机制(比如多态、虚函数表、模板等)的底层有自己理解。除此之外,编程能力的素养还体现在算法思想和数据结构的理解上。毕竟程序的基础就是算法和数据结构嘛。所以一些基本的数据结构,比如链表、数组、二叉树、队列之类的,还有一些基本的算法思想,比如贪心、分治、动态规划等都最好需要好好掌握一下。

        学习一门编程语言首先学习基本语法。C语言的基础语法包括数据类型、运算符、表达式、数组、逻辑运算、函数、指针等。学习这些先买一本入门书籍,个人还是推荐经典的明解C语言,很经典的一本书。这本书对知识点的介绍都比较全面,涵盖面比较广。边学语法便敲案例,看着代码在计算机上运行起来是不是也有点小激动。这样便有了继续学习下去的动力。C语言深入的话推荐《c primer plus》,你会发现有些地方晦涩难懂,不要被疑问绊住脚步,浪费太多时间在细枝末节的地方。C语言只是你进入新世界的第一步而已,而编程的世界远比你想象的更广阔,更有意思。《c primer plus》更适合作为一本字典使用,放在电脑旁,方便随时查阅。想学好一门编程语言,仅仅是看书而不动手去练习是远远不够的,一定要把书里的代码搬到电脑里。大多数人是使用Windows系统,那么就先下载一个Visual Studio吧,推荐使用VS2019。喜欢Linux的朋友,可以下载一个VMWare虚拟机,在再虚拟机中安装Ubuntu等基于Linux内核的操作系统,然后再安装gcc,gdb。安装好开放环境之后,就可以开始愉快的敲代码了,试着写一些简单而有趣的代码,比如 Hello World,文件读写,逻辑运算、常用算法等等。推荐的做法是把书中的例子,完全自己手动敲一遍,找找感觉,这个很重要。把自己觉得抽象难懂的程序放到VS中跑一跑,调试一番,会有很多发现。很多代码在调试之后就能理解,会有一种恍然大悟的快感。我以前电脑里就经常会有一个Test工程文件夹,哪里有疑惑,就把代码放进去,一Debug,全部疑惑就解开了。然后把这些总结整理起来,这样知识就变成自己的了。推荐使用印象笔记进行记录,很方便,随时可以查阅。

        学习编程时间分配因人而异,视原有基础,学习效率,等因素制约。私以为我的学习效率还蛮高的,每天分配5个小时在编程上,一周七天,算上英语口语学习,体育锻炼,学校琐事,本人就像一只大陀螺,996福报自叹不如,学习更多的是总结,编程也是,学习编程不能手懒且容易犯眼高手低的错误,当然,我刚开始就是手懒,写代码长期停滞于Helloword水平,希望在座的家人们引以为戒。

       本人并非卷王,受大环境驱使不上不下,难堪其忧,研究生毕业后希望能进一个不是太卷的IT公司吧。咦?我现在这种生活状态转去996真的算是福报了。(目前9-10-7)

       

        

      

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>