当前位置:首页 > 公众号精选 > 沉默王二
[导读]作为一个 PHP 转 Java 的业务开发,经常对自己的 Java 基础是否扎实有个问号。实际业务上由于基本上都是 CURD,并没遇到什么困难,但越是这样有时候心里就越慌。

大家好,我是二哥呀。

不得不说,中秋节是我们国家非常重要的节日之一。每年的中秋佳节,二哥都会收到一些博客社区寄来的礼品,这次有知乎、CSDN 和 Apipost,给大家小晒一波????。

朋友圈有小伙伴留言说,“怎么才能像二哥一样,收到这些礼品呢?”我当时大言不惭回复他说,大概也就需要 3000 天的坚持吧

(瞧我这得意忘形的死样子)

不过确实,从 2014 年开始写博客到现在,8 年的时间,粗略一算,真的有 3000 天了。

好了,接下来给大家分享一波二哥编程星球里一位球友的故事,这位球友一开始,有点温水煮青蛙的味道,上班 CRUD,下班躺尸,就这样从实习到工作,过了三年时间,但突然有一天,开始奋发图强,觉得不能再这么荒废下去了,于是来二哥星球开始了连续 90 天的打卡之旅,感觉蜕变了很多

说真的,这位球友的坚持,远超二哥当年的努力程度。说来也巧,我们差不多都是工作 3 年后开始幡然醒悟的。来看看这位球友的故事吧。

坦白从宽????

先来看一下球友的坦白从宽,可以说像极了二哥实习和毕业的那会。

作为一个 PHP 转 Java 的业务开发,经常对自己的 Java 基础是否扎实有个问号。实际业务上由于基本上都是 CURD,并没遇到什么困难,但越是这样有时候心里就越慌。

原来是想看二哥的《Java 程序员进阶之路》或者 JavaGuide,看了一部分,感觉还是想系统性的过一遍。于是,刷了一遍《Head+First+Java》、《Think in Java》。

看完后当时感觉自信心爆棚,于是去隔壁小傅哥的抽奖系统刷了一通,中间断断续续,现在差不多快完结了。

感觉快要步入刷的越多、心里越慌的程度了,大概是自己学的很多没真正应用落地。

比如小傅哥的重学设计模式,自己也跟着做完了,也输出了自己的博客,但还是没啥感觉。

反而在抽奖中实际体验过的模板模式,慢慢开始能落地到业务上了,感觉开始熟练化了。

所以除了输出,最重要的还是要落地到自己业务的实际代码中,如果没有实际项目,可以在自己的模拟项目中,先写一版,之后考虑如何重构。

今年除了抽奖,就是 TiDB 了,新型数据库,语法基本上兼容 MySQL,但用起来挺舒服的,不用分库分表了,去年引入到业务中了,由于遇到了一些问题,开始被迫倒逼系统性学习,TiDB 官网有相关的系统性学习视频,甚至还有考试。

哈哈哈,感觉二哥有空联合星球的小伙伴整理一下题库,边学习边考试,提高熟练度。

说了这么多,就是跟大家打声招呼!!!

然后列一下学习计划吧。

  1. 二哥的 Java 面试指南
  2. 带着疑问去做 Java 程序员进阶之路
  3. 源码学习:Spring、Mybatis
  4. 项目实战

打卡之旅

这位球友的毅力真的是没得说,从进入星球到现在,真的是没有间断过。起到了一个很好的模范带头作用,关键是,这样自律的表现,给他也带来了质的提高。二哥接下来就来挑一下球友的打卡记录分享出来,给大家鼓鼓劲和加加油????????。

2022-06-06 20:57

2022-06-08 23:40

今天按计划开始 Java 基础,计划是这样的:

  • (1)CS Note、Java Gudie、Java 程序员进阶之路、Effective Java 把基础过一遍

  • (2)基础知识过的时候,整理一下基础的骨架

  • (3)对比三个 Guide 的基础骨架不同,合一把

  • (4)根据这份基础骨架后续定期复习,把容易忘记的,和一些能整理的点梳理出博客

今日份:CS Note(Java 基础 1~6 节)

2022-06-26 19:13

  1. Java 程序员进阶之路 - Java 概述
  2. Java 程序员进阶之路 - Java 基础语法
  3. Java 程序员进阶之路 - 面向对象编程

今天开始二哥的进阶之路,这个真的是挺适合初学者,不过用来复习也很不错。还有几件小事:

  • 一、文字勘误了 2 个小问题,提了个 PR。
  • 二、final 方法中有一个不太理解的表述,二哥有空帮忙看下@沉默王二

这位球友非常认真,在阅读《Java 程序员进阶之路》的过程中还发现了一些小错误,并且提交了 PR。

2022-07-04 21:35

今天主要是 ReetrantLock 和 ReentrantWriteLock。

  1. ReetrantLock
  • (1)非公平锁实现 AQS 父类 AbstractOwnableSynchronizer 记录了持有锁的线程 AQS state 属性记录重入次数,来保证加解锁
  • (2)公平锁实现 hasQueuePredecessors() 从后往前找最后一个等待线程,若不为自身线程,说明前面还有任务等待,无法获取锁
  1. ReentrantWriteLock
  • (1)核心 state 高 16 位读锁次数,低 16 位写锁次数
  • (2)写锁 若读锁已被读线程获取 or 写锁已被其他写线程获取,则写锁获取失败
  • (3)读锁 写锁被其他进程获取,读锁获取失败,否则 CAS 更新,CAS 失败,走 fullTryAcireShared()  自旋

这位球友的打卡内容越来越认真,并且开始画思维导图总结了。

2022-07-10 12:45

一、6 月学习小结

之前笔记里也有不少东西,不过我都只是在附图中展示了一下,现在开始慢慢抽出来。

还是有点好处的,感觉又总结了一遍,后面的博客计划应该能省挺多事,之前只是把一些关键点记下来,以备后续整理,现在只是相当于提前了。

而且并发编程这块确实有挺多很有意思的地方。

因为并发编程这款很多和源码有关,不太好写整块的东西,都是一个个执行步骤,之前那种直接把 markdown 贴出来,自己有时候在外边想看一眼也不是很好看。

此刻推荐一个神器 markmap,可以将 markdown 转成思维导图,看上去就很清晰了。VS Code 搜索:markmap(31 K stars)

这算是自己最近的学习经验总结吧!

二、7 月份计划

  1. 二哥的 Java 程序员进阶之路完结
  2. 冰河大大的 SpringCloud Alibaba 实战开始

7 月份不贪多,需要恢复恢复状态,初步目标 2~3 篇!后续可能会继续穿插 Spring 和 Mybatis 的学习来把基础打得更扎实一点,具体可能还是要看后面的一些学习感觉,是先把实战篇完成,还是穿插着来。

2022-07-14 21:52

今天主要是并发编程的计划任务-ScheduledThreadPoolExecutor。

  1. 用途
  • (1)在给定的延迟之后运行任务
  • (2)周期性地重复执行任务

2.为什么不用 Timer?

  • (1)Timer 单线程模式,在执行任务时某个 TimerTask 耗时久,会影响其他任务
  • (2)Timer 任务调度基于绝对时间,对系统时间敏感
  • (3)Timer 不捕获 TimerTask 执行时抛出的异常,因此一个任务失败,会影响其他任务
  1. ScheduledThreadPoolExecutor 结构
  • (1)继承 ThreadPoolExecutor
  • (2)实现 ScheduledExecutorService
  1. schedleAtFixedRate()
  • (1)在 initialDelay 后第一次执行任务
  • (2)每隔 period ,再次执行任务
  1. schedlueWithFixDelay
  • (1)在 initialDelay 后第一次执行任务
  • (2)每当任务执行完成后,等待 delay,执行任务
  1. 主要方法执行逻辑(见思维导图)

2022-08-07 19:13

2022-09-08 23:26

2022-09-12 21:48

二哥点评

这位球友的打卡内容真的是非常非常的仔细,就连中秋假期也没有停下脚步。他的这种毅力让我想起了 2014 年开始坚持写博客的那段“光辉岁月”(大言不惭,????)

不再去埋怨环境不好啊,不再去埋怨公司没有发展前景啊,不再去抱怨队友不给力啊,就是踏踏实实地专注于自身的成长,每天积累一点点,一点点。

久而久之(8年时间,3000天),二哥变成了你们眼中的这个样子,每到中秋节之前,各大博客平台都“非常积极”地送来中秋礼品(装,让我这个逼再装会)

有不少读者经常给我抱怨说,自己这个学不会,那个没有耐心,本质的原因就是因为你关注了太多外界的干扰因素,没有几个人能做到日复一日的坚持。

可一旦你做到了,根本就到不了拼天赋、拼家庭背景,就能在学生阶段、工作阶段脱颖而出。

好了,心灵鸡汤就先灌到这吧,你们小心点喝,别噎着,????

ending

一个人可以走得很快,但一群人才能走得更远。当你处在一个学习氛围浓烈的环境中时,就会不由自主地往前冲刺。二哥的编程星球已经有 780 多名 球友加入了,如果你也需要一个良好的学习氛围,戳链接加入我们吧。

星球置顶帖里的知识图谱和精华贴里已经沉淀了非常多优质的内容,多看看这些,相信能帮助你走的更稳、更远。


没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Java是一种广泛应用于软件开发的编程语言,它具有跨平台、面向对象和高度可靠性的特点。在嵌入式系统设计中,Java也有着广泛的应用方案。本文将详细介绍Java在嵌入式系统设计中的应用方案,并分析其优势和挑战。

关键字: Java 软件开发 编程语言

嵌入式系统是指集成了计算机软硬件的特定系统,通常用于控制和监控设备、机器和系统。Java作为一种通用的编程语言,在嵌入式系统的开发中也有广泛的应用。下面将介绍一些嵌入式系统中Java的开发工具和解决方案。

关键字: 嵌入式 计算机 Java

Java语言是一种面向对象的编程语言,由Sun Microsystems(现在是Oracle Corporation)于1995年推出。Java具有跨平台性和可移植性的特点,广泛用于开发各种应用程序,包括嵌入式系统、移动...

关键字: Java 编程语言 互联网

12月7日消息,近日,Java全球管理组织JCP披露了最高执行委员会(JCP-EC)新成员名单,作为唯一中国代表,阿里巴巴再次连任,任期两年。这是阿里连续三次入选JCP最高管理席位,代表着中国技术公司长期参与Java全球...

关键字: 阿里云 Java

经常有一些小伙伴来咨询二哥培训机构方面的问题,通常情况下,如果自学能力可以的话,我是建议通过《Java 程序员进阶之路》配上 B 站的教学视频,先把 Java 后端四大件学扎实(Java 基础、Spring Boot、R...

关键字: Java 培训机构 算法

Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向...

关键字: Java C++

昨天,二哥的编程星球里的一位球友问我能不能给他解释一下@SpringBootApplication注解是什么意思,还有 Spring Boot 的运行原理,于是我就带着他扒拉了一下这个注解的源码,还有SpringAppl...

关键字: Java Spring Boot

摘要:设计了一种基于Java和selenium的自动化操作工具,利用selenium开源自动化测试框架建立企业信息系统自动化执行的解决方案,着重对比自动化工具和手工操作的差异。通过使用工具和人工操作的对比试验,证明这种工...

关键字: 自动化操作工具 selenium Java

摘 要 :为了节约油气生产的建设投资成本,提高劳动生产效率,中石油建设了规范、统一的油气生产物联网系统。文中介绍了油气生产物联网管理子系统的功能设计、系统数据架构及数据处理。该系统的持续完善与深入应用必将为转变油气田生产...

关键字: 油气生产 物联网 管理 Java 生产效率 子系统

摘要:以Java语言和SQLServer2008数据库为基础,结合Ajax等技术,同时利用Myeclipse开发了一款适合教育机构使用的网络在线考试系统。该系统主要由学生考试系统和教师管理系统组成。学生考试系统主要用于学...

关键字: Java SQLServer2008 Ajax 在线考试系统
关闭