Software Design 2023年9月号

今号の特集概要

第1特集
TypeScriptプログラマーも必見
JavaScript非同期処理の疑問を解き明かす

JavaScriptの非同期処理は難しいと言われます。async/awaitという新しめの構文を使えば非同期処理を手軽に書けるものの,従来からあるPromiseという概念の理解が不十分だと適切に使いこなせません。また,そもそも非同期という用語が多様な意味で使われていたり,JavaScriptはシングルスレッドで動作するという知識があるためにかえって混乱したりすることもあるようです。これらの習得を難しくしている理由を1つずつ解きほぐしながら,非同期処理をスッキリ腹落ちさせましょう。

第2特集
複雑性から逃げない
カオスエンジニアリングの始め方

「カオスエンジニアリング」がどのようなものか,ご存じですか? 提唱者である元Netflix社のCasey Rosenthal氏は,「実験を通してシステムの弱みを明確にすること」だと定義しています。システムを安定運用するための仮説検証手法と表現することもできるかもしれません。……と言われても,何のことかわかりにくいですよね。

本特集では,そんな漠然とした印象があるカオスエンジニアリングについて,時に理論的に,時に事例ベースで解説します。たとえ理屈だけではわからなかったとしても,具体的なケースを知ればきっと理解が進むでしょう。

カオスエンジニアリングと聞いて,まさしく「カオス」な気分になったあなたに読んでほしい特集です。

特別企画
国産リレーショナルデータベースTsurugi
潤沢なCPU/メモリを使い倒すため一から開発

2023年7月10日,国内で開発されたオープンソースの次世代RDBのEarly Access版が公開されました。その名を「Tsurugi」と言います。従来のRDBは現代のメニーコア/大容量メモリといった資源を十分に活かしきれていないという課題認識をきっかけに開発されました。本記事では,GA版の一般公開に向けて準備が進められているTsurugiの全容と性能の一端を紹介します。

特別企画
マルウェア対策とエンドポイントセキュリティ
【後編】エンドポイントセキュリティの現実

昨今,「Emotet」というマルウェアの被害件数が急増しています。いったいどのようなマルウェアで,どのような危険性があるのでしょうか。本記事では,そうしたEmotetの実際のところを説明したうえで,マルウェアそのものについての対策を併せて考えます。この機会に,ぜひご自身の環境を振り返ってみてください。

目次

第1特集
TypeScriptプログラマーも必見
JavaScript非同期処理の疑問を解き明かす

  • 第1章:JavaScriptの非同期処理の変遷
    async/await登場までの模索と進化
    …… suin
  • 第2章:なぜ非同期処理は難しいのか?
    初学者がハマらないための前提知識と用語の整理
    …… PADAone
  • 第3章:Promiseとは?
    コールバック関数の問題点とPromiseの使い方
    …… 小田島 太郎
  • 第4章:Promiseを深掘りする
    「オレオレPromise」を実装して構造を理解しよう
    …… 小田島 太郎
  • 第5章:async/awaitを深掘りする
    Promiseと比べてわかる挙動の違い
    …… 小田島 太郎
  • 第6章:AbortSignalとAsyncLocalStorage
    本格的な非同期処理で求められる機能
    …… うひょ(鈴木 僚太)

第2特集
複雑性から逃げない
カオスエンジニアリングの始め方

  • 原則を正しく理解しよう
    第1章:カオスエンジニアリング超入門
    …… 小杉山 拓弥
  • 不確実性に立ち向かうための段取り
    第2章:カオスエンジニアリングの進め方
    …… 立見 祐介
  • 「継続」こそ成功の鍵
    第3章:カオスエンジニアリングの効果と学び
    …… 立見 祐介

一般記事

  • [特別企画]国産リレーショナルデータベースTsurugi
    潤沢なCPU/メモリを使い倒すため一から開発
    ……神林 飛志
  • [特別企画]マルウェア対策とエンドポイントセキュリティ
    【後編】エンドポイントセキュリティの現実
    ……佐々木 康介

連載

  • ITエンジニア必須の最新用語解説
    【177】Wasmer 4.0……杉山 貴章
  • 平林万能IT技術研究所 2ndシーズン
    【16】マリー・アントワネットの「暗号」を解く――秘密のコードで記された「フェルセン伯爵への手紙」……平林 純
  • Stable Diffusionで学ぶ画像生成AIのしくみ
    【4】画像生成器のしくみ……國田 圭佑
  • ハピネスチームビルディング
    【18】自分の考えたオリジナルの手法で楽しい振り返りに……小島 優介
  • 【最終回】オンラインホワイトボード「Miro」徹底活用術
    【12】おすすめプラクティスとMiroの新機能……橋本 憲洋,山川 宏賢,今村 恭子,三浦 茜,室木 梨沙
  • エンジニアのためのやる気UPエクササイズ
    【13】疲れ目で生産性が最大28%低下!? 疲れ目を予防する3つの方法……えくろプロテイン
  • 【新連載】現場から学ぶAWSのクラウドセキュリティ
    【1】クラウドセキュリティと責任共有モデル……花塚 亮祐,(監修)株式会社サイバーエージェント システムセキュリティ推進グループ
  • MLOpsのすすめ
    【2】MLOpsのためのチームとスキルセット……澁井 雄介
  • 位置情報エンジニアリングのすすめ
    【2】位置情報に触れる・加工する(前編)……鈴木 祐亮
  • 新時代の分散SNS Nostr
    【3】Nostrの関連サービスを見てみよう……鎌倉 光臣
  • Google Cloudを軸に実践するSREプラクティス
    【6】Renovateによる依存関係の更新……山田 圭一,(監修)小森 裕介
  • なるほど納得Go言語
    【8】インターフェース(後編)……崎原 晴香(H.Saki)
  • AWS活用ジャーニー
    【12】AWS CloudFormation……武田 隆志
  • 魅惑の自作シェルの世界
    【10】パイプライン処理の実装(その2)……上田 隆一
  • [Ansible]現場を支えるPlaybook
    【10】正常性確認用Playbookの実装テクニック……岡田 淳
  • ひみつのLinux通信
    【115】簡単詐欺……くつなりょうすけ
  • あなたのスキルは社会に役立つ~エンジニアだからできる社会貢献~
    【141】AI技術と国会議事録が融合した「国会議事録検索(The Diet Search)プラグイン」……小泉 勝志郎