タグ

ブックマーク / atmarkit.itmedia.co.jp (41)

  • スマホアプリに必須なデータ永続化のためのDBテスト

    Androidの会テスト部が、いままで培ってきたAndroidアプリ開発におけるテストのノウハウを、実際のテストコード例とともに紹介していきます スマホアプリにデータ永続化が欠かせない理由 連載「Androidアプリ開発テスト入門」では、Androidアプリを開発している方のためにテストの基的なノウハウを解説しています。第4回では、データベース(以下、DB)のテストについて解説します。 第2回の「Androidでビジネスロジックのテストを自動化するには」でも触れたように、DBのテストはビジネスロジックのテストの一部に含まれます。 これまでの連載でお伝えしてきた内容では、外部通信のやりとりは発生しませんでしたが、アプリが外部リソースを参照したり更新するようになると、サーバとのやりとりによってネットワーク通信が発生します。 サーバに毎回リソースの処理を要求する作りになっていると、その都

    スマホアプリに必須なデータ永続化のためのDBテスト
    takkunn1611
    takkunn1611 2012/05/26
    スマホアプリに必須なデータ永続化のためのDBテスト
  • EclipseでScalaプログラミングを始めるための基礎知識

    EclipseでScalaプログラミングを始めるための基礎知識:スケーラブルで関数型でオブジェクト指向なScala入門(1)(1/3 ページ) 人気の「Scala」を一から学ぼう 最近、私の周りでもScalaに関する話題が増えてきました。Twitterやブログ、技術系のニュースサイトでは毎日のようにScalaに関連する話を見かけます。 また、筆者が現在携わっているプロジェクトでも実際にScalaを用いて開発しています。いままではJavaで開発をすることが多かったのですが、それよりも簡潔で柔軟性のある記述が可能であり、Scalaでの開発は非常に生産性が高いと感じています。 連載は、Scalaの特徴を紹介し、基構文や関数、クラスなど、Scalaの基的な機能について解説していきます。何らかのプログラミング言語を学んだことがあり、プログラミングの基的なことが分かる人を対象としています。特に

    EclipseでScalaプログラミングを始めるための基礎知識
    takkunn1611
    takkunn1611 2012/02/19
    EclipseでScalaプログラミングを始めるための基礎知識 (1/3) - @IT
  • 自分の強みを見つける問い「プログラムの何が好き?」

    自分の強みを見つける問い「プログラムの何が好き?」:仕事を楽しめ! エンジニアの不死身力(20)(1/2 ページ) 2012年が始まってまもなく1カ月が過ぎようとしています。「一年の計は元旦にあり」という言葉どおり、今年1年もエンジニアとして活躍するために、新しいチャレンジを計画されていることと思います。 新しいチャレンジを始める際には、「自分の強み」を知っておくことが大切です。なぜなら、苦手なことを克服するよりも、自分の強みや特性をきちんと自覚して生かせば、学習の成果が大きくなることが期待できるからです。 ところで、もし「あなたの強みは何ですか?」と聞かれたら、答えがぱっと思いつきますか? そこで今回は、今年も充実した1年を送るために、自分の強みとなる“軸”の見つけ方を紹介します。 強みとなる「自分の軸」とは何か そもそも「強み」とは何か、ということを考えてみましょう。 強みは、一般的に

    自分の強みを見つける問い「プログラムの何が好き?」
    takkunn1611
    takkunn1611 2012/01/25
    自分の強みは「プログラミングの何が好き?」という問いの中にある - @IT自分戦略研究所
  • GitHubをもっとソーシャルに使いこなすための7つ道具

    新サービスが続々登場してアツい! 「GitHub」とは 皆さんは「GitHub」を活用しているでしょうか? 「GitHub」(ギットハブ)はソースコード管理用の分散型バージョン管理システム「Git」を使ったホスティングサービスです。 Gitの特徴は、作業用として自分のコンピュータ上にあるローカルリポジトリがあれば、ネットワークに接続できない状態だったとしても、ソースコードの更新や、履歴を調べたりできる点にあります。その特徴はGitHubにも生かされていて、オープンソースとして公開中の既存のコードを分岐(fork)して、新しいプロジェクトとして開発できます。 また、自分が手元のローカル環境でバグ修正したり、拡張したソースコードを家のオープンソースプロジェクトに取り込んで(pull)もらうことも手軽にお願いできます。 さらに、READMEテキストファイル(README.md)などを独特のマー

    GitHubをもっとソーシャルに使いこなすための7つ道具
    takkunn1611
    takkunn1611 2012/01/24
    GitHubをもっとソーシャルに使いこなすための7つ道具 - @IT
  • 【Qtカンファレンスインタビュー】 Qt5で10億人ユーザーへ、OSSコミュニティ化でますます健在に

    Qtのダウンロード数は伸びている! 2011年12月15日および16日、東京にて「Qt Developer Conference Tokyo 2011」が開催された。日における開催は3回目となる。Qtはノキア(Nokia)からオープンソースソフトウェアプロジェクトとして独立してからもその注目度を上げ続けている。 今回、カンファレンスに参加するために来日したノキアのQtエコシステムディレクターであるダニエル・キールベルグ(Daniel Kihlberb)氏およびQtプロジェクトチームメンテナーであるラーズ・クノール(Lars Knoll)氏にQtの現在や未来についてお話を伺う機会を得た。以降、技術的に特に興味深い点に的を絞って紹介したい。 1 Qt 4.8.0リリース ? Qt5へ向けた大きなステップ カンファレンスが開催された日、QtプロジェクトはQtの最新版となる「Qt 4.8.0」を

    【Qtカンファレンスインタビュー】 Qt5で10億人ユーザーへ、OSSコミュニティ化でますます健在に
    takkunn1611
    takkunn1611 2012/01/22
    Qt5で10億人ユーザーへ、OSSコミュニティ化でますます健在 - @IT
  • Android SDKでビジネスロジックのテストを自動化するには

    Android SDKでビジネスロジックのテストを自動化するには:Androidアプリ開発テスト入門(2)(1/3 ページ) ビジネスロジックのテスト自動化から始めよう 連載ではAndroidアプリを開発している方のためにテストの基的なノウハウを解説しています。前回の「Androidアプリ開発でテストを始めるための基礎知識」では、Androidアプリ開発におけるテストの課題を解説し、EclipseとJUnitを使った単体テストのやり方を環境構築やコードの書き方を含め紹介しました。今回は「ビジネスロジック」のテストについて説明していきます。一口にビジネスロジックといっても読者の皆さんが持つ定義は、さまざまかと思います。 Android開発におけるビジネスロジックとは 連載ではビジネスロジックを「Androidのシステムに依存しない独立した処理」と定義します。具体的には文字列処理や日付・

    Android SDKでビジネスロジックのテストを自動化するには
  • 開発者が知っておくべき、6つのUIアーキテクチャ・パターン - @IT

    .NET開発者中心 厳選ブログ記事 開発者が知っておくべき、6つのUIアーキテクチャ・パターン ―― 「matarillo.com」より ―― 猪股 健太郎 2011/12/15 「.NET開発者中心 厳選ブログ記事」シリーズでは、世界中にある膨大なブログ・コンテンツの中から、特にInsider.NET/.NET開発者中心の読者に有用だと考えられるブログ記事を編集部が発掘・厳選し、そのブログ記事を執筆したブロガーの許可の下、その全文を転載・翻訳しています。この活動により、.NET開発者のブログ文化の価値と質を高め、より一層の盛り上げに貢献することを目指しています。 Martin Fowler氏の『GUI Architectures』を訳して公開しようと思ったのだが、FAQページに「PofEAAの続編などは商業出版する予定なので翻訳はしないでほしい」と書いてある。なので翻訳の公開はやめて、「

  • 5分で絶対に分かるOpenFlow

    0分 - ソフトウェアでネットワークをプログラミング! 今までコンピュータのネットワークは、どちらかといえば“静的な”存在でした。組織変更や新しいサービスの投入に合わせてネットワーク構成の変更が必要な場合には、ネットワーク管理者が関連する機器それぞれの設定変更をマニュアル操作で行っていました。 しかし、サーバ仮想化やクラウドの登場により、現在はこうした静的なネットワークの在り方が根から見直されてきています。 例えば、サーバ仮想化のおかげで、何台ものサーバが突如としてネットワーク上に現れたり、「ライブマイグレーション」によって、突然サーバがネットワークのある部分から別の部分へ移動したりといったことが起きるようになりました。ネットワークも、これらに適応した柔軟かつ迅速な構成変更が求められるようになっています。 あるいは、クラウドの登場によって、1つのデータセンター内で複数の顧客の通信をそれぞ

    5分で絶対に分かるOpenFlow
  • 連載インデックス「現場から学ぶWebアプリ開発のトラブルハック」 - @IT

    Webアプリの問題点を「見える化」する7つ道具 現場から学ぶWebアプリ開発のトラブルハック(1) 現場でのトラブル発生時に原因がなかなか掴めず、あたふたした経験はありませんか? そんなときには、このハック!

  • 「Hudson」改め「Jenkins」で始めるCI(継続的インテグレーション)入門

    「Hudson」改め「Jenkins」で始めるCI(継続的インテグレーション)入門:ユカイ、ツーカイ、カイハツ環境!(21)(2/4 ページ) JenkinsのセットアップはTrac Lightningで簡単に! Jenkinsを利用するには、サンプルとなるソースコードやリポジトリが必要となります。Trac Lightningを利用すると、JenkinsとSubversionを利用したリポジトリ、JenkinsとMavenでビルド・レポートを出力するサンプルのソースコードが提供されており、簡単にJenkinsを体験できます。 稿では、Trac Lightningを利用してJenkinsを体験しつつ、どのように設定していけばいいのか確認しましょう。 JDKのインストール JDKをあらかじめインストールして環境変数「JAVA_HOME」をJDKをインストールしたディレクトりに設定してください

    「Hudson」改め「Jenkins」で始めるCI(継続的インテグレーション)入門
  • ベテランプログラマの言語習得術

    IT業界では、「40代になると途端に仕事が少なくなる。働き盛りの40~50代に仕事が少なくなるような職種では、良き後継者は育たない」と篠原氏は問題提起します。 なぜこのようなことが起こるのか。1つはイノベーションの「方向」が変わったこと、もう1つは「求人覧」にあるといいます。求人覧では「39歳以下」と年齢を区切った募集が少なくありません。しかし、専門的技能を生かして仕事をするエンジニアにとって、「何ができるのか」ではなく年齢で合否が決まるのは不合理です。一方で、エンジニア自身にも問題があると、篠原氏は指摘します。 篠原氏は、すべてのシニア予備軍へ、エールと警鐘を送っています。30代~40代エンジニアにはぜひ一読いただきたいコラムです。 ベテランプログラマの言語習得術 2位は、20年超のプログラマキャリアを持つひでみ氏による「我流言語習得術、あえて名付けるのなら、読書駆動習得術」がランクイ

    ベテランプログラマの言語習得術
  • 開発者が知らないと損するAndroid 4.0の新機能44選

    NFC・Wi-Fiなど端末間共有機能 【1】NFCでデータを共有する「Androidビーム」 「Androidビーム」は、NFC対応デバイス間で共有を行うための機能です。ユーザー同士が2つのNFC対応のデバイスを接触することで簡単に、お気に入りアプリ、コンタクト、音楽、動画など、ほとんどのコンテンツを交換可能にします。デバイス同士が数センチ範囲内にあると、システムはNFCの接続を設定して共有のためのUIを表示し、ユーザーは画面をタッチすることで共有が行えます。 例えば、ユーザーは連絡先を交換したり、マルチプレイゲームを開始したり、チャットやビデオ通話に参加したり、写真や動画などを共有したりできます。アプリを共有する場合、Androidマーケットのアプリ詳細ページへのリンクを送ります。リンクが送られた端末上のマーケットアプリは詳細ページを起動し、ユーザーはアプリを簡単にダウンロードできます。

    開発者が知らないと損するAndroid 4.0の新機能44選
  • エンタープライズ向けに刷新されたカーネル・コア

    カーネル2.6はスケーラビリティの向上を大きな目標として、カーネルの内部仕様に大幅かつ意欲的な変更が加えられている。また、JFSやXFSといったファイルシステムの追加、USAGIやUML(User Mode Linux)の統合、新デバイスのサポートなども行われた。 第1章となる今回は、カーネル2.6の最大の目標であるスケーラビリティの強化に注目して、主に内部仕様を解説する。次回以降では、主にユーザーから見たカーネルの新機能について紹介する予定だ。 マルチプロセッサシステム対応の強化 ■RCU(Read-Copy Update) カーネル2.6では、RCU(Read-Copy Update)と呼ばれる新しい同期機構が追加された。 カーネルには、複数のプロセッサからの同時アクセスからデータ構造を保護するため、スピンロックをはじめとする同期機構が用意されている。しかし、従来の同期機構ではロック/

    エンタープライズ向けに刷新されたカーネル・コア
  • 双方向通信を実現! WebSocketを使いこなそう

    (1)Ajax XmlHttpRequestオブジェクト(JavaScript)を利用した非同期通信処理のこと。Googleマップを筆頭とするWebアプリケーションで活用されている。ブラウザからサーバ側に非同期でリクエストを実施してデータを受け取り、JavaScriptにより部分的にページを更新することで、ページ全体を更新するよりも低負荷でサーバと通信できる。また、通信中も操作を継続できるので、エンド・ユーザーの操作を妨げられることもなく、ユーザビリティに優れる。デメリットとして、基的にブラウザからのリクエストで動作する仕組みなので、サーバ側から自動でデータを送信することはない。

    双方向通信を実現! WebSocketを使いこなそう
  • シェルスクリプトはエレガントでなければならない

    /bin/shの実体としてはash(dash)、bash、kshの採用例が多い。どのシェルもBourne shellの機能に加えて、拡張機能を提供する。 FreeBSDなどの*BSD系のOSは、ashを/bin/shとして使っている。ashはPOSIX.1(POSIX:2008)にいくらかのBSD拡張機能を取り込んだシェルだ。メモリをあまり消費せず、高速に動作し、ほかのライブラリに依存することが少ない。従って、rootやレスキューシステムのインタラクティブシェル、システムのシェルスクリプトといった場面で採用されている。 Mac OS Xはbashを/bin/shに採用している。FedoraやopenSUSEなどのLinuxディストリビューションもbashを/bin/shに採用している。LinuxディストリビューションでもUbuntuやDebian、Linux Mintなどは、高速に動作する

    シェルスクリプトはエレガントでなければならない
  • エンジニアは自分の名を売って稼げ――Android技術者認定の狙い

    Android技術者認定試験制度(OESF Authorized Certification Engineer for Android、通称ACE)」は、IT業界に生まれた最も新しい資格の1つである。2010年にアプリケーションエンジニアのための資格「アプリケーション技術者試験」が2010年末に始まってから、もうすぐ1年になる。 Androidの普及は加速している。米国ではAndroidがiOSを抜きトップ(※1)、日国内でもOSのシェアはAndroidが首位に立った(※2)。この活況は、同時にAndroidアプリ開発エンジニアの需要を生み出している。スマートフォンアプリ開発エンジニアの需要は、2011年後半になってもいまだ衰えを見せていない(※3)。 一般社団法人「Open Embedded SoftwareFoundation(以下、OESF)」は、携帯電話以外へのAndroid

    エンジニアは自分の名を売って稼げ――Android技術者認定の狙い
  • Vimをプログラム開発環境にしてしまおう

    今回から、Vimをプログラム開発環境にしてしまう方法を解説します。これができれば、Vimでプログラムを編集した後に、コンソールに戻ってコンパイルの指示を出すという面倒を避けられます。(編集部) そろそろ実用的なことを - Cプログラミング これまで7回にわたってVimの基的な使い方を解説してきた。これまで紹介してきた操作法を身に付けておけば、かなりの速度でテキストファイルを編集できるようになっているはずだ。Vimを操作する能力は、熟練すればするほど高速になる。スキルアップに費やす対象としては悪くない選択肢だ。今回以降しばらくの間は、より具体的なシーンを想定して、操作方法や、または操作方法をより便利な次元へ引き上げるプラグインについて紹介していく。 Vimといえばやはりプログラミング言語や設定ファイルの編集エディタとして利用することが多い。今回は、C言語のソースコード編集とコンパイル、実行

    Vimをプログラム開発環境にしてしまおう
  • Skypeの通話を実現するネットワークの仕組み - @IT

    [運用] 仕事に使うSkype ― 在宅勤務に、BCPに、無料ネット通話を活用するためのエッセンス ― 第2回 Skypeの通話を実現するネットワークの仕組み デジタルアドバンテージ 島田 広道 2011/11/17 前回は、仕事で使ううえでSkypeに何ができるのか、どんな機能が利用できるのか、そしてSkypeのセキュリティについて説明した。低コストで自由度の高いコミュニケーション手段としてSkypeは確かに便利そうだ。ただ、社内システムを預かる管理者としては、仕組みのよく分からないものを導入するのはためらわれるところだ。それに、導入にあたって既存システム側に何か変更が必要なのかどうかも気になる。 そこで今回は、Skypeのインストールに進む前に、Skypeのシステムで特に重要な役割を担うネットワークの仕組みについて、簡単に説明したい。またSkypeを社内システムで利用するのに必要なネッ

  • 連載インデックス「Androidアプリ開発テスト入門」 - @IT

    Androidの会テスト部が、いままで培ってきたAndroidアプリ開発におけるテストのノウハウを、実際のテストコード例とともに紹介していきます ※連載はAndroidアプリ開発自体の解説ではなく、Androidアプリ開発におけるテストに関する連載です。Androidアプリ開発自体の解説については下記連載「Androidで動く携帯Javaアプリ作成入門」をご参照ください

  • 面接に通る「職務経歴書」の書き方【プログラマ編】

    職種別に、職務経歴書・自己PRのサンプルを紹介。それぞれのポイントを、キャリアコンサルタントが解説します。 プログラマの採用傾向と対策 最近はWeb系企業の採用ニーズが高く、開発経験に加えて、「技術への関心が強く、勉強熱心な技術者」を採用したいと考える企業が増えています。 もし、あなたが技術志向の強い企業への転職を希望する場合、 以下のポイントを盛り込むよう、意識してみてください。 1.独学で勉強している技術分野を記載する 職務経歴で開発経験がない技術分野であっても、独学で挑戦していることがあれば、 テクニカルスキル一覧の項目内、あるいは新しく「独学で取り組んでいること」という項目を作るなどして、取り組み内容を詳細にアピールしましょう。自分で構築した Webサイトやアプリケーションを公開している場合は、URLを載せておくと効果的です。 2.最近トレンドの技術知識を漏れなく記載する 例えば、

    面接に通る「職務経歴書」の書き方【プログラマ編】