タグ

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

  • 「うわっ…私のバージョン管理、ダメ過ぎ…?」を解決するGitの使い方“超”入門

    「うわっ…私のバージョン管理、ダメ過ぎ…?」を解決するGitの使い方“超”入門:かんばん!~もし女子高生がRedmineスクラム開発をしたら(5)(1/3 ページ) 連載は、ちょっととぼけた女子高生の姉妹が今注目のアジャイル開発手法であるスクラムプロジェクト管理ソフトの「Redmine」を使って、システム開発をするというフィクションです。 これまでのお話 連載は、ちょっととぼけた女子高生の姉妹が今注目のアジャイル開発手法であるスクラムプロジェクト管理ソフトの「Redmine」を使って、システム開発をするというフィクションです。 ひょんなきっかけから電子目安箱(カウンセラー)を開発することになった「ぷりん」と「まいん」の姉妹。第1回の『高校生になって初めてスクラムを始めました~「ストーリー」で何を作るかまとめよう』、第2回の『スプリントと“かんばん”でチームのビートを刻め!! ~ス

    「うわっ…私のバージョン管理、ダメ過ぎ…?」を解決するGitの使い方“超”入門
    mukaken
    mukaken 2012/07/12
  • Angry BirdsのHTML5版にも使われた「PlayN」入門

    Angry BirdsのHTML5版にも使われた「PlayN」入門:PlayNでクロスプラットフォームのゲーム開発(1)(1/3 ページ) クロスプラットフォームゲームライブラリ「PlayN」とは 近年ゲーム開発の環境は変化し、個人でも手軽に開発できるようになりました。また、スマートフォンの普及により、より手軽にゲームが購入できるようになり、開発者側もGoogle PlayやApp Storeを利用することで多くの人にゲームを届ける環境が出来てきました。ゲームのプラットフォームも多様化し、iOS(iPhoneiPad、iPod touch)、AndroidHTML5、Javaアプリケーション、Flashなどさまざまなものがあります。 しかし、多くのプラットフォームがあるということは、1つのゲームをより多くのプラットフォームに対応する場合、それぞれの環境に合わせて開発しなければなりません

    Angry BirdsのHTML5版にも使われた「PlayN」入門
    mukaken
    mukaken 2012/06/26
  • Scalaのトレイトでプログラマをミックスインしてやんよ

    トレイトで重要な指定順序 ここで、もう1つトレイトを重ねてみましょう。仕事を半分の時間で終わらせることができる、Agilerトレイトを定義してみます。 trait Agiler extends Engineer{ println("trait Agiler constructor") abstract override def work(time:Int) = { println("Agiler#work start") super.work(time / 2) println("Agiler#work end") } } scala> val p = new Person with Programmer with Agiler class Engineer constructor class Person constructor trait Programmer constructor

    Scalaのトレイトでプログラマをミックスインしてやんよ
    mukaken
    mukaken 2012/06/21
    してやんよ
  • F#言語の基礎文法(1/2) - @IT

    前回は、F#の概要や、関数型プログラミングの基礎、F#でよく使われるデータ構造のリストとタプルを説明した。今回後編では、F#でプログラムを書くに当たって必要最低限の文法を紹介していく。 ■主要な文法 ●if式 F#で条件による分岐を行うためには、if式を使用する。

    mukaken
    mukaken 2012/05/10
  • F#で初めての関数型プログラミング(1/3) - @IT

    ■F#とは F#は、マイクロソフト社製のプログラミング言語で、Visual Studio 2010から標準搭載されている。まずは、F#がどのような言語なのかを見てみよう。 ●マルチパラダイム言語「F#」 F#は複数のパラダイムをサポートするマルチパラダイム言語だ。F#がサポートするパラダイムには、 手続き型 関数型 オブジェクト指向プログラミング などがある。 マルチパラダイム言語であるため、C#やVB(Visual Basic)といった従来の.NET言語を置き換える形でF#を使うこともできる。しかし、記事ではF#のメインとなるパラダイムである「関数型」にフォーカスを当てて紹介していく。 ●関数型言語「F#」 F#は、静的型付けの関数型言語である「OCaml」に強い影響を受けている。そのため、F#の主となるパラダイムは関数型プログラミングになる。 さて、関数型言語とは何だろうか? この問

    mukaken
    mukaken 2012/04/12
    関数型言語の記事のなかでも分かりやすい!(◎_◎;) 必読!
  • モバイルアプリ開発はHTML5が主流に

    モバイルアプリ開発者のHTML5採用が加速している。ネイティブコードとWeb Viewを組み合わせたハイブリッドアプリケーションの開発を検討しているらしい jQuery Foundationも発足 連載は、「Webプラットフォームの『今』をお伝えする」ことを目的としています。 ぼくが日々html5j.orgに投稿しているニュースの中から、ここ1、2週間で注目すべきトピックを厳選して取り上げていきつつ、ネタによっては掘り下げた解説を加えていきます。 今回は、2012年3月2~23日の注目トピックです。前回から間が空いてしまったので、かなり盛り沢山な内容になっています。 一般向けの注目トピック ■ IE 6撲滅へ:日マイクロソフト、2012年3月中旬よりIEの自動アップグレードを実施(link) ついに、Internet Explorerの自動アップデートが日でも開始されました。ぼくの手

    モバイルアプリ開発はHTML5が主流に
  • 一見読みにくい記法もシェルスクリプトの流儀

    前回に引き続き、今回もOS付属のシェルスクリプトを読んでいく。「当にこれでいいのか?」と思うような読みにくい記述も見つかるが、よく読むとシェルスクリプトならではの流儀を学ぶことができる(編集部) とにかく何か作ってみろ シェルスクリプトはお世辞にも読みやすいプログラミング言語とは言えない。ほかの言語にはない特有のルールがあるので、あまり経験がない人がちょっと複雑なシェルスクリプトを読むと嫌になってしまうかもしれない。 その半面、シェルスクリプトにはちょっと書いてすぐに試せるという良い点がある。シェルスクリプトの解説書やソースコードを読みながら「なんだかよく分からない」「マニュアルを読んでもよく分からない」という人には、短くてもいいからとにかく何かシェルスクリプトを書いて、試してみることを強くお勧めする。 これはどんなプログラミング言語にも言えることだが、習得しようと思っても、解説書を読ん

    一見読みにくい記法もシェルスクリプトの流儀
    mukaken
    mukaken 2012/02/28
  • ソーシャルアプリのインフラはNode.jsが主役になるか~デブサミまとめレポート(ソーシャル&インフラ編) - @IT

    大人気ソーシャルアプリ「ドラコレ」のインフラ 最初に紹介するセッションは「大ヒットソーシャルアプリ「ドラゴンコレクション」の裏側 ~ 超高トラフィックを支えるアプリ・インフラの“明日から使えるテクニック”」。講演者は、コナミデジタルエンタテインメント ドラコレスタジオ マネージャー 廣田竜平氏だ。 「ドラゴンコレクション」(以下、ドラコレ)はコナミデジタルエンタテインメントが製作・運営しているソーシャルゲームである。同社の廣田氏による講演では、ドラコレを運用するインフラ技術について紹介された。 廣田氏によれば、ドラコレのHTTPリクエストはピーク時で1秒間に5けた台にのぼり、それを3けたの台数のサーバによって運用しているという。サーバ技術自体はCentOS+Apache+PHPMySQL(+memcached)という一般的なLAMP環境であり、複数のソフトウェアロードバランサとDNSラウ

    mukaken
    mukaken 2012/02/22
  • iOSで使えるVimが登場! その姿に迫る

    衝撃! App StoreからインストールできるVimが登場 新年早々、Vimユーザーにはたまらないニュースが飛び込んできた。iOS向けに移植したVimがApp Storeに登場したのだ。App Storeで「Vim」を検索すると図1のページが開く。ここで「INSTALL」ボタンを押せばiOS向けのVimをインストールできる。簡単かつ無料でインストールできるので、もう試してみた方もいるかもしれない。 すでにiOS向けのVimは存在する。ただし、インストールするにはiPhoneiPadに手を加えて、「Jailbreak(脱獄)」しておく必要があるので、気軽に使えると言えるものではなかった。App Store経由でインストールできるVimが登場したのはこれが初めてではないだろうか。 筆者も、iPadiPhoneに今回登場したVimをインストールし、どの程度便利に使えるのか試してみた。使いに

    iOSで使えるVimが登場! その姿に迫る
    mukaken
    mukaken 2012/01/25
  • GitHubをもっとソーシャルに使いこなすための7つ道具

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

    GitHubをもっとソーシャルに使いこなすための7つ道具
    mukaken
    mukaken 2012/01/23
  • 検索エンジンの常識をApache Solrで身につける

    表のような転置インデックス完成後は、クエリに対する結果を返す処理は簡単です。例えば、ユーザーが「Vim」というクエリを発行すると、検索エンジンは「Vim」を含む文書IDリストを返します。表では文書IDの「2」を返します。 検索エンジンを取り巻く7つの技術 検索エンジンのコア技術は前節で紹介したインデックスです。しかし実際に、検索インデックスだけで構成する検索エンジンから、検索サービスを構築するには多大なコストが掛かります。以下の節で検索エンジンを利用したシステム、検索サービスを構築する際に便利なコンポーネントを紹介します。 これらの機能のいくつかは、多くの検索エンジンが組み込んでいます。一方で、簡素な検索エンジンは、以下で紹介するコンポーネントをサポートしていないため、ユーザーが独自に開発するか、その機能を持つコンポーネントを組み込む必要があるものもあります。 【1】トークナイザ 検索エン

    検索エンジンの常識をApache Solrで身につける
    mukaken
    mukaken 2011/11/19
  • RDBとNoSQLのデータ書き込み法の違い

    最終回となる今回は、NoSQLRDBのデータ書き込み方法を比較して、それぞれの得意不得意を考えてみます(編集部) データ構造やインデックスを事前に用意 前回は、「NoSQLデータベースでRDBMSの機能を実現する」の後半戦として、RDBなら集計処理やテーブル結合を使って簡単にデータを取得できる場合を想定し、それをNoSQLデータベースで実現するための考え方や方法について説明しました。 NoSQLデータベースにはRDBのように読み取り時にデータを加工する機能はありません。集計や結合といったデータの加工は事前に済ませ、データキャッシュとして保存しておいたものを読み出します。また、キャッシュを格納するための物理的なデータの構造や配置にも気を配らなければなりません。NoSQLデータベースはデータの持ち方で読み出し性能が大きく変わるからです。 第3回で紹介したデータ検索や並べ替えの実現方法も、「転

    RDBとNoSQLのデータ書き込み法の違い
    mukaken
    mukaken 2011/06/23
  • Drizzleプロジェクトの目指すもの、その先を読む(1/3) - @IT

    クラウドコンピューティング環境のような“massively concurrentな世界”で使えるデータベースを目指すDrizzle。その開発の方向性からこれからのWebシステムで求められるデータベースのあり方が見えるかもしれない。一足先にDrizzleに触れてみよう(編集部) Drizzleとは Drizzle とは、MySQLのもともとの目標である、使いやすさ、信頼性、そしてパフォーマンスに重点を置いたMySQLの派生プロジェクトで、Brian Aker氏(米サン・マイクロシステムズ CTO/Labs:元MySQL Director of Architecture)によって立ち上げられました。 MySQLと比較して機能面におけるDrizzleの大きな違いは、サーバアーキテクチャをマイクロカーネルにすることで、サーバ(MySQLでいうmysqld)には必要最小限の機能しか搭載せず、代わりに

    mukaken
    mukaken 2011/03/25
    本文と関係ないけど、Brian Akerって、おもしろい人だよね。
  • naveでNode.jsのバージョン管理&イベントループ詳説

    naveでNode.jsのバージョン管理&イベントループ詳説:node.jsでサーバサイドJavaScript開発入門(2)(1/3 ページ) 前回のおわび 前回の「サーバサイドJavaScript命「node.js」の基礎知識」をご覧いただいた皆さま、はてなブックマークやTwitterなどでコメントをいただきました方々、ありがとうございます。話題の「Node.js」ということもあり、はてなブックマークも1000ユーザーを超えました。 私の力不足もあり、いろいろな方から指摘をいただいたので、今回は前回の補足と訂正をします。ご指摘いただきました皆さま、ありがとうございます。非常に勉強になります。 「nave」で簡単! Node.jsのバージョン管理 前回の記事で、Node.jsと「npm(node package manager)」のインストールを説明していますが、以下のような問題があり

    naveでNode.jsのバージョン管理&イベントループ詳説
  • IE 9がHTML5の機能の一部を実装しない理由 - @IT

    新野淳一 Publickey 2011/3/14 IE 9でHTML5の機能のオフラインアプリとCSS3関連の一部が実装されていないのはなぜか? 背景を日マイクロソフトに聞いた マイクロソフトが開発しているInternet Explorer 9(以下、IE 9)の正式版が、日時間で3月15日の火曜日午後1時から公開される(注)。同社は最新のWeb標準であるHTML5に注力することを表明しており、IE 9はその戦略に沿ってHTML5、CSS3といった最新のWeb標準に対応する機能を数多く搭載する予定だ。 注:記事公開後、日マイクロソフトは、IE 9日語版の提供の延期を表明しています(詳細:Internet Explorer 9日語版、製品版提供を延期)。 また、IE 9はWindows Phone 7(以下、Phone 7)にも移植される予定になっている。マイクロソフトのインターネ

  • サーバサイドJavaScriptの本命「node.js」の基礎知識

    稿では、Node.jsの特徴や動作原理に触れ、サンプルや役に立つパッケージ、活用事例などを紹介したいと思います。 主なサーバサイドJavaScript Node.jsに触れる前に、予備知識として他のサーバサイドJavaScriptにも触れておきます。Node.js含め、サーバサイドJavaScriptには、主に以下のようなプロジェクトがあります。 サーバサイドJavaScripの標準仕様「CommonJS」とは サーバサイドJavaScriptには、「CommonJS」と呼ばれる標準化が策定されています。標準化というと難しい感じがしますが、要はサーバサイドでJavaScriptを実行するのに何が必要かを仕様として、定義しているドキュメントのことです(例えば、「ログが必要だよね」など)。 Node.jsは、このCommonJSに則って開発されています。現段階であれば、CommonJSの仕様

    サーバサイドJavaScriptの本命「node.js」の基礎知識
  • Webの3つの問題を解決する「HTML5」とは何なのか

    最近よく目にする「HTML5」という言葉。JavaScriptAPICSS3、SVGなどを含め、急速な広がりを見せつつある「HTML5」の基礎を学べる入門連載です。「HTML5を使うと、何ができるのか」「それを実現するには、どのようなプログラムを書いたらいいのか」をお届けします どっからどこまでが「HTML5」なの? 最近、「HTML5」という単語を目にする機会が驚くほど増えました。ニュースやブログで取り上げられない日はほとんどありませんし、筆者が主催している勉強会を含め、開発者同士の勉強会でもHTML5がテーマになることが少なくありません。 しかし一方で、「『HTML5』といわれているものは範囲が広すぎて、とても学ぶ時間がとれない」という声もよく聞きます。それもそのはず、HTML5は現在世界でも最もホットなテーマといってもよく、世界中の名だたる開発者や企業が日々仕様を提案したり、改善

    Webの3つの問題を解決する「HTML5」とは何なのか
  • HTML5でWebページをマークアップするための基礎知識

    最近よく目にする「HTML5」という言葉。JavaScriptAPICSS3、SVGなどを含め、急速な広がりを見せつつある「HTML5」の基礎を学べる入門連載です。「HTML5を使うと、何ができるのか」「それを実現するには、どのようなプログラムを書いたらいいのか」をお届けします 5からHTMLの“文法”が変わるって知ってた? 連載第1回の「Webの3つの問題を解決する「HTML5」とは何なのか」では、HTML5という技術革新の意義、そして連載の大まかな流れについてお話ししました。連載第2回である今回は、HTML5のマークアップを行うための基礎知識についてお話しします。 HTML5では、その文法が大きく変化しました。「HTMLが、どれほど普及しているか」「根底となる“文法”が変わってしまったら、どれほどの影響があるか」に想像が及ぶ方であれば、非常な驚きと不安を抱かれるかもしれません。

    HTML5でWebページをマークアップするための基礎知識
  • Rubyの魔術 数々の“スペル”で高度なプログラミング − @IT

    2010/09/13 元JavaプログラマのPaolo Perrotta氏は、Rubyを使い始めた頃のことを振り返り、こう話す。 「私はJavaの世界からRubyに来た当初、とてもハッピーなプログラマでした。Rubyっていいね、かっこいいじゃん! と。ところが、最先端のイケてるライブラリの中を覗いてみたら、分からないところだらけだったんです……」。 RubyKaigi2010で「A Metaprogramming Spell Book」(あるメタプログラミング魔術の書)と題した講演を行ったイタリア人プログラマのPerrotta氏は、Ruby on Railsのソースコードを覗いてみたときの驚きをこう表現する。 「例えばalias_method_chainというメソッドは、一体どこにあるんだと探しました。どこにあるか分からないんです。こんなことJavaではあり得ません。結局、テキスト検索で発

    mukaken
    mukaken 2010/09/14
    RubyKaigi2010「A Metaprogramming Spell Book」の記事だ。
  • WebKit/Google Chrome開発者に聞く、HTML5最前線 - @IT

    2010/05/12 「グーグルエンジニアがSafariのためにコードを書くこともあるんですよ。WebKitコミュニティの中では、そのほうが物事の進みが速いという不文律のようなものがあるんです」 こう語るのは、グーグルChrome開発に携わるソフトウェア・エンジニアの鵜飼文敏氏だ。鵜飼氏はChromeに機能を追加するために、WebKitコミュニティでWebSocketの設計、実装なども行なっている。 WebKitは不思議なプロジェクトだ。よく知られているように、Google ChromeApple Safari(およびiPhoneiPadに搭載されるそのモバイル版のMobile Safari)は、オープンソースベースで開発が進む「WebKit」というコードベースを共有している。ここにさらに、WebKitを統合したGUI開発フレームワーク「Qt」を抱えるノキアや、搭載ブラウザをWeb