タグ

ITProとprogrammingに関するcx20のブックマーク (34)

  • はじめてのRazor

    cx20
    cx20 2011/03/07
    日経ソフトウェアの例の特集記事(12頁)が公開されてた。#webmatrixjp
  • 「テトリスを1時間強で作ってみた」動画の投稿者にインタビュー──「プログラミングの楽しさ伝えたい」

    1時間強でテトリスを作れるのはすごいですね。プログラミング歴を教えてください。 幼稚園のころからですね。当時,セガが「SC-3000」というパソコンを出していて,これが家にありました。あるとき,親が「ベーマガDX」(注:電波新聞社が発行していたプログラミング雑誌「マイコンBASICマガジン」の別冊。様々なパソコン用のゲーム・プログラムなどを掲載していた)を買ってきたので,そこに載っているプログラムを打ち込んでいました。 当時は「これを打ち込むとゲームができる」という認識しかなかったですが。SC-3000には顔のキャラクタがあってそれをBASICのPRINT文で表示して親に自慢げに見せていたそうです。 幼稚園のころに? はい,あまり信じてもらえないかもしれないのですけど(苦笑)。 小学校に入ってからは,PC-88(NEC製の8ビット・パソコン)もあったのですが,それはほとんど使わずに小学校4

    「テトリスを1時間強で作ってみた」動画の投稿者にインタビュー──「プログラミングの楽しさ伝えたい」
    cx20
    cx20 2009/11/05
    昔はベーマガとか MSX-Fan とかポケコンジャーナルとかあって打ち込みしてたけど、最近の小中学生はどうやってプログラミングを身に付けているんだろうか?
  • Ruby4年ぶりの新版1.9.0正式リリース,VM刷新で大幅高速化

    しまねOSS協議会はRuby 1.9のリリースを目前にまともと氏や笹田氏を迎えて島根オープンソースサロンを松江オープンソースラボで開催した まつもとゆきひろ氏は12月25日深夜,Rubyの4年ぶりの新版となる1.9.0を正式リリースした。1.9では笹田耕一氏が開発したRuby仮想マシンYARVを標準の実行環境として採用し,ベンチマーク性能で2倍から10倍と大幅に高速化した。 1.8までのRubyでは,プログラムを構文木と呼ぶ形式に変換して実行していた。東京大学大学院情報理工学研究科特任助手の笹田氏が開発したYARV(Yet Another Ruby VM)では,バイトコードと呼ぶ中間言語に変換して,VM(仮想マシン)であるYARV上で実行する,Javaと同じアーキテクチャとなる。YARVはIPA(独立行政法人情報処理推進機構)の未踏ソフトウェア創造事業に採択され,開発が行われている(関連記

    Ruby4年ぶりの新版1.9.0正式リリース,VM刷新で大幅高速化
  • 今こそ問われるプログラミング雑誌の価値

    bit,C MAGAZINE,Computer Today,JAVA Developer,JavaWorld,PC Programming,Visual Basic Magazine(dotNET Magazine,Windows Developer Magazine),XML Magazine,日経バイト,マイコンBASICマガジン――。 以上に挙げたのはどのようなリストなのか,ITproの読者の皆さんなら何となく想像がつくだろう。2001年以降に休刊した,主なプログラミング雑誌のリストである。まだ漏れが多いだろうし,bitや日経バイトなどはプログラミング雑誌ではない,と言われるかもしれない。それでも方向性は共通している部分が少なくないので,あえてここに含めた。 上記のリストは,プログラミング雑誌が急速に減り続けているという事実を示している。もちろん,この期間には休刊と同時にいくつかのプ

    今こそ問われるプログラミング雑誌の価値
  • Part1 オープンソース/C言語に学ぶ「ソースコードの読み方」:ITpro

    「Code Reading―オープンソースから学ぶソフトウェア開発技法」(毎日コミュニケーションズ発行,写真1)というがあります。私はこのの監訳者ですから,やや自画自賛になってしまいますが,ソースコードの読み方を主題にしたはほかにはあまりありません。技法からツール,データ構造,アーキテクチャ,さらには実際にコードを読んで利用する実例まで紹介している網羅的で良いだと思います。 このの「はじめに」で「達人プログラマー」として知られるDave Thomas氏は以下のように書いています。 他人の作品を読まなかった偉大な作家,他人の筆づかいを研究しなかった偉大な画家,同僚の肩越しに技を盗まなかった腕のよい外科医,副操縦席で実地の経験を積まなかった767機長――果たして,そんな人たちが当にいるのでしょうか? たしかにその通りです。ソフトウエア以外の領域では修行することとはすなわち,他の人の

    Part1 オープンソース/C言語に学ぶ「ソースコードの読み方」:ITpro
  • 第5回 Windows Mobileで使える関数/使えない関数

    1964年4月生まれの東京出身。東京農工大化学工学科を卒業後,マイクロソフトでMicrosoft Windows 2.1~3.0の日語化に従事。現在はピーデー 代表取締役。日XMLユーザーグループ代表。Microsoft Most Valuable Professional(MVP)。 Windows Mobileでは,C標準ライブラリ,Win32 APIともにサブセットしか使うことができない。漠然とした先入観でプログラミングを始めると,あって当たり前だと思った基的な関数やAPIが存在しなかったり,無いと思った関数やAPIが存在する場合もある。 ワンべぇWM開発中に遭遇した事例を中心に,このような例をいくつか見てみよう。それがコーディングに与える影響も考えてみる。 ScrollWindowは無い まず簡単な事例から見ていこう。ウィンドウをスクロールさせるAPIである。 16ビット時代

    第5回 Windows Mobileで使える関数/使えない関数
  • 現場で広く使われているプログラミング・ツールはこれだ!~「開発支援ツール徹底調査」中間報告

    開発支援ツール徹底調査を開始してから,3週間あまりが経過した。おかげさまで,3月29日までに約1300人もの方々から回答をいただいた。お忙しい中でのご協力,ありがとうございました。 これまでご協力いただいた方々への御礼をかねて,現在までの調査結果を簡単ながら報告したい。なお,調査は4月半ばまで実施するので,「中間報告」という位置づけになる。ご紹介するデータは,調査を開始してちょうど3週間目に入った3月27日時点のものである。 この調査は,(1)「分析/設計」「プログラミング」「単体テスト」「機能テスト」といった,システム開発プロジェクトの各フェーズで使われるツールと,(2)「変更/構成管理」「プロジェクト管理」といったシステム開発プロジェクトのマネジメント作業を効率化するためのツールを対象に,利用実態を把握することを狙いとしている。調査対象のフェーズ,管理作業は合わせて10分野ある。 その

    現場で広く使われているプログラミング・ツールはこれだ!~「開発支援ツール徹底調査」中間報告
  • Part7 データベースにまつわる怖い話

    怖い話 その1 終わらないバッチ処理 インテグレータ勤務 Aさん お正月気分も抜けてきた冬のある日,普段と同じように仕事をしていると,突然部長から呼び出された。あるプロジェクトでシステムの稼働開始を1カ月後に控えているのだが,開発が遅れているので支援してほしいと言うことだった。 そのシステムは製造業のある中堅企業向けで,全国の売り上げを集計して販売分析を行うという普通によくあるものであった。3週間前にプログラミング作業に着手し,予定ではすでにシステム・テストに入っているはずなのに,まだ修正を続けているらしい。 「やはりオープン系RDBは使えない?」 聞いてみると,夜間の6時間で終わらなければならないバッチ処理が,12時間たっても終わらないのだと言う。ちなみに,そのバッチ処理は,Oracleのストアドプロシジャを使って記述している。売り上げの元データの件数は100万レコード以上。データ量が多

    Part7 データベースにまつわる怖い話
  • 第2回 モバイルで増幅される,生APIプログラミングの魅力と価値!

    1964年4月生まれの東京出身。東京農工大化学工学科を卒業後,マイクロソフトでMicrosoft Windows 2.1~3.0の日語化に従事。現在はピーデー 代表取締役。日XMLユーザーグループ代表。Microsoft Most Valuable Professional(MVP)。 生APIプログラミング主義 この連載では,W-ZERO3で動くTiny BASICインタプリタ「ワンべぇWM(Windows Mobile)」に関する技術的なトピックを解説していく。だが,これは普通のWindos Mobileのプログラミング技術解説ではない。なぜかといえば,特異的な特徴が三つあるからだ。 時代遅れのCで書かれている もっと時代遅れのTiny BASICインタプリタを作ろうとしている 生APIプログラミングを行っている このうち,最初の二つについては前回その理由を説明した。要するに「自分

    第2回 モバイルで増幅される,生APIプログラミングの魅力と価値!
  • 新人研修で人気のあるプログラム言語

    私の勤務先グローバルナレッジネットワークは,主としてITエンジニア向けのトレーニングを提供する会社である。この季節は,各社の新人研修の打ち合わせで忙しい。 「NEW TRAIN」 と呼ばれる新人研修パッケージは,ビジネスマナーから始まり,コンピュータとネットワークの基礎,プログラム言語,システム設計構築,そして成果発表などが含まれる。通常の教育コースが1日から5日なのに対して,NEW TRAINは数週間以上続くことも多い。講師にとってはハードだが,やりがいのある仕事だ。 NEW TRAINのパッケージはカスタマイズ可能であり,顧客の要求に従ってカリキュラムを組む。プログラム言語の代わりに,運用管理が入ることもあるし,営業色が強まることもある。ただし,主力は昔も今もプログラマ向け教育である。 NEW TRAINで採用される言語には流行がある。かつて,グローバルナレッジネットワークが日DEC

    新人研修で人気のあるプログラム言語
    cx20
    cx20 2007/02/24
    「最近,徐々に増えているのがC#である」
  • プログラミングと楽曲製作は“もっと”似ている?

    最近,Webプログラミングに関連して「マッシュアップ」という言葉をよく耳にする。マッシュアップとは,複数のWebサービスAPIを組み合わせて新しいサービス(Webアプリケーション)を創り出す手法のことである。例えば,リクルートとサン・マイクロシステムズは昨年,マッシュアップの開発者向けコンテスト「Mash up Award」を開催。引き続き今年も,利用できるWebサービスAPIの種類を増やして規模を拡大した「Mash up Award 2nd」を実施している(締め切りは2007年3月12日)。 このマッシュアップという言葉,元々は音楽用語で「2つ(ないし複数)の曲を一つの曲に合成する音楽製作手法の一つ」(フリー百科事典「ウィキペディア(Wikipedia)」より)だという。複数のWebサービスAPIをプログラミングによって組み合わせて,一つの新しいサービスを創り出すというプロセスが似ている

    プログラミングと楽曲製作は“もっと”似ている?
  • 第1回 簡単なサンプル・プログラムを通してDelphiの基本を学ぶ

    プログラマ,インストラクタを経てテクニカル・ライターに。インストラクタ時代に浅く広く様々な言語に接し,今はDelphi一筋。趣味は歌舞伎座通い。仁左様~。 Turbo Delphi Explorer(以下Turbo Delphi)は,米Borland Softwareが提供する無償の統合開発環境です。連載では,このTurbo Delphiで自由にプログラミングするための基礎知識を解説していきます。連載は,何らかのプログラミング言語で,ほんの少しでもプログラミングした経験がある人を想定して,解説を進めます。 第1回の今回は,(1)プロジェクトやユニットなどTurbo Delphiでプログラムを開発する“単位”,(2)コンポーネント,フォーム,プロパティ,イベント,イベントハンドラなど画面に関係する“仕組み”,(3)変数,型,代入文,演算子,手続き,関数,制御構文などDelphi言語の“文法

    第1回 簡単なサンプル・プログラムを通してDelphiの基本を学ぶ
  • 第1回 あえて非効率の価値を探る──なぜW-ZERO3でCとBASICなのか

    読者が抱くであろう最大の疑問に答えておくことにしよう。それは「なぜ今どき,時代遅れでオブジェクト指向ですらないCなのか」ということである。さらに言えば,そのようなCを使って作り上げるのは,Cに輪をかけて時代遅れのBASICインタプリタに過ぎない。 より先進的な何かを生み出すのならともかく,まるで時計の針を逆行させるかのように,「より遅れた技術」をわざわざ作り出していることになる。わざわざこのような非効率なことを行う理由を理解できない読者は多いと思う。 その疑問はもっともだと思う。健全な価値観を持つ「プロフェッショナル」ならば,あえて効率を落とすような選択を取ることはあり得ない。また,健全な価値観を持つ「一般ユーザー」であれば,プログラム開発を依頼する際に,わざわざ効率を落とすような技術を指定することもないだろう。 それにもかかわらず,あえて効率の悪い方法を指向している理由は何か。その理由を

    第1回 あえて非効率の価値を探る──なぜW-ZERO3でCとBASICなのか
  • Part1 誰でも作れるプログラム言語

    “プログラム言語*1を作る”って一体どういうこと?──この特集のタイトルを見てそう思った方もいるでしょう。最初に,その疑問にお答えしましょう。 普段,皆さんはプログラミングをするとき,出来合いのコンパイラやインタプリタを使っている方がほとんどだと思います。最初にプログラム言語を選んだとき,実際は,その言語を使ったプログラミングに必要なコンパイラやインタプリタを含む「プログラム言語処理系」(単に処理系と呼ぶことが多いです)を選んでいるわけです*2。 コンパイラやインタプリタなどの処理系は,アプリケーションを開発するための基盤となるソフトウエアですから,中身を知らなくてもきちんと動くことが前提です。正しくプログラムを書けば,実行可能なファイルを生成(インタプリタの場合はすぐに実行)しますし,プログラムが間違っていればエラーを返します。それが具体的にどんな処理をしているのかを気にすることはありま

    Part1 誰でも作れるプログラム言語
  • 時代はバイナリ?低レイヤー・プログラミングの楽しさ

    胸が躍る,とはこのことだろうか。先ごろ出版された「BINARY HACKS―ハッカー秘伝のテクニック100選」(高林哲,鵜飼文敏,佐藤祐介,浜地慎一郎,首藤一幸著,オライリー・ジャパン刊)を読んだ感想だ。このは,多くのプログラマが通常さわることの少ない「バイナリ(=機械語,アセンブラ,コンパイラ)」など低レイヤー・プログラミングを“いじる”テクニック(バイナリ・ハック)を紹介するだ。 バッファ・オーバーフローを検出する,スレッド・セーフなプログラムを書く,メモリー・リークを検出する,プログラムやシステムコールのトレース方法,プログラム起動の高速化や高速化のためのプロファイル取得方法,CとC++のプログラムをリンクする時の注意点といった実用上重要なテクニックが多数解説されている。しかし「glibcを使わないで Hello worldを書く」,「自己書き換えでプログラムの動作を変える」,「

    時代はバイナリ?低レイヤー・プログラミングの楽しさ
  • 定番アルゴリズムを徹底理解! - 今からでも遅くない!アルゴリズム入門:selfup

    このパートでは,プログラミングを勉強するうえで欠かせないアルゴリズムの中でも定番中の定番を紹介します。ソート(並べ替え)やサーチ(検索)などの機能は今では標準のライブラリとして提供されています。実用的なプログラムを作るときにそのものずばりをいちいち書く機会は少ないかもしれません。しかし定番のアルゴリズムは,様々に形を変えて普段のプログラミングに登場します。 解説を読んで仕組みがわかったら,ぜひそれをプログラムにしてみてください。読んだだけではプログラムを書けるようにはなりませんし,プログラムを書いてみて初めて,実は十分に理解できていなかったと気付くことがよくあります。しかもアルゴリズムは特定のプログラミング言語に依存しないので,一度身に付ければ,後でどんな言語を学ぶ場合でも役に立ちます。 1番目から6番目まではソートのアルゴリズム,7番目から9番目まではサーチのアルゴリズムです。一つひとつ

    定番アルゴリズムを徹底理解! - 今からでも遅くない!アルゴリズム入門:selfup
  • 24時間×365日、休まず働く真面目なヤツ:矢沢久雄のソフトウエア芸人の部屋:ITpro

    JR浜松町駅から東京モノレールに乗り換え、天王洲アイル駅で下車して徒歩1分。私とS記者は、日ヒューレット・パッカード株式会社(以下HP)にやってきました。お目当ては「HP NonStop Server(以下NonStopサーバー)」です。名前が示す通り「止らないサーバー」というわけですが、その仕組みをどうやって実現しているのでしょう。どうやってプログラムを作るのでしょう。どんなところで使われているでしょう。HPの浅野さんと原さんが、丁寧に説明してくれました。 NonStopサーバは二人乗りの自転車のようなもの 浅野:まず、NonStopサーバの歴史を紹介しましょう。HPに勤務していたJimmy Treybigが、1974年にベンチャー企業としてTandem Computersを設立したことが、事の起こりです。タンデムという言葉から、二人乗り(二人で漕げる)自転車をイメージしてください。C

    24時間×365日、休まず働く真面目なヤツ:矢沢久雄のソフトウエア芸人の部屋:ITpro
  • 「自動開発が見えてきた今こそ、真のプログラミング教育が重要」と大岩慶応大学教授

    「MDA(モデル駆動アーキテクチャ)に代表されるソフトウエアの自動開発が現実味を帯びてきた今こそ、当のプログラミング教育が必要だ」。慶應大学環境情報学部の大岩元 教授(写真)は6月30日、ソフトウエア開発環境展の講演の場でこう主張した。 大岩教授はキヤノンソフトウェアなど開発ツール・ベンダー9社が参加する「システム開発自動化推進の会」の主査を務めている。大岩教授が重要視するプログラミング教育とは、単にプログラミング言語を習得させることだけではない。目的と手段を区別して整理するといった、論理構成能力を鍛えることを含んでいる。「論理構成能力を磨くことはプログラミングの基礎なのだが、習得できている技術者はほんの一握りしかいない」(大岩教授)。 大岩教授は、米国のIEEE(米国電気電子技術者協会)とACM(米国計算機学会)が策定した、IT技術者の教育カリキュラム「CC2001」を引き合いに出し、

    「自動開発が見えてきた今こそ、真のプログラミング教育が重要」と大岩慶応大学教授
  • ファイナルファンタジー XIIでプログラミングを始めよう

    スクウェア・エニックスが3月に出荷開始したロール・プレイング・ゲーム「ファイナルファンタジー XII」(以下FF12)では,味方キャラクタのAI(行動パターン)をプレーヤ(ユーザー)が設定できるのをご存知だろうか。それも,ドラゴンクエストなどのようにあらかじめ決められたパターンから選択するのではなく,かなり自由度の高い設定が可能である。AIを自由にプログラミングできると言ってもいいほどだ。 AIの設定(FF12ではガンビットと呼ぶ)は,「<体力が30%以下の味方>に対して<回復魔法を唱える>」のように「条件付きの対象」とそれに対する「行動」の組を優先順位をつけて複数指定することで行う。もちろん,コードを記述するわけではなく,あらかじめ用意された選択肢の中から対象と行動を画面上で選択していくのだが,選択肢の数が非常に多いために自由度は高い。例えば (1)体力が30%以下の味方に回復魔法を唱え

    ファイナルファンタジー XIIでプログラミングを始めよう
  • 第4回 始めよう! W-ZERO3プログラミング

    Windows Mobile 5.0を載せたPHS端末「W-ZERO3」が人気を集めているようだ(図1)。VGAの画面,ペン入力だけでなくキーボード入力も可能な点,PHS通信と無線LANに対応していることなどがその理由だろう。 W-ZERO3は.NET Compact Framework 1.0 SP3を標準で備えており,同2.0もインストール可能である。これらの環境を利用すれば,Visual Studioを使ってWindowsアプリケーションを開発するのと同じスキルでプログラム開発が可能だ。まずは,開発環境を整えよう。 W-ZERO3向けのネイティブ・コードも開発可能だが,ここではC#などの.NET対応言語を利用し,いわゆるマネージ・コードのプログラミングを対象とする。その場合,プラットフォームとして,W-ZERO3が標準装備している.NET Compact Framework 1.0

    第4回 始めよう! W-ZERO3プログラミング