关于Java 软件工程师应该知道或掌握的技术栈
Posted 技术宅星云-博客园
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Java 软件工程师应该知道或掌握的技术栈相关的知识,希望对你有一定的参考价值。
鄙人星云,今天突然想写这么一篇需要持续更新的文章,主要目的用于总结当前最流行的技术和工具,方便自己也方便他人。
更新时间:2018-10-23 09:26:19
码农职业路径图
Java后端开发优势图
Java 软件工程师技术栈
JDK: 1.8+
Java 基础:I/O(NIO), 集合,多线程,网络编程,并发,JVM内存模型, 设计模式
Java Web 基础:Spring
Java Web框架: Spring Boot 2.0, Spring MVC ,Spring WebFlux, Hibernate ,MyBatis3
SQL: MySQL, SQL Server , Oracle
NoSQL: Redis
嵌入式数据库: Oracle Berkeley DataBase Java Editor
数据库连接池:HikariCP
其他框架: 高效敏捷开发 Ruby on Rails
微服务和分布式: Spring Boot + Spring Cloud
消息中间件:RabbitMQ, Kafka
部署容器:Apache HTTP Server , Tomcat, Jetty , Docker, WebPhere (IBM 的Java应用服务器软件,用来部署运行Web应用,号称WAS)
反向代理服务器+ 负载均衡: Nginx
JSON处理: Gson
html处理:jsoup解析HTML(将HTML解析成对象的API)
Java android 工程师技术栈
作为Java 安卓开发工程师,面对各种不同的开发需求,我们要用各种不同的框架类库来帮助我们快速实现,因此鄙人持续更新项目地址如下:
https://github.com/geekxingyun/Android-Open-Source-Project
前端工程师技术栈
HTML5 + CSS3+ jQuery + Bootstrap 4+React JS + ajax +Pjax
Angular 6.x + Vue2 + React Native+ Nodejs
CSS预编译语言(Less+Sass)+Webpack(模块化打包工具) + Grunt/Gulp(自动化构建工具 )
TypeScript(游戏开发) +Cocos2d-JS
Google V8 浏览器引擎
在前后端分离的概念中,前端脱离与后端工作,在对好接口之后,以及后端没有假数据的情况下,可以先采用折衷的办法来请求假数据,这就有了Mock.js,可以随机生成数据,拦截ajax请求。
Easy Mock 是一个可视化,并且能快速生成 模拟数据 的持久化服务
学习资源与开发工具
关于IDE的选择:
学习研究推荐 Spring Tool Suite
快速开发单个应用推荐 Intellij Idea 旗舰版
对比 | Intellij Idea 旗舰版 | Spring Tool Suite |
成本 | 付费(个人可用破解版) | 免费 |
群体 | 个人 | 企业 |
优点 | 插件丰富,功能强大 | 稳定,适合维护 |
缺点 | 不支持多项目同窗口预览和管理 | 很好地支持多项目同窗口预览和管理 |
场景 | 高效快速开发单个应用 | 学习研究和项目维护管理 |
推荐阅读书籍:
Java 基础提高 《Java编程思想》(Think in java 第四版)
Android 必看书籍——《第一行代码 第二版》
Web 安全常识: 《白帽子谈网络安全》
Spring 学习:《Spring 揭秘》
Java 基础揭秘篇 《码农翻身》刘欣
其他:
浏览器导航:极客导航
Bug异常处理:stackoverflow Issue JIRA
代码质量检测分析:
findbugs是sonar的子集,在sonar平台中可以直接导入findbugs的规则集。sonar比findbugs高了一个层级,多出了sonar不仅关注了常规静态bug,还关注到了如代码质量、包与包,类与类之间的依赖情况、代码耦合情况、类,方法。文件的复杂度、代码中是否包含大量复制粘贴的代码是质量低下的,关注到了项目代码整体的健康情况。不过个人在使用过程中findbugs本身的规则比sonar的官方规则更加实用,high级别的bug都是较为实用的bug,且能覆盖到一些性能方面的问题,sonar的规则,50%bug都是主要级别,其实危害不大。前期轻量级的静态bugs扫描可以选用findbugs,当项目持续稳定后可以选用sonar进行更深层次的代码质量控制
findbugs+jenkins CI 集成
代码质量检测工具:SonarQube (包含Findbugs)
代码托管:
国外平台 : Github , Gitlab(支持无限的公有项目和私有项目,页面样式不喜欢) Bitbucket (免费支持5个开发成员的团队创建无限私有代码托管库)
国内平台:
阿里云Code 阿里出品的代码托管平台
码云(Gitee) (开源中国和CSDN合作平台,总容量是5G,单项目最大1G,可创建 1000 个项目,不限私有或公有。最大问题是只能有5个成员)
Coding 全中文支持,腾讯云合作 能创建5个项目,最多可以有20个成员;当绑定腾讯云账号可升级为 512M 10个项目)
码市是 Coding 推出的互联网软件外包服务平台
技术社区:博客园,CSDN, 开源中国 , 掘金 ,InfoQ , Segmentfault ,Spring For ALL 优知学院
外包:码市
后台管理UI框架: H-ui.admin , H+ , Admui ( 据说用了最先进的技术【HTML5 + CSS3+Less+ jQuery + Bootstrap + Pjax+ Nodejs + Gulp】)
编程在线培训学习:慕课网 极客学院 咕泡学院 优达学城 潭州学院
Office 处理:Apache POI, 永中软件(QQ邮箱据说用的这个)
文字识别: 百度文字识别(OCR)服务 科大讯飞文字识别服务 腾讯云文字识别OCR QR Code SDK PC端 .net 北京中安未来科技有限公司OCR服务
语音处理:科大讯飞
短网址缩短工具:http://suo.im/
人脸识别:Face++
地图导航:高德地图
手册查询:手册网
截图软件: Snipaste
GiF录制:LiceCAP
招聘求职
牛人
Android 界
stormzhang 人人都喊他张哥,安卓开发入门指南文字的第一人,从开发转了产品
郭霖 《第一个行代码》 Android界最权威的入门书籍的作者
张鸿洋 开源了很多优秀安卓项目
Java 界
程序员小灰 风趣幽默的图片对话故事讲解知识点
码农翻身--刘欣 用故事的方式讲解软件编程的若干重要领域
纯洁的微笑 张强,各大技术社区的博客专家,同时运营着一个公众号:纯洁的微笑。目前一家第三方支付公司担任技术总监,负责微服务架构实践和大数据治理。
程序员DD 翟永超 Spring 中文社区创始人之一
阮一峰 经济学博士,技术文章写得最好的人
廖雪峰 著名讲师,JS, Git,Python 教程很出名
Linux 界
鸟哥 著名作品,鸟哥的Linux私房菜
羽翼 SQLMAP等渗透网络安全教程,渗透领域大亨
关于我
星云个人主页: http://www.520geek.cn/about/
星云CSDN博客:https://blog.csdn.net/hadues
星云博客园:http://www.cnblogs.com/xingyunblog
星云阿里云栖博客:https://yq.aliyun.com/u/xingyunsky
星云GitHub: https://github.com/geekxingyun
星云微博:https://weibo.com/xingyunsky
联系方式:fairy_xingyun@hotmail.com
有其他需要更新的或者分类有不对之处欢迎在评论区留言~
我的微信公众号:
我的知识星球
公告:我的知识星球开通了
免费星球:
技术交流分享讨论~
交流即分享,分享才能进步~
低调,自由,共享,免费是我们的宗旨~
如果你是一位爱代码如生命的的程序员,
如果你是一位网络安全渗透工程师,
如果你对计算机技术深感兴趣,
那么欢迎入圈交流学习~
极客技术宅因为有你更精彩~
以上是关于关于Java 软件工程师应该知道或掌握的技术栈的主要内容,如果未能解决你的问题,请参考以下文章