タグ

programmingとreadingに関するtaloのブックマーク (14)

  • ソフトウェア工学とは何か

    ソフトウェア設計とは何か? (原文: What Is Software Design?) by Jack W. Reeves (c)C++ Journal - 1992 訳者まえがき この文書は,Jack W. Reeves 氏が1992年に C++ Journal に寄稿した記事の邦訳です。 記事では,オブジェクト指向プログラミング言語の代表として C++ を挙げていますが,これは記事が執筆された当時,一般的に利用可能なオブジェクト指向言語は C++ だけであったという事情があるためです。 今では C++ に加えて Java,Delphi,C# といったオブジェクト指向言語が利用可能となっていますが,そんな今でさえこの記事は古さを感じないものとなっており,ソフトウェア開発の質,現状を鋭くえぐるものとなっています。 邦訳の公開を許諾していただいた Jack W.

  • オブジェクト指向関係資料集

    オブジェクト指向関係資料集 上の方から読む順番に並んでいます。OCP(Open closed principle)が最も基的な 原則で、他のほとんど記事はこのOCPに基づいているようです。かなり以前に、 しかも時間の無い中強引に訳したものであるため、間違い等も含まれると思いますので、 発見された方はご一報ください。 Robert C. Martin氏が出版を予定されていた書籍が文中で度々現れますが、 おそらく「Agile Software Development: Principles, Patterns, and Practices 」の ことで、現在邦訳も出版されています。 「アジャイルソフトウェア開発の奥義」 ロバート・C・マーチン (著), 瀬谷 啓介 (翻訳) また、ここで掲載した資料は、Javaの学習者向けに作られたものであるため、

  • 関数、オブジェクト、クロージャ - FAX

    (thanks to id:koyachi、del.icio.us/rtk2106) OOPとFPと。関数、オブジェクト、クロージャの使い分けについて考えます。 関数型が良いのか、オブジェクト指向が良いのか、知りたいと思っていました。色々なページを読み、現時点で一応の答えを得ました。 カウンタを例にして、関数、スコープ、オブジェクト、クロージャの順に見て行きます。関数関数は処理です。入力と出力があります。関数型プログラミングでは、関数同士の入力と出力を連結しプログラムが構成されます。 var current = 0; function next(v){ return v + 1 } function previous(v){ return v - 1 } ok( 1 == ( current = next(current) ) ); ok( 2 == ( current = next(cu

  • OOP is dead

    Sure, that sounds dramatic, but I really think that OOP reached it's peak and is on the decline. In the last time we saw increasing interest in functional programming languages and concepts from functional programming (like closures, continuations etc). Many people want to see those concepts available in well known OOP-languages like Java, C#, C++ etc. And the language designers reacts and are sta

  • 檜山正幸のキマイラ飼育記 - 世界で一番か二番くらいにやさしい「モナド入門」

    気まぐれと偶然となりゆきで、ここ2,3回はモナドを話題にしました。googleで「モナド」を引いてザッと眺めると、「モナドはむずかしいー」とか「モナドで挫折した」みたいな雰囲気が感じられて、説明芸人の血が少し騒ぎましたね。「なら、予備知識ゼロでモナドの説明をしてやろうじゃねーか」と。 タイトルはだいぶ煽っちゃった…… けど、ハッタリじゃないつもり…… けど、実際はどうかな? ※印刷のときはサイドバーが消えます。 内容: とりあえず、あたりさわりなくモナドの来歴を紹介する こんな課題を考えてみよう:副作用付き計算 カウントアップする関数達 カウントアップしたい意志を戻り値で伝える それでは、いったい誰がカウントアップをするのだ 関数の引数の型をCountup型にまで拡張する そして、これがモナドだ とりあえず、あたりさわりなくモナドの来歴を紹介する 今からここで説明する「モナド(monad)

    檜山正幸のキマイラ飼育記 - 世界で一番か二番くらいにやさしい「モナド入門」
  • Martin Fowler's Bliki in Japanese - 言語ワークベンチ

    以下の文章は、Martin Fowler による 「Language Workbenches: The Killer-App for Domain Specific Languages?」 の日語訳である。 ソフトウェア開発における新しい考えの多くは、実は古い考えの新しい組み合わせ方です。この記事では、その新しい組み合わせ方のひとつ、私が「言語ワークベンチ(Language Workbenches)」と呼んでいるツールについて説明します。これは、現在広まりつつある考え方で、たとえば、Intentional Software、JetBrainsのMeta Programming SystemMicrosoftのSoftware Factoriesなどが例として挙げられます。これらのツールは古い開発スタイルを採用しており、私はこれを「言語指向プログラミング(language oriente

  • IT Professionals

    メタソフト CTO 早川てつろう 最終回 「語りえぬこと」〜言語の限界〜とは この連載も,いよいよ最終回となった。最後に,「論考」の結びの言葉である「語りえぬものについては沈黙せざるをえない」と,プログラミング言語の関係について考えてみたい。 メタソフト CTO 早川てつろう 第11回 オブジェクトは現実世界の像だ 前回,オブジェクトと変数について話をした。今回は,このテーマを補足する意味で,ウィトゲンシュタインの「像」という概念について説明する。 メタソフト CTO 早川てつろう 第10回 オブジェクトは変数だ プログラムを作るには,どんなプログラムを作るかという設計図が必要だ。この設計図のことを通常,「詳細仕様書」や「プログラム仕様書」と呼ぶ。プログラマは,それらの仕様書に従ってプログラムを作る。 メタソフト CTO 早川てつろう 第9回 プログラミングと実行 プログラミング言語で書か

  • OBB vs AABB - Radium Software Development

    iPhoneの一般修理店は予約なしでも来店できる? 基的には飛び込みで修理に行ってもOK iPhoneを置いていたソファにうっかりと腰かけてしまい、パネルを割ってしまった、こんな時はスマホの一般修理店へ行きましょう。画面割れは、スマホやタブレットの故障原因として非常に多いものです。予約なしで突然お店に行っても平気かしらと、不安に思う方々もいらっしゃるかもしれません。結論としては特に問題はなく、予約なしで訪問しても画面割れの修理はお願いできます。 ただし他のサービス業のお店同様、予約なしの場合、お店が混雑していると順番待ちをしなければいけないです。特に繁盛しているスマホ修理のお店だと、行列が店内で出来ており、予約なしだと、自分の順番が巡ってくるまで長時間待たされる可能性があります。平日の朝、昼なら利用客が少ない場合が多く、飛び込みでも比較スムーズに修理が頼めます。 予約は入れた方が時短に、

    talo
    talo 2006/04/08
    例がわかりやすい。
  • 『極めよRuby道』の記事一覧

    『極めよRuby道』の記事一覧 ここは,ソフトバンクパブリッシングの月刊誌『C MAGAZINE』に2000年8月号から2001年4月号まで連載された『極めよRuby道』のサポートサイトです. 第1回 - 変数とテキスト処理 記法, 変数概念, 漢字コードと文字列リテラルや正規表現の関係など, 基的なことを中心に解説しています. 第2回 - イテレータあれこれ Rubyのもっともおいしい部分のひとつ, ブロックつき呼び出しについて. 手続きをパラメータとして渡すブロックつき呼び出されるメソッドは, イテレータと呼ばれることもあります. 第3回 - メソッド間の依存関係 メソッドの連係プレイで成り立つ部分は動的なRubyの醍醐味かも知れません. そんな部分を紹介しています. 第4回 - テキスト処理の実例 Ruby Document(RD)はコメントによるドキュメントのための

  • プログラミングとは経営判断の集積である - 分裂勘違い君劇場 by ふろむだ

    ソースコードの一行一行は、経営判断そのものだ。 どの部分を汎用的につくり、どの部分をやっつけで作るか、そして、どの部分をパフォーマンス優先でつくり、どの部分を可読性優先でつくるかは、そのソフトウェアステムを使って今後どのようなビジネス展開をするか、ということと一体不可分だ。プログラマーは、絶え間なく改変されていく部分と、財産として今後も使われつづけそうな部分を意識しながらコーディングする。そして、ここでいう財産とは、プログラマが財産とみなすものであるだけでなく、同時に経営的・財務的な意味においても財産であり、会社のバランスシートの「資産」の項目に登場するような性質のものだということは、多くのエンジニアが漠然としかいしきしていないように見える。 「このルーチンは、時間がかかっても、汎用的なライブラリやフレームワークにしておこう」、とエンジニアが「なんとなく」決めたとき、実は、そのエンジニア

    プログラミングとは経営判断の集積である - 分裂勘違い君劇場 by ふろむだ
  • Joel on Software -

    プログラマのためのユーザインタフェースデザイン 第 1 章 第 2 章 第 3 章 第 4 章 第 5 章 第 6 章 第 7 章 第 8 章 第 9 章 ストラテジーレターV 2002年6月12日 ミクロ経済学の補完財の原理について考えていて、私はオープンソースソフトウェアに関する興味深いあることに気がついた。それが何かというと、オープンソースソフトウェア開発に多額の資金を使っている企業の多くは、それが彼らにとって良いビジネス戦略だからそうしているのであって、突然資主義を信じるのをやめて、「言論の自由と言うときの自由」に浮かれるようになったわけではないということだ。ストラテジーレターⅤ 5つの世界 2002年5月6日 5つの世界:すべてのソフトウェア開発が同じではない。 追記:インターナルシステム、コンサルウェア、パッケージソフトの間には大きなグレーゾーンがあり、この3つの世界はしばし

  • 「本物のプログラマ」もNEETになり得る御時世の処世術 - 雑種路線でいこう

    ぼくはIT業界の中で技術者からマーケティングに移った人間で、最初こそ張り切ってコトラーとか読んだけど、外資系企業で日法人にいて3Cとか分析しても4Pのどれも殆ど触れないことに気づいて、これじゃマーケティング戦略の勉強にはならないなぁと感じて途中から技術渉外っぽい仕事に路線変更した。*1技術渉外というのも一風変わった仕事で、似たような仕事があるといっても非常に限られているだろうし、日企業のそういった部署で中途は採ることは少ないだろうから、日々潰しが利かなくなっているのではないかという不安はある。けれどもまぁ、英語とか段取りとか、自分の苦手なところを鍛えつつ、少し突き放して業界の仕組みを眺める居場所としては面白い。 どこかでいざとなったら技術者に戻れるという気持ちもあって、Virtual PCLinuxとかの環境はつくっているし、手元の環境には一通りのコンパイラは入れているし、研究所でつ

    「本物のプログラマ」もNEETになり得る御時世の処世術 - 雑種路線でいこう
  • http://www.01-tec.com/document/data_oriented02.html

  • http://www.01-tec.com/document/data_oriented01.html

    talo
    talo 2005/11/13
    コーディングスタイル
  • 1