`
木曦java
  • 浏览: 4115 次
  • 性别: Icon_minigender_2
文章分类
社区版块
存档分类
最新评论

这样才能成为“全栈”Java开发工程师!

阅读更多
    我怎么才能成为一个Java Web开发者?”对于这个问题,答案其实并不简单。成为一个Java Web开发人员包括很多方面。我遇到过的Java程序员,可能曾是优秀的前端开发人员,也可能以前是不错的后端开发人员。所谓“前端”,我指的是众多浏览器端技术——HTML、CSS、Javascript,以及Java模板技术,如Thymeleaf、SiteMesh,或者古老的JSPs。后端开发人员有更坚实的Java、数据库(SQL和NoSQL),消息传递(JMS/AQMP)和Web服务(SOAP/REST)技能。
    你应该也知道所谓的“全栈”Java开发人员。这是个人的技能集合。一个完整的全栈开发者应该同样胜任前端开发和后端开发的工作。这可能是难度系数最高的一条路了,因为所涉及得技术非常多样。也许有一天,你前一秒还在jQuery调试,接下来就去性能调优Oracle数据库查询了。但是,成为一个全才 Java开发人员是需要时间和经验的。java web前端注重的是实战项目,你是真心地想学好web前端这门技术可以来这里,前面是四九一,中间是八九七,最后是一五八,每天都会有java前端的视频教程更新,不想的就不要来。
    从哪里开始?
    对于有抱负的开发人员,技术的前景会成为压倒一切的动力。但是技术也是在不断变化发展中的。你会冒着学习的东西很快就会过时的风险吗?
    客户端技术
    我建议新手开发人员可以从基础的学起;HTML,CSS和JavaScript。这些技术是web开发的核心。而且这些技术在某种意义上说也是通用的,无论你是Java web开发人员还是Ruby Web开发人员都要用到。
    HTML——超文本标记语言。这是用来生成网页的。你需要对HTML有一个深入的了解。在万维网初期,HTML习惯上是一个由网页服务器向浏览器提供的文件。它对静态内容非常有效。不会改变内容。但是,现在人们越来越倾向于动态的内容。于是,HTML不再是静态的文件,HTML开始按需生成。作为一个Java web开发者,你得会编写如何为网页浏览器生成HTML文件的代码。你需要对HTML文档的结构有一个深刻的理解。
    CSS——层叠样式表。这是用来显示页面样式的。它控制字体、颜色和布局。与HTML定义的是网页的内容不同,CSS定义的是当在浏览器中呈现时网页的外观。例如,你可以对桌面Web应用程序使用一套CSS规则,对移动应用程序使用另一套不同的CSS规则。相同的HTML,当渲染在浏览器上时,就有了两个完全不同的外观。
    Javascript——制作网页上的东西。不要将Java与Javascript混淆。虽然它们有一些语法的相似性,但这是两个完全不同的编程语言。JavaScript才能真正推动Web 2.0应用程序。通过使用Javascript,你可以根据用户的操作,动态地改变HTML/CSS,提供更有视觉感受的网页给用户。
    HTTP(超文本传输协议)——客户端和Web服务器之间的通信。有太多的web开发人员居然对HTTP一无所知。HTTP绝对是你必学的关键技能。尤其是当你要用AJAX工作的时候。你需要知道一个POST和一个GET之间的区别。你应该记住HTTP状态码200,301和404的含义——以及更多。作为一个Java web开发人员,你的日常工作不可避免要与HTTP打交道。
    服务端技术
    Java——本文的问题就是如何成为一个Java web开发人员。所以,你当然得知道Java编程语言。除了Java本身,你还应该熟悉Java Servlet API。有一些Java web框架,隐藏着Java Servlet API的用法。如果出现问题,那么你需要知道幕后究竟发生了什么事情。
   JPA——Java持久性API——使用数据库。JPA是Java传统关系数据库的标准。Hibernate是现在使用最广泛的JPA实现。作为一个Java web开发人员,你肯定要用到数据库。你要从数据库中得到内容,以显示在网页上,或从用户那里接收内容存储到数据库中。所以,Java web开发人员需要知道如何使用JPA。
    Java应用程序服务器——Java web应用程序的运行时容器。Tomcat是到目前为止最流行的Java应用程序服务器。Web应用程序归档文件,又名WAR文件,有一个Java标准。这些被部署到应用程序服务器,如Tomcat,以此为你的web应用程序提供运行环境。十年以前,还流行在应用程序和应用程序服务器之间应用更复杂的耦合。然而,现在的趋势更支持应用程序和应用服务器之间的松散耦合。
    Java框架请注意,到目前为止,我还没有提到任何Java框架。我所描述的,都是你作为一个Java web开发人员会用到的不同技术。客户端技术完全独立于服务器端技术。Firefox不在乎,服务器运行的是Java,Python还是.NET。不过,新手开发人员似乎常常遗忘这一点。
    不使用Java框架的Java web开发也是可以的。但是这样一来,你需要额外写很多代码来处理原本框架可以为你办到的事情。这就是为什么开发Java web应用程序时,你通常会想要使用某一个框架。
    Spring框架是构建web应用程序一个非常棒的工具集合。虽然没有精确的统计数据,但我看到有文章估算已有超过60%基于Java的web应用程序使用Spring。这其实也不奇怪。Spring Core有IoC容器和依赖注入。Spring MVC,是一款基于MVC的成熟又灵活的web框架。Spring Security是保护网站最好的工具。Spring Date有助于维护持久性。Spring还有其他的项目,你可以用来构建大范围推广的应用。
    当涉及到整体框架时,真的找不到替代品代替Spring。哪怕存在着很多针对不同Spring项目的竞争技术。但是,没有单一的解决方案,能够具备Spring框架系列项目的深度和广度。在我的Spring入门在线教程上,我对主要的Spring框架项目做了一个很好的概述,并说明了如何使用它们来构建企业级应用程序。
    Grails是建立在Spring之上的快速应用程序开发框架。它不但拥有Spring的所有内容,还借鉴了Groovy的生产力优势。我喜欢将Grails形容为用Groovy包装过的Spring。关键一点要记住的是,其背后依然是Spring。 Grails现在越来越受到企业的欢迎。Grails的优势之一就是其出色的社区支持。
     Play基于Scala的框架。虽然我还没有尝试过Play。但是现在市场上面的反响不错。所以有机会的话我会试一试。不过它目前还没有被企业中广泛采用。至少到现在为止还没有。
     JBoss Seam可能是最接近Spring框架的替代品。JBoss Seam遵循JEE标准。JBoss Seam是一个很好的选择,具有良好的支持而被企业所接受。不过,JBoss Seam经常因为在开发和性能方面比Spring慢而饱受诟病。但是有的批评对于JBoss Seam过于苛刻了。
    结语
    成为Java web开发人员是不可能一蹴而就的。没有所谓的《21天自学成为Java web开发者》的速成教材,也没有捷径。你需要学习和掌握很多不同的技术。而所有这些都需要时间来学习。 成为Java web开发人员是一个非常有意义的事业。你刚入门的时候可以只专注于前端技术,也可以只专研后端技术。随着以后开发的项目增多,你就可以从这一技术领域转移到另一个技术领域。
分享到:
评论

相关推荐

    Java全栈高级开发工程师课程.xmind

    Java全栈高级开发工程师课程.xmind

    Java全栈工程师 基础+项目+就业班(完).txt

    Java全栈工程师 基础+项目+就业班

    全栈工程师个人简历模板.docx

    【全栈工程师】是软件开发领域中的一个多面手,具备前端和后端开发技术的复合型人才。全栈工程师能够处理整个应用的架构,从用户界面到数据库,涵盖Web开发的各个方面。他们不仅理解HTML、CSS和JavaScript等前端技术...

    最新Java全栈工程师企业级开发视频教程(17G)

    第01天(14集)---002.开篇-程序员的玄学与佛学.mp4---003.开篇-程序员的玄学与佛学.mp4---004.第01章-使用IntellijIDEA-IDEA简介.mp4---005.第01章-使用IntellijIDEA-第一个IDEA应用程序.mp4---006....

    教你成为全栈工程师(Full Stack Developer)

    全栈工程师是指一个可以处理前端、后端、数据库、服务器、网络、客户端以及中间件等所有技术层面的开发任务的技术人员。他们能够在项目开发的每一个环节发挥作用,并且对各个方面的技术都有一定的了解和实践。 全栈...

    java全栈工程师-java io

    Java IO是Java开发中不可或缺的一部分,涵盖了从文件读写到网络通信的各种场景。通过对这些基础知识的理解,开发者可以更好地构建稳定高效的应用程序。随着技术的发展,Java IO也在不断地演进和完善,例如NIO(New ...

    Java全栈工程师面试宝典.doc

    Java全栈工程师面试宝典 本文档旨在为Java全栈工程师面试提供详细的技术资料,涵盖Java初级、高级、SSH、SSM框架等领域的知识点。 一、 JDK 常用的包 Java Development Kit (JDK) 是 Java 语言的核心组件之一,它...

    全栈应用开发实战.zip

    《全栈应用开发实战》这本书全面涵盖了从前端到后端的开发技术,旨在帮助开发者成为全栈工程师,实现从编码到上线,再到数据分析的全流程掌握。全栈开发是现代软件工程中的重要角色,它要求开发者不仅熟悉前端界面的...

    深圳人力资源行业全栈开发工程师岗位介绍JD模板.docx

    在当前数字化转型的时代,全栈开发工程师已成为各行各业不可或缺的关键角色,特别是在深圳这样充满创新活力的人力资源行业中。本篇文章将深度解析该岗位的职责、要求以及相关技能,帮助求职者更好地理解和准备这个...

    如何成为一名优秀的全栈工程师.pdf

    成为一名优秀的全栈工程师,意味着你需要具备广泛而深入的技能,涵盖软件开发的多个层面。全栈工程师不仅要精通前端和后端开发,还需要了解项目管理、架构设计和用户体验等多个领域。以下是一些关键知识点: 1. **...

    论如何在应用型本科高校培养Java全栈工程师.pdf

    为了确保学生能够成为合格的Java全栈工程师,教学团队应联合IT公司一线开发工程师和本专业任课教师,根据Java全栈工程师技术路线和教学进度表来制订培养方案。教学团队要注重实战经验的积累,合理配置“双师型”教师...

    《全栈应用开发:精益实践》┊黄峰达 PDF

    在这本书中,黄峰达将分享他的经验和见解,帮助读者提升成为全栈工程师的技能。 全栈开发涉及的知识点广泛,包括但不限于: 1. **前端技术**:前端是用户与应用交互的界面,主要涉及HTML、CSS和JavaScript。HTML...

    Java柠檬班Java全栈自动化-视频课程资源网盘链接提取码下载 .txt

    通过本课程的学习,学员不仅能够掌握扎实的Java编程技能,还能深入了解全栈开发流程,并具备独立完成复杂项目的能力,为成为优秀的软件工程师奠定坚实的基础。此外,课程还提供了丰富的实战案例和练习题,帮助学员...

    深圳人力资源行业全栈开发工程师岗位介绍JD模板.pdf

    【全栈开发工程师岗位概述】 在当今快速发展的信息技术领域,全栈开发工程师是连接软件开发前后端的关键角色。他们不仅负责构建和维护系统的后端架构,还参与到前端用户界面的开发,确保产品功能的完整性和用户体验...

    Java柠檬班Java全栈自动化

    Java柠檬班Java全栈自动化课程是一项针对Java编程和全栈开发领域的专业培训,它针对的是希望在IT行业中发展为全栈工程师的学员。全栈工程师需要具备从前端到后端,包括数据库、服务器以及部署在内的全面技术知识。...

    MetaLowCode-美乐低代码,企业级全栈低代码开发平台! 潜心打造强大核心技术底座: 内置元数据引擎、业务流程引擎、业务触发器、可视化表单、仪表盘设计、智能报表引擎、数据挖掘和插件扩展框架

    MetaLowCode——美乐低代码,企业级全栈低代码开发平台! 潜心打造强大核心技术底座: 内置元数据引擎、业务流程引擎、业务触发器、可视化表单、仪表盘设计、智能报表引擎、数据挖掘和插件扩展框架。包含一个前端...

    全栈增长工程师指南---文字版.pdf

    全栈增长工程师是一种新型的技术岗位,它结合了全栈开发和增长黑客的理念,旨在通过技术手段提高产品的用户增长和活跃度。全栈增长工程师需要掌握从前端到后端的多种技能,并且能够在产品开发的过程中,运用数据分析...

    基于Spring Cloud的Java全栈后端工程师学习与实战源码

    本项目为基于Spring Cloud架构的Java全栈后端工程师学习与实战项目,共计931个文件,涵盖332个PNG图片、268个Markdown笔记、192个Java源代码文件、26个属性配置文件、19个XML配置文件、17个YAML配置文件、16个Git...

    基于慕课网项目的Java高级工程师慕聘网全栈开发设计源码

    该源码集成了慕课网Java高级工程师慕聘网项目,全栈开发,涉及767个文件,包括194个Java源代码文件、140个Vue组件、130个JavaScript脚本、114个SVG图形、45个PNG图像、28个XML配置、21个YAML文件、15个文本文件、14...

Global site tag (gtag.js) - Google Analytics