タグ

programmingに関するnekotankのブックマーク (255)

  • ソースコードを見よう

    ある技術について初心者向けに説明するときに、喩え(たとえ)を使うことがある。確かに、初めて聞く技術を、知っている身近なものに喩えて説明されると、なんだか分かったような気になる。ただし、こうした喩えによる説明の理解度は、説明する側、される側の両者が思っている以上に浅い。 筆者の経験では、オブジェクト指向を説明する際に用いられる喩えがそうだった。例えば、クラスとインスタンスを説明するのにしばしば用いられる、クッキー(菓子)の型とそこから作られるクッキーの喩え。クラス間の階層関係を表す継承の説明では、動物クラスの子クラスに哺乳類や鳥類のクラスがあり、哺乳類クラスの子クラスに犬やのクラスがある、といった喩えをよく聞く。ポリモーフィズム(多態性)の説明は、犬インスタンスに「鳴け」と言うと「ワン」と鳴き、クラスに「鳴け」と言うと「ニャー」と鳴きます、と言った具合だ。 オブジェクト指向についてのこう

    ソースコードを見よう
    nekotank
    nekotank 2012/01/24
    "こうした喩えによる説明だけを、何度繰り返し読んでも、技術を理解することはできない。喩えはあくまでも喩えであり、実際とは必ず差異があるからだ。"
  • premakeを使ってコマンドラインで開発(vcでもw) - 三次元日誌

    premakeというのはプロジェクト管理ツールで、 define, includeパス, libraryパス, linkするライブラリ, 出力する実行ファイルやライブラリ,含まれるソースなどのプロジェクトの情報をluaスクリプトに書いておき、そこからコマンド一発でvcソリューションやMakefileを生成するというもの。 特にwxWidgetsとかでcrossplatformな開発をするときに相性がいいと思う。 Makefileを使うときでもDebugとReleaseの使い分けが簡単にできるのがいい。 VC2005 Express EditionとLinux, OSXで試してみてわりとよさげだったので使い方をメモしてみる。 (OSXではInfo.plistの自動化のやり方がわからなかったがluaで書けばなんとかなる) とりあえずpremakeのバイナリをゲット http://premake

    premakeを使ってコマンドラインで開発(vcでもw) - 三次元日誌
  • ナウなヤングのためのgithub入門講座 -基本機能からdotfiles管理まで- - tumblr

    gitによるバージョン管理 バージョン管理システムはつかってますか? 僕は前に自分の作成したコードを元に、後輩にプログラムを作らせようとしてまずは僕のコードをコピペしろと指示したところ、コピペしかしてない(と言い張る)割にはコピペしたコードは動かず、さらに何故かコピペ元の僕のコードが滅茶苦茶に荒らされて当然のごとく動かなくなるという、なんかもう幽霊の存在を認めない限り説明がつかないような怪奇現象に遭遇したことがあります。しかもそのときはcpコマンドによるバックアップに頼っていて運悪くバックアップを忘れたために僕の貴重な1日が消え去ってしまった訳でして、それから僕はバージョン管理システムに頼ることを固く心に決めました。また僕はその目を覆いたくなるような残虐な事件以来、建設業界に見習って、IT業界でもプロジェクトキックオフ時にお祓いはすべきだと訴え続けています。 まぁそれはいいとして、いやまだ

    ナウなヤングのためのgithub入門講座 -基本機能からdotfiles管理まで- - tumblr
  • emacs での Ricty の導入手順 - わからん

    追記(2011/11/6) "emacs ricty" で検索してこのページにだどりつく人が多いようです。ありがとうございます。家サイトでのフォントの配布方法の変更があったので、このエントリは内容を編集しました。記事のタイトルは「emacs で使うフォントをプログラミング用フォント Ricty にした。感動。」から「emacs での ricty の導入手順」に改めました。この記事を書いた当時、Ricty はそれほど知られておらず、ずいぶん自分的に盛り上がっていたみたいです。しばらく使ってみて不満をあげるなら、小文字のエル "l" と 大文字のアイ "I" の区別がつきにくいところぐらいです。 emacs で使うフォントを Ricty にのりかえました。何より嬉しいのは、半角文字と全角文字の横幅の比が 1:2 になるところ。他にもあります。家サイトから、その特徴を引用します。 * ラテン

  • SimpleBoxes | Xcode 4 の導入と Xcode 3 との併用

    Xcode 3 ではプロジェクトのビルドターゲットを「Overview」ドロップダウンメニューで選択する形式でした。Xcode 4 では Overview の代わりに「Scheme」という概念が導入されています。 「Overview」ではビルドタイプ (Release, Debug, Distribution, etc)、デバイス (Simulator, Device)、ターゲット、実行環境、CPU アーキテクチャを個別に指定する必要がありました。 「Scheme」ではそれらの組み合わせをショートカットとして予め登録しておくような形で管理します。「Product」メニューで実行するコマンドに応じて、ビルドタイプを指定することができ、基的には Release ビルド・Debug ビルドなどを意識する必要がないというコンセプトになっています。 Xcode 4 ではソースコードの編集中にリアル

  • iPhoneアプリ開発できる方を探してます。エヴァカメラと同等の仕様で納期が明日昼と急ですがよろしくお願いします

    @xxxigoxxx @iphone_dev_jp iPhoneアプリ開発をお願いできる方を探しております。有料アプリ開発経験者様で守秘義務を守れる方、エヴァカメラhttp://bit.ly/bW4A3v と同等の仕様で、リソース等は全てあります。納期が明日2日(金)昼と急ですが、お願い致します。 isisi @isisi RT @iphone_dev_jp: iPhoneアプリ開発をお願いできる方を探しております。有料アプリ開発経験者様で守秘義務を守れる方、エヴァカメラhttp://bit.ly/bW4A3v と同等の仕様で、リソース等は全てあります。納期が明日2日(金)昼と急ですが、お願い致します。 [@xxxigoxxx]

    iPhoneアプリ開発できる方を探してます。エヴァカメラと同等の仕様で納期が明日昼と急ですがよろしくお願いします
  • C#からC++のDLLを利用する方法 - pota_dahonの日記

    <方法1> C++/CLIでC++のDLLのマネージドなラッパーを作って、それをC#からつつく <方法2> PInvokeというプラットフォーム呼び出しというおまじないをかけて、C# から呼ぶ <方法1のための参考文献リンク> ■@IT総合トップ > テクノロジー > Insider.NET > 特集 > Visual C++ 2005 > いままたC++が熱い!「C++/CLI」として大進化したVisual C++ 2005 http://www.atmarkit.co.jp/fdotnet/special/cppcli/cppcli_01.html ■@IT総合トップ > テクノロジー > Insider.NET > 特集 > Vista時代のVisual C++の流儀(前編) http://www.atmarkit.co.jp/fdotnet/special/vcppinvista0

    C#からC++のDLLを利用する方法 - pota_dahonの日記
    nekotank
    nekotank 2011/09/20
    [C++/CLI]
  • Private Presentation

    Private content!This content has been marked as private by the uploader.

    Private Presentation
  • これが5年間の技術的失敗と成功の歴史、GREEの成功を支えた技術者たちの闘いが今明かされる

    「2007年からソーシャルゲームを提供してきたGREEにおける、技術的な側面での失敗と成功の実例を通じて、そのノウハウや必要な技術について解説します。合わせて、それらの経験に基づくGREEから提供していくフレームワークであるGREE Technology Stackについてもご紹介します」ということで、CEDEC2011にて講演された「GREEソーシャルゲーム5年間の技術的失敗と成功の歴史 ~GREE Technology Stackのご紹介~」はかなり濃い内容となっており、グリーの開発部 取締役 執行役員CTO 開発部長である藤真樹氏と、同じくグリーの開発部 インフラ統括部 アプリ基盤チーム リーダーの梶原大輔氏による話が次々と展開されていきました。 注目度も非常に高く、人だらけ。 今回はこの講演を発表の場にいる感覚で読んでもらえるように、当日の発表資料と合わせてまとめてみました

    これが5年間の技術的失敗と成功の歴史、GREEの成功を支えた技術者たちの闘いが今明かされる
    nekotank
    nekotank 2011/09/09
    みんな失敗して大きくなってるんだということを実感。
  • Lisp竹内氏「プログラミングには地を這うような努力が必要」

    なぜ、うっかりTwitterやmixiに自分の秘密を書いてしまうのか 「Twitterはバカ発見器と言われている――なぜ人はTwitterやmixiなどで秘密を話すのか?」 8月10日、情報セキュリティ基礎の講義を担当する、サイバー大学IT総合学部准教授の園田道夫氏は、こう問い掛けた。 「例えば、未成年者が飲酒・喫煙を暴露するケースなどがある。情報はすぐに全世界に公開されるにもかかわらず、なぜ自分にとって都合の悪いことを書くのか」 「なぜ、ソーシャルメディアを見ているのが身内・友達だけだと思ってしまうのか」 園田氏の問い掛けに対して、参加者はグループになってさまざまな意見を出した。 「ツイートはフォロワーからしか見られていないという認識があること、そして気軽につぶやけるということが原因ではないか」 「友人などの紹介で始めることが多いので、プライベートなエリアだと勘違いしているのではないか」

    Lisp竹内氏「プログラミングには地を這うような努力が必要」
  • 通勤中でも寝る前でも!iPhoneプログラミングを勉強出来る簡単な方法! » SHINGOLOG

    Appleから提供されているiOSのプログラミングガイド。日語に翻訳されたiOSのドキュメントがあります。iOSデバイス向けのアプリを開発するにあたっては、必読の内容となっています。 これらは全てPDFで提供されています。 ですのでiPhonePDFを開き、iBooksで保存することが出来ます。 このように、持ち運んで空き時間に勉強できるんです。 PDFのリンクは下記にまとめていますので、iPhoneでご覧ください! iOSのドキュメント一覧(2011.8.20現時点) Audio & Video AV Foundationプログラミングガイド iOSカメラプログラミングトピックス Audio Session プログラミングガイド Core Audio の概要 iPodライブラリアクセス プログラミングガイド Tools & Languages Objective-C

  • MacBook を買って開発ができるようになるまで。 - 日々、とんは語る。

    身近に MacBook を購入した人がいたので、その人向けにメモしておきます。ポイントとしては、今まで Mac を使っていなかった人でも分かるように説明していきます。 App Store から Xcode をインストールする。 驚くかもしれませんが、Mac は初期状態では、gcc など開発に必須のUNIXツールが一切インストールされていません(perl とか ruby とかは入ってるよ)。なので、まずは何はなくとも Xcode という開発ツール群をインストールする必要があります。 Snow Leopard までは(多分)付属のDVDに Xcode がついてきたのですが、Lion からは App Store からのダウンロードしてインストール事になったので、いきなり 3GB もダウンロードしなければなりません。なので、早めにやってしまいましょう。 この記事を書いている現時点で最新の Xcod

    MacBook を買って開発ができるようになるまで。 - 日々、とんは語る。
  • プロとしての行為 Act as Proffesional

    288ページという少ないページ数の中に、ほとんどの見開きの中に図をいれて、アジャイル開発のすべてがザックリ凝縮された書籍です。思わず「こういうのが欲しかったんだ!」と声に出してしまう内容に仕上がっています。この業界の新人に必ず読ませたいバイブルです。 今の仕事プロジェクトに問題がある。順調でない。解決策の糸口が欲しい。 アジャイル開発に興味がある。はじめてみたい。どういったものか知りたい。 もっと価値のあるソフトウェアを顧客に提供したい。 ソフトウェア開発に携わるすべての人(プログラマ以外にも)にオススメします。東京に住んでいる人はよかったら読書会に参加してください。 良いコードを書く技術 -読みやすく保守しやすいプログラミング作法 (WEB+DB PRESS plus) 今年、プログラミングを格的にはじめた人や、会社に入って多人数での開発をはじめてやる人に読んでもらいたい書籍。自分一

    プロとしての行為 Act as Proffesional
  • gitチートシートv0.3 - 西尾泰和のはてなダイアリー

    http://www.nishiohirokazu.org/tmp/git03.pdf 今日はツッコミ役の人はお休み。

    gitチートシートv0.3 - 西尾泰和のはてなダイアリー
  • どう考えても無茶な「CSSプログラミング」が話題に

    CSS3がいくらパワフルとはいえ、さすがにここまで凝ったものが作れるとは思いませんでした。 まずはChromeでこちらを遊んでみてください。 CSS3 OF THE DEAD - jsdo.it - share JavaScript, HTML5 and CSS まるでJSをバリバリ使ったゲーム、のように見えますが、実は「Only CSS」。上のSTOPボタンを押すとコードを確認することができます。 jsdo.itCSSプログラミングが流行中! ええ、どう考えても無茶なんです。CSSはプログラミング言語じゃないですからね。 CSSの機能を巧みに組み合わせて作成されています。 ということで、投稿作品のほんの一部を紹介したいと思います。 CSS PANIC CSSだけで作られたワニワニパニック。 このコードは海外のユーザーにも大きな反響を呼びました。

  • Win32アプリケーションのデバッグ方法 [VC++の使い方]

    Win32のデバッグ Win32アプリケーションでは、デバッグ情報をコンソールに出力するようなこともできません。手軽なMessageBox関数を使う方法と、デバッグをサポートするAPIについて解説していきます。 MessageBoxを使う MessageBox関数は簡単なデバッグには便利です。例えば MessageBox( NULL, "呼ばれたよ", "title", MB_OK); とすれば、次のようなダイアログが表示されます。 メッセージボックスの例 MessageBoxで現れるダイアログはモーダルなので、ダイアログを閉じるまで制御は帰ってきません。例えば、アプリケーションが異常終了してしまう場合は、原因となりそうな周辺に1行づつMessageBox関数を挿入すれば、どこで異常終了が発生しているかを判断できます。 ただし、MessageBoxには、printf関数のように変数の値を表

  • IT業界で楽しく仕事をするための10カ条 - @IT

    Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします(編集部) 2009年、日の春は多くの学生さんたちが卒業し、また社会で活躍し始める時期です。 IT業界は3K、7Kなどと、いろいろネガティブな面も取り上げられます。けれども、「ものづくり」の楽しさや、人の役に立つ仕事として@ITで取り上げられるような業種で働こうと考えている人も多いことでしょう。 なんとなくIT業界を選択した人から、もしかしたらあまり気が進まないのに、IT業界に入ってしまった人がいるかもしれません。その一方、プログラミングやコンピュータに関する事柄がとても好きでIT業界に入ってきた人もいるでしょう。 記事では、IT業界を目指している学生さんや入社間もない新人に向けて、より楽しく

    IT業界で楽しく仕事をするための10カ条 - @IT
    nekotank
    nekotank 2011/05/19
    新人じゃなくても普段から見直しておく
  • C#開発者が“Kinectハック”に挑戦してみた(1/3) - @IT

    特集:Kinectセンサーの可能性 C#開発者が“Kinectハック”に挑戦してみた デジタルアドバンテージ 一色 政彦 2011/05/16 「Kinectハック」をご存じだろうか? その名のとおり、Kinectセンサー(詳細後述。コード名:「Project Natal」。以降、「Kinect」)をハックすることだ。つまり、Kinect製造・販売元以外の第三者が技術力を駆使してKinectが動作する仕組みを解析し、Kinectを(来の用途以外の目的で)自分が自由に使える道具に(ソフトウェア的に)仕立て上げてしまうことである。当然ながら、このような行為は法的な問題を含んでいる可能性がある(と考えられる)が、記事の執筆時点で、マイクロソフトはほぼ黙認しており、これにより世界中でいま、Kinectハックが広がりを見せている。 また、米国で4月13日に開催されたWeb開発者向けカンファレンス

    nekotank
    nekotank 2011/05/17
    Kinect すげー!!ゴックが動くとか胸熱!!
  • 類似しているプログラミング言語の文法などの比較まとめチートシートが良い感じ - goinger的日記

    以前見つけた資料。そういやそんなんあったなと久々に検索して探すのに少し手間取ったのでメモ 言語の比較対応で文法覚えられそうなんで便利じゃないかなと 参照: Big Script: PHP, Perl, Python, Ruby, Smalltalk http://hyperpolyglot.wikidot.com/scripting Small Script: Bash, Tcl, Lua, Javascript, IO http://hyperpolyglot.wikidot.com/small Platform: C, C++, Objective C, Java, C# http://hyperpolyglot.wikidot.com/platform Lisp: Common Lisp, Scheme, Clojure, Emacs Lisp http://hyperpolyglo

    類似しているプログラミング言語の文法などの比較まとめチートシートが良い感じ - goinger的日記
  • やる夫と Python で学ぶ Twitter の OAuth - 宇宙行きたい

    OAuth 調べてみたら難しくて理解出来なかったので, Python で標準ライブラリだけで 1 から書いてみました. /      \ /  _ノ  ヽ、_  \ / o゚((●)) ((●))゚o \  twitter の OAuth 難しいお… |     (__人__)'    | \     `⌒´     / ____ /⌒  ⌒\ /( ●)  (●)\ /::::::⌒(__人__)⌒::::: \   だからやる夫でやるお! |     |r┬-|     | \      `ー'´     / Python のサンプルコードを付けていますが, 上から順に読めるようにおもいっきり手続き型で書いています. コメントで実際の処理の説明を書いています. Consumer Key と Consumer Secret の入手 / ̄ ̄\ /    u  \      .____ |:

    やる夫と Python で学ぶ Twitter の OAuth - 宇宙行きたい