精华内容
下载资源
问答
  • 高效学习 程序员练级攻略 一. 高效学习 二. 程序员练级攻略: 入门 三. 程序员练级攻略: 进阶 一. 高效学习 1. 端正学习态度 2. 面对枯燥和量大的知识 3. 深度,归纳和坚持实践 4....

    高效学习  程序员练级攻略

    一. 高效学习

     

    二. 程序员练级攻略: 入门

     

    三. 程序员练级攻略: 进阶

     

     

    一. 高效学习

    1. 端正学习态度

     

    2. 面对枯燥和量大的知识

     

    3. 深度,归纳和坚持实践

     

    4. 学习和阅读源码

     

    5. 源头、原理和知识地图

     

    二. 程序员练级攻略: 入门

    1. 开篇词

     

    2. 零基础启蒙

     

    3. 正式入门

     

     

    三. 程序员练级攻略:进阶

    1. 程序员素养

     

    2. 理论学科

     

    3. 编程语言

     

     

    其他:

     

     

     

     

     

     

    以上图片出自某技术网站,个人觉得非常好,和大家一起分享,一起进步!

     

    展开全文
  • 2021 年 Java 程序员应该学习的 8 件事

    千次阅读 2021-08-23 00:28:47
    一个Java程序员随着经验的不断增长,常常需要了解 Java 基础的大局和小细节。 如果无法分析应用程序,或者无法弄清楚为什么它变慢或如何使它变快,那么我们应该阅读一本关于 JVM性能调优的好书,英文不错的同学可以...

    1. 学习 Java 性能调优

    很多人并不缺乏Java语法知识,最缺乏的是对 JVM 内部过程、GC行为和 Java 性能调优的知识与理解。

    一个Java程序员随着经验的不断增长,常常需要了解 Java 基础的大局和小细节。

    如果无法分析应用程序,或者无法弄清楚为什么它变慢或如何使它变快,那么我们应该阅读一本关于 JVM性能调优的好书,英文不错的同学可以阅读 Scott Oaks 的畅销书 《Java Performance the Definitive Guide》。

    如果没有充足的时间看书,可以学习B站上的理解 Java 虚拟机系列课程,其中解释了内存管理、类加载、安全性和反射。

    2. Docker 和 Kubernetes

    大家都听说过 Docker 和 Kubernetes 对 DevOps 团队的影响。在我没用过这个技术前,我第一次想到的是,“啊,又是一项我需要学习的新技术”,但在我看来 Docker 不仅仅是另一种技术,更是真正的游戏规则改变者。

    Docker 与 Kubernetes 一起使用,可以称为一个Java开发工程师最重要的工具之一,并将在整个职业生涯中陪伴。

    如今,几乎每个开发团队都在使用 Docker 和 Kubernetes,无论是大型企业还是小型初创公司。可以肯定地说,如果现在进入劳动力市场,很可能会在某个时候遇到 Docker。

    3. DevOps

    随着越来越多的大公司转向 DevOps 并采用持续集成和部署, 很多开发人员看到了这个领域的重要性。

    DevOps 非常庞大,需要学习很多工具和原理,这让很多Java开发者感到不知所措。

    如果能够熟悉Devops,name你已经是一位经验丰富的 Java 程序员,并且对管理环境、自动化和改进整体结构充满热情,那么您就可以成为 DevOps 工程师。

    4. 每天码2小时

    随着一个人经验的增长,你将时间花在协调、回复电子邮件、成为催化剂、故障排除、指导别人上,类似一个项目经理这种角色。

    我们做的事情是编码,这是程序员最重要的技能。
    如果你觉得你没有做足够的编码,那就下定决心每天编码。至少,写一些东西,无论是在你的项目、开源框架、库还是实用程序中。
    但是万事开头难,任何时候感到阻力时,我们就要开始阅读和重构代码,并以获得乐趣。

    5. 每月分析一次您的 Java 应用程序

    我们至少每月一次看一下自己写过的 Java 代码,进行Clean code,并花大量时间理解和分析结果。
    比如我们可以获取 Java 进程的堆转储,如果最近发生了崩溃,则获取该堆转储并找出哪个对象占用了大部分内存。
    常识思考如下问题:
    排查 Java 应用程序中是否存在内存泄漏?原因是什么?如果其他 10 万个新客户端访问您的应用程序会发生什么?如果我们能轻松地回答所有这些问题,那么说明我们目前的代码质量有保障。

    6. 参与编码挑战

    互联网上有许多网站提供编程挑战并让您有机会测试您的技能,我认为Leetcode是最好的。

    7. 学习 Java 网络编程

    Java 开发需要学习TCP编程和网络基础知识。

    8. 做好单元测试

    想在 2021 年成为一名更好的开发人员,那么我们应该努力提高自己的单元测试技能。
    不仅仅是单元测试,还有一般的自动化测试。这也包括集成测试。
    我们还可以学习JUnit 5和其他高级单元测试库,如 Mockito、PowerMock、Cucumber 和 Robot Framework,将单元测试技能提升到一个新的水平。

    展开全文
  • 从这周开始,每周学习两章内容及一个设计模式。 空闲时间学习c++20新特性。 时间 章节 设计模式 12-20 第一章,第二章 观察者 12-27 第三章,第四章 策略 1-3 第五章,第六章 访问者、单例 1-10 第七...
    • 从这周开始,每周学习一章内容及一个设计模式。
    • 空闲时间学习c++20新特性。
    • 后续学习内容,linux内核相关
    时间章节设计模式
    12-20第一章,第二章观察者
    12-27第三章策略
    1-3第四章访问者、单例
    1-10第五章工厂
    1-17第六章抽象工厂
    1-24第七章建造者
    1-31第八章适配器
    2-7第九章命令
    2-21第十章
    2-28第十一章
    3-7第十二章
    3-14第十三章,及总体复习
    展开全文
  • 本文对《软技能:代码之外的生存指南》书中的“十步学习法”展开讨论,该书作者是John Z. Sonmez,一名程序员,书中有很多面试、专业等建议。有一些建议相见恨晚。某天在喵哥群里看到了本书的推荐,非常感谢推荐。 ...

    在这里插入图片描述
    本文对《软技能:代码之外的生存指南》书中的“十步学习法”展开讨论,该书作者是John Z. Sonmez,一名程序员,书中有很多面试、专业等建议。有一些建议相见恨晚。某天在喵哥群里看到了本书的推荐,非常感谢推荐。

    本文末尾附上了John Z. Sonme推荐的书单(自我提升、软件开发、投资类),感兴趣的可以看一下。

    虽然本书说的是“程序员必备的软技能”,但我认为这是所有职业都通用的软技能。该书中总共分成七个部分,分别是:职业、自我营销、学习、生产力、理财、健身、精神。我做了下面的思维导图,可以概括个大概,可以根据需要随意读取某个章节:
    在这里插入图片描述
    本书总共71篇文章,可以把每一篇都看成一篇高质量的博客,也就是说如果你能够写出71篇高质量的博客,你也就能够出书了(手动狗头)。

    这位作者老哥很会玩,他有自己的youtube频道,网址youtube.com/jsonmez 我点进他的油管主页看了一下,好家伙,作者本人还是个猛男:
    在这里插入图片描述

    十步学习法

    你是不是和我一样,学习知识的时候就喜欢拿着一本书“从封面到封底”仔细阅读,这样可以学到东西,但是效率很低。因为我们往往只会用到书中的一部分内容而已,没用到的内容会迅速忘记。这是关键,没用到的内容会迅速忘记……通过不同的方法,对于知识的掌握程度也不同,可以参考下面这张图:
    在这里插入图片描述
    仅仅通过阅读,学习信息的留存度只有10%。因为我们并没有掌握那些没被用到的知识。学到了某个知识,叫懂得;练习过学到了的知识,这叫掌握。掌握了的,不容易忘。

    懂得很多道理,但是依然过不好这一生。——因为这些道理只是头脑上的懂得,但并没有身体力行的掌握……

    学习二字,学——头脑上的懂得,习——头脑和身体上的练习。练习中的体验,极大加深了该知识的记忆。我们都有背单词的经历,但真正掌握这个单词的时候,还是和这个单词在某个地方不期而遇时,比如某一天下午你在看国外新闻时,看到了这个单词,这个时候才发现这个单词还有这个用法。我们学会了使用它,直接用它,也就记得了它。

    十步学习法如下:
    在这里插入图片描述
    不要被这么多步骤给吓到了哈,总共分成两个部分:

    第一步到第六步:学习前的准备部分,即为前期调研以及设定目标。

    第七步到第十步:学习过程部分,即这四步:学习-实践-学习-分享教授(Learning, Doing, Learning, and Teaching)

    第1步,了解全局

    这些年有个很流行的认知的四个阶段:不知道自己不知道什么、知道自己不知道什么、知道自己知道什么、不知道自己知道什么。

    “了解全局”就是从第一阶段到达第二阶段的过程。如果想要学习一门编程语言,那么首先得知道计算机的编程语言都可以做些什么,市面上有哪些编程语言,这些编程语言之间又有什么关系等等。关于这些我们可以在网上搜索一些文章,或者请教相关的人,了解个全局。

    等到我们了解个差不多的时候,我们终于知道了这些东西大概是个什么,但是具体是啥我们是不知道的。这就进入了“知道自己不知道什么”的状态。

    了解全局是必要的,如下面:
    在这里插入图片描述
    如果我们按照图的上半部分,在没有了解全局,就开始精细地学,这样恐怕不会持久。

    但是像下半部分那三张图一样,先了解一个模糊的大局,再逐渐精细地了解,这样的效果会更好

    第2步:确定范围

    我们大致了解全局之后,需要确定范围。因为计算机知识浩如烟海,我们无法掌握全部——穷尽一生也不可能。甚至就算单是学习一门编程语言,比如如果想要精通C++,那没个好几年是不可能的。但是我现在的学习时间只有一两周,那只能把范围缩小,这样的范围可以是,使用学习某个编程语言中的:

    1,图形界面相关的编程。
    2,文件操作相关的编程。
    3,网络通信相关的编程。

    短时间内我们可以聚焦在以上三个主题中的一个。一个主题就是一个聚焦范围。

    为什么要聚焦,我们啃知识的过程就想打怪。还记得《灌篮高手》里面,宫城良田是怎么把三井寿的门牙打掉的吗?其实三井寿是带兄弟围殴的,如果宫城不聚焦地去打三井,那么他就会被围殴的毫无还手之力。

    我们打知识也要聚焦,不然会被知识围殴地毫无还手之力。

    第3步:定义目标

    确定一个小范围之后可以定一个小目标,比如下面的任意一个都是小目标:

    1,写出一个图形界面
    2,用程序操作文件
    3,用程序进行PC之间的通信。

    第4步:寻找资源(学习材料)

    学习一个知识点的时候,最好不要就只用一本书,可以参考不同各个书上的指定的章节,因为很多时候不同的书都在描述同一个东西,但是描述的角度不一样。

    当我们从A角度看某个东西的时候,可能会消除在B角度看相同东西时产生的那个疑惑。尽可能寻找更多资源。

    信息来源:

    图书
    博客文章
    在线视频,公开课
    询问这方面的专家
    播客
    源代码
    示例项目
    在线文档
    各种网页
    付费视频、课程

    第5步:创建学习计划

    创建学习计划,就算我们已经在第2步里面缩小了学习范围,可能这个范围内还有比如六个如A,B,C,D,E,F个知识点,而有些知识点是最基本的,比如知识点A,所有其他知识点B、C、D都依赖于A。这个时候我们肯定要学最基础的A,再学其他不那么基础的点。
    在这里插入图片描述
    就像上图中的螺旋上升的阶梯,往上的阶梯需要稳固的基础,也就是一个起点。

    很多时候可以直接参考书的目录,基础的点都在前面,进阶的内容都在后头。

    第6步:筛选资源

    因为我们在第4步的时候已经寻找了很多资源,那么这个时候可以进行筛选,去掉重复性比较多的,或者不太适合自己的那些书,找出最物超所值的那几本——可以看看网络上对该书的评价。

    第7步:开始学习,浅尝辄止
    在这里插入图片描述
    以上学习前的准备过程就差不多了,接下来就是学习过程,学习-实践-学习-分享教授(Learning, Doing, Learning, and Teaching)。

    这一步的学习是为了下一步的“动手操作”。

    这个时候我们就要清楚地知道,为了下一步的操作,我们需要的“最小量的启动知识”有多少。度很关键,学太多或者学太少都影响效率。

    第8步:动手操作,边玩边学

    如果是学习代码,这一步可以按照示例代码自己试一遍,或者自己改一遍。
    如果是学习英语单词,就使用这个单词造句、练习发音,并根据不同的释义想象可以在什么场景下可以使用。

    以上过程也是根据不同的例子来强化自己的记忆。我知道有一个挺有名的程序员章亦春,他喜欢在学习的时候,手抄代码。第一次听到这事的时候,我震惊了,手抄,那效率得有多低?后来我在刷leetcode的时候,遇到看不懂的那些题解代码,复制粘贴后上程序跑一遍还是不懂。然后我就在纸上手抄这些代码,抄着抄着的过程,竟然真的慢慢懂了,真香!

    第9步:全面掌握,学以致用

    我们可能会在上一步的操作过程中遇到问题,这个时候可以回到资料里面,去寻找答案。又或者这个时候我们再看之前看过的内容,也会有不同的体会。

    第10步:乐为人师、融会贯通

    原书中是这样写的:

    你可以用多种方式将自己所学教给他人。你可以写博客,也可以制作YouTube视频。你也可以跟自己的爱人探讨,将自己所学解释给他/她。重点在于,你要花时间将自己学到的东西从大脑中提取出来,以别人能够理解的方式组织起来。在经历了整个这个过程之后你会发现,有很多你以为自己明白了的知识点,其实并没有摸透。于是你会将那些以前自己没太明白的东西联系起来,并且简化自己大脑中已有的信息,将它们浓缩并经常复习。

    费曼学习法也大概是这个意思,诺贝尔物理奖得主费曼说:“如果你没有办法用简单的语言表述你所学的知识,你就没有真正学会它。”著名的费曼学习法,推崇以教为学。

    首先我们通过练习大量的例子,从而总结出这些例子的通用规律。然后将这些例子以他人听得懂的方式表述给他人,在这个过程中你再一次对这个通用规律进行了总结——或者说压缩。同时在表述的过程中,进行了逻辑上的验证。

    有时候,逻辑验证会出现卡壳,会发现有很多你以为自己明白了的知识点,其实并没有摸透。

    这还没完,在表述给别人的时候,别人会产生疑问,这时候可以将别人的例子,套用在你已经总结出的规律中,进一步验证这个规律的准确性。

    分享知识的途径:

    写博客文章
    创建视频教程
    发表演讲
    与朋友或爱人进行对话探讨
    线上或者线下回答他人的问题

    只要善于总结,就超越了很多人。当年RTS游戏盛行的时代,WAR3(魔兽争霸3)游戏的王者,中国人皇SKY李晓峰。他当年在网吧接受采访的时候,秀出了他一个记满技术要点的小本子,这是他对很很多场对战的关键总结。说实话,字写得真的丑,写的句子也和“文笔”两字丝毫不沾边,但这并不能阻止他成为世界人皇。

    最后,祝各位前程似锦。

    最后的最后附书单

    文末附上原书《软技能:代码之外的生存指南》作者推荐的书籍汇总。各位也可以参考以上学习方法,选择某一主题的书,进行学习哈。

    自我提升和励志类图书

    Steven Pressfield的The War of Art [Black Irish Books, 2002]
    Dale Camegie的《人性的弱点》(How to Win Friends and Influence People)[Gallery Books, 1998再版] 没错就是卡耐基的书,英文名直译有点意思:如果获得朋友和有影响力的人
    Napoleon Hill的《思考致富》(Think and Grow Rich)[Wilder Publications, 2007]
    Maxwell Maltz的《心理控制方法》(PsychoCybemetics)[Pocket Books, 1989再版]
    Norman Vincent Peale的《积极思考就是力量》(The Power of Positive Thinking)[Touchstone 2003再版]
    Ayn Rand的《阿特拉斯耸耸肩》(Atlas Shrugged)[Signet, 2005再版]

    软件开发类图书

    Steve McConnell的《代码大全》
    Robert Martin的 《代码整洁之道》
    Eric Freeman, Elisabeth Robson, Bert Bates和Kathy Sierra的《Head First设计模式》

    投资类图书

    Gary Keller的The Millionaire Real Estate Investor [McGraw-Hill, 2005]
    Robert Kiyosaki的《富爸爸,穷爸爸》
    Kerry Given的No-Hype Options Trading: Myths, Realities, and Strategies That Really Work [Wiley, 2011]

    零基础学习Java编程,可以加入我的十年Java学习园地。技术交流,经验分享,解疑答惑。

    展开全文
  • 程序员不能错过的20个学习网站

    千次阅读 2021-01-20 08:15:00
    以独家视频教程、在线编程工具、学习计划、问答社区为核心特色。在这里,你可以找到最好的互联网技术牛人,也可以通过免费的在线公开视频课程学习国内领先的互联网IT技术。 14. B站 bilibili 现在的B站已经不仅仅...
  • 为了更好地开展JavaEE中级程序员培训计划,满足互联网学习人群的需求,传智播客引入了大批JavaEE名企技术专家加入研究院,组成百人的教研团队,耗时24个月研发多领域深度项目课程,重磅推出2019全新的Java...
  • 第 1 步到第 6 步:这些步骤只做一次3.1 第1步,了解全局3.2 第2步:确定范围3.3 第3步:定义目标3.4 第4步:寻找资源3.5 第5步:创建学习计划3.6 第6步:筛选资源4. 第7步到第10步:循环往复4.1第7步:开始学习,...
  • 作为一名Java开发人员和一个Java博客的作者,我经常收到来自世界各地的Java程序员的请求,询问他们如何提高自己。 过去,我分享了我成为一名更好的程序员的10条建议,这篇文章中的每一条建议仍然适用,但是考虑到这...
  • 30岁程序员的小计划

    2021-04-24 22:22:39
    小明学历普通二本,非计算机专业,2015年大学毕业,2017年上培训班学习Java,...这篇文章主要记录我的工作计划; 今年先考过工作级考试,考完这个就可以加工资。 努力学习算法,考过专业级,这样就可以转华为。 ...
  • 程序员Java学习路线之MySQL的执行计划。什么是执行计划?执行计划通常是开发者优化SQL语句的第一步。MySQL在解析SQL语句时,会生成多套执行方案,然后内部会进行一个成本的计算,然后通过优化器选择一个最优的方案...
  • 你将面临许多未知的挑战、要学习很多东西,还要做出很多艰难的抉择。有时我们可能会选错。这是很正常的,当我们面对这种情况时不要自责。我们应该不惧怕,并从中吸取经验。在成为高级开发者的过程中,我
  • 针对这些,可能是由于程序员这个职业引起的,我们是一个纯技术的职业,而且技术更新迭代快,如果不更新学习成长,仅凭经验,确实像别人说的,新东西新的程序员学习更快,也许年龄优势比你更能加班拼搏,对于程序员...
  • 编程很多的教学视频在这里都能搜到比如你在学习java,你就搜索它就会出现很多教学视频,选择你最喜欢视频进行学习! 2、博客园 博客园创立于2004年1月,是一个面向开发者的知识分享社区。自创建以来,博客园一直...
  • 读书计划--程序员的自我修养(一)

    千次阅读 2021-11-14 12:31:39
    所以其实我从底层硬件到上层应用,都有粗浅的涉及,但总不能很好的将两者完全联系起来,所以也一直想找一本比较全面的书,而这次想和大家来分享的就是这样的一本书----《程序员的自我修养》 二、读书计划 这本书...
  • 程序员个人述职报告范文精选3篇

    千次阅读 2020-12-24 02:11:45
    程序员个人述职报告作为刚从学校出来的大学生,第一份工作就落在智通,来到智通,深深地被这个企业的文化所感染,我很认同智通的企业文化,智通的企业精神“统一,专一,事业第一”体现出了这一行业优秀企业文化的.....
  • 只有不断积累项目经验以及提高自己...我相信与自己对话之后,你就会明确自己的学习方向以及职业发展路径了。下面我们一起来探讨,Java程序员如何进行自我提升!一、Java基础要扎实-职业素养无论做了多少年,要想做的...
  • 相信近几年大家也都感受到了计算机行业的火爆,越来越多的同学选择报考计算机专业,甚至很多非计算机专业的同学也一直想要转行当程序员。 在这样的环境下,公司对程序员的要求也是水涨船高,几年前校招的同学,想找...
  • 有效的学习需要你关注学习曲线的变化,遵循有体系的技术学习框架,匹配适合当前阶段的学习资源。 29.我会记下一年来经历的所有有意义的事件(除去每日的例行工作),我称之为 “时间日志”。我按每周来记录,每周...
  • 程序员的经历与感悟

    2021-04-07 15:01:54
    面试中。问得最多的一个面试问题是:“你希望你之后三到五年的发展是什么样子?”。一般就说:“成为在某一方面能够独当一面的技术专家...从程序员说起,一个程序员很清楚的明白自己不可能是一直写代码的,就算写代码
  • 在大规划下要做小计划,坚持每天记英语单词、练习口语,并从大一开始就坚定不移地学下去。根据自己的实际情况考虑是否修读双学位或辅修第二专业,并尽早做好资料准备。大一的学习任务相对轻松,可适当参加社团活动,...
  • 在大家都为新年制定目标计划的同时,作为一名程序猿,要想在互联网世界混得风生水起都有哪些要做的?下面小编为你列出了2021年的目标清单,保证这一年在职场上得你能顺风顺水,所向披靡~ 1、学习一种新语言,...
  • 什么是Kotlin? Kotlin,如前面所说,它是JetBrains开发的基于JVM的语言。JetBrains因为创造了一个强大的Java开发...对Java开发者来说,Kotlin是非常直觉化的,并且非常容易学习。语言的大部分内容都是与我们知道的非常
  • (六)后续计划 入职第一个月因为事情比较多,需要适应,因此学习时间变少了。不过现在慢慢也恢复了。我目前到家9点半,一般会敲代码或者写技术博客或者学习到12点或者12点半。 同时我发现随着工作的沉淀,自己以前...
  • 程序员转行算法工程师-五个月总结三方教育机构个人感受先说缺点:再说一下优点:下一步学习计划:疲劳期的总结/个人感受:结束   这周,第三方教育机构的学习正式结束,这里,我总结一下自我感受,并且说一下下一步的学习...
  • (完全没思路,只知道一小时内肯定不行,因为走得速度不一样,一圈内速度快的和速度慢的撞不上) 学习分享,共勉 这里是小编拿到的学习资源,其中包括“中高级Java开发面试高频考点题笔记300道.pdf”和“Java核心...
  • 2.2.2 两个原则 (1)简化预备工作: 在计划开始前做好简单的预备工作即可,比如你打算吃饭后开始学习,就在吃饭前先收拾好桌子,摆好学习用品等,切忌过多地准备,且需要适当地提前一些。 这样看到了准备就绪的...
  • 小白的个人学习计划 ** 其他组学习 作为项管,队长让我去学习一下其他组的工作,所以要进行一个 硬件的学习:入门 https://www.bilibili.com/video/BV1R4411a7xg?p=4&share_medium=android&share_plat=...
  • 程序员工作业绩总结

    千次阅读 2021-01-14 17:01:01
    回头看看20XX年的足迹,伴随着自己一年的是学习与坚持.20XX年伊始是通过分销资源计划系统(DRP)拉开序幕.此次项目是一个相对比较完整的Java Web项目,从最基础的业务介绍,到需求分析,数据库分析与设计,页面设计,代码...
  • 11款程序员实用工具,老少皆宜,你一定用得上!

    万次阅读 多人点赞 2021-08-26 10:47:30
    今天给大家分享11个程序员建议收藏的工具,老少皆宜,尤其是新手程序员,技术水平一时半会儿可能难以提升,需要持之以恒地学习和练习,但工具用得好,做事效率是可以快速提升的。 一、CSDN浏览器助手(开发者必备的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 97,351
精华内容 38,940
关键字:

程序员学习计划