WEB+DB PRESS Vol.86

今号の特集概要

特集1
1年目から身につけたい!
チーム開発6つの心得

エンジニアの仕事はたった1人でできるものではありません。周りのメンバーと連携しながら,継続して開発していくことが求められます。そして,このような現場のチーム開発をうまく回していくためには,良いコードを書くこと,そして良いコミュニケーションをとることが重要です。では,「良いコード」「良いコミュニケーション」とはいったいどのようなものなのでしょうか?本特集では,開発の現場に入ったばかりの新人エンジニアの方々に向けて良いコード・良いコミュニケーションとは何かを解説し,それらを実現するための実践的なノウハウを紹介していきます。

特集2
実践Atom
GitHubが開発したハッカブルな次世代エディタ

GitHubが開発したエディタ「Atom」の使い方を解説する特集です。Atomは2014年2月に発表された新しいエディタのため,モダンな機能が多く取り入れられています。フロントエンドの技術で外観や操作をカスタマイズ可能なのが特徴で,本特集でもその方法を詳しく解説します。また,さまざまな機能を追加できる「パッケージ」を簡単に導入・管理できるしくみを持つのも特徴の一つです。本特集でも,開発で頻繁に行うGitやGitHubとの連携,コンパイル,テストなどを支援するパッケージの使い方を解説します。

特集3
Docker実戦投入
設計の原則,本番環境の構築,運用ノウハウ

本特集では,Dockerを実運用で使用する方法を紹介します。Dockerはコンテナ型仮想化技術の一つで,まるで自動車をコンテナに入れてコンテナ船で輸送するように,手元のマシンで動いているアプリケーションをそのままの形で別のマシンまで運ぶことを可能にしてくれます。これにより,「開発環境で動いても本番環境にデプロイしてみたら動かなかった」といったデプロイの課題を解決します。ただ,Docker を実運用で使用するためのまとまった情報はまだあまりありません。そこで本特集では,Dockerを実戦投入するためのノウハウを徹底解説していきます。

目次

特集1
1年目から身につけたい!
チーム開発6つの心得

  • 第1章:良いコードと良いコミュニケーション
    一人前のプログラマへと至る道……沖元謙治,結城洋志
  • 第2章:コーディングスタイルを統一しよう
    理解しやすく変更に強いコードの第一歩……沖元謙治
  • 第3章:細かな粒度で実装しよう
    単純なパーツを組み合わせた見通しの良い設計……結城洋志
  • 第4章:わかりやすい名前を付けよう
    無理なく自然なメソッド・変数の命名……足永拓郎,結城洋志
  • 第5章:情報価値の高いコミットをしよう
    コードだけではわからない意図を伝える技術……足永拓郎,結城洋志,林健太郎
  • 第6章:ほかの人のコードを読もう
    無理なく始められるコードリーディングのコツ……沖元謙治,結城洋志
  • 第7章:周りの人と協力しあおう
    報告・相談に欠かせない3つの情報……足永拓郎,沖元謙治,結城洋志

特集2
実践Atom
GitHubが開発したハッカブルな次世代エディタ

  • 第1章:次世代エディタAtom
    最新Web技術による洗練された基本機能……大竹 智也
  • 第2章:まずは使ってみよう
    インストール,画面構成,基本操作……大竹 智也
  • 第3章:設定画面からのカスタマイズ
    テーマ,パッケージの設定と見つけ方……大竹 智也
  • 第4章:コードによるカスタマイズ
    キーバインド,スタイルの設定方法……大竹 智也
  • 第5章:実践的な開発環境
    補完,文法チェック,Git,GitHub,テスト,Rails,React……大竹 智也

特集3
Docker実戦投入
設計の原則,本番環境の構築,運用ノウハウ

  • 第1章:Docker入門
    成り立ちから学ぶ基本と全体像……内田 誠悟
  • 第2章:Dockerを活かすための原則
    実戦投入に向けて押さえておきたい勘所……内田 誠悟
  • 第3章:ビルド環境の構築とDockerイメージのビルド
    本番運用を見据えたイメージの作り方……内田 誠悟
  • 第4章:本番環境の構築とDockerコンテナのデプロイ
    Capistrano,Swarmによるオーケストレーションの実践……内田 誠悟
  • 第5章:Docker運用ノウハウ
    CI,モニタリング,ログ管理,メンテナンス……内田 誠悟

連載

  • Emerging Web Technology研究室
    【第12回】Reactによるフロントエンド開発の変革……伊藤 直也
  • 切りひらくRuby ── サービスの成長を支える現場の技術
    【第6回】Rubyコーディングアンチパターン ……避けるべきスタイルと一貫性を持たせるべきスタイル……中山 裕司
  • Perl Hackers Hub
    【第32回】新人さんのためのPerl入門
    ……hiroki.o 監修:Japan Perl Association
  • Webフロントエンド最前線 ── 流行に踊らされない技術動向
    【第6回】Service Workerで実現するオフラインWebアプリケーション ……Webの新しい基盤を先取りする……泉水 翔吾
  • Javaの鉱脈 ── 掘り下げて知る活用のワザ
    【第6回】FlatBuffersによる軽量高速なシリアライゼーション ……シリアライザを賢く選んで快適に開発しよう……佐藤 太一
  • PHP大規模開発入門
    【第7回】PHPによる画像処理 ……Imagickの使い方,最適化,非同期処理,動的サムネイル生成……高橋 俊幸

コラム

  • 視点を変えてみよう
    【第1回】よく学ぶ人はパフォーマンスが低い?……西尾 泰和
  • エンジニアの生存戦略
    【最終回】山崎大輔 ……プライドを持って定年まで仕事する……舘野 祐一
  • Software is Beautiful ── 今までの経験から得た教訓
    【第31回】どんな人がソフトウェアエンジニアに向いているのか……中島 聡
  • Hack the Real World ── 日常生活を(ちょっとだけ)便利にしよう
    【第6回】Android Wearで移動中に腕通知! ……Geofencing APIで気になる場所への接近を知らせる……橋本 翔
  • はまちちゃんとわかばちゃんのREADER'S FORUM ―― 読者のページ
    【第37回】……はまちや2,竹原

Special Report

  • 「実戦でのScala」観戦記……麻植泰輔

特別広報

  • 一生役立つエンジニアの基礎
    teratail開発者が贈る!……編集部