WEB+DB PRESS Vol.52

今号の特集概要

特集1
~良いコードを書くために、知っておくべきこと~
[新人さんに贈る]Javaプログラミングの習慣

良いコードとは,仕様の変更に対応できるコードです。仕様変更に対応できるコードとは,人間にとって読みやすいコードです。そして読みやすいコードとは,プログラマ同士の共通認識,つまり「習慣」にのっとっているコードです。習慣にのっとっているコードは,読みやすいと同時に,他のコードから利用しやすいコードでもあります。

本特集では,新人プログラマの方に向けて,Java プログラミングの習慣を解説していきます。

特集2
~真価を引き出す使い方からカスタマイズまで~
Vimの流儀

Vimは長い歴史を持ち,今でも多くのユーザに愛用されています。しかし,Vimの根底にある流儀を理解していないと,本当の意味で使いこなすことはできません。本特集ではVimの真価を引き出す使い方からカスタマイズまで,なぜそうなっているのか,どう考えれば良いのかなど,Vimの流儀を意識しながら解説していきます。

特集3
~SSD投入で何が変わるのか?~
データベースシステム基本解剖

フラッシュメモリを使ったSSD(Solid State Drive)の存在感が高まっています。2008年より加速を始めたSSDの容量増大は,2009年には100Gバイトを超える製品も登場し,DB業界にも大きな変化をもたらしつつあります。

本特集では,SSDの登場によりこれまでHDDで動作していたデータベースシステムがいかに変化するのかという点に焦点を当てます。データベースおよびストレージの基礎知識や性能評価をはじめ,必須知識を一つ一つ丁寧に紐解きながら,SSD時代のデータベースシステム/ストレージの活用法を探ります。

特別企画
~そろそろ押さえてみませんか?~
マルチコア時代の並列処理アルゴリズム入門

本格的にマルチコア時代へと突入しつつある昨今,システムの並列性は隠しきれなくなってきているといわれています。そんな今,並列処理に関する知識は効率的なプログラムを記述するために重要度が高まりつつあるのではないでしょうか。

本特別企画では,長く役立つ知識として並列処理にまつわる基本的な考え方を中心に,比較的ベーシックなアルゴリズムを取り上げて丁寧に解説します。広くプログラマの方々へ向けてプログラミングスキルの向上につなげるべく,並列処理が今よりもぐっと身近になる,そんな基礎知識をコンパクトにまとめてお届けします。

目次

特集1
~良いコードを書くために,知っておくべきこと~
[新人さんに贈る]Javaプログラミングの習慣

  • 第1章:人に意図を伝えるコーディング
    良いコードを書く道しるべ……矢野 勉,庄司 嘉織
  • 第2章:イディオム
    名前付け,メソッド定義,総称型,列挙型……矢野 勉,庄司 嘉織
  • 第3章:継承とオーバーライド
    人に使ってもらうためのプログラミング……矢野 勉,庄司 嘉織
  • 第4章:インタフェース
    約束でつながるプログラミング……矢野 勉,庄司 嘉織
  • 第5章:クラス設計
    例外設計,不変オブジェクト,クラス分割……矢野 勉,庄司 嘉織

特集2
~真価を引き出す使い方からカスタマイズまで~
Vimの流儀

  • 第1章:なぜVimを使うのか
    その魅力をあらためて知る……kana
  • 第2章:ワンレベル上のVim使いになるためのポイント
    :helpを使いこなす
    編集効率化の鍵「モード」を理解する
    オペレータ…VimをVimたらしめる操作体系
    テキストオブジェクト…テキストを論理的単位で取り扱う
    入力補完…状況に合わせた入力補完……kana
  • 第3章:さらに使いやすくするための実践カスタマイズ
    オプションによる各種挙動の制御
    キーマッピングの改善
    オートコマンド…イベントに応じたコマンド実行
    Exコマンド…複雑な操作を1つのコマンドで実現
    ファイルの種類に応じた設定……kana
  • 第4章プラグインを活用する
    動作のしくみ/便利なプラグイン紹介/プラグインを使ったカスタマイズ/探し方……kana
  • 第5章プラグイン作成のいろは
    :helpドキュメント記述/プラグイン化/配布……kana

特集3
~SSD投入で何が変わるのか?~
データベースシステム基本解剖

  • 第1章:SSDの実力
    SLCとMLC,HDDの性能比較……斉藤太郎
  • 第2章:リレーショナルデータベース再入門
    RDBMSとストレージの関係……斉藤太郎
  • 第3章:SSDの可能性
    B+ treeの性能,大規模データ処理,トランザクション……斉藤太郎

特別企画
~そろそろ押さえてみませんか?~
マルチコア時代の並列処理アルゴリズム入門

  • 第1章:マルチコア時代のプログラミング概論
    マルチコアの知識が活きる場面はどこですか?……瀧内元気
  • 第2章:並列処理の基礎知識
    並列処理を構成する基本の概念,分類……瀧内元気
  • 第3章:はじめての並列アルゴリズム
    共通する考え方,作成の流れ,実例……瀧内元気

連載

  • Developer's Perspective
    【第3回】 「The Secrets of Consulting」Gerald M. Weinberg
    インタビュー編:コンサルタントに求められるもの
    翻訳エッセイ編:コンサルティングを悲惨なものにしないための仕事条件/なぜ我々は会議を愛する/嫌うのか,お金についての質問……青木靖
  • 大規模Webサービスの裏側――inside mixi's backend
    【第3回】テラスケールのデータベース運用[設計編]……長野雅広(kazeburo)
  • Practical Ruby Programming!
    【第8回】拡張ライブラリの作成 ……QRコードを生成したい……武者晶紀
  • やっぱりJavaがスキ!
    【第3回】Hudsonで分散ビルド……川口耕介
  • JavaScript今ドキ活用術
    【第2回】クロスドメイン通信による自由なマッシュアップの実現……冨田慎一
  • SQLアタマアカデミー
    【第8回】SQLにおける論理演算 ……なぜ真理を隠すのか……ミック
  • PHPマストテクニック
    【第3回】pChartでグラフをマスター!……鶴岡直也
  • Recent Perl World
    【第20回】データ圧縮アルゴリズムの基本 ……アルゴリズム&データ構造シリーズ 3……伊藤直也
  • WebKit Quest――ソースコードから読み解くブラウザエンジンのしくみ
    【第3回】CSSの解決 ……スタイルシートを表現するデータ構造と,スタイル解決のアルゴリズム……森田創

コラム

  • バッドシグナル通信
    【第2回】開発チキンレース……高林哲
  • 小飼弾のAlpha Geekに逢いたい♥
    【#20】ミクシィ―平林 幹雄,長野 雅広,津久井 玲宏,大久保 聡……小飼弾
  • がんばれ情シス!――激動の時代をリードするために
    【第3回】情報発信と社内メディア化……羽生章洋
  • 濃縮還元オレンジニュース
    【第21回】6~7月の厳選ニュース……角田直行
  • はまちちゃんとわかばちゃんのREADER'S FORUM――読者のページ……はまちや2/竹原

Special Report

  • 日本Ruby会議2009レポート
    未来に進むため,新たな変革へ……大和田純(june29),白土慧(kei-s)

Solution Flash

  • 大規模化・安定稼働・開発効率化… Webシステム開発・運用を乗り切るテクニック
    【第4回】トラブルシューティング②