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

易探云:香港CN2云服务器低至18元/月起,183.60元/年

易探云怎么样?易探云最早是主攻香港云服务器的品牌商家,由于之前香港云服务器性价比高、稳定性不错获得了不少用户的支持。易探云推出大量香港云服务器,采用BGP、CN2线路,机房有香港九龙、香港新界、香港沙田、香港葵湾等,香港1核1G低至18元/月,183.60元/年,老站长建站推荐香港2核4G5M+10G数据盘仅799元/年,性价比超强,关键是延迟全球为50ms左右,适合国内境外外贸行业网站等,如果需...

RackNerd 2022春节促销提供三款年付套餐 低至年付10.88美元

RackNerd 商家我们应该是比较熟悉的商家,速度一般,但是人家便宜且可选机房也是比较多的,较多集中在美国机房。包括前面的新年元旦促销的时候有提供年付10美元左右的方案,实际上RackNerd商家的营销策略也是如此,每逢节日都有活动,配置简单变化,价格基本差不多,所以我们网友看到没有必要囤货,有需要就选择。RackNerd 商家这次2022农历新年也是有几款年付套餐。低至RackNerd VPS...

星梦云60元夏日促销,四川100G高防4H4G10M,西南高防月付特价

星梦云怎么样?星梦云好不好,资质齐全,IDC/ISP均有,从星梦云这边租的服务器均可以备案,属于一手资源,高防机柜、大带宽、高防IP业务,一手整C IP段,四川电信,星梦云专注四川高防服务器,成都服务器,雅安服务器 。官方网站:点击访问星梦云官网活动方案:1、成都电信年中活动机(封锁UDP,不可解封):机房CPU内存硬盘带宽IP防护流量原价活动价开通方式成都电信优化线路4vCPU4G40G+50...

java架构师学习路线为你推荐
md5值游戏安装包的MD5值怎么用?知识库管理系统什么是知识管理最开放的浏览器我国最出名的十种浏览器oracle索引如何在ORACLE数据库的字段上建立索引jqlDX5JQL8WDPMW求大神帮查下是不是行货苹果索引超出了数组界限索引超出了数组界限inode智能客户端inode智能客户端无法正常启动,根本开都开不了国际加速世界经济全球化加速发展的表现有哪些?在全球化趋势加强的过程中,人类共同面临的问题有哪些?数据分析报告范文如何做一个好的数据分析报告pci数据捕获和信号处理控制器大侠们,PCI数据捕获和信号处理控制器不能正常工作了要怎么解决啊,是不是要安装主板驱动啊?
域名中介 cn域名个人注册 gomezpeer 60g硬盘 godaddy优惠券 info域名 ibox官网 创建邮箱 下载速度测试 工信部icp备案查询 空间服务器 免备案cdn加速 cdn服务 数据湾 移动王卡 聚惠网 winserver2008下载 paypal登陆 shuangshiyi 饭桶 更多