关于javascript:2021填志愿还能无脑冲计算机专业么

8次阅读

共计 3520 个字符,预计需要花费 9 分钟才能阅读完成。


0x00

前段时间高考不是刚落下帷幕嘛。每年高考一完结,怎么选业余,怎么填志愿就成了热门话题。

去年帮老家那边两个亲戚家小孩参考过意愿,往年也接到了老家几个叔婶的电话。家长比小孩还急呀,也各种打听,各种调研的。

去年是一个去了计算机,一个去了师范。往年预计家那边两个小孩应该也会填计算机 (或相干) 吧,学的文科。

当然这不是说我举荐他们填计算机。我集体始终感觉趣味很重要,然而一问有没有趣味业余,都说没啥明确指标,心愿填个热门好待业的。况且当初互联网这么发达,小孩们本人一查,也晓得这几年计算机火,而后也具体调研一些无关计算机的状况。孩子们关怀的就是好不好学,家长关怀的就是好不好待业。

然而我会倡议说冲一冲、稳一稳、保一保。能冲进计算机相关业余当然没问题,但如果投档进不了,那通信 / 电子也不是不能够,保底嘛。


0x01

我至今仍然感觉工科类业余是对咱们这些一般家庭出身的理科生比拟敌对的抉择吧。没有什么太高壁垒,你有技术就有机会,学完最起码有点实用的技术傍身。

只有你有趣味学,选这个个别没啥问题。当然这个趣味不是说要特地特地地强,有时候不厌恶也是一种趣味。

尤其是计算机相关业余,这几年确实是工科界的顶流。

首先大家都晓得工资高。略微好一点学校进去的应届毕业生,在北上广深一毕业年薪拿几十个根本都没啥问题。所以学计算机进去肯定是能够满足咱们安身立命,反哺家庭,以及对将来美好生活向往的指标。我盘点了一下本人相熟的同学也是,通信 / 电子 / 计算机这一块的,倒退得也都还能够。因而选计算机专业的确也比拟投合市场。

另外一个,个人感觉计算机的学习门槛如同不算高吧。一般来说文科出身,具备点逻辑思维,个别都能学得不差。况且计算机的各种学习资源不要太多,开源世界也很丰盛,网上都能找到,没有什么显著的学习壁垒,有一台电脑就能学。而且付出与回报成正比,也不拼其余的,就纯靠技术了。

所以可能也正因为这些方方面面的起因吧,当初报计算机的人切实太多了,那叫一个火。除了高考意愿填计算机的,还有转业余到计算机的,考研跨考计算机的,工作后转行从事计算机的,甚至包含培训班培训计算机的 … 所以我也会跟他们说压力和竞争是不小的,要有心理准备。


0x02

聊到卷的问题,从两个最常见的点就能看进去,一是考研,另外一个就是找工作的面试难度,我想很多小伙伴可能有亲历领会。

当初考研不仅是计算机,凡是热门一点的工科业余压力都大。咱们那时候考研多少分?300 出头就有学上。当初看看呢,好点学校的计算机相关业余 400 分神仙打架的多的很,报的人多,大神也多。

而聊到求职面试。以前背一背八股文,而后刷刷题,找个还行的工作没啥问题。什么叫八股文呢?就能够背的,比方像什么 OOP 个性、接口和抽象类的区别、hashmap 原理、List 和 Set 区别、Java 运行时内存区、Get 和 Post 申请、三次握手四次挥手、OS 页面置换算法 … 等等,大家可能也背过。

而后刷题,咱们那时候剑指 Offer 上四五十个题目刷完根本就能够保个底,LeetCode 我记得如同也没有当初这么多题目吧。

然而站在当下的工夫再看一看面试都问啥。

问底层,深刻到骨髓。像什么 JVM 底层原理、JVM 调优实际、JDK 源码、JUC 并发包、锁的实现原理、数据库底层原理、索引优化、SQL 调优、Spring 源码、各种框架的机制,而后还有像什么集群、分布式锁、缓存一致性 … 等等一些问题也是被高频地问起。

而后就是问我的项目。要么就是往底层挖,最初也是底层原理,像下面一样,要么就是往架构层面回升,比方架构设计、框架选型、链路设计、架构扩大 … 等等。

除了这些还有手撕算法题。当初求职 LeetCode 没个几百道题量,怕是连口试都很难找到感觉吧,面过的小伙伴肯定有所感触。

所以当初自学,包含面试筹备的时候,真的不是说背一背八股文,会用个 Spring Boot,Spring Cloud 就能够的。比拟值钱的两个方面刚也聊过:

要么就底层原理:操作系统底层、JVM 底层、框架底层、算法原理、源码的了解和把握 …
要么就架构思维:架构设计的能力、框架选型和比照、链路的设计和把握、架构的扩容和扩大 …
而这些个别是须要了解并实际的。

况且集体显著感觉身边的应届生计算机素养广泛很高。不论是是面试的时候,还是工作后察看身边的一些新人。除了自身计算机方面思维很好,学货色贼快之外,而且还特地年老,精力也旺盛,难顶哦。

所以基于这些,我也会跟家那面填志愿的小孩说,随大流无脑梭哈计算机也不行。想报能够,首先要有心理准备,能 Hold 得住压力,其次就是对这个货色要有点趣味(最起码不厌恶吧),最初还得有很强的自学能力和习惯,不然就算进去也很苦楚的。


0x03

而后一个问题就是对于编程难不难的话题?这是老家那边几个同学最近在调研业余的时候所共有的问题。

编程难吗?其实这个问题真不知道怎么答复。

个人感觉计算机的学习门槛应该不算高吧。都是学理科的,具备一点逻辑思维个别都还行吧。当然这里不是说那种学到极致的蠢才型选手,咱们指的是学个个别,做个一般开发的角度来聊的。

就以最常见的编程工作为例吧。它对人的思维能力是有点要求的,其实简略一点了解,差不多就是剖析问题,而后形象出因素,最初建设模型的思维过程。如果感觉编程难,或者说代码无从下手,那大概率可能还是没有造成这种思考形式吧。阐明首先根底可能有待增强,另外则是可能锤炼得还不够多,没有冲破那个阈值。

尤其加入工作后,做的那些零碎和各种业务。其实讲白了就是把一个个理论需要形象建模,用适合的数据结构和算法流程把它示意进去,而后辅助于一些框架或者工具,用编程语言把它形容进去,而后通过一系列解决,最初交由计算机执行。

先把性能实现,流程跑通,而后再思考怎么能力做得更快,怎么能力并发更高,怎么能力更加平安。咱们能够回忆一下,我的项目里那些简单的零碎往往不都是这么演变过去的嘛。

所以很多刚入职的小伙伴所头疼的一个问题就是说刚入职团队,刚接触理论我的项目,我的项目太大了,一时半会搞不懂吃不透。

为啥呢?因为这外面很多的演进和迭代过程,你并没有看到。其实一开始零碎没那么简单的,只不过前面迭代了好多个版本,改了很多货色,又加了很多货色。这时候如果没有比拟靠谱的迭代记录,文档,或者正文,确实是很难看懂,太失常不过了。所以这时候只能靠本人多问,多想,多悟,上下文 / 前后段,由整体到部分,由部分再到整顿,就这么来回重复摩擦,缓缓就吃透了。

所以有时候想一想,如同事件也没那么简单。然而你又想过没,为什么当初的互联网开发世界那么凋敝呢?尤其之前咱们在梳理像大数据、后端开发那些知识点和学习路线时,波及到的各种技术点和框架切实太多了。

其实细想一下,它们很多时候都是在做辅助用的。它们的呈现很多时候都是为了应答企业级利用开发的所面临的的诸如复杂性、代码品质、可测试性、可扩展性、可维护性等一系列问题。一句话总结,都是为了更好地工程化迭代。

举个例子可能更好了解一些。比方做 Java 后端开发的用 Spring 框架很多,其实咱们在写这些 Web 化服务时,不必 Spring 也齐全能够。用奢侈的形式也能够写,这样的话不同人都本人去造轮子,本人去封装工具类,封装本人的工具办法,也没问题,能实现需要。

然而这时候因为不同人的思维形式不同,习惯不同,能力也不同,大家写进去的代码很有可能参差不齐,品质不一,那就很难达到企业级开发所考究的那些代码品质、可测试性、可扩展性、可维护性、可迭代性。这样写进去的我的项目前面可能不好保护,没方法长期迭代演进了。

而这些框架它们外部用到了很多的机制,实现了很多的工具类,办法,以及流程,本人也规定了很多约束性写法,给开发者或裸露 API,或裸露接口 … 其实某一水平上来说都能够了解为提供了一种约束性编程。你要用我的框架?能够。那你就得恪守我这边的游戏规则(编码规定)。Spring 典型不就是这样嘛,IoC 容器用来干嘛的?方便管理对象,而后还搞了一堆像什么切面式编程、接口式编程、声名式编程 … 等等,咱们就能够了解为一种约束性的编程。这样能力保障写进去的代码,在实现需要的同时,还能便于测试、扩大、保护、甚至便于和其余技术进行集成,来发明业务价值。

不过写到这里,如同扯得有点远了,工夫也不早了,当前有机会再聊吧。


后 记

另外最近花了大把力量,把自用的编程学习资源做了个大整顿。

都是纯肝货,目录如下。

该内容 GitHub https://github.com/rd2coding/Road2Coding 曾经收录,外面还有我整顿的 6 大编程方向的自学路线 + 知识点大梳理 我的简历 面试考点 几本硬核 pdf 笔记 ,以及 我的程序员人生,欢送 star。

整顿不易,欢送反对,下期见!

正文完
 0