加入收藏 | 设为首页 | 会员中心 | 我要投稿 西安站长网 (https://www.029zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动 > 正文

三年,足以完成从双非到互联网大厂的跳跃

发布时间:2019-09-23 22:54:09 所属栏目:移动 来源:syAries
导读:副标题#e# 本文转载自微信公众号「码农皮邱」,转载本文请联系码农皮邱公众号。 01 近年来,有些读者会问我一些形形色色的问题,让我很难去回答,甚至给不出建设性的意见。 举个例子: 1.我学习什么能进入优秀的互联网公司工作? 2.我想做研发我应该学习什么

根据上述策略,刨除我踩的一些坑,我把学习征途划分四个阶段,实现学习效率的最优解。

三年,足以完成从双非到互联网大厂的跳跃

第一阶段:新手入门

在我入门的时候,我遇到的最大困难是代码不会写,DEBUG不会做,程序报错不会看毫无头绪,甚至大家常说的百度一下的关键字我也不知道搜。

这时候,最大的目标就是根据百度/查文档/看视频,把程序调试出预期结果,甚至你抄代码都行,很多时候抄代码你都不一定能DEBUG出预期结果。这就是现实,主要就是要把对编程的排斥消磨殆尽。

这个阶段,不需要太关注底层实现原理,最重要的工作就是把应用层面的技术,不断练习直到熟练掌握上面提到的应用「 编程语言、Linux、数据库、HTTP网络协议 」。

•时间:3-6月

•目标:会调试、会查文档、会用搜索引擎

•内容:JAVA基础语法、MYSQL数据库、Linux操作系统、HTTP通信协议

•方法:只关注如何使用技术,难以理解的背下来,不关注底层原理。

•成果:实现常见的管理系统模块,能部署在服务器上,供他人访问。

对于现已从事计算机行业的同学,其实这部分内容非常简单,可能按照正常水平少则几天,多则不超过一周就能开发出简单模块。简单说,它顶多是普通本科毕设设计水准,主要是让新手在感官上体验软件产品。本质上,在计算机世界里,抽象来看就是数据的计算、传输、存储。随着你的经验增多,你会发现很多技术的诞生或优化性能都是在解决计算、存储、传输的问题。 在这里,主要让大家在系统的角度感受最简单、最初级的技术模型。

三年,足以完成从双非到互联网大厂的跳跃

1.Linux操作系统:承载应用程序、数据库的运行,提供CPU供应用程序计算。

2.应用程序(Java/Python/Php):JAVA主要采用Servlet、JDBC承载网络的传输、数据库连接管理。

3.数据库(MYSQL):主要理解关系类数据库的存储,对数据进行操作。

4.HTTP/TCP:熟悉重点网络协议,它分为包头/包体进行传输,包体格式可能分为json、pb、二进制。

第二阶段:项目练习

通过第一个阶段学习,你对编程从一无所知到有所斩获,对计算机世界充满了好奇,甚至有所开心。这时候,你最应该做的就是去满足你装逼的梦想。

假设你是爬虫方向,你应该去爬表情包、爬知乎数据、自动抢票,去满足你无数个装逼梦想。

假设你是算法方向,你可以去研究推荐算法、图像识别模型,去做个商品推荐、人脸识秀一秀。

假设你是后端方向,你可以去研究下网络编程/网站开发开发个仿微信聊天应用,体验下lowB版微信。

画外音:多做项目,坑是一步一步踩出来的。

作为大学生,实验室、软件设计比赛、开源社区都是你发挥想象力的天堂,这些倒腾的经历将是你毕业时最宝贵的经历。

第三阶段:强化理论

经过前两个阶段实践,时间来到大三,这时候基本的软件开发已入门差不多达到普通培训班毕业水平。同时,专业课如数据结构/操作系统/计算机网络也上的差不多了,对概念多多少少有初步了解。

这时候,你会发现很多原理你不懂,将很难更上一层楼。

•你不知道使用ArrayList还是LinkedList?

•你不知道为什么要使用线程池?

•你不知道为什么分层设计使用分布式场景?

你将处于写代码一时爽,一直写一直爽,遇到性能问题直接土崩瓦解。所以,你不得不去学习理论知识让你走得更远。

问题:为什么在这个阶段强化理论知识?

(编辑:西安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读