タグ

programに関するnaoto_akazawa_1のブックマーク (64)

  • いまさら聞けない「変数の命名規則」 - 基本へ帰ろう

    変数の命名規則って名前がついているのですね・・・というのをさっき知ったので・・ほんといまさら聞けない感じです・・w アッパーキャメルケース (UCC)、またはパスカルケース(PascalCase)(Pascal記法) キャメルケース - Wikipedia 複合語の先頭を、大文字で書き始める。 例 : CamelCase ローワーキャメルケース (LCC)、または単にキャメルケース キャメルケース - Wikipedia 複合語の先頭を、小文字で書き始める。 例 : camelCase アプリケーションハンガリアン(ハンガリアン記法) ハンガリアン記法 - Wikipedia アプリケーション ハンガリアンは、間違えたコードを間違えて見えるようにする記法である。 たとえば、論理座標にRelative Positionのrp、絶対座標にAbsolute Positionのapというプレフィッ

    いまさら聞けない「変数の命名規則」 - 基本へ帰ろう
  • アルゴリズムの紹介

    ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 元々は、自分の頭の中を整理することを目的にこのコーナーを開設してみたのですが、最近は継続させることを目的に新しいネタを探すようになってきました。まだまだ面白いテーマがいろいろと残っているので、気力の続く限りは更新していきたいと思います。 今までに紹介したテーマに関しても、新しい内容や変更したい箇所などがたくさんあるため、新規テーマと同時進行で修正作業も行なっています。 アルゴリズムのコーナーで紹介してきたサンプル・プログラムをいくつか公開しています。「ライン・ルーチン」「円弧描画」「ペイント・ルーチン」「グラフィック・パターンの処理」「多角形の塗りつぶし」を一つにまとめた GraphicLibrary と、「確率・統計」より「一般化線形モデル」までを一つにまとめた Statistics を現在は用意していま

  • 正規表現をいまのうちに覚えておきたい人のためのリソース集

    HTML5で正規表現がサポートされる、といったことをきっかけに、正規表現はプログラマだけでなくWebクリエイター全体のスキルとして求められていくものになっていくのではないでしょうか(参考:あまり知られていないけれど、HTML5では正規表現が使えるようになる )。 ここではそうした正規表現の初学者や、一度挫折したけど再入門したい人、そしてより高度な内容をマスターしたいすべての人のためのリソース集を作りました。 初学者向けには「はじめての正規表現」 「はじめての正規表現」は、文字通り正規表現という言葉は知っていても中味はよく分からない、という初学者の方にぴったりのコンテンツ。紙芝居形式のプレゼンテーションで楽しく正規表現について把握できます。 はじめての正規表現 初学者の方には、次の2つの記事も手っ取り早く読めて概要を把握できますので紹介しておきます。 使うほどに良さが分かる正規表現(1/2)

    正規表現をいまのうちに覚えておきたい人のためのリソース集
  • オーディオプログラミング言語 ChucK - Radium Software

    オーディオプログラミング言語 ChucK を使って組んでみたサンプルプログラムの映像。 最初のプログラムは,1度,短3度,5度,短7度の音(つまりマイナーセブンスコードの構成音)からなるランダムなシーケンスを延々と鳴らし続けるもの。 二番目のプログラムは,構成音は最初のプログラムと同じだけど,ただランダムに鳴らし続けるのではなく,簡単な繰り返し構造を持たせるようにしたもの。最初のプログラムよりも,いくぶん音楽的な要素が加えられていると思う。 ChucK は,こういった類の実験を行うには非常に適した言語だと思う。上の二番目の例では,プログラムを動かしている最中に変更を加え(繰り返しの構成を変えてみている),それを「オン・ザ・フライ」で再実行している。同様のことは SuperCollider などでもできるけれど, ChucK は仕様の簡潔さと,統合環境 (miniAudicle) の手軽さが

    オーディオプログラミング言語 ChucK - Radium Software
  • 正規表現に見切りをつけるとき

    Perl, Rubyなど手軽に使えるプログラミング言語に慣れてくると、あらゆるテキストデータの処理に正規表現(regular expression)を使ってしまいがちです。 けれど実は、正規表現の処理能力を超えるフォーマットというのが存在します。その典型的な例が、XMLやJSONのように、入れ子になったデータフォーマットです。

  • 最近流行りのプログラミング言語 | OSDN Magazine

    プログラミング言語の流行り廃りというのは、それ自体なかなか興味深い分析対象だ。少しだけ昔話をすると、私がコンピュータをいじり始めた十数年前は、PascalやQuick Basicあたりも広く使われてはいたものの、結局はC言語を学ばないとどうにもならなかった。私より世代が少し前の人ならばアセンブリも必修科目だっただろうし、少し後の人だと、もしかすると最初に触れた言語はCではなくJavaかもしれない。 それが最近では、職業はプログラマです、しかしCやJavaで何か書いたことはありません、という人も結構いるようだ。最初に触れた言語がPerlRubyといった動的言語で、実用途にもそれらをそのまま使い続けているという人が増えているのだろう。個人的には、そういったモダンで設計の優れた言語からプログラミングを学び始められる人たちのことをとてもうらやましく思う。少なくとも、雑誌に数十ページに渡ってみっし

    最近流行りのプログラミング言語 | OSDN Magazine
  • Cyanを設計した高校生、5カ月で5つの言語を習得

    読者の皆さんは、「Cyan」(サイアン)という言語をご存じないかもしれない。Cyanは、Lispのマクロを持ち、Python風のインデントによってブロックを表すプログラミング言語。2008年の春、林拓人という1人の高校生によって設計された。 連載第1回の竹内郁雄氏が「開発」の天才、第2回の五十嵐悠紀氏が「発想」の天才とするならば、今回の林氏は「プログラミング言語」の天才だ。 林氏がプログラミング言語に初めて触れたのは中学3年の夏休み。そこから冬休みまでの5カ月間に、5つのプログラミング言語を習得した。その後もいくつかのプログラミング言語を学ぶ中、林氏の興味はWebサービスなどのものづくりには行かず、ひたすら言語自体へと向かっていった。 高校2年の春、自身でプログラミング言語Cyanを作り上げた。Cyanを設計した林氏は、「U-20プログラミング・コンテスト」(以下、U-20プロコン)で経済

    Cyanを設計した高校生、5カ月で5つの言語を習得
  • 子供向けのオープンソース・プログラミング言語 | OSDN Magazine

    この2年間で、子供を対象とするオープンソースのプログラミング言語とユーティリティの数は爆発的に増えた。こういった活動の根底にあるのは、BASICの時代と比べてプログラミング環境があまりに複雑になり、専門知識のない若年層には敷居が高過ぎるという考えだ。あるツールキットは若年層にアピールするゲームやアニメーションなどのプロジェクトを構想、作成するまったく新しい方法の考案を目指し、またあるツールキットはBASICの”ベーシック”性をモダンな言語と環境に再現しようと取り組んでいる。 Scratch Scratch MITのLifelong Kindergartenグループが開発したScratchは、Squeakに実装されたグラフィカルなプログラミング環境であり、その操作方法はLEGOの遊び方によく似ている。基的に、カラフルなコードのブロックを組み立てることでプログラムを作成する。独自のインターフ

    子供向けのオープンソース・プログラミング言語 | OSDN Magazine
  • いきなりCの方がよっぽど難しい : 404 Blog Not Found

    2008年12月17日12:30 カテゴリLightweight Languages いきなりCの方がよっぽど難しい さすがにJavaPHPはなかったけど、高級言語を先に学ぶというのは今にはじまったことじゃない。 304 Not Modified: プログラミング初心者はギークから学べるのか そんな私が学んできてずっと思っていたことは、私はC言語から学び、JavaPHPと進んできたが、今の人はいきなりJavaPHPから学ぶのである。構造化プログラミング言語からオブジェクト指向言語へと順を追うのではなく、いきなりオブジェクト指向言語を学ぶのだ。はっきりいって理解できるのか非常に疑問にう。404 Blog Not Found:初心者向け言語もいろいろComputer Scienceをきちんと教えている学校の多くは、最初の一年の前半に scheme を教えて、後半に C と assembl

    いきなりCの方がよっぽど難しい : 404 Blog Not Found
  • 金子勇@SkeedCastは、根っからのプログラマ!|【Tech総研】

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

  • 正規表現の入門(1) 基礎的なメタ文字

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    正規表現の入門(1) 基礎的なメタ文字
  • 中途半端に優秀なプログラマが「正しいプログラミングテクニック」だと妄信しがちな3つポイント - 分裂勘違い君劇場

    「変数のスコープは狭いほど良い」と妄信する 変数でもメソッド名でもクラス名でも言えることだが、単純に「スコープは狭いほどよい」という方針でプログラムすると、逆に保守性も可読性も悪いプログラムができあがることがけっこうある*1。 実際、「あちこちから頻繁にアクセスするようなオブジェクトやメソッド」は、スコープをぐっと広くしてしまった方が(場合によってはグローバル変数やグローバル関数にしてしまった方が)、いちいちパラメータ渡しのバケツリレーをせずに、オブジェクトや機能を使うことができ、プログラムの可読性も保守性もずっと向上することがけっこうある。 たとえば、プログラムのいろいろな箇所から比較的頻繁にアクセスする必要があるようなオブジェクトや機能がバインド(格納)された変数やメソッドのスコープをクラスやメソッド内のローカルにして、それを使うときは、いちいち各クラスやメソッドにパラメータ渡しのチェ

    中途半端に優秀なプログラマが「正しいプログラミングテクニック」だと妄信しがちな3つポイント - 分裂勘違い君劇場
  • プログラミングテクニックのまとめ - プログラミング日記

    とりあえず思いついたもののまとめ。 まずは、ベーシックなものから。 変数のスコープをなるべく狭くしろ 他はグローバル変数を使うなとか、モジュール化と界面を意識せよなど。とにかくスコープは重要かつ意外と奥が深い。スコープに関係する機能は、モジュール(パッケージ)、クロージャ、ローカル関数、ローカルクラス、変数の種類、アクセス制御など。 同じロジックのコードを2度以上書くな 他はDRY原則、コピペをするななど。自分の場合、2度書く方がシンプルになる場合、2度書くこともある。特に、ifやswitchなどのロジックの中で同じコードが2度現れる場合、ちょっとしたコードでわざわざ別のところで関数やブロックにまとめて、それを参照するのは面倒。但し3度以上現れる場合は関数などにまとめるケースが多いかも。 汎用コード内で条件分岐コードを減らせ 他はifをポリモーフィズムによりなくせなど。条件分岐は汎用性を損

    プログラミングテクニックのまとめ - プログラミング日記
  • 最初に学ぶプログラミング言語は - Radium Software

    In Praise of Scripting: Real Programming Pragmatism - Lambda the Ultimate IEEE Computer に掲載された一記事に対する LtU での議論。 CS 教育に用いる言語 ― つまり「大学で最初に教えるプログラミング言語」は,いいかげんスクリプト言語を選んでもいいのでは? という意見。 当にショックなのは,プログラミング言語の学術コミュニティが,スクリプティングによってプログラミングの現場に引き起こされている大きな変化を受け入れずにいるということです。オブジェクト指向のパラダイムに夢中になるがあまり,特に学部生のカリキュラムにおいて LAMP (Linux-Apache-MySQL-Perl/Python/Php) ツールセットを受け入れようとしません。より多くのプログラミング理論がより優れたプログラミングの実践

    最初に学ぶプログラミング言語は - Radium Software
  • テスト技法ポジショニングマップ

    This domain is registered at Dynadot.com. Website coming soon. hayst.com 2023 著作権. 不許複製 プライバシーポリシー

  • ITエリートのアツ~イ夏合宿、今年も開幕「セキュリティ&プログラミングキャンプ2008」:CodeZine

    経済産業省が2004年から開催している「セキュリティキャンプ」が今年から新にプログラミングコースを設け、下は中学生(14歳)から大学生(22歳)まで計46名の学生が全国から幕張の財団法人海外職業訓練協会(OVTA)に集まった。17日までの5日間にわたる合宿で、第一線のエンジニアによる集中講義を受けるとともに、同行の士としての友好を深め合う。 セキュリティコースは120名の応募者から選ばれた29名が、サーバ、Webプログラミング、ネットワーク、解析の4クラスに分かれてそれぞれの専門科目と、ハニーポットや不正実行防止などの自由選択科目を学ぶ。今年から新設されたプログラミングコースでは、140名の応募者から8倍以上の倍率を勝ち抜いた17名が、C言語やJavaScriptによるプログラミングを実習し、オープンソースソフトウェアなどについて理解を深める。 13日午後の開講式で、実行委員長の三輪信

  • OOコード養成ギブス - rants

    Binstock on Software: Perfecting OO's Small Classes and Short Methods The Pragmatic Programmersシリーズの新しい、The ThoughtWorks Anthologyの中に 興味をそそるエッセイがある。Jeff Bayの"Object Calisthenics"だ。 これは良いオブジェクト指向の性質を実証する小さなルーチンを書く方法をマスターするための 詳細にわたるエクササイズだ。オブジェクト指向なルーチンを書く能力を向上させたい開発者がいるなら このエッセイに目を通すことを勧める。ここにBayのアプローチを要約してみよう。 彼は次にあげられる制約のもとに1000行のプログラムを書くことを勧めている。 これらの制約は意図的に過剰な制限となっているが、これは開発者を手続き的なやり方から脱却させるた

    OOコード養成ギブス - rants
  • C++ > ポインタなんて簡単だ

    C言語の最初の難関と言われる「ポインタ」ですが、その実態が分かってしまえばたいしたことはありません。C言語以外のプログラミング言語にはポインタが無いと思われがちですが、実際には存在します。他の言語ではポインタに対する演算が行えないだけです。演算を行えない代わりに、プログラマがポインタを使えなくても困らない仕組みを言語体系に組み込んでいるのです。 つまり、C言語以外の言語はある意味、自由度が下がっているといえます。ポインタは存在するのに、それに対する演算が許されていないわけですから、不自由になったと言えるわけです。しかし、自由であればあるほど、それを使いこなすには技術を要されるということでもあり、多くの人がつまづくポインタを使わなくても済むようにした言語が考案されることもうなづけます。 しかし、来ポインタはそんなに難しいものではないと思います。ポインタとはメモリ上に配置されたデータがど

  • http://et2001.mech.okayama-u.ac.jp/numeric/program.html

  • プログラミングファースト開発の必要性 - ひがやすを技術ブログ

    ここではフローチャートの是非を論じるつもりはない。クソだから。もっと一般化してしまえば、○○設計書みたいに「設計書」と名のつくものは全部クソだ。だって動かないんだもん。 動かない以上、それら設計書が正しいのか、漏れがないのかは保証のしようがない。机上検証なんていう工程もあるらしいけど、君たちの脳味噌は何MIPSなんだと問い詰めたい。もちろん、机上検証で見つかる凡ミスもあるだろうけど、そんなのはズボンもパンツも履かずに会社に向かうのと同じくらいのレベルの間違いだろう。 結局はコードを仕上げてから動かして初めて「だめだこりゃ」ということになる。 ○○設計書は、動かないから検証ができない。だから、だめだというのは、半分あっていて半分間違っていると思う。システム開発の大多数は、最初に○○設計書を作成する。顧客にレビューしてもらったり、自分たちでも内部レビューしたりするが、あれは、有効性が低い。 動

    プログラミングファースト開発の必要性 - ひがやすを技術ブログ