惊呆!Java程序员等级一览
筑基:评价标准:懂了怎么配置环境变量,懂得bin目录下都有什么,java命令行基本懂点。明白了变量类型,也碰过几个坑,知道java的值传递,引用传递,脑子里有点函数和类的概念。try catch用不好,用println多余log4j,知道继承但就是不用。if else看得懂switch知道但用的不多(基本都在用if),知道遍历迭代递归,但只会用for,看到foreach傻眼了,iteracter一脸懵逼,时不时的写出几个超长函数。
进入这个阶段恭喜你,你已经是个程序员了,但只是个炮灰小白,毕业生培训一个月的水平,会用eclipse但用不好,想要进一步还要自己提升人生价值。
金丹:学了一段时间java发现自己进入一个瓶颈,简单的代码能看懂但一到项目就懵逼了。在框架的世界里迷茫,听过struct1和2,听过spring但不知道这些框架个有什么特点。你会发现自己不知不觉多了很多新词,restful api,函数式编程,异步,等等。这是个迷茫期也是个成长期,你的java人生在这个阶段才真正褪去学生时代的影子进入到生产第一线。挺过来就是破茧成蝶
元婴:你决心重新梳理一遍自己的知识体系,发现自己以前多么傻多么天真。终于你发现了多种类型的数据并对他们的作用有了大踏步的理解。明白了list找重复不用整个list都遍历一遍,放到set里就好,也明白arraylist和linkedlist的优劣。渐渐的你迷恋上了算法,以前看不懂的排序在自己的手里变得游刃有余。你变了,发现bat的面试题从高不可攀变得有趣起来。这个时间点的你觉得bat不是终点,google amazon facebook里和全世界的高手一较高下才不枉红尘走一遭
炼虚:你进一步梳理知识体系,发现自己以前用的不过是Java多年前淘汰下来的语法,渐渐lambda代替了for,@注解也越用越流利,spring boot也越来越顺眼,渐渐的你喜欢上了写interface,你发现程序越来越接近书上说的松耦合。getter setter让封装性更好,interface变量也完美的实现多态性。你已经有了自己的函数库,不用遇到一个问题就丢给百度。此时此刻你已经炼化了虚伪,成为真正的炼虚阶段。
合体:这一步的你已经不再受到语法和框架的束缚,你加入了hadoop军团,知道怎么调试jvm也碰到了java的瓶颈,你也许碰到了jvm上另一朵花:scalar,也许在scalar之前也写过屁眼通红(python),或者受过c++的折磨。总之,你已经不再受java的约束,以你java的基础,你开始了几门语言的学习,并发现世界真大,我好渺小,java的功能从最初的搭建web服务器到后来的android大军,再到hadoop的异军突起,java像打不死的小强到处都是他的影子。但你也深深体会了java的迟暮,更新越来越难,新版本的java要为老版本的兼容失去太多太多。
大乘:你进入了AI领域,发现python在人工智能领域的强大,你不服气,参照着sklearn开始自己写机器学习的算法,从开始的决策树到后来的xgboost,一步一步你追赶着潮流,渐渐成为了时代的先锋,此处的你已经是宗师级人物,bat的一方大佬,你在github上发布框架,发布包,发布project,渐渐你发现编程从一门语言的学习变成了数学的海洋,无论多高的天赋,在数学面前都难以翻出浪花来
真仙:渡劫成仙,你已经是语言之父级别的人物了,你开始自己写编译器,学术界引领潮流,Google等世界级大厂请你做科学家,思考人类的未来。抱歉我离这个境界太远,想象不到这是个怎样的境界。
写在最后:欢迎留言讨论,加关注,持续更新!!!
惊呆!Java程序员等级一览的更多相关文章
- 判定Java程序员等级,HashMap就够了
JDK1.8 HashMap源码分析 用到的符号: ^异运算:两个操作数相同,结果是;两个操作数不同,结果是1. &按位与:两个操作数都是1,结果才是1. 一.HashMap概述 在JDK1 ...
- 惊呆了!Java程序员最常犯的错竟然是这10个
和绝大多数的程序员一样,我也非常的宅.周末最奢侈的享受就是逛一逛技术型网站,比如说 programcreek,这个小网站上有一些非常有意思的主题.比如说:Java 程序员最常犯的错竟然是这 10 个, ...
- Java程序员最常用的8个Java日志框架
转自:http://www.codeceo.com/article/8-java-log-framework.html 作为一名Java程序员,我们开发了很多Java应用程序,包括桌面应用.WEB应用 ...
- 转:Java程序员最常用的8个Java日志框架
作为一名Java程序员,我们开发了很多Java应用程序,包括桌面应用.WEB应用以及移动应用.然而日志系统是一个成熟Java应用所必不可少的,在开发和调试阶段,日志可以帮助我们更好更快地定位bug:在 ...
- Java程序员面试题集(71-85)(转)
转:http://blog.csdn.net/jackfrued/article/details/17566627 Java程序员面试题集(71-85) 摘要:这一部分主要包括了UML(统一建模语言) ...
- Java基础学习总结(40)——Java程序员最常用的8个Java日志框架
作为一名Java程序员,我们开发了很多Java应用程序,包括桌面应用.WEB应用以及移动应用.然而日志系统是一个成熟Java应用所必不可少的,在开发和调试阶段,日志可以帮助我们更好更快地定位bug:在 ...
- java程序员面试经历(不忘初心,永不放弃,方得始终)。
其实一直想静下心好好写一点博客,记录下青春,但一直忙于学习,写bug.....转眼间2017只剩下最后几天,岁月无情划过,不留痕迹,唯有稀疏地中海.哈哈,本篇文章主要是想分享下刚毕业入门找工作的一点小 ...
- Java程序员面试题收集(3)
面试中被问到过的题目: 1.<%@ include=""/>和<jsp:include page="" flush="true&qu ...
- [转载]一个标准java程序员的进阶过程
第一阶段:Java程序员 技术名称 内 容 说明 Java语法基础 基本语法.数组.类.继承.多态.抽象类.接口.object对象.常用类(Math\Arrarys\S ...
随机推荐
- python之socket编程(一)
socket之前我们先来熟悉回忆几个知识点. OSI七层模型 OSI(Open System Interconnection)参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标 ...
- MySQL函数使用
1.mysql开启函数功能 MySQL函数不能创建的解决方法 在使用MySQL数据库时,有时会遇到mysql函数不能创建的情况. 出错信息大致类似: ERROR 1418 (HY000): This ...
- C# Newtonsoft.Json JObject 操作
C# Newtonsoft.Json JObject 操作举例 JArray j = new JArray(); JObject obj = new JObject( ") ); JObje ...
- go timer定时器 WaitGroup用法
参考文章: timer定时器: https://www.cnblogs.com/oxspirt/p/7107312.html WaitGroup用法: https://studygolang.com/ ...
- 最新 多益网络java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿. 多益网络等10家互联网公司的校招Offer,因为某些自身原因最终选择了 多益网络.6.7月主要是做系统复习.项目复盘.Le ...
- 提高.NET应用性能
提高.NET应用性能的方法 写在前面 设计良好的系统,除了架构层面的优良设计外,剩下的大部分就在于如何设计良好的代码,.NET提供了很多的类型,这些类型非常灵活,也非常好用,比如List,Dictio ...
- NLog文章系列—系列文章目录以及简要介绍
参考文章:http://www.cnblogs.com/dflying/archive/2006/12/04/581750.aspx
- 解决maven打包时,会编译特定文件导致文件不可用
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resou ...
- coverage代码覆盖率的使用~~
我们看下代码覆盖率的统计~,这个不必太揪心,觉得可以帮助你优化代码,可以看看,也不要带在意~ 1.先在cmd命令窗口在线安装coverage pip install coverage 2.安装完毕后我 ...
- 5、1 es 数据库和mysql 数据库同步 (Windows操作系统)
(1)在logstash-5.6.8安装目录下创建文件夹mysqletc (名称随意) (2)文件夹下创建mysql.conf (名称随意) ,内容如下: input { jdbc { #sc表 jd ...