JAVA を学ぶためにマスターしなければならない知識 (後悔しないように)
Web アプリケーションの場合、最も一般的な開発言語は Java と PHP です。 。
バックエンド サービス、最も一般的な研究開発言語は Java と C/C です。
ビッグデータ、最も一般的な研究開発言語は Java と Python です。
Java は、現段階で中国のインターネット企業の間で最も広くカバーされている研究開発言語であると言えます。成熟した大企業、急速に発展している企業、または新進気鋭の企業であっても、Java テクノロジー システムをマスターすることは、起業のステージ、誰もが立つ場所を持っています。
多くの友人から、Java 構文の習得に加えて、どのような Java 関連テクノロジを体系的に学習すべきかという質問が寄せられました。今日はその 1 つである、インターネット上で Java テクノロジを学習するためのロードマップを共有します。
1: 一般的なパターンとツール
Java テクノロジー システム、デザイン パターン、一般的なフレームワークとコンポーネントを学習することが不可欠です。 :
コーディングに必要な一般的なデザイン パターン
Spring5、アプリケーションに不可欠な最新フレームワーク
MyBatis、データベースを操作するために不可欠なコンポーネント
2: エンジニアリングとツール
従業員が仕事をうまくやり遂げたい場合は、まず次のことを行う必要があります。初心者でも上級開発者でも、開発効率とチームの共同作業効率を向上させるためには、Java テクノロジ システムを試し、適切なツールを選択することが不可欠です。
Maven、プロジェクト管理
Jenkins、継続的インテグレーション
Sonar、コード品質管理
Git、バージョン管理
# #3: 分散アーキテクチャ
高同時実行性、高可用性、大量のデータ。分散アーキテクチャの知識がなければプレイすることは間違いなく不可能です。
分散アーキテクチャの原則分散アーキテクチャ戦略分散ミドルウェア分散アーキテクチャの実践##4 : マイクロサービス アーキテクチャ
ビジネスはますます複雑になり、サービスは階層化されています。マイクロサービス アーキテクチャはアーキテクチャをアップグレードする唯一の方法です。Java テクノロジ システム、関連するテクノロジは何ですかマイクロサービスに? #マイクロサービス フレームワーク
Spring Cloud
Docker と仮想化
マイクロサービス アーキテクチャ
5: パフォーマンスの最適化
#細部から切り離された PPT アーキテクトは悪党です。彼は上向きに戦略を立て、第一線のパフォーマンスを下向きに解決できます。質問、Java テクノロジー システムについて理解する必要があります:パフォーマンス インジケーター システム
JVM チューニング
Web チューニング
DB チューニング
#アーキテクチャ設計からアプリケーション層のチューニング、そして- Depth 基礎となる原則と確かな基本的な Java スキルを理解することによってのみ、包括的な僧侶になれるのです。
メモリ モデル同時実行モード
スレッド モデル
ロックの詳細
JAVA を学ぶために習得しなければならない知識:
オブジェクト指向とは
それは一種の怠惰な思考であり、私たちの思考習慣により近い
複雑な時間を簡素化できる
実行者を司令官に変えることができる
役割が変化する
オブジェクト指向の特徴とは
オブジェクト指向には以下が含まれます: カプセル化 継承 ポリモーフィズム
継承の利点と欠点
利点: コードの再利用性の向上 コードの保守性の向上 クラスをクラスに関連付ける 関係それらの間には、ポリモーフィズムの前提があります。
欠点: クラスの結合により強化されます。
ポリモーフィズムの利点と欠点
ポリモーフィズムの種類: ポリモーフィズムは、存在するものの複数の形式です。
ポリモーフィズム 前提: 存在する必要があります。継承関係があること、メソッドの書き換えが必要であること、およびサブクラス オブジェクトを指す親クラス参照が必要であること
欠点には次のものがあります: サブクラス固有のメソッドを使用できない
利点には次のものがあります: コードの保守性の向上 コードの再利用性の向上仮パラメータとして使用され、任意のサブクラス オブジェクトを受け入れることができます
インターフェイスとは
広い意味では、インターフェイスによって外部の世界に提供されるルールはすべてインターフェイスです
IOストリームとは
IOストリームはデバイス間のデータ転送を処理するために使用されます
入力ストリームと出力ストリームがあります
2バイトストリームと文字ストリームに分かれています
スレッドとは
スレッドはプログラムのパスです実行、プロセス 複数のスレッドを含めることができます
マルチスレッドとは
複数のスレッドを同時に実行すると、プログラムの効率が向上し、複数のプロジェクト作業を同時に完了できます
計数機とはネットワーク
地理的に異なるネットワークを指します複数のコンピュータとその独立した機能を持つ外部機器が通信回線を介して接続され、ネットワークオペレーティングシステム、
ネットワーク管理ソフトウェア、ネットワーク通信プロトコルの管理とプロトコルの下に、リソースの共有と情報伝達を実現するコンピュータ システム
ネットワーク プログラミングとは
異なるコンピュータ上で実行されるプログラム間のネットワーク相互接続とデータ交換を実現するために使用されます
リフレクションとは
Java リフレクション メカニズムが実行されていますこのクラスのすべてのプロパティとメソッドを理解している
任意のオブジェクトについて、そのメソッドとプロパティのいずれかを呼び出すことができます
この動的に取得された情報と、オブジェクトのメソッドを動的に呼び出す機能これは Java 音声のリフレクション メカニズムと呼ばれます
クラスを分析したい場合は、まずクラスのバイトコード ファイル オブジェクトを取得する必要があります。
分析では Class クラスのメソッドを使用するため、最初に各バイトコードファイルに対応するクラスタイプ オブジェクト
列挙とは
変数の値を1つずつ列挙することを意味します 変数の値は列挙された値の範囲に限定されます 例:週に 7 日だけ、1 年に 12 か月だけなど。
シートのサンプル設計パターンを思い出してください: シングルトン クラスはインスタンスが 1 つだけあるクラスです。
非常に多くのサンプル クラスは複数のインスタンスを持つクラスですが、無限のインスタンスではなく、限られた数のインスタンスです。これは列挙型クラスにすることができます。
JVM デフォルトでは例外を処理する方法です。
メイン メソッドがこの問題を受け取った場合、それを処理する方法は 2 つあります。 1 つ目は、自分で処理してから実行を続けることです。
2 つ目は、ハンドルすることです。特定の処理メソッドがない場合は、main を呼び出すことしかできません。このメソッドは、JVM によって処理されます。
JVM にはデフォルトの例外処理メカニズムがあり、例外を処理します。
# 例外の名前、例外に関する情報、および例外が発生した場所をコンソールに出力し、同時にプログラムを停止します。 running
BigInteger
Integer の範囲を超えるデータを実行できます
BigDecimal
彼の機能は、小数をより正確に格納することです
メモリ出力ストリームとは
つまり、出力ストリームは、データをメモリに書き込むことができます。 メモリをバッファとして扱います。 書き込み後、すべてのデータを一度に取得できます。
スレッド プールとは
新しいスレッドを開始するプログラムのコストは比較的高くなります。オペレーティング システムとの対話スレッド プールを使用すると、特にプログラムが有効期間の短い多数のスレッドを作成する場合に、パフォーマンスが大幅に向上します。スレッド プールの使用を検討する必要があります。スレッド プール内の各スレッドは、スレッド プールの終了後も停止しません。コード。商品が再びスレッド プールに到着すると、それらはアイドル状態と呼ばれ、次のオブジェクトが使用されるのを待ちます。JDK5 にはスレッド プールが組み込まれています
スレッド グループとは
分類および分類できます。スレッドのバッチを管理します。Java を使用すると、プログラムがスレッド グループを直接制御できます
コンピュータとは
一般にコンピュータとして知られている、プログラムに従って自動的に実行し、大量の処理を行うことができる最新のインテリジェント電子デバイスです。
ソフトウェアとハードウェアから構成されており、ソフトウェアがインストールされていないコンピュータをベアメタルコンピュータと呼びます。一般的な形態はデスクトップコンピュータです。コンピュータ、ノートコンピュータ、大型計数機
とは計数機ハードウェアとは
電子機械と光電子部品で構成されるさまざまな物理デバイスの総称であり、これらの物理デバイスは、システム構造の要件に従って有機的な全体を形成し、計数機ソフトウェアの動作に実質的な基盤を提供します。
計数機ソフトウェアとは
コンピュータにとって欠かせないものです コンピュータのソフトウェアにより、計数機はあらかじめ決められた順序で特定の機能を実行することができます 計数機のソフトウェアは、その機能に応じてシステムソフトウェアとアプリケーションソフトウェアに分けられます 計数機の音声とは何ですか?
それは人間ですとコンピュータ 人々の間の情報交換のための特別な音声
java チュートリアル 」
以上がJAVAを学ぶためにマスターしなければならない知識(後悔しないように)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

新しいテクノロジーは、両方の脅威をもたらし、Javaのプラットフォームの独立性を高めます。 1)Dockerなどのクラウドコンピューティングとコンテナ化テクノロジーは、Javaのプラットフォームの独立性を強化しますが、さまざまなクラウド環境に適応するために最適化する必要があります。 2)WebAssemblyは、Graalvmを介してJavaコードをコンパイルし、プラットフォームの独立性を拡張しますが、パフォーマンスのために他の言語と競合する必要があります。

JVMの実装が異なると、プラットフォームの独立性が得られますが、パフォーマンスはわずかに異なります。 1。OracleHotspotとOpenJDKJVMは、プラットフォームの独立性で同様に機能しますが、OpenJDKは追加の構成が必要になる場合があります。 2。IBMJ9JVMは、特定のオペレーティングシステムで最適化を実行します。 3. Graalvmは複数の言語をサポートし、追加の構成が必要です。 4。AzulzingJVMには、特定のプラットフォーム調整が必要です。

プラットフォームの独立性により、開発コストが削減され、複数のオペレーティングシステムで同じコードセットを実行することで開発時間を短縮します。具体的には、次のように表示されます。1。開発時間を短縮すると、1セットのコードのみが必要です。 2。メンテナンスコストを削減し、テストプロセスを統合します。 3.展開プロセスを簡素化するための迅速な反復とチームコラボレーション。

java'splatformentedencefacilitatesecodereusebyAllowingbyTeCodeCodeCodeCodeTorunonAnyPlatformm.1)DevelopersConcodeCodeOnceOnceOnconconsentEntentEntEntEntEntEntentPlatforms.2)維持化されたアスカデドは、NoeedReadedoesではありません

Javaアプリケーションのプラットフォーム固有の問題を解決するには、次の手順を実行できます。1。Javaのシステムクラスを使用して、システムプロパティを表示して実行中の環境を理解します。 2。ファイルクラスまたはjava.nio.fileパッケージを使用して、ファイルパスを処理します。 3。オペレーティングシステムの条件に応じてローカルライブラリをロードします。 4. VisualVMまたはJProfilerを使用して、クロスプラットフォームのパフォーマンスを最適化します。 5.テスト環境が、Dockerコンテナ化を通じて生産環境と一致していることを確認してください。 6. githubactionsを使用して、複数のプラットフォームで自動テストを実行します。これらの方法は、Javaアプリケーションでプラットフォーム固有の問題を効果的に解決するのに役立ちます。

クラスローダーは、統一されたクラスファイル形式、動的読み込み、親代表団モデル、プラットフォーム非依存バイトコードを通じて、さまざまなプラットフォーム上のJavaプログラムの一貫性と互換性を保証し、プラットフォームの独立性を実現します。

Javaコンパイラによって生成されたコードはプラットフォームに依存しませんが、最終的に実行されるコードはプラットフォーム固有です。 1。Javaソースコードは、プラットフォームに依存しないバイトコードにコンパイルされます。 2。JVMは、特定のプラットフォームのバイトコードをマシンコードに変換し、クロスプラットフォーム操作を保証しますが、パフォーマンスは異なる場合があります。

マルチスレッドは、プログラムの応答性とリソースの利用を改善し、複雑な同時タスクを処理できるため、最新のプログラミングで重要です。 JVMは、スレッドマッピング、スケジューリングメカニズム、同期ロックメカニズムを介して、異なるオペレーティングシステム上のマルチスレッドの一貫性と効率を保証します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

WebStorm Mac版
便利なJavaScript開発ツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。
