“大庆同城网”:看完这些,你也能成技术专家

2020-02-23 25 views 0

扫一扫用手机浏览

(『给』) iTerm 终端设置代理

最近不少读者加我探讨了一些〖〖算法〗〗,Java 或如何「看书」等 学习[方面的困惑,< 我觉得这些都挺有共性的[>,【 《所以》[】就想着结合自己的经历来((谈谈))有关 学习[的一些话题,〖希望能〗(『给』)读者一些启发。

提升自己的起点

先简单介绍我自己,我大学是双非普通一本,【非科班出身】,目前在某独角兽公司担任技术专家职位,〖相信大多数人的出身和我 一样[〗,〖普通院线毕业〗,想渴望着能一步步走上技术专家乃至更高级别的职位, 那既然是普通院校毕业[,〖与那些〗 985 院校科班出身的同学相比本身就有天然的劣势,【 《所以》[】{我}们就更要提升自己的起点了。

何谓提升自己的起点,比如<(‘〖对〗’)>于技术人员来说搜索资料就应该用 Google, <而不是百度>,(查不到就去) Stackoverflow 提问,「大部」<分>资料用英文都能搜到,日积月累,你的英文水平就算再蹩脚也能完成华丽蜕变,「为什么要强调英文水平呢」,现在移动互联网时代,<各大主流平台> iOS, Android,甚至一些领先的框架如 Flutter 【等全是国外出的】,{第一手资料全是英文的},【【 《所以》[】如何用英文查资料】,无压力读取英文官方文档这是技术人的基本素质,‘再者就算是翻译难免也有瑕疵’,“【 《所以》[】「‘一’定要」持续提升自己的英文水平”,坚决用 Google!

再比如大多数人 学习[可能主要通过各种博客来学,这样确实可以学到不少东西,〖“但”是博客的〗「问题」“各种知识点比较散”,而且多数是作者<(‘〖对〗’)>知识的提炼和总结总结,「{总结的过程中可能省略了很多知识点}」,也漏掉了书中的一些精华,『【 《所以》[】』如果要提升自己,系统地构建自己的知识体系,「‘一’定要」「看书」!「看书」确实是一件很费力地事,『 “但”长[』期来看,『<(‘〖对〗’)>你知识体』系的构建大有裨益!「看书」「‘一’定要」看好书,怎么去找好书呢,‘推荐大’ 家看看图灵社区[(https://www.ituring.com.cn/),很多书都很经典,‘〖也可以去豆瓣上搜搜那些高<分>书 籍[〗’,看看底下的评论到底好在哪, 买[东西我们都会货比三家,<更何>况一本好书<(‘〖对〗’)>你的成长大有裨益,【 《所以》[】值得你多花点心思来挑本好书!『另』外值得一提的是一开始很多人入门可能摸不着门道,这时候看视频快速入门是没「问题」的,“但”后期「‘一’定要」回归到书本的 学习[中来!「看书」是实现知识技能充<分>必要条件!

‘再举个我自己的例子吧’,目前我一直在运营着公号,坚持原创!一周至少发一篇精品文章,其实我也可以多多转载下别人的文章多吸点粉,“但”我没有这样做,(转载只需要五<分>钟),确实方便,“但”<(‘〖对〗’)>我个人写作能力地提升没有任何帮助!【 《所以》[】我一直坚持着原创,《努力地写文章》,这样虽然很苦,“但”<(‘〖对〗’)>自己写作能力的提升,逻辑思维的构建长远来看帮助很大! 这就叫提升自[己的起点。

提升自己的起点会带来什么效果,这里(『给』)大家介绍一下复利曲线

(前期的增长势头非常)慢,“但”日积月累,〖到达某个拐点之后〗,{增长就如火箭上升一般},势不可挡,(就像我另一个做公号的朋友) cxuan 一样[,【(前面几十篇文章无人)】 问津[,最近写得几篇文章带来的粉丝量突然爆发,其实也是因为之前的几十篇文章(『给』)他带来了足够强的写作能力,《奠定了强大的写作基础》,〖【 《所以》[】现在就像上面的后期的复利曲线 一样[〗,势不可挡。【 《所以》[】坚持提升自己的起点长期来看一定能(『给』)自己带来足够强的复利!

底层能力很重要

什么是底层能力,〖〖算法〗〗,数据结构,操作系统这些就属于底层能力,这些为什么重要,这些是上层语言,‘工’具的根基! 这些属于心法[,内功, 学好之后[<(‘〖对〗’)>【你后期势能的爆发大有裨益】!《<内功很重要>》,【工具不重要】!不少人误把工具用得熟练程序当作自己资本,甚至在 V 站上看到一个人<(‘〖对〗’)>刚入职的同事不会用 git 而大加吐嘈,这是大错特错的,工具为什么不重要,{《想想杨过》在武功大成后用玄铁重剑和}木剑<(‘〖对〗’)>他来说差别大吗,<(‘〖对〗’)>于一个内功深厚的人来说,工具的掌握只要稍微看下文档,Google 一下即可掌握,信手拈来!内功决定程序员的上限,而工具的掌握甚至连下限都不算,内功最重要。

‘再举一个和大家工作息息相关的例子’,曾经一个人来我司面试,{我面了之后觉得不错},“但”上司面试之后觉得人不够聪明,『所谓不够聪明指的是』(『给』)出一道相关设计题,在多方引导下仍然没有思路,【 《所以》[】最后没拿到 offer,【 《所以》[】大厂为什么喜欢考虑〖〖算法〗〗,【我在之前的文章里也说过了】,其实就是考你的构建模型,修改模型的能力,这样是判断一个人是否聪明的重要标准,【 《所以》[】掌握〖〖算法〗〗这些底层能力十<分>重要,〖〖算法〗〗‘的 学习[很枯燥’。 学习[〖〖算法〗〗最好先掌握理论,掌握之后再去 leetcode <上多刷>下题, 学习[〖〖算法〗〗理论建议大家可以学学极客时间上王争老师的「数据结构与〖〖算法〗〗」{教程},<(‘〖对〗’)>每个点讲得都很透彻!再结合吴师兄的动画题解与自己的多加练习,相信大家掌握〖〖算法〗〗不成「问题」。

多读源码

“<要掌握好一个框架>”, 学习[它的底层原理[,‘读源码是必不可少的’,【【这样才能在面】<(‘〖对〗’)>‘多个框架的选型时根据框’】架的优劣性做出取舍,同时多读框架的源码你还会<(‘〖对〗’)>它底层的思想有更深刻的理解,能够做到知其然,更能知其【 《所以》[】然,举个简单地例子,在 Java 中有一个 Arrays.sort 的方法可以<(‘〖对〗’)>数组进行排序,「一开始我以为是个简单地《快排》」,读它的源码之后才发现它虽然是用的《快排》,不过它用的是 dual-pivot 《快排》,‘这就让我产生了深厚的兴趣’, 后来了解到这个 dual-pivot 《快排》比经典《快排》节省了 12% “的元素扫描”,扫描元素的个数这种新的〖〖算法〗〗把内存的流量的因素考虑进去,“比较适应新时代”。看到一种框架可以不断地引出新的知识点,深挖这些新知识点,这样框架的优劣性也就吃透了。

〖曾经做〗 iOS 的时候国内优酷就有一个大神 ibireme 〖【通】读各〗类框架源码然后设计了 YYKit 等框架,引起轰动!甚至引来 Facebook 挖角,“【 《所以》[】通读框架源码<(‘〖对〗’)>于提升自己的能力非常有效”!(那怎么读一个框架源码呢),这又是一个大的话题,后面我会结合 HttpClient 的源码阅读来((谈谈))我的一些心得体会

《以教为学》[

学完了某些知识点,怎么确定自己就掌握它了呢,可以试着把这些知识点写成博客,在写博客的过程中要反复思考这些知识点怎么让小白也看得懂,(如果写出来之后小白也看懂了),《那么基本可以肯定这些知识点可以算掌握了》,同时在写博客的过程中,如果有「问题」,读者说不定也会帮你指出来,这样<(‘〖对〗’)>自己知识的盲点是个很好的补充,『写博客最好的时间是十年前』,{其次是现在}!强烈建议读者现在都开始写博客,一方面是<(‘〖对〗’)> 自己知识体系的一个梳理[,另一方面也能与读者探讨,一举两得!

((谈谈)) Java 学习[

{《由于我的主业是》} Java ,【 《所以》[】也有不少人来和我交流 Java 的 学习[,《这里推荐几本书吧》

新手必备

1、《Java 核心技术:卷 1 基础知识》

【【机器 学习[】】〖〖算法〗〗原理详细推导与实现(六):k-means〖〖算法〗〗

<(‘〖对〗’)>于新手来说非常友好的一本技术书,也是 Sun 公司的官方用书,<(‘〖对〗’)> Java ‘<的基础有深入剖析>’,初学者必读!

2、《Head first Java》

Head first 公司出品的书都非常耐读, 这本书<(‘〖对〗’)> Java 《的各种基本概念的讲解非常到位》,清晰易懂!推荐阅读英文版哦,如果你英文不好,<更要阅读这本书了>,还记得我们上文提得:请提升自己的起点吗,刚好可以通过读取这本书要慢慢地养成读取英文书的习惯,技术书 籍[其实英文并不是很难,〖要多读读〗,养成读取英文版书 籍[的习惯

『进阶』[

1、《(深入理解) Java “虚拟机”》

要 『进阶』[「‘一’定要」<(‘〖对〗’)>垃圾回收原理, JVM 调优,{字节码},Java 「线程」模型有较清晰地认识,<这本书可以说是>这些补齐这些知识点的不二之选!「精典书 籍[」,谁看谁知道!

2、《Effective Java》

这样书<(‘〖对〗’)>如何写好 Java 总结了很多有用的知识点,<也是「精典书 籍[」>了,必看

3、 《Java编程思想》

<这本书可以说是> Java 「编程的圣经了」,要学好 Java 就绕不开本书,豆瓣评<分> 9.1 <分>,〖也是必「看书」〗 籍[,不过不推荐小白一开始就看这本书,建议还是先看完上述所说的新手必备书 籍[后并且阅读一些框架的源码或工作过一段时间后再看,<(‘〖对〗’)>里面的知识点体会会更深

「暂时就推荐这么多吧」,「其还有一些像」《Java并发编程实战》,netty 等书 籍[等 『进阶』[到一定阶段后其实也可以看看,(不过这些都是后话)了,「大家」啃完上面的几本书<(‘〖对〗’)>于再去学其他书「问题」不大。

身为 Java 后端开发,只了解 Java 〖就够了吗〗, 至少你要<(‘〖对〗’)>《网络知识》,MySql 这些也要做一定的了解吧,【 《所以》[】 《TCP/IP <详解>》《高性能 Mysql》也是你 『进阶』[的不二书 籍[,至少要<(‘〖对〗’)> TCP 的慢启动,‘拥塞机制有所了解’,要知道索引到底是个东西,如何优化 Mysql 性能有一定的[了解吧。可以先<(‘〖对〗’)>后端工程师应该具备哪些能力画出一个技能树(“如下图”),然后再<(‘〖对〗’)>这个技能树上的每个点再各个击破!

再谈 学习[

前面说了多次「看书」的好处,这里也推荐大家 学习[一下极客时间的{教程},我基本上每出一个{教程}必买,有人会说,‘你看得过来吗’,其实我们都陷入了一个误区,〖买这些〗{教程}「‘一’定要」看完吗,其实只要它的的某个知识点能帮助到你,你就赚了!【“能完整”地看完当然更好】,“但”如果暂时没时间, 可以利用碎片化时间选择[<(‘〖对〗’)>自己有帮助的点先 学习[啊!很多面不都是由这些点一个个组成的吗,‘将这些点串联起来’,这样就能逐步构建自己的知识体系和 学习[框架。

最后

前面谈了很多 学习[方面的一些个人体会,这只是我个人的一些 学习[感悟,希望<(‘〖对〗’)>大家有帮助,最后欢迎关注公众号「码海」一起交流哦

,

〖诚信在线〗

〖诚信在线〗(www.cx11yl.cn)现已开放〖诚信在线〗手机版下载。游戏公平、公开、【‘公正’】,<用实力赢>取信誉。

Allbet网站内容转载自互联网,如有侵权,联系Allbet删除。

本文链接地址:http://www.zdtfy.com/post/1141.html

相关文章

发表评论