タグ

programmingとProgrammingに関するtztのブックマーク (522)

  • ゲーム内の絶対時間はフレーム数だよ - プログラマーの脳みそ

    ゲームのシステムを語るならゲームのシステムとはどんなものかについて多少は理解しておいた方がいい。 2009-08-22 ゲーム内時間とリアル時間の差に文句を言っているけど、ゲーム内では通常フレーム数で時間をカウントする。だからリアル時間で何分だったとしても、ゲーム内時間はひとしく平等に与えられる。一般的にゲームは1秒間に60回画面を書き換える。モニタがそういう仕様だからそれに合わせて描き換える。*1この1回の書き換えの間にやれる操作は一緒。まぁボタンを押すか離すかだ。1/60秒以内でのボタンの操作はゲームが感知できない。だから連射速度の限界は秒間30連射。画面の描画タイミングに合わせてON/OFFをするシンクロ連射装置というのがソレ。 スーパーマリオをエミュレータで1/2の速度でプレイしたとしても、2倍速でプレイしたとしても、ゲーム内の絶対時間は変わらない。TIMEが100でクリアできるス

    ゲーム内の絶対時間はフレーム数だよ - プログラマーの脳みそ
  • オーダーを極める思考法

    プログラムの実行に掛かる時間を把握しておくのは、プログラミングを行う上で基的な注意点です。今回は、計算量のオーダーについて学びながら、TopCoderのMedium問題を考えてみましょう。 プログラムの実行時間 業務としてプログラミングをされている方には釈迦に説法かもしれませんが、プログラムの実行に掛かる時間を把握しておくのは、プログラミングを行う上で基的な注意点です。そしてこれは、TopCoderなどのコンテストでプログラムを組む際にもよく当てはまります。通常、こうしたことは感覚的に理解している方がほとんどだと思いますが、具体的にどれくらいのループを回すと何秒掛かる、といった基準を持っている人は少ないのではないでしょうか? 非常に基的なことですが、プログラムの実行時間に関して再確認しておきたいと思います。 TopCoderの制限に関して TopCoderでは、実行時間およびメモリ使

    オーダーを極める思考法
  • 理想の言語? - 書評 - Scalaスケーラブルプログラミング : 404 Blog Not Found

    2009年08月20日18:00 カテゴリ書評/画評/品評Lightweight Languages 理想の言語? - 書評 - Scalaスケーラブルプログラミング インプレス石橋様より献御礼。 Scalaスケーラブルプログラミング Martin Odersky Lex Spoon Bill Venners / 羽生田栄一監 / 長尾高弘訳 [原著:Programming in Scala] 素晴らしい言語の、素晴らしい入門。 何が素晴らしいかというと、言語の思想が、頭ではなく体で覚えられるようになっていること。これなら言語オタクでなくとも、いや言語オタクでない方が、無名関数やActorの素晴らしさがよくわかる。 それだけに、結構残念である。 Scalaが、Java上の言語であることに。 書「Scalaスケーラブルプログラミング」の原題は、「Programming in Scala

    理想の言語? - 書評 - Scalaスケーラブルプログラミング : 404 Blog Not Found
  • C言語〜ゲームプログラミングの館〜

    ※ 更新履歴 ※ 2017/11/03 ・sp.8章追加 2017/10/11 ・配布しているプロジェクトをVisualStudio2017に更新(それにまつわる説明も更新) 2015/09/12 ・s.3章 Androidのようなボタンの作り方(C++) 追加 2013/09/02 ・VisualC++2012のプロジェクトを追加 2013/02/23 ・d3.5章追加 2013/02/20 ・d3.1章追加 ・d3.2章追加 ・d3.3章追加 ・d3.4章追加 2013/01/19 ・sp3章追加 ・sp4章追加 ・sp5章追加 ・sp6章追加 ・sp7章追加 2012/06/23 ・3.14章追加 2012/06/16 ・sp1節追加 ・sp2節追加 2012/02/11 ・d6節追加 2011/11/10 ・h11章追加 2011/10/31 ・s1章追加 ・s2章追加 2011/

  • 優秀なプログラマにたまに起こる逆行(退行)現象

    あれは私がまだ大学助手をしていたころだから3年ほど前のことだと思う。 私の勤めていた大学(情報系)では「プログラミング研究会」みたいなサークル活動が行われていて プログラミングの講義を受け持っていた私はそのサークルにちょくちょく顔を見せるようになっていた。 そこにはとびっきりかわいい女子学生が一人いたのだけれど、その子はゲームが大好きで 「自分でもゲームが作りたい」と一念発起してゲームコンテストに作品を出品することになった。 しかし、彼女はプログラミングの講義(Java)を1年くらい受けているものの、 格的なモノを作った経験がなく、ひとりでは行き詰まりをみせているようだった。 彼女はひとりでいることが多く、パソコンに向かって黙々とプログラムを書いているのをよく見かけた。 それを気にかけていた私はたまに彼女をランチに誘うようになり、彼女の方もしだいに私に打ち解けてきた。 私たちはだんだんと

    優秀なプログラマにたまに起こる逆行(退行)現象
    tzt
    tzt 2009/08/08
    退行ではなくて単に経験不足なだけでは。。。
  • データベースパフォーマンスに関する、僕が知りうる限り最高の教科書 - レベルエンター山本大のブログ

    データベースの醍醐味は、パフォーマンスチューニングにあります。 チューニングによっては、同じ処理でも1時間掛かる場合もあれば、 1秒で終わるということもあり得る世界です。 僕はDBの魅力に取り付かれた者の一人です。 DBという技術の奥深さが気に入っています。 DBを極めると、どこの現場に行っても絶対に必要とされます。 また、どこの現場に行っても正解を導く方程式は一緒なので応用が利くのです。 しかし、その基原理を体系的に学べる手段はあまりありません。 OracleMasterやMCDBAといった資格試験でも学べることは限られていて あとはWebで調べるなりマニュアルを読むなりするしかありませんでした。 とくに肝であるパフォーマンスチューニングについては、 経験則でチューニングしている部分も多いです。 OracleSQLServer、MySQLと色々なDBのチューニングをしてきましたが、

    データベースパフォーマンスに関する、僕が知りうる限り最高の教科書 - レベルエンター山本大のブログ
  • GNU Binary Utilities

    この短いマニュアルは,GNUバイナリユーティリティ(バージョン 2.16.1全体)に対する文章が含まれています. この文章はGNU Free Documentation Licenseの条件の下で配布されます.ライ センスのコピーは,"GNU Free Documentation License"と名付けられたセクショ ンに含まれています.

  • tracef - function call tracer

    TOC 概要 実行例 動作環境 (OS) ダウンロード ビルド環境 ビルド手順 解析可能なプログラム スクリーンショット forkするプログラムの解析 execするプログラムの解析 再帰 マルチスレッド みんなだいすき例外スロー mainの前に呼ばれる関数 制限事項 コマンドラインオプション 仕組み (つぶやき) 類似ツール 概要 tracefは、Linux向けの「関数コールトレーサ」です。 ディストリビューションに標準で含まれているltraceコマンドに似ていますが、次のような特徴・相違点があります。 DSO(DLL)内のライブラリ関数の呼び出しだけでなく、自作の関数の呼び出しもトレースできる 関数呼び出しの親子関係をツリー状に見やすく表示できる 関数の実装されているファイル名、行番号を表示できる これらの特徴により、 未知の大きなプログラムの動きを把握したいとき ソースコードを読む上で

  • パスワード認証

    スチーム速報 VIP あの夏の日、僕たちは輝いていた。

  • 普通のやつらの下を行け: BFDでデバッグ情報の取得 - bkブログ

    普通のやつらの下を行け: BFDでデバッグ情報の取得 gcc に -g オプションを与えるとデバッグ情報をバイナリに埋め込むことができます。この情報は通常 gdb などのデバッガによって利用されますが、普通のプログラムでも利用できれば何かおもしろいことができるかもしれません。 普通のやつらの下を行けの第4回として、今回は BFD (libbfd) を用いてデバッグ情報を取得する方法を取り上げたいと思います。 BFD とは BFD (Binary File Descriptor library) は各種バイナリフォーマットに対して低レベルな操作を行うためのライブラリです。 GNU binutils に含まれています。Debian GNU/Linux なら次のコマンドでインストールできます。 % sudo apt-get install binutils-dev ここでは BFD の bfd_

  • 連載:[完全版]究極のC#プログラミング - @IT

    第2回 簡潔なコーディングのために (2017/7/26) ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21) Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基の「キ」をマスターしよう 第1回 明瞭なコーディングのために (2017/7/19) C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える Presentation Translator (2017/7/18) Presentation TranslatorはPowerPoint用のアドイン。プレゼンテー

  • 続・バグを生まないコーディング法 | EE Times Japan

    フォーラムでの議論は次のような発言から始まった。 「中括弧を使って複合文を記述し、文の切れ目にセミコロン「;」を使う言語では、オールマン・スタイルを使うべきではない」 私はどちらのスタイルでもよいと思っているが、「1TBSでは図2のような間違いを人間のコード・レビュワーが発見しにくい」という1TBSに対する批判は受け入れがたい。 人間のコード・レビュワーが、このような間違いを見落とす可能性があることは認める。しかし、まさにこの例は、ここで紹介するようなコーディング規則の重要性を物語っている。つまり、「バグを効果的に排除するためには、コーディング規則に強制力がなければならない。2個以上の競合する規則がそれぞれバグを防げても、それらの中の1つの規則だけが自動的に強制できる場合は、より強制力がある規則の適用が推奨される」ということだ。 われわれのコーディング規則では、上記のような例はまさに自動

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • Big Sky :: C++で軽量Webサーバ書いた。

    書いたといっても結構前からあったのですが、いらん所を削ぎ落として軽量Webサーバとして仕立て上げました。 軽量とは言えど、CGIを使って結構色々動きます。 例えば、ソースアーカイブを解凍したらCGIがあって、apacheから見える場所にコピーして...とか面倒くさかったりしますよね。 おれは今すぐWebサーバを起動したいんだ!そして今いるディレクトリのファイルをWebサーバからサーブしたいんだー! って事ないですか?blogソフトウェアをダウンロードして今すぐ試したいけど、apacheインストールされてなかった...とか悲しすぎます。 今回紹介する"tinytinyhttpd"(tthttpd)はそんな、小さい様で大きな問題を解決出来るかもしれないソフトウェアです。 mattn's tinytinyhttpd at master - GitHub tiny tiny httpd http:

    Big Sky :: C++で軽量Webサーバ書いた。
  • ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改

    ディレクトリの中にある大量のファイルを高速に読み込む方法が知りたかったので、実験してみた。想定しているシチュエーションは、一つ一つのファイルは数KB程度だが数が多い、という場合である。適当な順番でアクセスすると、ランダムアクセスになってしまいとても時間がかかる。個々のファイルを読み込む順番はどうでも良く、すべてのファイルを処理することさえできればいいので、原理的にはシーケンシャルアクセスで処理できてしかるべきである。 まず、ファイルシステムについて。HDDやSSDなどのハードウェアにアクセスする際には、ファイル名などという概念はもちろん存在しない。ファイル名と実際のディスク上の対応を管理するのがファイルシステムの主な役割である。ファイルシステムは、ファイル名からそのファイルに対応するブロック番号(メモリアドレスみたいなもんだな)を調べて、そのブロック番号を指定してHDDやSSDにアクセスす

    ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改
    tzt
    tzt 2009/07/28
    ファイルシステムを使った時点で負けと言う気もする。
  • オープンソースソフトウェアの育て方

    製作著作 © 2005-2013 Karl Fogel, 高木正弘, Yoshinari Takaoka(a.k.a mumumu), under a CreativeCommons Attribution-ShareAlike (表示・継承) license (3.0, 2.1-jp)

  • 開発コアメンバが語るRubyの今とこれから(前編) - @IT

    Ruby 1.9は移行準備オッケー @IT yuguiさんは、2009年2月のDeveloper's Summitの講演で、そろそろRuby 1.8系から1.9系への移行を始めるべきだと主張されてましたね。 園田裕貴氏。裕貴のピンイン表記である「yugui」のハンドル名で知られている。Ruby 1.9系統リリースマネージャで、Rubyコミッタ。1981年生まれ。著書に『初めてのRuby』(オライリージャパン)がある。最近はRailsアプリケーションをよく書いているという yugui ええ、一般のRubyユーザーはRuby 1.9への乗り換えは慎重にという立場の人もいますけど、私はそろそろ移行を考える時期だと思います。 @IT もう1.9に移行してもオッケーだと。 yugui もう根的な仕様が変わることはないという意味でオッケーです。2007年12月に出た1.9.0は、仕様が煮詰まっていな

  • tips : tips

    ( readme ) readme.txt というファイルを作っておくと、 そのディレクトリのファイル/ディレクトリ一覧の下にコメントが枠囲みで表示されるようにしてみた。

  • パスワード認証

    スチーム速報 VIP あの夏の日、僕たちは輝いていた。

  • C++ はなぜ人気がないのか : IT Pro 記者の眼

    2005年1月に出た「C++の設計と進化」(ソフトバンク パブリッシング発行)を読んだ。C++の設計者であるStroustrup自身が,C++の設計哲学や標準化されるまでの出来事を語ったである。原著が出たのは1994年とかなり古いが,日語版にはStroustrupによる「2005年のC++」という1章が加筆されている。原著を読まれた方も,とりあえず手にとってみてはいかがだろうか。 さて,書を読んで改めて感じるのが,日におけるC++の最近の評価が低すぎるのではないかということだ。Javaが普及した今となっては「もはや過去の言語」という声すら聞くほどだ。10年以上にわたってC++を触ってきた記者から見ると,悲しい限りである。 確かに,開発コストを考えると,業務システムの開発にC++がほとんど使われないのは仕方がない。しかし,実行速度やメモリー効率が重要なソフトや,コストを掛けただけの見

    C++ はなぜ人気がないのか : IT Pro 記者の眼
    tzt
    tzt 2009/07/14
    入門書で「cout << "Hello world." << endl;」を見た瞬間こりゃダメだと思って速攻で見切りをつけた。C++の設計者はヤバイ薬をキメてこの言語を作ったに違いない。