Software Design 2015年9月号

今号の特集概要

第1特集
特講「正規表現・SQL・オブジェクト指向」
苦手克服のベストプラクティス

IT業界に入った多くの若い技術者が驚くのは,文字コードの違いや検索をいかに効率化するかといったデータの扱い方ではないでしょうか。またデータベースから望みのデータを選び出す方法「SQL」も習得しておかねばならない重要な技術です。さらにソフトウェア開発の現場に出たときはオブジェクト指向も理解していなければなりません。しかし苦手なまま日々業務を過ごしてしまうことも少なくありません。

これら3つの技術に対して,数多くの開発現場を経験してきた先輩が先生となり学習のコツを演習形式で特別講義します。題して「エンジニアの夏期講習」。今夏,本誌で学習経験をするか否かで大きくその後の成長で差がつきます。本特集でエンジニアの底力をつけましょう!

第2特集
メールシステムの教科書
日本語もバイナリもちゃんと届くのはなぜか

日々当たり前に使っているメールも,その裏側はもちろんサーバ,プロトコルが関与するネットワークの世界です。メールクライアントソフトの送受信ボタンを押したとき,その裏側でサーバはどんなプロトコルでやりとりをして,自分のメールを回収し,目的のサーバに送り届けているのか。一方で届いたデータに目を移せば,本来ASCII文字しか扱えないメールシステムに,どうやって日本語やバイナリを含ませているのか。そして,情報漏えいや外部攻撃の火種となるメールに対するセキュリティはどうなっているのか。本特集でその基本をしっかりと整理しておきましょう。

特別企画
なぜ俺の提案は通らないのか?
冷静と情熱の間には,お金の川が流れている

会社で進められているさまざまなプロジェクト。「なぜ,あの案件が決まってしまったのだろうか,俺のほうが優れているのに」と忸怩(じくじ)たる思いをしたことはありませんか。その決定の根拠は何でしょうか。答えはコスト=お金です。しかし企業では,単に儲かる・損をする,という単純なモノサシで決定されているのではありません。そこにいたる共通解があるのです。本記事は,その気がつきにくいポイントを明らかにしていき,読者の皆さんの気持ちを晴らし,より実践的なエンジニアになる手がかりを共有したいと思います。

短期集中連載
Jamesのセキュリティレッスン【4】
pcap-ngのさまざまな情報をWiresharkで見てみよう!

Wiresharkの新しいファイル形式,pcap-ngについて理解を深める好評連載の再開です。2014年11月号から2015年1月号の3回分では,バイナリエディタを使ってpcapとpcap-ngの違いを説明しましたが,さすがに毎回バイナリエディタで読むのも辛いので,今回はpcap-ngから追加されたさまざまなフィールドの情報を,Wiresharkの機能を使って見ていきたいと思います。

短期集中連載
DevOpsで始めよう! モダンなJavaアプリケーション開発【2】
ストップ属人化! MavenとGitHubで安全なテストとスピーディなデプロイ

DevOps時代のいま,アプリケーションの開発はユーザからのフィードバックをもとにしたバグフィックスや,機能改修のイテレーションを矢継ぎ早に行い,安全かつスピーディにサービスを提供し続けることが重要です。中には1日に数百回もアプリケーションをリリース,デプロイしているサービスもあります。そんな状況のなかで,継続的にサービスを提供し続けるためには,テストの環境はもちろん,リリースやデプロイまわりのしくみづくりも非常に重要になっています。そのようなしくみを整備するにあたって,アプリケーションのビルドツールは,今やなくてはならないものになりました。

短期集中連載
【最終回】Kotlin入門【6】
KotlinでAndroidプログラミング

プログラマに優しい現実指向JVM言語「Kotlin」を紹介する連載企画。最終回となる今回は,今まで解説してきた内容をふまえて,KotlinによるAndroidプログラミングを解説します。

目次

第1特集
エンジニアの夏期講習
特講「正規表現・SQL・オブジェクト指向」
苦手克服のベストプラクティス

  • 第1章エンジニアの共通言語
    正規表現をマスターする
    アンチパターンから正解を導く
    …… とみたまさひろ
  • 第2章思いどおりにSQLを組めるようになりたい!
    スマートにSQLを書くコツ
    リレーショナルモデルと正規化の重要性
    …… 奥野 幹也
  • 第3章Javaを使いこなしていますか?
    オブジェクト指向の実践的な考え方とやり方
    変更に強いプログラムの書き方
    …… 増田 亨

第2特集
メールシステムの教科書
日本語もバイナリもちゃんと届くのはなぜか

  • 第1章:メール配送のしくみ…… とみたまさひろ
  • 第2章:メールメッセージのデータ形式…… とみたまさひろ
  • 第3章:メールクライアントソフトのデータ管理…… 櫻井 賢一
  • 第4章:メールの安全性はどう守るのか…… 佐藤 潔

特別企画

  • なぜ俺の提案は通らないのか?
    冷静と情熱の間には,お金の川が流れている
    …… 土居 昭夫

短期連載

  • Jamesのセキュリティレッスン【4】
    pcap-ngのさまざまな情報をWiresharkで見てみよう!
    …… 吉田 英二
  • DevOpsで始めよう! モダンなJavaアプリケーション開発【2】
    ストップ属人化! MavenとGitHubで安全なテストとスピーディなデプロイ
    …… 永瀬 泰一郎
  • 【最終回】Kotlin入門【6】
    KotlinでAndroidプログラミング
    …… 長澤 太郎

Catch up trend

  • ConoHaで始めるクラウド開発入門【2】
    海外リージョン,ロードバランサ,GeoDNSを使う
    …… 斉藤 弘信

Catch up trend

  • インメモリ型クラウドでビジネススケールを拡大
    SAP HANA Cloud Platform活用法…… 編集部

連載

  • ITエンジニア必須の最新用語解説
    【81】Apache Spark……杉山 貴章
  • digital gadget
    【201】広告におけるデジタルの役目……安藤 幸央
  • 結城浩の再発見の発想法
    【28】Token……結城 浩
  • おとなラズパイリレー
    【11】Raspberry Pi 2を大人買いしてLinuxクラスタを作ろう(前編)
    ……竹迫 良範
  • 軽酔対談 かまぷの部屋
    【14】ゲスト:篠田 佳奈さん……鎌田 広子
  • ツボイのなんでもネットにつなげちまえ道場
    【3】LED点滅の極意(中編)……坪井 義浩
  • Hack for Japan~エンジニアだからこそできる復興への一歩
    【45】防災・減災とIT~SNSとメディアの取り組み編~……佐伯 幸治
  • 温故知新 ITむかしばなし
    【46】初代PC-9801のライン描画速度に魅せられて……速水 祐
  • ひみつのLinux通信
    【20】妖怪のせいなのね……くつなりょうすけ
  • Erlangで学ぶ並行プログラミング
    【6】Erlang/OTPでのプロセス状態監視とテスト……力武 健次
  • るびきち流Emacs超入門
    【17】“手遅れ”を防ぐ Emacsのセーフガードシステム……るびきち
  • Sphinxで始めるドキュメント作成術
    【6】Webサイトを作ろう(前編)……山田 剛,清水川 貴之
  • Mackerelではじめるサーバ管理
    【7】Mackerelでアラート通知を最適化しよう……田中 慎司
  • セキュリティ実践の基本定石
    【24】日本に忍び寄るランサムウェアの影……すずきひろのぶ
  • 【最終回】ShowNetが示すネットワークの近未来
    【6】ShowNet 2015 Scratch & Rebuild the Internet Phase 2総括編
    ……櫨山 寛章,大嶋 康彰
  • Red Hat Enterprise Linuxを極める・使いこなすヒント .SPECS
    【15】Planner in JBoss BRMS 6.1……藤田 稜
  • Be familiar with FreeBSD~チャーリー・ルートからの手紙
    【23】次世代設定ファイル言語UCL……後藤 大地
  • Ubuntu Monthly Report
    【65】LibreOffice 5.0の変更点…… あわしろいくや
  • Linuxカーネル観光ガイド
    【42】Linux 4.1の機能~カーネルの動的更新live patch……青田 直大
  • Monthly News from jus
    【47】公益のために……LibreOfficeのポータビリティへの挑戦……法林 浩之