Software Design 2024年6月号

今号の特集概要

第1特集
SQLチューニングする前に知っておきたい
実行計画&インデックスのしくみ

ITエンジニアにとって,RDBMSとSQLはもはや必須技術になっているはず。しかし,データベースのパフォーマンスを改善するSQLチューニングは,うまく実践できていない方も多いのではないでしょうか。

そこで本特集では,SQLのチューニングをする前に知っておくべきSQL実行のしくみや内部構造をおさらいし,インデックスや実行計画を正しく活用する方法を紹介します。インデックスのしくみや,実行計画の見方について,自信を持って説明できるようになりましょう。

第2特集
[実証]Bun
次世代JavaScriptランタイムの実体に迫る

2023年9月にv1.0のメジャーリリースが出た「Bun」。オールインワンな機能,速さ,Node.jsとの互換性を売りとしてv0.xのころから注目を集め,圧倒的なシェアを誇るNode.jsに取って代わるのではないかとも言われてきました。しかし,実際のところその機能や性能などはどうなのでしょうか?

そこで本特集では,Bunの機能や性能を解き明かしていきます。Bunが登場したJavaScriptランタイム界の背景,Bunの機能や使い方,そしてNode.jsとの性能比較検証を通して,実体に迫りましょう。

特別企画
DI―依存性の注入―はなぜやるの?
「コンポーネント間の結合度を下げる」とは

DI(Dependency Injection,依存性の注入)は,JavaやC#などで幅広く利用されるプログラミング手法です。しかし,当たり前に使われすぎていてあらためて解説されることは少なく,「依存性の注入」という抽象的な表現も相まって,じつはよくわかっていないということもありそうです。本誌でも時々目にする用語ですから,この機にDIの具体的な利点や実現方法を解説します。

目次

第1特集
SQLチューニングする前に知っておきたい
実行計画&インデックスのしくみ

  • …… 奥野 幹也
  • 第1章:RDBMSとSQLの基礎概念
    リレーショナルモデル理論から理解するSQLの性質
  • 第2章:SQL実行のしくみと実行計画
    効率的にクエリを実行できているか見極める
  • 第3章:インデックスの機能とアルゴリズム
    検索処理を高速化させるしくみを理解する

第2特集
[実証]Bun
次世代JavaScriptランタイムの実体に迫る

  • 第1章:Bunの全体像をつかむ
    誕生の背景,特徴,機能を押さえよう
    …… 鈴木 正樹
  • 第2章:Bunを使ってみよう
    追加設定不要! 標準機能で始める快適開発
    …… 近藤 正裕
  • 第3章:BunとNode.jsの徹底比較
    どちらがどれくらい速いのか,性能の違いを見よう
    …… 鈴木 正樹

特別企画

  • DI―依存性の注入―はなぜやるの?
    「コンポーネント間の結合度を下げる」とは
    ……成瀬 允宣

連載

  • ITエンジニア必須の最新用語解説
    【186】WinterJS……杉山 貴章
  • 万能IT技術研究所
    【25】人類の歩みを眺めるために,過去の世界に行ってみる――昭和初期から最終氷期まで,時代の水辺にダイブする……万能IT技術研究所
  • ドメイン解体新書
    【5】DNSへの攻撃とセキュリティ……谷口 元紀
  • ハピネスチームビルディング
    【27】会議で主体的に発言してもらえるようにする……小島 優介
  • エンジニアのためのやる気UPエクササイズ
    【22】継続率と生産性を高めるエンジニア向けグループエクササイズ……えくろプロテイン
  • 【新連載】成功するPSIRTの極意
    【1】PSIRTってどんなもの?/PSIRTの始め方……杉浦 英史
  • 実践データベースリファクタリング
    【7】意図を忘れ去られたテーブル……曽根 壮大
  • Google Cloud流クラウドネイティブなシステムデザインパターン
    【5】CI/CDシステム……北野 敦資,監修:阿部 正平
  • あなたの知らないChromeの世界
    【5】Progressive Web Appのしくみ……小河 亮
  • レガシーシステム攻略のプロセス
    【2】ZOZOTOWNリプレイスにおけるIaCやCI/CD関連の取り組み……籏野 光輝,堀口 真
  • Databricksで勝つデータ活用
    【3】機械学習の実運用をサポートする機能……志賀 優毅
  • ぼくらの「開発者体験」改善クエスト
    【6】アーキテクチャ特性からみるWeb開発基盤の改善……飯田 有佳子
  • Cloudflare Workersへの招待
    【7】RustとCloudflare Workers……井手 優太
  • 実践LLMアプリケーション開発
    【9】LangGraphで開発するリサーチエージェント……西見 公宏
  • AWS活用ジャーニー
    【21】Amazon CodeWhisperer……杉金 晋
  • 魅惑の自作シェルの世界
    【19】whileコマンドの実装……上田 隆一
  • あなたのスキルは社会に役立つ~エンジニアだからできる社会貢献~
    【150】能登半島地震におけるIT DARTの支援活動~IT技術者ができる災害支援~……大菊 健太