Java技术大牛成就之路的故事
打个比方吧,这位牛人23岁毕业,做了两年嵌入式C编程,25岁时,突然对Java的优雅设计情有独钟,而正好这时,公司有个Java项目,Java技术之旅开始了。
1、最开始三个月,开始接触Java,比如接口、继承、封装等,买了本《Think in Java》天天啃,并且同时做项目实践。猛学了三个月后,对面向对象编程OOP熟悉了,原来脚本式思维和对象思维确实有差别。
2、三个月后,开始啃《Core Java》,《Effective Java》,对Java有了更深入的了解,回调的概念也有了,逐渐接触到更高的层次,面向对象设计OOD,这时又看了一本书《Head First Design Patterns》,感觉设计模式特别有趣。再写代码,已经不是面向实现编程,而是面向设计编程。感觉写Java代码太简单了。 因为每天还有Java的Web项目开发,逐渐了解了WebWork等Web框架的使用。
3、六个月过去了,Java瘾越来越大,逐渐开始往更高层次攀登,这时,又看到两本书《企业应用架构模式》、《UML和模式应用:面向对象分析与设计导论》,已经开始从设计往面向对象分析OOA、架构攀登了。 因为大半年的Java企业开发,Hibernate已经比较熟悉了,了解Hibernate背后的持久化技术、Spring背后的IoC容器、组装技术原理。
4、一年后,他逐渐脱离了Java语言,开始看这类书《面向模式的软件体系结构 卷1》。这个阶段持续了一年,并且对以前的学过的设计模式,如命令模式、观察家模式有一个更深入的了解。 因为两年的企业应用开发,他已经熟悉了Java EE的十来种规范,对Web容器和Servlet规范的关系有很深的理解,对JDBC规范和数据库驱动程序的关系也很了解。
他正在经历Java开发的快速上升期,对应于曲线的一年时间点。
5、两年后,他突然发现,他学的很多东西都没用,都是纸上谈兵,比如,在自己的企业应用开发中,Command模式、Template从来没有用过。 他还发现,本来100行写的一个功能,花了1000行,就是为了所谓的设计优雅性:可扩展。而实际上,还没有等到扩展,该系统就已经废掉了。 他发现原来设计模式主要用在系统框架开发,而不是应用开发,一般开发人员不用,只需要理解。 他还发现,他认真学过的JMS、JCA、JTA、EJB像是从来没有用过。突然他想通了,JMS、JTA可能是一种无奈的选择:处理遗留系统。
当他开始对自己两年学到的知识进行反省、批驳时,他已经有了技术辨别能力,知道技术推广也不是那么纯洁,也有商业炒作。 知道Java虽然是Sun公司发明的,但Sun公司没有赚到钱,IBM却赚得盆满钵满,最后Sun公司竟然卖给了技术商人Ellison所创立的Oracle了,Java之父James Gosling也混得并不好,从Sun公司到Oracle,最后还不欢离开了。
这时候,他已经不限于Java了,开始了解C#,Ruby,发现Java可能并不太适合互联网开发,PHP可能更适合,ROR开发更快但需要在牛人的手里。两年后的这个时候,他才开始真正驾驭Java,他已经不再限于Java,而是企业应用。
这个时候,技术提升的速度越来越慢了(曲线的三年分界点),因为不知道还可以学习什么新技术。因为他发现,原来这些东西,最深层次的,都是几十年前的技术概念:消息系统、异步通讯、事件机制等等….
6、三年过去后,他已经不再限于企业应用,而是解决方案,技术只是一种解决问题的方式,比如企业信息化成功的关键,恐怕不是技术,而是企业本身的业务流程成熟度;企业信息化成功的关键,不是处理好了技术,而是处理好了几位企业高官的利益。 这时候,对IT行业新闻,逐渐有判断力和免疫力。
他突然发现,技术的力量很有限,商业才是最大的驱动力量。而此时,他已经不再钻研技术细节,比如JVM的垃圾回收机制,如果他在一个技术研发型公司,比如普元,可能还会深入挖掘技术。如果他在东软这类行业应用开发企业,这类企业的口号是Beyond Technology,这时候他再执迷于技术而轻业务,恐怕不太受欢迎。
这个时候,技术的提升,就会进入一个平台期,也就是曲线的水平部分。再平稳发展,技术大牛就开始炼成了
喜欢的点点关注,下方评论区欢迎你的精彩评论。
程序员进阶交流学习一群:468947140 (已满);二群:878249276
进群获取往期Java高级架构资料、源码、笔记、视频
Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
9月19日云栖精选夜读 | 云栖大会马云演讲:以前制造业靠电,未来靠数据
9月19日,2018杭州云栖大会在云栖小镇开幕。本次云栖大会以“驱动数字中国”为主题,关注政务创新。阿里称有来自60多个国家的CEO、CTO参会,超过12万人现场参会。 长达近四个小时的主论坛上有不少新发布,先来看几个亮点: 阿里巴巴城市大脑2. 热点热议 云栖大会马云演讲:以前制造业靠电,未来靠数据 作者:阿里云头条 发表在:云栖大会 你真的了解JAVA的形参和实参吗? 作者:技术小能手 发表在:Java架构沉思录 阿里云总裁胡晓明:“这些新杭州故事,明天将会在更多城市发生” 作者:阿里云头条 发表在:云栖大会 知识整理 并发服务器三种实现方式之进程、线程和select 作者:调皮仔3683 怎么将aspx网站改为静态页面? 作者:gydtep Oracle数据库-备份整个数据库与还原整个数据库数据 作者:gydtep java里getter和setter的作用和区别是什么? 作者:技术小能手发表在:程序员互动联盟 MySql分页查询慢|这里告诉你答案 作者:小忽悠 美文回顾 有人说学了C语言,两天就能把Java学会,再过两个星期就可以找工作了,是真的吗? 作者:技术小能手发表在:程...
- 下一篇
Java消息队列总结只需一篇解决ActiveMQ、RabbitMQ、ZeroMQ、Kafka
一、消息队列概述 消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 二、消息队列应用场景 以下介绍消息队列在实际应用中常用的使用场景。异步处理,应用解耦,流量削锋和消息通讯四个场景。 2.1异步处理 场景说明:用户注册后,需要发注册邮件和注册短信。传统的做法有两种 1.串行的方式;2.并行方式 a、串行方式:将注册信息写入数据库成功后,发送注册邮件,再发送注册短信。以上三个任务全部完成后,返回给客户端。 b、并行方式:将注册信息写入数据库成功后,发送注册邮件的同时,发送注册短信。以上三个任务完成后,返回给客户端。与串行的差别是,并行的方式可以提高处理的时间 假设三个业务节点每个使用50毫秒钟,不考虑网络等其他开销,则串行方式的时间是150毫秒,并行的时间可能是100毫秒。 因为CPU在单位时间内处理的请求数是一定的,假设CPU1秒内吞吐量是100次。则串行方式1秒内CPU可处理的请求...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Mario游戏-低调大师作品
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装