JSON.parse と JSON.stringify の違いと使い分け

JSON(JavaScript Object Notation)は、軽量なテキストベースのデータ交換形式であり、JavaScript のnative構文を元に設計されています。ES5より、JSONオブジェクトが導入され、データのシリアライズ・デシリアライズを扱うための標準APIが提供されました。 JSONオブジェクトは、フロットのメソッドを2つだけ持つ特殊なオブジェクトであり、コンストラクタとして使用でき ...

6月19日 17:25 投稿

PythonにおけるJSONデータ交換の実践ガイド

JSONは、Webアプリケーション間で構造化データを安全かつ効率的にやり取りするための標準フォーマットです。Pythonの組み込みjsonモジュールは、このフォーマットをネイティブにサポートし、開発者がシームレスにデータのシリアル化と逆シリアル化を行えるように設計されています。 基本的なマッピング規則 JSONの構文要素とPythonの対応型は以下の通りです: ...

6月14日 23:33 投稿

HTTPプロトコルのシリアライズとデシリアライズ実装解析

HTTP通信におけるデータ処理は、シリアライズとデシリアライズのプロセスが不可欠です。本記事では、TCPを基盤とするバイトストリームを解析し、HTTPリクエストとレスポンスを構造化して処理する実装方法を詳細に解説します。実践的なコード例を通じて、リクエスト構文の分解、ヘッダー解析、静的ファイル返却の実現手順を示します。リクエスト解析の実装HTTPリクエストの ...

6月12日 21:51 投稿

UnityでのProtocol Buffers導入とシリアライズ実装

環境構築とライブラリの準備Protocol Buffers(Protobuf)をUnityで利用するには、C#用のランタイムライブラリと、.protoファイルからC#ソースコードを生成するためのコンパイラ(protoc)が必要です。1. 公式リポジトリからソースコードとWindows用バイナリ(win64)をダウンロードします。2. Visual StudioでC#プロジェクトを開き、メニューバーから「ツール > NuGet パ ...

6月8日 20:34 投稿

Python で JSON を安全かつ効率的にパースする実践手法

JSON(JavaScript Object Notation)は、Web API や設定ファイル、データ交換の標準フォーマットとして広く採用されています。Python は標準ライブラリ json を通じて、文字列やファイルからの JSON データのデシリアライズをネイティブにサポートしており、型安全性やエラー処理を意識した使い方が可能です。 基本的なパースフロー JSON を Python のネイティブオブジェ ...

6月7日 17:06 投稿

Qtフレームワークでの設定情報のシリアライズと復元

アプリケーション状態の永続化 一般的なデスクトップアプリケーションでは、ユーザーが最終的に終了した時の状態(ウィンドウのサイズ、選択されたフォント、ツールバーの表示状態など)を、次回起動時に復元することが求められます。これを実現するには、アプリケーション終了時に状態をファイルやデータベースに保存し、起動時にそれらを読み出す処理が必要です。 設定 ...

5月27日 16:04 投稿

Javaにおける文字セットと文字ストリームの処理

文字セット 文字とバイナリデータ間の対応関係を定義したマッピングテーブルです。 バイトはコンピュータの基本的な記憶単位であり、文字は特定の規則とエンコーディングによって構成されたテキストです。 一般的な文字セット ASCII文字セット 基本的な文字エンコーディング標準で、128文字を含み、英字、数字、一部の記号のみを扱います。 1バイトで1文字を表現します。 ...

5月22日 05:20 投稿

単一インスタンスの保証を破壊する方法とその対策

単一インスタンス(シングルトン)とは シングルトンパターンは、システム内で特定のクラスのインスタンスがただ一つしか存在しないことを保証する生成系デザインパターンです。主に「イーガン式(Eager Initialization)」と「レイジーローディング式(Lazy Initialization)」の二種類があります。前者はクラスロード時に即座にインスタンスを生成し、後者は最初のリクエ ...

5月18日 05:15 投稿

Django REST Frameworkにおけるシリアライザとモデルシリアライザの詳細

標準ストリームと内部クラスの基礎 開発の準備段階として、Pythonの標準ストリーム(入力、出力、エラー)の理解と、Djangoモデルでよく使用される内部クラス(MetaクラスやChoicesなど)について確認します。 標準ストリームの操作 Pythonのsysモジュールを使用して、標準出力や標準エラー出力を制御できます。デバッグやログ出力時に役立ちます。 import sys # 標準出 ...

5月17日 21:57 投稿

Redis Sorted Set 削除が効かない原因と回避策

Spring Data Redis の ZSetOperations.remove(K key, Object… values) を使っても、値を「更新した後」に削除しようとすると 該当メンバーが見つからず削除できない という現象が発生した。本記事では再現手順と回避策を示す。 事象の概要 新規レコードを追加(addData) 一部フィールドを変更して再追加(updateData) 更新後の値を指定して削除(removeData) 3 の時 ...

5月11日 06:03 投稿