概要
特集1
名前付け大全
設計も,実装も,ここから始まる!
クラス名やメソッド名,変数名……。私たちは日々「名前」を使っています。書き手として「ふさわしいクラス名を思い付かない」と悩むこともあれば,読み手として「こんなメソッド名ではわからない」と悩まされることもあります。そこで今回の「名前付け」特集です。「良い名前」とは「適切な名前を選び」「正しく書かれた」ものと定義したうえで,「適切な名前選び」の理論と実践(ケーススタディ)をじっくりと解説。そして「正しく書く」ために大切な英語のポイントを紹介します。
特集2
速習gRPC
高速! 安全! 高信頼! マイクロサービス接続の大本命
gRPC は,Google が開発し,OSS として提供されているRPC(遠隔手続き呼び出し)フレームワークです。gRPC を用いることで,さまざまな言語で書かれたクライアントアプリケーションから,別のマシンのサーバアプリケーションへ通信手段を意識せずに接続できます。そのため,マイクロサービス間の通信に適しています。本特集では,タスク管理マイクロサービスの実装を通して,gRPC を使用した開発について解説していきます。
特集3
最新TLS 1.3徹底解剖
通信を覗いてHTTPSの裏側を知る
2018年8月にリリースされたTLS 1.3を徹底的に紹介する特集です。TLS 1.2からTLS 1.3になり,たくさんの重要な変更,機能追加が行われています。それらを実際に見て実感してもらうため,TLS 1.3による通信の模様をWiresharkでパケットを覗いて,1.2との違いや重要なポイントを解説します。また,大きな特徴であるパフォーマンス改善についても,1.2からの改善,暗号アルゴリズムによる変化などベンチマークを交えて解説します。
一般記事
オープンデータのためのWikidata入門
SPARQLで知識データベースを自在に検索!
目次
特集1
名前付け大全
設計も,実装も,ここから始まる!
- 第1章:「良い名前」とは何か
理解しやすく,変更に強く,読みやすく……藤村 大介
- 第2章:名前付けの理論
意味と挙動を3つのパターンから考える……藤村 大介
- 第3章:名前付けの実践
ケーススタディで攻略する……藤村 大介
- 第4章:英語の壁の克服
品詞,時制,語彙,スペリング……森田 リーナ
- 第5章:さらなる効率化の手法
辞書の使い分け,共通語彙の活用……藤村 大介
特集2
速習gRPC
高速! 安全! 高信頼! マイクロサービス接続の大本命
- 第1章:gRPCとは何か
Googleが開発した背景,RESTやGraphQLとの比較……渡邉 祐一
- 第2章:Protocol Buffersの基礎知識
gRPCで用いる強い型付けのインタフェース定義言語……渡邉 祐一
- 第3章:gRPCの基礎知識
開発環境の構築,開発フロー,4種類の通信方式……渡邉 祐一
- 第4章:gRPCの実践的な機能
エラーハンドリング,タイムアウト設定,メタデータ,インタセプタ……渡邉 祐一
- 第5章:タスク管理マイクロサービスの設計
サービス間のインタフェースを定義し,コードを自動生成しよう!……渡邉 祐一
- 第6章:タスク管理マイクロサービスの開発
サービスとフロントサーバを実装し,動かそう!……渡邉 祐一
特集3
最新TLS 1.3徹底解剖
通信を覗いてHTTPSの裏側を知る
- 第1章:Webの安心/安全を支えるTLS
SSL/TLSの歴史,TLS 1.3の改善点……市原 創
- 第2章:暗号技術の基礎
共通鍵暗号,公開鍵暗号,ハッシュ関数,証明書,アルゴリズム……市原 創
- 第3章:TLS 1.3の通信を覗いてみよう
TLS 1.2との違い,ハンドシェイク/セッション再開の高速化……板倉 広明
- 第4章:パフォーマンスを比較してみよう
TLS 1.2と1.3,暗号アルゴリズムの種類,ハードウェアサポートの有無……板倉 広明
一般記事
- オープンデータのためのWikidata入門
SPARQLで知識データベースを自在に検索!……高橋 征義
連載
- Rubyのウラガワ ── Rubyインタプリタに学ぶデータ構造とアルゴリズム
【第1回】オブジェクトはどうやって表現するのか?──ポインタと埋め込み表現……笹田 耕一
- 知りたい! フロントエンドトレンド
【第1回】マイクロフロントエンド ……チームごとに独立して最適な技術で開発……大原 壯太
- モダンPHPエンジニアへの道
【第1回】Composer実践活用術 ……チームでのパッケージ管理,共通処理の切り出し,本番環境との切り替え……新倉 涼太
- Dive to Java ── OpenJDK開発者が明かす,最新開発/運用テクニック
【第6回】注目!Java 12新機能 ……新元号・令和対応,switch式の導入,メモリデバイスへのオブジェクト配置……末永 恭正,久保田 祐史
- Goに入りては…… ── When In Go...
【第12回】Goのビルドキャッシュ/テストキャッシュのしくみ……牧 大輔
- Perl Hackers Hub
【第55回】Perlコードの高速化 ……文字列処理の時間短縮とデータ構造の効率化……東 邦之 監修:牧 大輔,松木 雅幸,大沢 和宏
- 大規模インフラ解体新書 ── ソフトウェアエンジニアリングの視点から
【最終回】クラウド時代の可用性向上 ……オートスケーリング,Envoy Proxyの活用……星 北斗
コラム
- 縁の下のUIデザイン ── 少しの工夫で大きな改善!
【第13回】保存のデザインの使い分け ……「自動保存」「行ごとに保存」「すべて保存」……池田 拓司
- at the front ── 前線にて
【第4回】若きCTOが語る,経営と
エンジニアリングのこれから ……合同会社 DMM.com 松本勇気さん……竹馬 光太郎
- はまちちゃんとわかばちゃんのREADER'S FORUM ── 読者のページ
【第61回】……はまちや2,竹原
Special Report
- try! Swift Tokyo 2019……八谷 賢
サポート
ダウンロード
特集2「「速習gRPC」」
- 第3章
本記事で使用されたソースコード(執筆者GitHubリポジトリ)
- 第5章,第6章
本記事で使用されたソースコード(執筆者GitHubリポジトリ)
特集3「最新TLS 1.3徹底解剖」
本記事で使用されたソースコードは,執筆者GitHubリポジトリにて公開しています。詳細は記事を参照してください。
一般記事「オープンデータのためのWikidata入門」
- 本記事で使用されたソースコード(執筆者GitHubリポジトリ)
連載
- 「Rubyのウラガワ ── Rubyインタプリタに学ぶデータ構造とアルゴリズム」で使用されたソースコード
- 「知りたい!フロントエンドトレンド」で使用されたソースコード(執筆者GitHubリポジトリ)
- 「Dive to Java ── OpenJDK開発者が明かす,最新開発/運用テクニック」で使用されたソースコード
- 「Perl Hackers Hub」で使用されたソースコード
- 「大規模インフラ解体新書」で使用されたソースコード(執筆者GitHubリポジトリ)
正誤表
本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。
特集1「名前付け大全」
第3章「名前付けの実践」
P.23「意味の絞られた単語を探す」 の2行目
誤 |
そもそも「受信するユーザー」にはuser というどちらとも取れる単語ではなく、recipientというズバリ送信者を意味する単語があります。
|
正 |
そもそも「受信するユーザー」にはuser というどちらとも取れる単語ではなく、recipientというズバリ受信者を意味する単語があります。
|
P.1 読者プレゼント ②Oriback(オリバック)チェア提供DIPDA JAPANさんのURL
誤 |
https://thinkboardjapan.com/
|
正 |
https://dipdajapan.com/
|
P.4 コラム「at the front」
誤 |
本誌ならでは切り口で
|
正 |
本誌ならではの切り口で
|