タグ

ITとProgrammingに関するmasa8aurumのブックマーク (98)

  • メガデモ、Breakpoint 2009の4K部門Elevatedがすごい!

    今更ですが、ドイツのプログラミングコンテスト Breakpoint 2009の4K部門で優勝した作品Elevatedを紹介します。 elevated by Rgba and TBC (pouet.net) elevatedダウンロード (scene.org) これは、プログラミングや映像技術、演出力を競うメガデモと言われるものです。Elevatedは4KBの実行ファイルだけで映像や音楽を再生させています。この事実に、以前、Breakpoint 2007のメガデモを紹介したときよりも大きな衝撃を受けました。以下の映像を見て、実際に自分のPCで動かしてみれば、その凄さが実感できるでしょう。何も知らない人が見たら実写と思うかもしれません。 起動までにはCore2Duo 3GHzのCPUで30秒程の時間がかかります。これは実行前に、テクスチャやジオメトリ、BGMシーケンスを計算しているためです。4

    メガデモ、Breakpoint 2009の4K部門Elevatedがすごい!
  • 読みやすいコードのための暗黙の了解がつまってる「リーダブルコード」 - きしだのHatena

    そういえばidがkdmsnrの児玉サヌールという人から「を訳したよ!」と献いただいたのだけど、届いたを見てみると訳者は角 征典という人だったのでとまどっていたところ。 出版したときにいただいてたので、もう半年近くになるけど、時間がかかったのは、ちまちまと一日1ページとか2ページとか読んでたから。普通に読めば、たぶん土日で読めます。 リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice) 作者:Dustin Boswell,Trevor FoucherオライリージャパンAmazon 関係ないけど、一時期、角さん、角田さん、角谷さん、という一文字ずつ成長する東のほうの人と一気に知り合いになって「かっくん」と言われてるのがどの人かわからないことがあった。懐かしい話。 それはそれとして、ぼくは「きれいなコードをかきましょう」系の話

    読みやすいコードのための暗黙の了解がつまってる「リーダブルコード」 - きしだのHatena
  • Verilog - Wikipedia

    Verilog(ヴェリログ)は、IEEE 1364として標準化されているハードウェア記述言語(Hardware Description Language; HDL)である。最も重要な用途は、デジタル回路をレジスタ転送レベルで設計・検証することである。また、アナログ回路や混合信号回路(英語版)の検証や、遺伝子回路(英語版)の設計にも使用されている[1]。 もともとVerilogは電子回路シミュレーションを行うシミュレータであり、それに使用する言語であった。文法は、プログラミング言語のC言語やPascalに似ている。 後継言語はSystemVerilogで、Verilogの機能的な上位互換である。System Verilogの規格と統合して、「IEEE/IEC 62530:2011 SystemVerilog - Unified Hardware Design, Specification,

    masa8aurum
    masa8aurum 2012/10/25
    Verilog(ヴェリログ)は、デジタル回路の設計用の論理シミュレータ、またはそこで使用するハードウェア記述言語。
  • Artistic Style

    A Free, Fast, and Small Automatic Formatter for C, C++, C++/CLI, Objective-C, C#, and Java Source Code Artistic Style is a source code indenter, formatter, and beautifier for the C, C++, C++/CLI, Objective-C, C# and Java programming languages. Written in C++, it can be used from the command line or incorporated as a library in another program. Options can be entered from the command line or from a

    masa8aurum
    masa8aurum 2012/10/09
     コード整形ツール
  • ポインタ

    第10章 ポインタ ポインタとは、「変数のアドレスを記憶する変数」と定義することができます。 C言語の特徴にポインタが使用できることがあげられますが、ポインタからC言語がわからなくなったという話もよく耳にします。 けれども、順を追ってきちんと消化していけば、ポインタは難しいものではありません。読み飛ばさず、じっくりと理解するようにしてください。 10-1.変数とポインタ (1)変数とアドレス ポインタについて理解するには「アドレス」とは何かをまず理解してください。 int a = 123; は実際には下図のように、 「メモリ上のある番地(下図では1000番地)に変数a としての領域を確保し、 その領域に 123 を格納する」ということになります。

  • 構造化プログラミング - Wikipedia

    構造化プログラミング(こうぞうかプログラミング、(英: structured programming)は、コンピュータプログラムの処理手順の明瞭化、平易化、判読性向上を目的にしたプログラミング手法である。一般的には順接、分岐、反復の三種の制御構造(control structures)によって処理の流れを記述することと認識されている[1][2]。制御構造は制御構文、構造化文(structured statement)、制御フロー文(control flow statement)とも呼ばれる。また、プログラムを任意に分割した部分プログラム(サブルーチンとコードブロック)の階層的な組み合わせによるプログラムの構造化も指している。 このプログラミング手法の普及に貢献したのは、1968年の計算機科学者エドガー・ダイクストラによるACM機関紙への投書「Go To Statement Consider

    構造化プログラミング - Wikipedia
    masa8aurum
    masa8aurum 2012/08/25
    「人間が時間によって変化するプロセスを把握する能力は、プログラムの静的な関係を把握する能力に比べて劣っているため、静的なプログラムテキストの構造と時間によって変化するプロセスの構造をなるべく近づける」
  • 金子勇@SkeedCastは、根っからのプログラマ!|【Tech総研】

    いえいえ、即日プログラミングです。ゲーム好きの友人がいて、企画書とビットマップのキャラクターをもってきて「ゲームを作ってくれ」というんですね。電気屋さんはお店の宣伝になるからと「開発」を認めてくれていましたから、BASAICでプログラムを組んで、デモして、できたゲームで遊ぶと。これを一日でしていました。 ですからソフトは保存していなかったのですが、プログラマって自分の書いたコードは覚えているものじゃないですか。同じゲームは別の日でも作れましたし、少しずつ違って別のゲームができたりするのも面白かったり。中学に入るとポケコンでの開発が中心になり、授業中にポコケンでずっとプログラミングをしていたのですが、ハードが非力なのでアセンブラで組んで、それでも遅い(笑)。 こんなことを続けていたせいか、中学時代に「プログラミングを極めた」感じがしてしまいました。疲れるから仕事にはしたくないと思いましたが、

  • 浮動小数点数型と誤差

    有限桁 C言語で扱える実数値は,2進数の有限小数で表された数値である.例えば次のようなものである. 1.5(10) = 1.1(2) 3.25(10) = 11.01(2) 理論的には小数が無限に続く値でも,そのうちの有限個の桁数でその値を表すしかない. 例えば,0.1 を2進数の小数で表すと 0.1(10) = 0.000110011001100110011...(2) と無限に続くが,コンピュータの内部では有限桁で丸められている. このような場合には,当の値ではなく,近似値でしか表すことができない. 指数表記(浮動小数点表記) 科学計算では非常に大きな実数値や非常に小さな実数値も扱うことがある. そのようなときには,通常の10進数の表記ではなくて,次のような指数表記で表すれば 無駄な 000...000 という桁を表記しなくてもよくなる. 1234567890000000000000

  • 浮動小数点数 - Wikipedia

    浮動小数点数(ふどうしょうすうてんすう、英: floating-point number)は、実数をコンピュータで処理(演算や記憶、通信)するために有限桁の小数で近似値として扱う方式であり[1]、コンピュータの数値表現として広く用いられている。多くの場合、符号部、固定長の指数部、固定長の仮数部、の3つの部分を組み合わせて、数値を表現する。 概要[編集] この節はパターソンらの記述に基づく[1]。 実数は0以上かつ1以下のような有限の範囲でも、無限個の値(種類)が存在するため、コンピュータでは妥当なビット数で有限個の値(種類)の近似値で扱う必要がある。 実数-1/3は10進数表現では無限小数となるが、有限桁の小数で近似値を表記できる。下の例では10進数での4桁としている。 -1/3 -1 x 0.33333333333333... -1 x 0.3333 x 100 -1 x 3.333 x

  • 型システム - Wikipedia

    型システム(かたシステム、英: type system)は、コンピュータプログラミングの数々の構成要素および値に対して、型(type)と呼ばれる特性を付与するための数々の規則群から成立している形式体系である[1]。型の付与は、型付け(typing)と言われる。例えば、変数・式・関数・モジュール・オブジェクトなどが型の付与対象になり、それらの型付け要素を規則的な関係でまとめたデータ構造にも型は付与されてカテゴライズされる。 型システムの目的は、プログラムエラーとバグの発生を抑止することである[2]。そのための型安全性とは、各計算および各オペレーションでの型エラー(不正計算、ロジックエラー、バッファオーバーフロー、不正ポインタなど)の発生を防止することと同義になる。 型システムは、一般的に型理論をベースにしている[3]。 定義と性質[編集] 型の例 型とは[編集] プログラミング言語はさまざま

  • 制御構造 - Wikipedia

    制御構造(せいぎょこうぞう)は、コンピュータ・プログラミング言語、特に手続き型プログラミング[1]や命令型プログラミング[2]において、ループや飛び越しなどといった、手続き(プロシージャ)中の実行順を順次実行から変化させたり、サブルーチン呼出しやその戻り、などといった制御を行う「文 」などの構造(言語の構成要素)である[3]。 制御構造の種類は言語によって様々だが、典型的には以下のようなものがある(用語「ブロック」については、ブロック の記事を参照)。 無条件に実行箇所を移動する(無条件の分岐命令、ジャンプ) 何らかの条件の成立・不成立に従い、ブロックの実行・不実行を選択する(条件付き分岐命令、選択) ブロックを繰り返し実行する(ループ) ジャンプの一種だが、その続きに戻れるもの(サブルーチン呼出、コルーチン) 継続(特にcall/cc) プログラムの停止(理論的には重要だが(停止性問題を

  • 橋本商会 » プログラムの写経

    プログラミング初心者が写経する時に気をつけると良い事を4つ説明します。 画像はイメージです プログラムを勉強する時に、写経しろ(すでに完成しているプログラムをから書き写せ)とか言われるが、ちょっと意識するとだいぶ違うと思う 1. 外から書け 例えば、1からnまでの数字を全部表示するプログラムがあるとする。 def run(max) 1.upto(max).each do |i| puts i end end run(10) これを写経する時、上から下に1行目から順に書くのではなくて、まず def run(max) end いちばん外側を書いて def run(max) 1.upto(max).each do |i| end end 中を書いて def run(max) 1.upto(max).each do |i| puts i end end こうなる。 上から書かないのが重要。プログ

    橋本商会 » プログラムの写経
    masa8aurum
    masa8aurum 2012/06/18
    プログラムの写経のときのコツ  その1. 外から書け その2. 処理される順番に書け  あとライブコーディングが気になった。
  • 練習問題 - プログラミングスレまとめ in VIP

    これは何? † 練習問題(アルゴリズム編)もご覧ください。 練習問題を集めてみました。 言語は問いません。入力出力は特に問いません。 キー入力でもファイルでもソースにべた書きでもいいです。 答えは誰かが書いてくれます。それまではスレで聞いてください。 ↑ ループ練習 † Hello World![改行]を5回表示させてください。 print(或いはprintf,cout等)を5回コピーすれば当然可能ですが、 ループ構文(for,while等)を利用して、print等は1回の使用にとどめてみてください。 出力結果 Hello World! Hello World! Hello World! Hello World! Hello World! 解答例 Java版 C Python Haskell Scala Scheme 可能ならコマンドラインから入力を受け取って、n回表示するように改造してく

  • 言語は爆発する……らしい:プログラマで、生きている:エンジニアライフ

    わたしは専門学校で FORTRAN を習って、就職してからも2年間くらいはずっと FORTRAN をやってました(たまに BASIC もやってましたけど)。 で、FORTRAN の仕事がなくなってきたから、という理由で C 言語を勉強するように言われたんですが、これがかなり苦労しました。カチカチした FORTRAN になじんでいたわたしには、C がとてもアバウトというかフリーダムすぎる言語に思えたんです。 なぜ = と == で意味が違う! とか、なぜ *(アスタリスク)をこんなに使いまわしてる! とか、なんかもう腹が立ってしかたありませんでした(苦笑)。なによりも頭を悩ませたのは、御多分に漏れずポインタでしたが。 当時はパソコン1台を複数人数で使うのが普通でしたので、お金を稼げないわたしはほとんどマシンに触らせてもらえず、を片手に、先輩から出されたお題に頭を悩ませ、「これでどーだっ!」

    言語は爆発する……らしい:プログラマで、生きている:エンジニアライフ
    masa8aurum
    masa8aurum 2012/02/28
    プログラミングが、急に「わかる」ようになる「言語爆発」
  • Cプログラミング診断室 - 藤原博文

    はじめに 開院準備 昔むかし/ レベル差/ 教育/ ネットワーク/ 情報集め/ 隠すことについて/ プログラムコンテスト/ ドキュメント/ 楽するように/ 手抜きと下手の違い/ 開院 第1部 外来 第1章 普通の初心者 最初から充実した(!?)プログラムが登場 関数を短くし、コメントを改善する 上手になる秘訣/ プログラムの紹介/ 何だ、このプログラムは!!/ 短くするには/ コメントについて/ 無駄な努力をやめよう/ 名前/ 気になる個所/ 修正プログラム/ 課題/ まとめ 第2章 これでもプロ 売りものであるにもかかわらず、超きたない! 構造的な欠陥の指摘〜引数、ポインタの活用 プログラムの紹介/ 「超」基的問題点/ 関数分解/ 構造的欠陥/ 引数を使おう/ ポインタ/ その他/ まとめ(修正プログラム) 第3章 上司が問題 まさに驚異的なプログラムの見というべき 内容の修正から、

  • なぜ新人は聞きに来ないのか? - teruyastarはかく語りき

    プログラマで、生きている: ググるな危険 http://el.jibun.atmarkit.co.jp/hidemi/2009/11/post-9d2b.html わたしが新人が検索に頼ってしまうことを危険視するのは、コピペの寄せ集めでもなんとなく動くコードが書けちゃって、それで自分は仕事を達成したという錯覚に陥ってしまうからです。 たいていの場合、新人プログラマには「きちんとしたコードを書くこと」は期待していません。先輩たちが期待しているのは「きちんとしたコードを書ける人になってくれること」です。 そこらへんの意識が行き違っちゃってるから、仙台に行くことよりも、新幹線に乗ることの方が重要事項になっちゃうんですかねえ。 最後に、わたしが新人の時に先輩から言われた言葉をご紹介させていただきます。 「自分で説明できないコードを1行たりとも書くな!」 間違うのはしかたありません。けれども、「自分

    masa8aurum
    masa8aurum 2011/01/22
     後輩の指導法もある(この人はこれですごく成果を出してる)
  • きれいなソースコードを書くために読んでおくべき本10冊 - ひがやすを技術ブログ

    なんか、プログラマとして必要なをあげるのが流行っているようなので、自分も書いておこう。きれいなソースコードを書くために読んでおくべき10冊。 最初はリファクタリング リファクタリング―プログラムの体質改善テクニック (Object Technology Series) 作者: マーチンファウラー,Martin Fowler,児玉公信,平澤章,友野晶夫,梅沢真史出版社/メーカー: ピアソンエデュケーション発売日: 2000/05メディア: 単行購入: 94人 クリック: 3,091回この商品を含むブログ (312件) を見る 以上。終了。10冊じゃないか(^^; きれいなソースコードを書きたければ、一にも二にもリファクタリング、それしかない。 後は、良いソースコードを読みながら自分でも、実際にプロダクトを作ってみること。OSSとして公開すると、自然と良いコードを書こうというモチベーショ

    きれいなソースコードを書くために読んでおくべき本10冊 - ひがやすを技術ブログ
  • IT業界で楽しく仕事をするための10カ条 - @IT

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

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