成为一名优秀 Java 开发人员的 7 个步骤
如果你是一名对技术充满热情的 Java 开发人员,那么本文列举的这 7 个步骤能让你成为一名优秀的 Java 工程师。
Java 开发人员一定要对面向对象编程有深刻的理解。如果没有扎实的 OOPS 基础,你就无法体会 Java 这样的面向对象编程语言的美妙之处。如果你对 OOPS 没有深入理解,那么就算你使用的是 OOP 语言,你的代码也还可能是程序化的方式写出来的。光是看 OO 原则的定义是没什么意义的。我们应该知道如何应用这些原则,以面向对象的方式设计解决方案。所以,你应该深入了解对象建模、继承、多态、设计模式等知识。
凡事都是说起来容易做起来难。理论上,我们可以很容易地给出一个问题的解决方案。但是当我们开始实现具体的方法时,我们才会意识到问题的内涵有多深。写代码的过程中你会了解各种各样的语言约束,或者设计出很多最佳实践。所以请保持写代码的习惯。
如果你不了解一种语言的各种结构和核心 API,那么你在理论知识方面再强都是没用的。就 Java 而言,我们应该对 I/O、异常、集合、泛型、线程、JDBC 等核心 API 有非常丰富的实践经验。在构建 Web 应用程序时,无论你使用的是哪种框架,都应了解有关 servlet 和 JSP 的概念。
我们并不孤单。世界各地有数以千计的技术狂人在博客上发表他们对技术的见解。你还可以从其他博客和开发人员那里获得关于某种技术的宝贵观点。有些人可能会发现某些框架特性非常有用,而另一些人可能会认为这些特性既愚蠢又毫无意义,并给出了自己的理由来解释他为什么会这样说。也就是说,你可以从使用这些工具的其他开发人员那里看到一种技术的优缺点。
查看其他人的博客时,另一种获得价值的方法是回复 / 评论,表达你的意见和问题。
随着时间的推移,你可能需要一次又一次地编写 / 复制粘贴相同的代码 / 配置。保留 log4.properties、JDBC 配置等配置片段以及 StringUtils、ReflectionUtils、DBUtils 等实用程序会非常有用。我知道,做这件事本身并不会让你成为出色的开发人员。但是想象一下,某位开发同事要求你帮忙从对象集合中获取属性值列表,然后你只需使用 ReflectionUtil 就可以在几分钟内给出解决方案:一下子你就成了高手了。
请熟悉各种方法,如敏捷、SCRUM、XP、瀑布等。如今,选择哪种开发方法取决于客户的需求。一些客户更喜欢敏捷,另一些客户比较满意瀑布模型。所以对各种方法都有一定认知将是你的一个真正的优势。
在日常工作中,你可能会学习很多新的和更好的做事方式,以及最佳实践、架构理念等。请继续记录这些想法,在博客中介绍它们,和 / 或在社区中分享它们。想象一下,你解决了一个在做一个简单的 POC 时发生的奇怪问题,并且你在博客上写了它的故事。也许世界其他地方的开发人员在生产环境中部署的应用程序上也面临着同样的问题。想一想你的解决方案会对其他开发人员带来多少价值吧。所以,请把你的想法写在博客上,有一天它们可能会对他人或你自己有所帮助!
原文链接:
https://medium.com/geekculture/7-steps-to-become-an-outstanding-java-developer-2c6fc047d6e7
JavaWeb开发入门需要学哪些?看完你就懂了
目前,国内外信息化建设已经进入基于Web应用为核心的阶段,Java作为应用于网络的最好语言,前景无限看好。然而,就算用Java建造一个不是很烦琐的web应用,也不是件轻松的事情。那么,本文章就来详细说说JavaWeb需要掌握的技术!
首先Java基础语法是基础,另外大家对于MySQL、JDBC、HTML和CSS、JavaScript、BootStrap、XML、Tomcat、Servlet和HTTP请求协议、Request和Response、Cookie和Session、JSP,EL和JSTL等等知识必须要熟练掌握,这样才能基本具备JavaWeb开发能力。
现在我来讲讲JavaWeb开发的具体知识。Java基础语法包括了多个模块。基础语法内容有JDK和Path环境变量、常量变量&数据类型、运算符、选择结构-if语句- switch语句、循环结构-for-while-do…while、开发工具-IDEA、数组、方法、 方法重载&方法参数,还有面向对象、常用API、多线程&网络编程、异常&集合、JDK新特性和反射与模块化等等知识点的学习,都能为后续JavaWeb的学习打下坚实基础。
而进入JavaWeb的学习阶段,内容就比较复杂了,需要掌握的知识点更多。我列了一个学习大纲,大家可以参考着规划自己的学习计划。
数据库概念、MySQL安装与使用、SQL基本概念与通用语法、数据库的CRUD操作、数据库表的CRUD操作、数据库表中记录的基本操作、 数据库的查询操作、表的约束、多表操作、三大范式、数据库的备份和还原、多表查询、子查询、多表查询练习、事务、用户管理和权限管理
JDBC快速入门、JDBC各个类详解、JDBC之CRUD练习、ResultSet类详解、JDBC登录案例、PreparedStatement类详解、JDBC事务管理、数据库连接池、JDBCTemplate
概念、基本标签、表单标签、CSS概述、CSS_选择器、CSS属性、CSS_案例
JavaScript_简介、JavaScript基础语法、JavaScript运算符、JavaScript特殊语法、JavaScript_语法_流程控制语、JavaScript_对象 、DOM和事件的简单学习、BOM对象、DOM对象、JavaScirpt中的事件
快速入门、Bootstrap_栅格系统、Bootstrap_全局CSS样式、Bootstrap_组件和插件、案例_黑马旅游网
xml基础、xml_约束、xml_解析
web相关概念、tomcat基本操作、tomcat_部署项目
Servlet_快速入门、Servlet_生命周期方法、Servlet_3.0注解配置、IDEA与tomcat相关配置、Servlet_体系结构与urlpartten配置、HTTP请求协议
Request原理和继承体系、Request_获取请求数据、请求转发和request共享数据、Request_获取ServletContext、request登录案例、HTTP响应协议、response之重定向 、response之相对路径和绝对路径、response之输出数据、response之验证码、ServletContext对象、文件下载
Cookie快速入门、Cookie_细节、Cookie案例、JSP改造Cookie案例、Session快速入门、Session细节、Session之验证码案例
JSP基础语法、MVC、EL介绍和运算符、EL获取域中存储的数据、JSTL常用标签、案例-列表查询
登录功能、添加删除修改功能、删除选中功能、分页查询功能、复杂条件查询功能
Filter快速入门、Filter细节、Filter案例、监听器
JQuery基础、JQuery选择器、JQuery基础案例、JQuery动画和遍历、JQuery事件绑定和切换、JQuery高级案例
原生JS方式实现Ajax、JQuery方式实现Ajax、JSON基础语法、JSON_解析器
Redis环境搭建、Redis命令操作、Redis持久化、Jedis代码操作、Jedis连接池、redis案例
基本概念、maven的安装和仓库种类、maven标准目录结构和常用命令、maven生命周期和概念模型图、使用骨架创建maven的java工程、maven工程servlet实例
Linux介绍&软件安装、Linux的常用命令、Linux环境部署、Nginx
以上就是我总结的想要具备JavaWeb开发能力需要掌握的知识。希望看了本文后对初学者们学习Java开发有所帮助!总而言之,如果仅仅想通过自学来掌握以上内容,难度还是不小的,因此建议大家最好系统去学习,这样的学习效果和效率都会最大化。
教你十个步骤成为优秀Java开发人员
一、对OO原则有很强的基础和理解
对于Java开发人员来说,必须对面向对象编程有很强的理解。没有在OOPS上有很强的基础,就不能实现像Java这样的面向对象编程语言的美。如果你不知道什么是OOPS,即使使用的是OOP语言,可能仍然在以过程的方式进行编码。仅仅研究面向对象的原则定义并没有多大帮助。我们应该知道如何应用这些原则以面向对象的方式设计解决方案。因此,应该对对象建模、继承、多态性、设计模式等有很强的了解。
二、掌握核心api
如果你不知道语言结构和核心api,那么在理论知识方面你有多强并不重要。对于Java,人们应该对Java.lang.*、I/O、异常、集合、泛型、线程、JDBC等核心API有很强的实践经验。在构建web应用程序时,无论你使用的是哪种框架,理解有关Servlet和JSP的概念也很重要——这是必须的。
三、继续编码
从理论上讲,事情看起来更简单。我们能很容易地解决一个问题。但是,当我们开始实施方法时,我们可以意识到问题的深度。在编写代码时,你将了解语言的局限性或设计最佳实践。所以请继续编码,并在编码时,多想想是什么、为什么、怎么做、有什么用等问题。
四、订阅论坛
我们并不孤单。有很多人在研究和我们同样的技术。虽然在框架上做一个简单的概念验证可能不会给你带来真正的挑战,但是当你开始在实际项目中使用它时,你将面临奇怪的问题,并且在他们的官方文档中找不到任何解决方案。开始研究新技术时,最好的也是第一件事就是订阅相关的技术论坛。不管你面临的问题是什么,世界上的其他人可能已经面对了,并找到了解决办法。如果你能回答其他论坛用户提出的问题,那就太好了。
五、关注博客并回复
正如我已经说过的,你并不孤单。全世界有成千上万的狂热的技术狂在博客上发表他们对技术的见解。你还可以从其他博客和开发人员那里获得对同一技术的有价值的观点。有些人可能会发现特定的框架特性非常有用,而另一些人可能会发现这些特性愚蠢而毫无意义,给出他自己为什么会这样的理由。因此,你可以从使用这些工具的其他开发人员那里看到好处和坏处。
从其他博客中获取价值的另一种方法是用你的观点和问题来回复/评论文章。
六、阅读开源框架的源代码
一个好的开发人员将学习如何使用框架。但是如果你想成为一个优秀的开发人员,你应该研究各种成功的、流行的框架的源代码,在这里你可以看到框架的内部工作机制以及最佳实践。当以更有效的方式使用框架时,它将对使用有很大帮助。
七、了解新兴技术趋势
从开源软件的发展趋势来看,它们正以惊人的速度增长。当你对如何使用一个特定的框架有了一个好的想法时,它就有被淘汰的危险了,因为一些新的框架出现在图片中,具有一组超级特性。然后,你试图用当前框架解决的问题可能已经由具有单行配置的新框架更容易解决了。所以,要注意照片里的内容,还有外面的内容。
八、将常用的代码片段/实用程序整理分类
随着时间的推移,你可能需要一次又一次地编写/复制粘贴同一段代码/配置。保留log4.properties、JDBC configuration等配置片段和StringUtils、ReflectionUtils、DBUtils等实用程序将更有帮助。我知道它本身不会让你成为一个优秀的开发人员。但想象一下,某个联合开发人员要求你帮助从对象集合中获取属性的值列表,然后你只需使用ReflectionUtil并在几分钟内给出解决方案:这将使你表现出色。
九、了解不同的开发方法
熟悉各种方法,如敏捷、SCRUM、XP、瀑布等等。现在,选择开发方法取决于客户。有些客户更喜欢敏捷,有些客户对瀑布模型很满意。S,o对各种方法有一个想法将是一个真正的好处。
十、记录/博客你对技术的想法
在日常工作中,你可能会学到新的更好的做事方法,以及最佳实践、架构理念等。不断记录这些想法,为它们写博客,或者在各大社区进行分享,和别人进行碰撞,另外,对于日常工作的做笔记,也能让你工作效率快一半以上,好记性也比不过烂笔头。
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。