CodeGym
キャンペーン
学習
コース
課題
アンケート & クイズ
ゲーム
ヘルプ
スケジュール
コミュニティ
ユーザー
フォーラム
チャット
記事
成功事例
アクティビティ
レビュー
サブスクリプション
ライトテーマ

レッスン

  • レビュー
  • 私たちについて
開始
学習開始
今すぐ学習を始める
  • 学習の進捗
  • コース
  • クエストマップ
  • レッスン
  • シリアライゼーションの圧縮とプロファイリング

    JAVA 25 SELF
    レベル 45,レッスン 4
    Java でオブジェクトのシリアライゼーションを小さく・速くする方法: transient で不要なフィールドを除外し、 Externalizable で完全に制御し、ストリーム圧縮( GZIPOutputStream、 ZipOutputStream)を適用し、I/O をバッファリング( BufferedOutputStream、 BufferedInputStream)して、 FileChannel. transferTo による高速コピーでスピードアップします。性能評価には手早い計測として System. nanoTime() を、正確なマイクロベンチマークとして JMH を使います。最後にミニ実験と典型的なミスの解説で締めくくります。
    利用可能
  • JSON の基礎:構造・構文・利点

    JAVA 25 SELF
    レベル 46,レッスン 0
    データ交換フォーマット JSON への簡潔で現代的な入門:それは何か、なぜ REST API のデファクトスタンダードになったのか。基本構造 — オブジェクト { } と配列 [ ]、許可される型(文字列 "..."、数値、ブール値 true/ false、 null)、ネスト、XML との比較、JSON ↔ Java の対応(コレクション Map<K, V>、 HashMap<K, V>)。実用例とよくあるミス:シングルクォート、余分なカンマ、 undefined、先頭ゼロの数値。
    利用可能
  • Jackson — JSONの読み書き、アノテーション

    JAVA 25 SELF
    レベル 46,レッスン 1
    Jackson は Java における JSON 取り扱いのデファクトスタンダードです。基本的なシリアライズ/デシリアライズは ObjectMapper で、さらに @JsonProperty、 @JsonIgnore、 @JsonInclude、 @JsonFormat といったアノテーションで細かく制御できます。講義では、依存関係の追加( jackson-databind)、オブジェクト/コレクションの読み書き、プリティプリント、日付の扱い、そして典型的な落とし穴を扱います。特に TypeReference を使ったジェネリクス、POJO の要件(引数なしコンストラクタ、ゲッター/セッター)を取り上げます。
    利用可能
  • Gson — シリアライズとデシリアライズ、設定

    JAVA 25 SELF
    レベル 46,レッスン 2
    この講義では Google の Gson ライブラリを解説します。 toJson/ fromJson を使ったクイックスタート、 TypeToken<> によるコレクションのデシリアライズ、 GsonBuilder( setPrettyPrinting、 serializeNulls、 setDateFormat)を用いた柔軟な設定を紹介します。さらに、 @SerializedName、 @Expose、バージョニングの @Since/ @Until、独自アダプター( TypeAdapter と registerTypeAdapter)を扱い、最後に Jackson との比較と典型的なエラーも解説します。
    利用可能
  • 動的なデータ構造の扱い:Map, List, JsonNode

    JAVA 25 SELF
    レベル 46,レッスン 3
    JSON の構造が事前に不明だったり頻繁に変化する場合、堅い Java クラスではなく、汎用コンテナで扱う方が便利です: Map、 List、そして JSON ツリー。本講義では、 ObjectMapper を使ってデータを Map<String, Object> や List に読み込む方法、 JsonNode とその get/ path/ asText() で安全にツリーをたどる方法、さらに Gson による JsonElement、 JsonObject、 JsonArray を使った代替も解説します。最後に、設定の抽出の実践と典型的なエラーの整理で締めくくります。
    利用可能
  • JSON の検証: JSON Schema と検証エラー

    JAVA 25 SELF
    レベル 46,レッスン 4
    デシリアライズ前に、 JSON 形式の入力データをなぜ・どのように検証するのか。 JSON Schema(キー type、 properties、 required、 format)でデータ契約を定義し、Java では everit-org/json-schema ライブラリで検証します( Schema へのスキーマ読み込み、 validate の呼び出し)。 ValidationException を適切に処理し、ユーザーや API 向けに分かりやすいエラーメッセージを組み立てます。
    利用可能
  • XML と名前空間の基礎

    JAVA 25 SELF
    レベル 47,レッスン 0
    短く実践的な XML 入門: 基本構造(要素、属性、テキストノード、コメント、 CDATA)、プロローグの構成、そして何よりも名前空間がなぜ必要なのか、属性 xmlns と xmlns:prefix による宣言と適用方法。プレフィックス、既定の名前空間( xmlns= "URI")、1 つの文書で異なる「語彙」を混在させる方法、典型的なパースエラーを解説します。
    利用可能
  • DOM と SAX による XML 解析

    JAVA 25 SELF
    レベル 47,レッスン 1
    この講義では、XML を解析する2つの古典的アプローチ、ツリー型の DOM とイベント駆動の SAX を扱います。ツリー( Document、 Element、 NodeList)を通じて文書を読み書きする方法や、イベントハンドラ( SAXParser、 DefaultHandler、 startElement/ characters/ endElement)を使って大きなファイルをストリーミング処理する方法を学びます。さらに、それぞれの長所と短所、実用的な例、そして典型的な落とし穴(メモリ、 characters でのテキスト分割、SAX で XML を変更しようとする試み)も解説します.
    利用可能
  • StAX (Streaming API for XML) — ストリーミングパース

    JAVA 25 SELF
    レベル 47,レッスン 2
    StAX を使った XML のストリーミングパースを解説します: pull モデルが SAX の push アプローチとどう違うか、 XMLInputFactory でパーサーを作成し、 XMLStreamReader からループで reader. next() を呼び出してイベントを読む方法、イベントの種類( START_ELEMENT, CHARACTERS, END_ELEMENT, END_DOCUMENT)と、どの場面で StAX が DOM/ SAX より適しているか。プラス: アプローチ比較表、Mermaid ダイアグラム、ありがちなミスの解説(ストリーム/リソースリーク、要素の入れ子、 XMLStreamException や IOException などの例外)。
    利用可能
  • JAXB で XML を扱う: 基本とアノテーション

    JAVA 25 SELF
    レベル 47,レッスン 3
    JAXB(Jakarta XML Binding)を使って Java オブジェクトを XML に相互変換する方法: 主要アノテーション @XmlRootElement, @XmlElement, @XmlAttribute, @XmlType, @XmlTransient。基盤クラス JAXBContext, Marshaller, Unmarshaller。プロパティ Marshaller.JAXB_FORMATTED_OUTPUT による整形設定。Java 11+ 向けの Maven 依存関係( jakarta.xml.bind-api, jaxb-runtime)、コレクションや入れ子オブジェクトの扱い、要素順序の制御( propOrder)、フィールドの除外とよくあるエラーを解説。
    利用可能
  • XML シリアライゼーションの調整: カスタムアダプタ

    JAVA 25 SELF
    レベル 47,レッスン 4
    JAXB に「非標準」な型をシリアライズさせ、必要な形式でデータを表現する方法: アノテーション @XmlJavaTypeAdapter を使い、 XmlAdapter<ValueType, BoundType> をベースに独自アダプタを書きます。日付のフォーマット( LocalDate → "dd.MM.yyyy")、数値( BigDecimal)、コレクションの扱い、 @XmlAttribute による属性への移動、 @XmlElement による要素化、 @XmlTransient によるフィールドの除外を解説します。さらに、 Marshaller/ Unmarshaller を使ったシリアライズ/デシリアライズを練習し、典型的なエラーも取り上げます。
    利用可能
  • ラムダ式: 構文とスコープ

    JAVA 25 SELF
    レベル 48,レッスン 0
    Java のラムダ式を復習してさらに深掘りします: 構文(パラメーター、矢印 ->、本体)、かっこや return を省く短い書き方、関数型インターフェース( Comparator、 Runnable、 Consumer)との関係、リスト、ストリーム、そして Stream API の日常的な例。スコープと「実質的に final」の規則、ラムダと無名クラスにおける this の違い、さらに典型的なミスとその回避方法を解説します。
    利用可能
  • 1
  • ...
  • 20
  • 21
  • 22
  • 23
  • 24
  • ...
  • 30
学ぶ
  • 登録
  • Javaコース
  • 課題のサポート
  • 料金
  • ゲームプロジェクト
  • Java構文
コミュニティ
  • ユーザー
  • 記事
  • フォーラム
  • チャット
  • 成功事例
  • アクティビティ
  • アフィリエイトプログラム
会社情報
  • 私たちについて
  • 連絡先
  • レビュー
  • プレスルーム
  • CodeGym for EDU
  • よくある質問
  • サポート
CodeGymCodeGym は、ゼロからJavaプログラミングを学ぶためのオンラインコースです。このコースは初心者がJavaを習得するのに最適です。即時検証付きの1200以上の課題と、Java基礎理論の必要な範囲を含みます。学習の成功を支援するために、クイズ、コーディングプロジェクト、効率的な学習に関するコンテンツ、Java開発者のキャリアに関する機能など、一連のモチベーション機能を導入しています。
フォローする
インターフェース言語
English Deutsch Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands
日本語
한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
「プログラマーは生まれるのではなく、育てられる」 © 2026 CodeGym
MastercardVisa
「プログラマーは生まれるのではなく、育てられる」 © 2026 CodeGym