java架构师学习路线java软件工程师学习线路图是怎么样的?

java架构师学习路线  时间:2021-07-07  阅读:()

请专业java大神给出 java高手进阶路线图

1.javase 2 html css javascript jquery jsp 3. javaweb 4.数据库(mysql oracle) 5.框架 struts2 string hibernabe Mybatis Stringmvc 等 6.linux 7.前端框架 easyUI bootstrap 等

胡喜:我是如何从菜鸟做到架构师的

奠定扎实的理论基础   千里之行,始于足下!技术不是一蹴而就的事情,而是长时间积累的成果。

扎实的基本功是做好所有事情的开始。

到现在我还记得对我影响非常大的几本书:   ■《C++编程思想》   ■《深入浅出MFC》   ■《Windows 核心编程》   ■《数据结构》《编译原理》   我学习计算机正是按照这几本书的顺序,之前学习C的经历就不必说了,而转折点正是《C++ 编程思想》它让我感觉到程序和语言竟然这么有意思,至今仍对虚表的概念记忆犹新,尤其指针的用法,对我以后学习Java语言有很大的帮助,对多态和语言的特性也有了很高的认识。

  《深入浅出MFC》这本书,记忆最深刻的还是其中强大无比的宏定义和对象层次设计。

然而学习MFC的过程中,我遇到的最大问题就是:很多东西都是黑盒的,这引发了我刨根问底的欲望。

所以后来我学习了《Windows核心编程》,这本书给我的最大收获,就是了解了很多操作系统底层的知识,操作系统是如何运行的。

不过遗憾的是,如果当时从Linux 或者Unix 开始学习,应该会了解得更系统一些。

  之后我深入学习了《数据结构》和《编译原理》。

这是我经过了很多实践以后,又回过头来重新学习。

拿《编译原理》来说,以前对这门学科的了解非常有限,后来为了实现一个东西,要用到脚本语言,找来找去找到了Velocity(后来想想使用Groovy 应该更好一点),用了以后觉得很好。

以前修改程序逻辑,是需要重新编译或者修改配置重新发布才能OK,而现在只需要编辑然后保存一下,就能得到自己想要的结果。

这令我着迷,于是想知道它是如何实现的,翻看源代码才晓得原来还有 JavaCC这个东西。

就这样,我从解释语言入手,逐渐开始了疯狂学习编译原理的过程,越发觉得编程语言非常有意思。

  讲了这么多,就是想强调理论基础知识的重要性!虽然我们现在使用的框架如此之多,但是如果你有了扎实的基础理论知识,这些东西就跟玩具一样。

基础就是一个无招胜有招的杀手工具。

  培养完善的抽象思维   让我们从语言层面逐渐剖析这个问题,应该很容易做出解释。

程序语言就是我们在某种场景下交流的工具,汇编是机器语言;C和C++ 是编译型语言,它们是一种针对汇编的高级抽象;而Java 和 C# 就是更高级的抽象了,甚至于抽象了一层虚拟机出来(这个产生的影响就是,之后的很多高级语言评判标准,都是是否支持虚拟机),再到后面的许多动态语言,那就是更抽象了。

说到这里你会问到,讲这么多语言类的东西和学习框架有什么联系?让我慢慢道来。

  我们使用一种语言就是用它的语法进行编程,而学习一个框架实际也是为了用这个框架所提供的语言来写程序:Struts我们使用很多配置还有 Action 和Form ;Spring我们使用Bean 模型,这是它的最基本模型(现在 Spring 已经庞大得让很多人无法学习了);iBatis我是用它的XML-SQL 模型;JBPM使用它所谓的GOP模型(面向图元的编程);Web flow是在使用它的页面流模型。

这样的例子我可以举出很多(这也是DSL现在如此流行的原因)。

  很多人会说:学习这么多我已经晕掉了!不妨想想,为什么会有这么多东西存在? Struts 是为了解决Web编程的困扰;iBatis、Hibernate 是为了解决在数据库编程时的麻烦;原有的Web页面编程都是独立的具体单元,Web flow能够让这些页面形成流的形式,让开发更顺其自然;从JBPM的GOP可以看出,JBoss 的开发人员对抽象的理解度很深。

我举这么多例子,实际是让大家不要害怕现有的这些框架,有了扎实的基础,抽象的概念是很容易理解的!缺乏抽象的能力,你就不能更快更好地解决问题。

  扩充现有的知识层面   在巩固原有知识结构的前提下,我们更需要扩充现有的知识面。

井底之蛙,看到的永远是井口大的那片天,只有跳出来,才能看见无限美好的蓝天白云。

我曾经也常常局限在自己已熟悉的那块领域沾沾自喜,但是走出来以后才发现,自己原本是多么肤浅!学习的知识越多,对新事物的洞察力将会越准确!这样有助于你巩固已有的知识,系统地学习新的知识。

  那我们是否需要无限平行式的学习知识呢?我的答案是No。

人的知识面是有限的,我们需要一个T型的知识结构。

你的知识面要广,但是对于某些技术点要专,这才是做好一个架构师的关键。

有时 专可以让你对很多广的知识产生触类旁通的感觉。

  实践也是非常重要的一环,不要有畏难心理,觉得这个东西太难,我无法完成!有时候事情的结果可能是糟糕的,但是过程是非常宝贵的,其中可以学习到很多东西,同时也可以让自己避免轻浮的心理。

  还要着重培养自己良好的沟通与解说能力。

架构师面对客户群具有多样性,有技术工程师、业务人员、公司管理层,甚至直接面对客户等。

要把一个高度抽象又复杂的系统说清楚,这对于架构师来说也是一种挑战。

所以架构师必须掌握技巧,应用多种表达方式来阐述架构与产品设计、与具体业务、与公司战略之间的关系等。

培养良好的沟通能力,多和周围的人进行沟通,你能够学到更多的知识!   平衡是架构设计的艺术,我们设计一个东西,就是在平衡各方面的利益。

平衡有可能是时间上的,比如需要支持多少年的系统可用性;平衡有可能是纵向的,比如要支持系统的向下兼容性,要保证程序员编程模型上的简单性等等。

这种平衡就是因人因时因地而异了。

平衡的把握很可能就是评判一个架构师架构水平的标准!架构师在设计的时候应该权衡维度、整体性和扩展性,考虑问题时不要局限于自己的一亩三分地。

多种点田,会长出很多庄稼的!   拥有一个扎实的基础,不断扩充自己的知识面、完善知识体系,在对现有知识抽象的基础上,不断去沟通实践,你将获得更强的架构平衡能力。

最后我还要说,业务知识非常重要,这个是你实践的关键!   胡喜,就职于阿里巴巴集团旗下支付宝(中国)网络技术有限公司。

担任技术架构师,负责支付宝技术架构规划,解决方案等相关工作。

java软件工程师学习线路图是怎么样的?

从简单的java se 开始学习基础,接着到各种高级应用,多线程等等,然后学习各种框架,最好把这些应用到实战当中,如需要更加详细的路线图,可以到各大网站搜索资料,如课课家教育看看,希望对你有帮助

RAKsmart裸机云/云服务器/VPS全场7折,独立服务器限量秒杀$30/月起

适逢中国农历新年,RAKsmart也发布了2月促销活动,裸机云、云服务器、VPS主机全场7折优惠,新用户注册送10美元,独立服务器每天限量秒杀最低30.62美元/月起,美国洛杉矶/圣何塞、日本、香港站群服务器大量补货,1-10Gbps大带宽、高IO等特色服务器抄底价格,机器可选大陆优化、国际BGP、精品网及CN2等线路,感兴趣的朋友可以持续关注下。裸机云新品7折,秒杀产品5台/天优惠码:Bare-...

统计一下racknerd正在卖的超便宜VPS,值得推荐的便宜美国VPS

racknerd从成立到现在发展是相当迅速,用最低的价格霸占了大部分低端便宜vps市场,虽然VPS价格便宜,但是VPS的质量和服务一点儿都不拉跨,服务器稳定、性能给力,尤其是售后方面时间短技术解决能力强,估计这也是racknerd这个品牌能如此成功的原因吧! 官方网站:https://www.racknerd.com 多种加密数字货币、信用卡、PayPal、支付宝、银联、webmoney,可...

CYUN(29元/月)美国、香港、台湾、日本、韩国CN2,续费原价

关于CYUN商家在之前有介绍过一次,CYUN是香港蓝米数据有限公司旗下的云计算服务品牌,和蓝米云、蓝米主机等同属该公司。商家主要是为个人开发者用户、中小型、大型企业用户提供一站式核心网络云端部署服务,促使用户云端部署化简为零,轻松快捷运用云计算。目前,CYUN主要运营美国、香港、台湾、日本、韩国CN2线路产品,包括云服务器、站群服务器和独立服务器等。这次看到CYUN夏季优惠活动发布了,依然是熟悉的...

java架构师学习路线为你推荐
有道云笔记网页版网页版有道云笔记怎么同步到pcbloomfilter布隆过滤器既然有错误率,为什么还能应用在key-value系统中?weakhashmapjava中几种Map在什么情况下使用,并简单介绍原因及原理策略组组策略是什么?rdlDVD±RW/±RDL/RAM 具体什么意思rdlregardless是什么意思李昊天铠甲勇士2刑天的李昊天秘密是什么jql建筑设计图纸上JQL 梁,是不是地下正负零基础梁?急急!vipjrvipjr怎么样?有真实体验的来说一下spawning为什么编译和运行vc++ 时会出现Error spawning c1.exe 的错误
apache虚拟主机 3322动态域名注册 台湾服务器租用 中国万网虚拟主机 冰山互联 国外idc 服务器怎么绑定域名 主机合租 嘟牛 七夕促销 免费个人空间 怎样建立邮箱 网站木马检测工具 hinet 河南移动网 metalink web服务器安全 超级服务器 国外视频网站有哪些 跟踪路由命令 更多