タグ

ブックマーク / codezine.jp (20)

  • プログラマもインフラ業務ができるDockerを解説 『プログラマのためのDocker教科書 第2版』

    Dockerへの注目が集まり普及が進む中、翔泳社では2015年11月に発売し好評を博した『プログラマのためのDocker教科書』の第2版を4月11日に発売します。著者は確かな知識と実践に裏打ちされた解説が人気の阿佐志保さん。Dockerが気になっている、インフラ技術を学びたい、そんなプログラマなら手に取って損のない1冊です。 『プログラマのためのDocker教科書 第2版 インフラの基礎知識&コードによる環境構築の自動化』は、アプリケーションエンジニア(プログラマ)がインフラ領域の業務を行うためのDockerの入門書です。 Linuxのコンテナ仮想化ツールであるDockerでは、ホストOS上に論理的な区画(コンテナ)を作るため、それぞれを個別のサーバーのように利用できます。さらにクラウドを組み合わせた分散環境での稼働が基となるので、手動ではなく自動化ツールでオーケストレーションします。そ

    プログラマもインフラ業務ができるDockerを解説 『プログラマのためのDocker教科書 第2版』
    masakitk
    masakitk 2018/08/29
  • 「Amazon Redshift」を使ってみた ~使いどころと、つまずきがちなポイント

    はじめに Amazon Redshiftは、Amazon Web Services(AWS)が提供するデータウェアハウス(DWH)サービスで、2013年2月に正式リリースされ、同6月4日には東京リージョンでも利用可能になりました。既存のDWHと比較しても安価で、PostgreSQLベースで容易に高速なデータ分析が可能であることなどが知られており、注目も高まっています。 ところが、日国内では「使ってみた」という情報は非常に少ないです。幸運にも筆者は、限定プレビューの段階からRedshiftに触れる機会に恵まれました。そこで、今回は「こんな使い方をしてみました」「こんなところでつまずいた」といったことを中心に紹介したいと思います。 なお、記事は限定プレビュー~サービス開始当初の米国東部リージョンでの使用結果を元に執筆しており、当時のAPIバージョンは2012-12-01です。東京リージョン

    「Amazon Redshift」を使ってみた ~使いどころと、つまずきがちなポイント
    masakitk
    masakitk 2013/07/22
  • デブサミ2013、講演関連資料まとめ

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    デブサミ2013、講演関連資料まとめ
    masakitk
    masakitk 2013/02/17
    社内勉強会
  • TDDでデータベースと付き合う方法

    はじめに データベースを読み書きする部分のユニットテストがやりにくいのには、いくつか理由があります。 複数人でテストを同時に実行すると、競合する データベースを使ったテストは、時間が掛かる データベース内のデータが変わると、テストが失敗する 1番目は、各自の開発環境にテスト用のデータベースを用意することで、解決できます。2番目の問題は、データベースにアクセスするコードをロジックから分離して、データベースに実際にアクセスするテストケースを減らすことで、改善できます(ロジックのテストにはモックやダミーを使います)。3番目は、テストのたびにデータベースの内容を初期化することが基になりますが、そうするとテストに長い時間が掛かるようになってしまいます。 今回は、ビジネスロジックの開発時にモックやダミーを使いやすくするにはどうするか、また、テスト時にデータベースの内容を安定させるにはどうしたらよいか

    TDDでデータベースと付き合う方法
  • ASP.NET MVC 3における単体テストの基本と記述方法

    はじめに 第4回ではASP.NET MVC 3(以下、MVC 3)のController周りの改良点として、Dependency Injection(以下、DI)の簡単な実装をご紹介しました。前回は単体テストを実施するための基についてご紹介しました。今回はMVC 3における単体テストの基と前回実装したDIプロジェクトにおける単体テストの記述方法について紹介します。 なお、ASP.NET MVCの基的な開発については過去の連載を参照してください。 ASP.NET MVCフレームワーク 正式版 入門 ASP.NET MVC 2入門 颯爽登場!ASP.NET MVC 3の概要を押さえる ASP.NET MVC 3Tools UpdateとView周りの改良点 ASP.NET MVC 3における検証まわりの改善点 ASP.NET MVC 3におけるDI実装のポイント 必要な環境 次の環境が必

    ASP.NET MVC 3における単体テストの基本と記述方法
  • NUnitの全貌 ~ 基本から、最新バージョンの新機能まで

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    NUnitの全貌 ~ 基本から、最新バージョンの新機能まで
  • ASP.NET MVC 3におけるDI実装のポイント

    はじめに ASP.NET MVC 3(以下、MVC 3)のController周りの改良点として、Dependency Injection(以下、DI)の容易な実装が挙げられます。今回はMVC 3におけるDI実装と利用方法についてご紹介します。 DIの登場の背景はJavaでのWebアプリケーション開発での課題が根底にあります。一昔前のJavaでのWebアプリケーション開発では、Enterprise JavaBeansコンテナと呼ばれるアプリケーションサーバーの起動が非常に遅いことが問題としてありました。この問題に対応し、テスト容易性の向上とコンポーネントの再利用性の向上を狙い考え、生み出されたのがDIと呼ばれる開発手法です。 DIとはクラス間の直接的な依存関係を排除する開発手法であり、DIを実現するツールのことをDIコンテナと言います。JavaにおけるDIコンテナとしてはJavaのSpri

    ASP.NET MVC 3におけるDI実装のポイント
  • C#で始めるテスト駆動開発 ~TDDBC横浜の課題をやってみよう

    はじめに 各地でTDD Boot Camp(TDDBC)が開催されるようになり、このところTDD(テスト駆動開発)が注目を浴びています。ただ、自分でも試してみようと思った時に目につく書籍や記事などは、JavaRubyPHPといった、いわゆるオープンソース系の言語ばかり。.NET Framework(Windows)で開発の仕事をしているとTDDは関係ないんだろうか、…とさえ思えてくるかもしれません。 しかし、そんなことはありません。.NET FrameworkでのTDDに必須のユニットテストフレームワークとして有名なNUnitの最初のバージョンは、Visual Studio .NET 2002がリリースされる以前の2001年に公開されています。.NET Frameworkは、生まれたときからTDDと共にあると言っても過言ではないでしょう。 この記事では、TDDとTDDBCについて簡単に

    C#で始めるテスト駆動開発 ~TDDBC横浜の課題をやってみよう
  • 10年後も世界で通じるエンジニアであるために Developers Summit 2012

    Special 10周年を迎えたデブサミ、この10年の間に私たちデベロッパーの世界は大きく様変わりしました。もはや王道と呼べるキャリアなどありません。自らの道は、自ら決し、進まなければなりません。それは、逆に、私たちがより自由に道を選べるようになったことに他なりません。Specialトラックでは、けもの道を往く先達たちの生き様に触れ、自分自身の戦略を見つめ直す機会、そして、これから行動を起こす我々の背中を押すようなセッションを用意しました。ともに、道を切り開いていきましょう。 開発プロセス 開発プロセストラックは、毎年、その年の開発プロセスに関係した旬の言葉や概念、取り組みを切り取ることを意識しています。今年のテーマに設定したのは「変わっていくシステム開発の姿」です。ここ数年で、クラウドの登場がシステム開発の価格も時間感覚も変えました。よりビジネスに寄り添うかたちでのアジャイルの再興もあり

  • Android開発におけるクラスのおさらいと主なメソッド

    はじめに 第2回目の稿は、前回のサンプルコードをもとに、Javaの文法、特にクラスに関連する基的な構文などを解説していきます。 対象読者 Androidアプリケーションの開発を始めたい方で、JavaとEclipseのごく基的な知識がある方を対象とします。 HelloWorldアプリケーションのファイル構造 前回は、いわゆるHelloWorldアプリケーションを作成しました。作成といっても、ほぼソースは自動生成されたものです。Eclipseのパッケージ・エクスプローラーには、このプロジェクトで生成されたファイルが表示されています。最小のアプリケーションとはいえ、さまざなファイルが作成されています。主なフォルダ、ファイルは、以下のようになっています。 <HelloWorld> ├ \src ソースフォルダ │ └ \codezine.androidjava.chap1 │ └ Hello

  • ASP.NET MVC 3Tools UpdateとView周りの改良点

    はじめに 今回はView周りの改良点を解説します。とは言っても、MVC 3におけるViewの変更点はHTML5開発のしやすさと、ビューエンジンのRazorになるのでこの2点と、4月に提供開始されたMVC Tools Updateについてご紹介します。 なお、ASP.NET MVCの基的な開発については過去の連載を参照してください。 ASP.NET MVCフレームワーク 正式版 入門 ASP.NET MVC 2入門 颯爽登場!ASP.NET MVC 3の概要を押さえる 必要な環境 次の環境が必要です。 Visual Studio 2010(Visual Web Developer 2010でもOK) ASP.NET MVC 3 RTW版 ASP.NET MVC 3 Tools Update(日語版含む) MVC Html5 Toolkit Visual Studio 2010(以下、VS

    ASP.NET MVC 3Tools UpdateとView周りの改良点
  • 状態遷移表からStateパターンを自動生成する

    前回のStateパターンのお話、おかげさまでかなり好評だったようです。流行のトレンドを追いかけるのはドキドキがいっぱいでモチベーションを維持する良い材料ではありますが、トレンドを楽しむにも「やりたい事をカタチにする」ために設計と実装の腕を磨いておかにゃなりませんですね。Stateパターンを適用すれば、状態(State)と事象(Event)および状態遷移表に基づいて見通しが良く変更に強い(かつ柔軟な)コードに落とすことができます。 状態遷移表に基づいてコードに落とすのは単調な作業です。状態の数だけclassを起こし、それぞれのclassに事象の数だけメソッドを定義するので、どのclassもまったく同じ構造です。お定まりのパターンを何度も淡々を繰り返すのは退屈ですが、計算機はこのテの作業が大好きです。文句も言わず嬉々としてやってくれます。今回のお題は「状態遷移表からC#コードを自動生成させてみ

    状態遷移表からStateパターンを自動生成する
  • 簡単なデータ編集はお任せ! ASP.NET Dynamic Dataアプリケーション

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    簡単なデータ編集はお任せ! ASP.NET Dynamic Dataアプリケーション
  • Visual Studioユーザー必見! 最新Windowsインストーラー作成 再入門

    はじめに Visual Studioのユーザー様の多くは、作成したソフトを配布する際にVisual Studioに付属のインストーラー作成ツールを利用していると思います。 一方、インストーラー作成の専用ツールである「InstallShield」を使うと、Visual Studio付属のツールでは作成できない独自のアクションやユーザーインターフェイスなど、様々なカスタマイズが可能になります。 そこで稿では、InstallShieldとVisual Studioに付属しているインストーラー作成ツールを比較しつつ、InstallShieldを利用したインストーラー作成の基と特徴的な機能を紹介します。 対象読者 Visual Studioで開発を行っているユーザー インストーラー作成の自動化に興味のある開発者 InstallShieldを利用している方 「インストーラー作成ツール」とは Win

    Visual Studioユーザー必見! 最新Windowsインストーラー作成 再入門
  • .NET FrameworkでJSONデータを処理する

    はじめに JSON(JavaScript Object Notation)形式のデータは、XML形式よりもシンプルな記法でデータ構造を記述できることから、Webサービスで広く用いられています。 JSONはJavaScriptのオブジェクトのリテラル表現がもととなっているため、JavaScriptではそのまま読み書きすることができます。一方、C#などの.NET Framework上の言語では、JSONデータをいったん.NETのオブジェクトに変換した上で処理を行う必要があります。 この記事では、.NET Frameworkの言語からJSONデータを読み書きするためのライブラリとして、.NET Framework標準のDataContractJsonSerializerと、CodePlexで公開されているDynamicJsonを取り上げ、それぞれの使用方法について解説します。特にDynamicJ

  • StateパターンでCSVを読む

    こんなのを読み込んで適当な処理を施して欲しい、と。Excelのシートから各セルの値を拾い出すのはさほどに難しくはないのですが、いかんせん時間がなかったのでいったんはお断りしたところ、「Excelシートを直接読むのが面倒ならCSVからでもかまわん」とのこと。CSVならフツーにテキストファイルを読めばいいから小一時間で作れそう、昼メシ奢ってもらうのを報酬に引き受けることにしました。 CSVのフォーマット CSV(Comma Separated Values)はMS-DOSあるいはその以前からスプレッドシートのデータ・フォーマットとして使われています。CSVの規格/標準としてはRFC4180がありますが、こいつは2005年に作られたものでそれ以前のアプリケーションがRFC4180に準拠していることは期待できるはずもありません。とはいえ、まずはRFC4180に従って作られたCSVなら正しく読めるこ

    StateパターンでCSVを読む
  • Hadoop MapReduceプログラムを解剖する

    オープンソース・ソフトウェア「Hadoop」のMapReduceジョブは、標準ではJavaで記述します(その他には、Pig、Hive、JAQLといったものがあります)。しかし、意外と初心者には分かりにくいと筆者は感じます。記事では、MapReduceジョブのサンプルコードを使って、できる限り正しくコードの意味を理解し、MapReduceへの入り口を示したいと思います。 HadoopでMapReduceを記述するときに使うAPIが、0.19から0.20に変わるところで新しくなっています。実は、現時点でHadoopプロジェクト体からでさえも、新APIを使ったサンプルが提示されていません。記事では、新しいAPIで筆者が書き直したサンプルを使って解説しますので、このサンプルは0.19以前のHadoopでは動かないことに注意してください。この記事は、0.20.2を使って検証し、解説しています。

  • 原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine

    はじめに MSDNライブラリには、マイクロソフトの技術情報が大量に掲載されていますが、英語版に比べ、日語版の内容は中途半端なのが実状です。 たとえば、スレッドの優先順位を設定する「SetThreadPriority」関数の説明を見ると、英語版には「Windows Server 2008およびWindows Vistaでは、スタートアップやレジストリのRUNから自動実行されたプログラムに対するスレッドの優先順位指定が、システム開始から60秒程度効かない」との注意書きがありますが、日語版にはありません。 また、仮想ディスクの情報を設定する「SetVirtualDiskInformation」関数を検索すると、英語版には説明がありますが、日語版には項目自体がありません。 そこで記事では、MSDNライブラリの英語版がスラスラ読めるように、とはいきませんが、英単語で引っかかることが少なくなる

    原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine
  • Google App Engineで開発するスケールするアプリケーション(前編)

    はじめに 「人類が使うすべての情報を集め整理する」 この壮大なミッションを掲げ設立されたGoogleは、そのミッションを遂行するべく、マシン・ネットワークなどのインフラ環境に莫大な金額を投資し、独自の技術を開発し続けています。Googleは検索エンジンだけにとどまらず、Gmail、Google Calendar、Google Maps、Google Analystics、Youtube、Google Apps、Google Earthなど、いまや全世界のユーザーが使用するサービスをリリースしており、その扱うデータ量、アクセス数は天文学的な数になることが予想されます。Googleはそれらのデータ量、アクセス数を高速にさばき、なおかつ耐障害性の高いスケーラブルな大規模分散システムを構築しています。 そんな中、2008年4月にGoogle App Engineがリリースされました。Google

    Google App Engineで開発するスケールするアプリケーション(前編)
  • Eclipse 3.4を使ったデバッグとテスト~Eclipse 3.4 入門~

    はじめに 第4回「Eclipse 3.4でのアプリケーション開発方法(swing/JSP/サーブレット)」までで、Eclipseのインストールと設定からEclipseを用いてアプリケーションを開発するまでの一般的な流れなどを説明しました。 今回は、複雑なアプリケーションを開発するために必要な「デバッグやテストを支援する機能」の基を紹介します。 事前準備 第4回のJSP開発の章で紹介した「Tomcat Launcherプラグイン」を用いるので、あらかじめ導入しておいてください。また「JStyle」も導入しておくと便利でしょう。今回の画面画像は「JStyle」導入済みの場合になっています。 今までの記事 第1回「Eclipse 3.4のインストールと日語化」 第2回「Eclipse 3.4の各種設定と利用方法」 第3回「Eclipse 3.4プラグインのインストール/設定方法」 第4回「E

    Eclipse 3.4を使ったデバッグとテスト~Eclipse 3.4 入門~
  • 1