现在市场上的软件开发主要分为前端开发工程师、后端开发工程师、测试开发工程师、数据分析工程师、算法工程师、运维工程师。当然还有一些嵌入式和网络安全相关的岗位等等。想问下这些岗位之间有什么区别和联系?
单纯从开发上讲,大致分为了前端开发,后端开发
这里包含了UI设计(单独拿出来分类也可以,毕竟抠图,调样式,改效果也是很费劲的)
这里分为了 后端开发 和 数据库开发 (这里的数据库开发指的是专业人员,进行数据库设计,存储过程,函数,脚本,数据库优化和问题解决)
算法工程师: 在我看来这是低级程序员进击高级程序员甚至是架构师的必经之路,尤其是在面向业务流程的算法设计上,能大大减少代码量和提高软件执行效率
数据分析工程师: 建数据分析体系,数据分析工具化,产品化,基本都是做大数据的,需要精通大数据库的 *** 作和可以进行数据分析语言,比如Python(实现方式,各个语言都可以,只是那种更简单的问题,勿喷)
嵌入式工程师: 开发一些与硬件关系最密切的最底层软件,技能需要软硬件结合,不仅仅需要软件基础,也需要一定的硬件基础
然后下面就要说的是 测试工程师 ,和 运维工程师 了
简述一下就是: 对软件质量负责,进行各种测试,确保工程交付的准确,确保软件流程安全,编写测试用例,编写性能,自动化测试等
简述就是: 负责服务器的配置,维护,监控,调优,故障排除以及部署方案的制定及实施,哦,还包括数据库管理员(DBA)职能
中小型公司基本都没有的岗位 - -
负责预防网页篡改、计算机病毒、系统非法入侵、数据泄密、网站欺骗、服务瘫痪、漏洞非法利用等信息安全事件
java后端开发需要学的内容如下:
1、面向对象的知识
java是一种面向对象的开发语言,因此熟悉面向对象对学习java很有必要,你需要了解:什么是对象,什么是类,什么是封装,什么是多态,什么是继承,什么是抽象类,什么是接口。理解以上概念后,还需要知道这些概念是如何体现的,如类和对象有什么区别?类是如何封装的?
2、java语言
Java 是一门纯粹的面向对象的编程语言,所以除了基础语法之外,必须得弄懂它的 oop 特性:封装、继承、多态。此外还有泛型、反射 的特性,很多框架的技术都依赖它,比如 Spring 核心的 Ioc 和 AOP,都用到了反射,而且 Java 自身的动态代理也是利用反射实现的。
此外还有 Java 一些标准库也是非常常见,比如集合、I/O、并发,几乎在 Web 开发中无处不在,也是面试经常会被问到的,所以在学 Java 后端之前,不妨先打好这些基础。
另外还有 Java8 的一些新特性,也要重点关注,比如 Lambda 表达式、集合的 Stream 流 *** 作、全新的 Date API 等等,关于新特性。
3、JSP和HTML
在我国的绝大多数公司,做java程序开发都少不了和JSP以及HTML打交道。所以,要熟悉java程序开发就要熟悉JSP和HTML,最好能知道JSP的几个内置对象,如Session,Request,Reponse,以及常用的JSP标签,如include,userBean等。
尽管一些工具会帮你生成HTML代码,但还是要熟悉比如title,等。如果再熟悉一下JS和CSS就更好了,那会使做出的页面更友好。
4、数据库
后端开发免不了与数据库打交道,所以掌握Java的数据库 *** 作是一个基本要求。Java *** 作数据库涉及到的内容有JDBC、JNDI、RMI、DAO等内容,其中使用RMI+JDBC是构建java数据库开发的一个常见的解决方案,而JNDI则是对各种资源的定义。
5、Web Server
熟悉一种Web Server,比如:TOMCAT,RESIN等。您要熟悉如何发布你的应用,如何利用Web Server的数据库资源等。
6、Servlet
Servlet技术是Java后端的重要技术之一,作为Java Web开发的核心组件,Servlet承担了Web MVC结构中的核心作用(功能导航)。
传统的Model2结构(Servlet+JavaBean+JSP)虽然在目前已经很少使用了,但是Web开发的基本结构依然没有改变。Servlet技术的应用涉及到Web容器、会话(HttpSession)、安全、同步、Web应用部署等相关内容。
7、Web主流框架
熟悉一种框架其实是java程序开发的一种可选知识,但目前开发B/S结构的应用的开发小组,都差不多会采用一种框架来构建自己的应用系统。
框架都会有许多可重用的代码,良好的层次关系和业务控制逻辑,基于框架的开发使你可以省出很多的开发成本。目前比较流行的框架有Struts和Spring等。
Spring+SpringMVC+MyBatis是目前一个比较常见的后端开发方案,Spring的原理就是构建了一个“业务组件容器”,SpringMVC则是Web MVC的一个具体实现框架,而MyBatis则是一个基于DAO的实现框架。
从性能的角度来说,Spring是EJB的轻量级解决方案,得到了广大Java程序员的欢迎。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)