欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

JAVA后端應(yīng)該學(xué)什么技術(shù)

李中冰2年前18瀏覽0評論

JAVA后端應(yīng)該學(xué)什么技術(shù)?

java學(xué)習(xí)路線圖

下圖描述了一個java程序員在成長過程中,需要逐步學(xué)習(xí)的知識。必須聲明,下圖不是本人原創(chuàng),是github項目sorenduan/awesome-java-books ,原作者的項目還是要說明一下。大家可以去github上去看這個項目。但是因為原文是英文的,我謹(jǐn)在此向原作者表示敬意,并對英文內(nèi)容進(jìn)行翻譯,希望可以幫助到大家!

圖中的

黃色是優(yōu)先,重點(diǎn)掌握的內(nèi)容,優(yōu)先級比較高褐色是進(jìn)階的內(nèi)容,需要有一定工作經(jīng)驗再去學(xué)習(xí)灰色的內(nèi)容,有時間有精力,自己有興趣或者明確需求的可以去學(xué)習(xí)一下

最重要的宗旨是:持續(xù)學(xué)習(xí),Keep Learing

路線圖中文解釋

Prerequisites 必備基本

Java java基礎(chǔ)Gradle or Maven 項目構(gòu)建及管理工具SQL SQL基礎(chǔ)是必須要會而且要精的內(nèi)容

General Development Skills

Learn GIT, 代碼版本管理工具git,幾乎所有的開源世界的代碼都是git管理的,如果不會,你就只能閉門造軍,無法吸收大神們的精髓知道HTTP及HTTPs原理,及常用的HTTP方法(GET, POST, PUT, PATCH, DELETE, OPTIONS)學(xué)會使用搜索引擎,如果有可能,盡量用google,你懂的學(xué)習(xí)一些算法和數(shù)據(jù)結(jié)構(gòu)的知識學(xué)一些基礎(chǔ)的權(quán)限管理相關(guān)的設(shè)計知識常用的代碼開發(fā)及設(shè)計原則,如:SOLID系列原則

命令行及參數(shù)解析工具

args4jJCommanderairline

web框架

Spring 這個不說了,必學(xué)必會Play Framework 一個full-stack(全棧的)Java Web的應(yīng)用框架Spark 一個簡單易用的web應(yīng)用框架(這里說的不是,在大數(shù)據(jù)流式處理領(lǐng)域的那個spark)Jersey RESTful 框架是開源的RESTful框架nanohttpd 一個開源的http庫,只需要一個類便可輕易實現(xiàn)http服務(wù)

Databases 數(shù)據(jù)庫

Relational 關(guān)系型數(shù)據(jù)庫,這個不多說,掌握SQL ServerPostgreSQLMariaDBMySQLOracleCloud Databases 云數(shù)據(jù)庫(說實話這兩個筆者沒用過)CosmosDBDynamoDBSearch Engines 全文檢索引擎類ElasticSearch 適用于海量數(shù)據(jù)存儲及全文檢索Solr 全文檢索引擎Sphinx 一個基于SQL的全文檢索引擎,可以結(jié)合MySQL,PostgreSQL做全文搜索NoSQL MongoDB 文檔類數(shù)據(jù)庫,較常用Redis 鍵值對內(nèi)存數(shù)據(jù)庫,常用Apache Cassandra 分布式的Key-Value數(shù)據(jù)庫,性能較好LiteDB 輕量級的Serverless 文檔數(shù)據(jù)庫LiteDBRavenDB CouchDB 一個開源的面向文檔的數(shù)據(jù)庫管理系統(tǒng)

ORMs ORM框架類(筆者在這里加上一個Mybatis,國內(nèi)用的多)

Hibernate(JPA) 即使不用也要學(xué),思想EbeanBelleORM

Caching 緩存數(shù)據(jù)存儲

CaffeineEHCacheCache2kDistributed Cache 分布式緩存Java-Redis 這種最常用Java-MemcachedInfinispan

Logging 日志

Log Frameworks 日志框架(筆者在這里加上logback)ZapTinyLoglog4j、log4j2 常用Log Management System 日志管理系統(tǒng)Sentry.ioLoggly.comTracer

Real-Time Communication 實時通信

Socket.IOatmospherewebbit

API Clients API客戶端

REST REST接口-JSON格式,基于HTTP協(xié)議okhttpretrofitGraphQL 一種為你的 API 而生的查詢語言

Good to Know 最好要會

Beanvalidation 通常用于參數(shù)校驗bouncycastlegson JSON數(shù)據(jù)處理工具Apache Shiro 權(quán)限管理JJWT 接口訪問token授權(quán)RxJava 一套異步編程的 API

Testing 測試相關(guān)

Unit, Behavior, Integration, Load TestingJUnit 最常用CitrusFrameworkGatlingTsungMockito 模擬測試,常用TruthAssertj cucumber-jvmcukeshoverfly-javarest-assuredjbehaveE2E Testing 端到端測試Selenium 常用

Task Scheduling 定時任務(wù)管理

AuroraelasticjobSundialcron-utils

MicroServices 微服務(wù)

Message-Broker 消息中間件RabbitMQ 常用Apache Kafka 常用ActiveMQ 常用Azure Service BusMessage-Bus 消息總線mbassadorrmqFrameworks 框架Apollo 分布式配置中心lagom-frameworkmicronauteureka 服務(wù)注冊中心 helidonarmeriaRPC 遠(yuǎn)程接口調(diào)用(序列化、反序列化)Protocol BuffersgRPC-Javathrift

Java-Patterns java設(shè)計模式

雖然這張路線圖,已經(jīng)相對完整,但是相對于國內(nèi)一些公司的要求還有很多可以補(bǔ)充的地方。如果想成為架構(gòu)師,可能要學(xué)會

linux 不會的話,開源分布式軟件,你安裝不上,你怎么學(xué)?docker & devops 持續(xù)集成、運(yùn)維優(yōu)化等spring cloud 和國內(nèi)常用的 dubbo,負(fù)載均衡haproxy、nginx等甚至你還要去學(xué)前端知識,css、html自不必說。目前國內(nèi)最流行的vue。

總之一句話:Keep Learing,持續(xù)學(xué)習(xí)。筆者一直覺得程序員的投入與回報是不成正比的,我覺得沒有一個行業(yè)有程序員需要的知識更新速度快,目前還沒發(fā)現(xiàn)。也許有些人不認(rèn)可,但是入這行時間久了就會明白!所以不要忘了你為什么出發(fā)?如果單純是因為錢,而不是因為熱愛,在適當(dāng)?shù)臅r間需要轉(zhuǎn)向或回頭!

java權(quán)限管理,JAVA后端應(yīng)該學(xué)什么技術(shù)