Java Daguaiアップグレードマップ


序文

熟練した人には簡単な方法はありません。競争力を維持したい場合は、学習を続ける必要があります。今日はJava学習のロードマップを共有します。みんなが引き続きモンスターと格闘し、格闘技の達人になるためにアップグレードすることを願っています。


1. Java Daguaiアップグレードマップ

1. Javaの基本

ここに画像の説明を挿入
Javaの基本的な部分であるコンテンツはそれほど多くありません。数年間働いてきた場合、インタビュー中にオブジェクト指向プログラミングの3つの主要な機能、コレクションの違い、抽象クラスとインターフェースの違い、およびスレッドを作成するいくつかの方法があります。同時実行制御について知らない場合、Javaファウンデーションを使用して一般的な評価を直接習得すると、全体的な印象が良くない場合、多くのポイントが失われます。

2.データベース

ここに画像の説明を挿入
注:mysqlおよびoracleに加えて、現在の主流のリレーショナルデータベースも最近人気を博しています。従来のC3P0とAliのDruidデータベース接続プールに加えて、スプリングブートのデフォルト接続プールhikariもますます人気が高まっています。
データベースは主に、SQLの書き込み、SQLの最適化、インデックスの使用、ロック、トランザクションをマスターする必要があります。その他の原則、展開アーキテクチャ、高可用性、サブデータベース、サブテーブルについては、徐々に検討します。

3.プログラミングの強化

ここに画像の説明を挿入
注:
23のデザインパターンに注意する必要があります。関連する概念とデザインアイデア、およびそれらのアプリケーションシナリオに精通している場合にのみ、プロジェクトでそれらを柔軟に使用して高品質のコードを記述できます。
JVMの最適化は仕事で出くわすことが少ないかもしれませんが、問題は大きな問題である可能性があります。また、インタビューで中上級のプログラマーがよく尋ねる知識ポイントでもあります。
データ構造とアルゴリズムは、通常、中小規模のビジネス開発会社では必要とされず、実際のプロジェクトで使用されることはほとんどありません。ただし、大手インターネット会社に参入する意欲がある場合、これは多くの作業であり、Letcodeだけがアルゴリズムの問​​題を壊します。
高レベルのマルチスレッド化は、スレッドプール、スレッド間のコラボレーション、およびスレッドの高度な制御にすぎません。
MINAとNettyはどちらもNIOベースのネットワークプログラミングフレームワークに属しており、Nettyが現在主流になっています。

4.ソフトウェアプロジェクト管理

ここに画像の説明を挿入
説明:主にコードのパッケージ化とバージョン管理。
Mavenは現在、jarパッケージ管理ツールに依存する最も主流のプロジェクトであり、主に構成されたバージョン番号管理とスコープ管理に依存しており、jarパッケージの競合を解決する方法を知っています。
SVN、Git、およびCode Cloudは、現在すべて主流のコードバージョン管理ツールです。
Jenkinsは継続的な統合作業であり、主にCI / CD継続的統合リリースに使用されます。つまり、プロジェクトは自動的にパッケージ化されてリリースされます。
Sonarは、IDEAと統合したり、Jenkinsと組み合わせて使用​​したりできるコード品質管理ツールです。

5.人気のあるテクノロジーフレームワーク

ここに画像の説明を挿入
注:
Springフレームワークは、現在のJavaプロジェクト開発の中核になるはずです。
Spring MVCは徐々にSpring Bootに置き換えられました。
永続化フレームワークJPAは実際にはHibernateに基づいていますが、プロジェクトでは、SQLに基づくMybatiの半自動マッピングフレームワークを使用することをお勧めします。これは、軽量で柔軟性が高く、最適化が簡単です。
Mybatisプラグは、Mybatisの使用を簡素化するように設計された製品です。Mybatisを拡張および強化し、Mybatis CRUDの簡素化された操作を実現します。基本的な追加、削除、変更、およびクエリSQLをすべてBaseMapperで作成する必要はありません。

6.分散アーキテクチャ

ここに画像の説明を挿入
説明:
コアは、現在最も主流のマイクロサービスフレームワークである、Spring Bootのマイクロサービスアーキテクチャに基づくSpring Cloudファミリーバケットです。
分散システムでは、システムの複雑さが大幅に増大し、多くの分散問題が発生します。一般的には、
分散一意ID、分散ロック、分散トランザクション、現在の制限、ヒューズ、ダウングレード、ロードバランシング、サービスガバナンス、サービス監視、呼び出しリンクの監視、その他の問題。

7.サーバーミドルウェア

ここに画像の説明を挿入

8.サーバーテクノロジー

ここに画像の説明を挿入

9.コンテナ技術

ここに画像の説明を挿入

10.ビジネスソリューション

ここに画像の説明を挿入

総括する

1.技術の道筋は非常に純粋で、苦労していれば孤独に耐えることができ、技術力を固めれば、当然満足できる仕事を見つけることができます。
2.テクノロジーを表面的に理解しないでください。テクノロジーとは何かを知っている場合は、履歴書にその理解を書き込んでください。デモを作成すると、それに慣れます。履歴書に書かれたすべての専門用語に責任を負う。
3.歩きにくい、歩きにくい、生涯学習、要約して反映するための記録をさらに作成する。
4.一晩で金持ちになることや、富の自由を考えないでください。実際には、より多くの選択肢を持ち、より美しいものを楽しむために、ある程度の資本があります。

モンスターとみんなで戦ってアップグレードしたいと思っています。プログラマの道をどんどん進んでいきたいです。

注:記事の写真はすべてダークホースプログラマーによって傍受されており、元のテキストのフロントエンド部分が傍受されています。現在、フロントエンドとバックエンドのほとんどが分離されており、全員のエネルギーが制限されているため、エネルギーはブレードで使用されます。ダークホースプログラマー向けの無料のチュートリアルの多くは今でもよいので、学ぶことをお勧めします。
ウェブサイトのリンク:http://yun.itheima.com/map/javaeetree?pc&1910zzpts

もっとわくわくしてください。
凡例:老人をフォローしてJavaを学ぶ

おすすめ

転載: blog.csdn.net/w1014074794/article/details/108562935