Java

スポンサーリンク
Java

Java | Java 詳細・モダン文法:JVM・パフォーマンス – パフォーマンス測定

「なんとなく速そう」ではなく「数字で語る」がパフォーマンス測定パフォーマンス測定の一番大事なポイントは、「体感」や「勘」ではなく、数字で語ることです。「この実装の方が速い気がする」ではなく、「この処理...
Java

Java | Java 詳細・モダン文法:JVM・パフォーマンス – Stop The World

Stop The World を一言でいうとStop The World(STW)は、「JVM が何か重要な作業をするために、アプリケーションのスレッドを一時的に全部止めること」です。特に GC(ガー...
Java

Java | Java 詳細・モダン文法:JVM・パフォーマンス – GC の基本

GC を一言でいうと「いらなくなったオブジェクトの自動掃除屋」GC(Garbage Collection)は、「もう使われていないオブジェクトを、自動で見つけて捨ててくれる仕組み」です。C や C++...
Java

Java | Java 詳細・モダン文法:JVM・パフォーマンス – ヒープ / スタック

ヒープとスタックを「机」と「倉庫」でイメージするまずはイメージからいきましょう。スタックは「今やっている作業のための机」。ヒープは「作ったモノを置いておく大きな倉庫」。机(スタック)の上には、今呼び出...
Java

Java | Java 詳細・モダン文法:JVM・パフォーマンス – JVM メモリ構造

JVM メモリ構造をざっくり一枚の絵にするまずイメージからいきます。JVM のメモリは、大きく言うと次のような「部屋」に分かれています。ヒープ(Heap):new したオブジェクトが住む場所スタック(...
Java

Java Tips | 文字列処理:制御文字除去

制御文字除去は「“見えないゴミ”を取り除いてトラブルを防ぐ」技業務で外部システムからファイルを受け取ったり、コピー&ペーストされたテキストを扱っていると、画面には見えないのに、処理だけおかしくなる“謎...
Java

Java Tips | 文字列処理:JSONエスケープ

JSONエスケープは「文字列を“JSONとして壊さない形”にする」技業務でAPIを作ったり、フロントとバックエンドでJSONをやり取りしていると、「文字列をJSONに埋め込んだらパースエラーになった」...
Java

Java Tips | 文字列処理:SQLエスケープ

SQLエスケープは「文字列を“SQLの一部”として安全に扱う」ための技…なんだけど最初に、いちばん大事なことから言います。業務・実務では「SQLエスケープを書けるようになる」ことよりも、「SQLエスケ...
Java

Java Tips | 文字列処理:HTMLアンエスケープ

HTMLアンエスケープは「エンコードされた文字を“元の文字”に戻す」技HTMLエスケープは、< や & を < や & に変換して「安全に表示する」ための技でした。HTMLアンエスケープ...
Java

Java Tips | 文字列処理:HTMLエスケープ

HTMLエスケープは「文字列を“ただの文字”として安全に表示する」技Web画面に文字列を表示するとき、その文字列が「HTMLとして解釈されるか」「ただの文字として扱われるか」は、とても重要です。<b>...
Java

Java Tips | 文字列処理:改行統一

改行統一は「バラバラな改行コードを“同じルール”にそろえる」技業務システムを書いていると、いろんなところからテキストが入ってきます。Windows で作られたファイル、Linux サーバ上のログ、We...
Java

Java Tips | 文字列処理:中央寄せ

中央寄せは「タイトルや見出しを“きれいに見せる”」ための技左寄せ・右寄せは「読みやすさ」「桁そろえ」のためのテクニックでしたが、中央寄せ(センタリング) はどちらかというと「見た目のバランス」を整える...
Java

Java Tips | 文字列処理:右寄せ

右寄せは「桁をそろえて“数字やコードを読みやすくする”」技左寄せが「文字を左にそろえて見やすくする」技だとしたら、右寄せは「数字や桁ものを右にそろえて、比較しやすくする」技です。固定長ファイル、帳票、...
Java

Java Tips | 文字列処理:左寄せ

左寄せは「人間が読むために“左側をそろえる”」技パディングの話で「左パディング」「右パディング」をやりましたが、その中でも 左寄せ は「人間が読むときの見やすさ」に直結するテクニックです。固定長ファイ...
Java

Java Tips | 文字列処理:パディング

パディングは「長さをそろえて“機械が扱いやすい文字列”にする」技業務システムでは、「桁数が決まっている文字列」がよく出てきます。顧客番号は10桁、請求書番号は8桁、固定長ファイルの項目は右詰め・左詰め...
Java

Java Tips | 文字列処理:先頭大文字化

先頭大文字化は「ちょっとだけ“きれいな名前・ラベル”にする」技キャメルケースやスネークケースほど大げさではないけれど、業務で地味によく出てくるのが 「先頭だけ大文字にしたい」 というニーズです。use...
Java

Java Tips | 文字列処理:ケバブケース変換

ケバブケース変換は「Java の名前を“URL やフロントエンドの世界”に合わせる」技ここまで出てきたキャメルケース(userName)、スネークケース(user_name)に続いて、フロントエンドや...
Java

Java Tips | 文字列処理:スネークケース変換

スネークケース変換は「Java の名前を“DB や設定ファイルの世界”に合わせる」技キャメルケース変換が「外の世界を Java っぽくする」技だとしたら、スネークケース変換はその逆で、「Java の名...
Java

Java Tips | 文字列処理:キャメルケース変換

キャメルケース変換は「バラバラな単語を“Java っぽい名前”にそろえる」技業務システムを書いていると、こんな文字列がよく出てきます。user_nameUSER_NAMEuser-nameuser n...
Java

Java Tips | 文字列処理:小文字変換

小文字変換は「表記ゆれを“ゆるく受け止める”ための技大文字変換が「全部そろえてガチっと比較する」イメージだとしたら、小文字変換は「とりあえずぜんぶ丸めて、ゆるく受け止める」イメージに近いです。GET,...
Java

Java Tips | 文字列処理:大文字変換

大文字変換は「バラバラな表記を“同じもの”として扱う」ための技業務システムでは、ユーザーや外部システムが好き勝手な表記でデータを送ってきます。abc, Abc, ABC が混ざっていたり、jp, JP...
Java

Java Tips | 文字列処理:半角→全角

半角→全角は「機械っぽい文字を“日本語の紙”に合わせる」技全角→半角は「検索や比較のために揃える」話でしたが、半角→全角はどちらかというと「見た目・帳票・印刷物の世界」に寄ったニーズが多いです。例えば...
Java

Java Tips | 文字列処理:全角→半角

全角→半角は「バラバラな入力を“同じもの”として扱う」ための技業務システムで一番よくある地味トラブルの一つが、これです。「1234」と「1234」が別物として扱われてしまう「ABC」と「ABC」で検索...
Java

Java Tips | 文字列処理:英字抽出

英字抽出は「ごちゃ混ぜ文字列から“アルファベットだけ”をすくい上げる」技業務システムでは、「商品名に英字と数字と日本語が混ざっている」「ログにIDやコードが埋まっている」「外部システムから来た文字列が...
Java

Java Tips | 文字列処理:数字抽出

数字抽出は「文章の中から“数値だけ”をすくい上げる」技業務システムでは、ログメッセージ、メール本文、外部システムからのテキスト、Excel から吐き出された中途半端な文字列など、「文字と数字がごちゃ混...
Java

Java Tips | 文字列処理:正規表現置換

正規表現置換は「パターンに合うところだけ賢く書き換える」技正規表現マッチが「パターンに合う部分を見つける」技だとしたら、正規表現置換は「パターンに合う部分だけを、狙った形に書き換える」技です。「電話番...
Java

Java Tips | 文字列処理:正規表現マッチ

正規表現マッチは「文字列の中から“パターン”を見つける」技文字列分割が「区切りで切る」技だとしたら、正規表現マッチは「ルール(パターン)に合う部分だけを見つける」技です。「メールアドレスかどうかチェッ...
Java

Java Tips | 文字列処理:文字列分割

文字列分割は「一つの塊を意味ごとに切り出す」技業務システムでは、CSVの1行、ログ1行、設定ファイルの1行、HTTPヘッダ、クエリ文字列など、「一つの長い文字列を、意味のあるピースに切り分けたい」場面...
Java

Java Tips | 文字列処理:高速StringBuilder

「高速StringBuilder」は“たくさんつなぐ”場面を丸ごと任せる道具前回の「文字列連結」で触れたとおり、+ 連結は少ない回数なら問題ありませんが、ループの中で何百回・何千回と連結するときは、S...
Java

Java Tips | 文字列処理:文字列連結

文字列連結は「小さなピースを一つのメッセージにまとめる」技業務システムでは、ログメッセージ、SQL、URL、エラーメッセージ、メール本文など、「いくつかの値を組み合わせて一つの文字列にしたい」場面がひ...
スポンサーリンク