タグ

devとprogrammingに関するtaloのブックマーク (8)

  • 更新履歴兼雑記 抽象化を嫌う理性的な理由を少し考えてみた

    過度の抽象化はダメ、とかアーキテクチャ宇宙飛行士がどうこう、っていうのはまぁ正しいとして、普通に抽象化してもいいかな、って局面でも、まだ抵抗がある時があって、それがなんでかなぁと考えたという話。 おぶじぇくとしこーでふわふあーとかでざぱたもげもえーとか、 DI でむにむいーとか、そういった抽象化されて整理されたコードは全般的にメンテしやすくなって、ソースを変更しても汚くなりにくい、とかそういうのは一応わかってはいるつもりなのですが、常に絶対必ずやるべきだ、と言われると強い反感を覚えるわけです。 まぁもともと「絶対暴力はいけない」とかそっち系の命題は嫌いなのもあると思うのですが、プログラムにおける抽象化の場合はそれ以外にもあるなぁと。 で、何かっていうと、ちゅーしょー化はたしかに、数百行の変更には強くなるのですが、数十行以下のダーティハックはしにくくなるよな、と。 こいう話の時は必ず私が出す

    更新履歴兼雑記 抽象化を嫌う理性的な理由を少し考えてみた
    talo
    talo 2010/01/29
    抽象化は大きな変更には強くなるが小さな変更は面倒になる
  • ソフトウェア工学とは何か

    ソフトウェア設計とは何か? (原文: 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.

  • コードとデータの合従連衡 : 404 Blog Not Found

    2006年11月20日13:45 カテゴリArt コードとデータの合従連衡 実はその逆の設問もありうる。「プログラムはデザイナーのものなのか」。 矢野勉のはてな日記 - PHPJavaのJSPやRubyのeRBのクールじゃないところ simfonyの10分デモを見てて考えたことがきっかけではあるんだけど、実はRuby on Railsの勉強でを読んでた時にも思ったこと。彼らはHTMLファイルにコードを書くことをなんとも思ってないんだね。もちろん、プログラマからすればその方が早いのかもしれないけどね、私には「HTMLはプログラマのものなの?」という思いがあります。 プログラマーに限らず、「プロ」は、分業する際お互いの領域を侵さないようにするのが作法(best practice)であると、プロの多くが思い込んでいる。「コードとデータの分離」をプログラマーが耳たこのように聞かせられてきたのも

    コードとデータの合従連衡 : 404 Blog Not Found
  • GREEが明かすオープンソース活用の実際 - @IT

    グリーが運営するソーシャルコミュニケーションネットワークサイト「GREE」では(GREE体を除く)すべてのソフトウェアをオープンソースで構築している。OSはDebian GNU LinuxでリレーショナルデータベースはMySQL 4.0.x、全文検索機能はMySQL 4.0.xとSennaというオープンソースの検索エンジンを組み合わせている。WebサーバもApache 1.3.xで、画像処理系はImageMagick 6.2.x、プログラミング言語はPHP 4.3.xあるいは一部5.1.x。そのほか、キャッシュサーバ、アプリケーションフレームワーク、外部監視、グラフ化、そのほかの周辺ツール……「とにかくすべてがオープンソース」だとグリーの取締役最高技術責任者 藤真樹氏はいう。 デブサミ(Developer Summit)2006スピーカ資料によると、参加者の23%が製造業で占められてい

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

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

    プログラミングとは経営判断の集積である - 分裂勘違い君劇場 by ふろむだ
  • MOONGIFT - JSDoc - オープンソースによるIT戦略支援 -

    Nihongo Benkyo レビュー ダウンロード、解凍 公式サイトへ行き、Nihongo Benkyoをダウンロードします。2005年12月24日現在の最新版は0.3です。Windows版であれば「nihongobenkyo-0.3.1.mswin32.zip」です。 (クリックすると拡大します) (クリックすると拡大します) 解凍すると次のようなファイル構成になっています。 (クリックすると拡大します) 他に必要なものをダウンロードスする。 Windowsの場合、RubyGTK+/Win32が必要です。それぞれダウンロードします。 (クリックすると拡大します) (クリックすると拡大します) (クリックすると拡大します) 起動 起動すると次のよう画面が表示されます。 (クリックすると拡大します) これは設定画面です。 (クリックすると拡大します) 設定画面のDictionariesタ

    MOONGIFT - JSDoc - オープンソースによるIT戦略支援 -
  • 「現物主義」に基づいたソフトウェア開発手法

    This domain may be for sale!

  • Rubyでアジャイルプロトタイピング(1) ― @IT

    想定する読者はこういう人々 連載では、新たなアプローチでプロトタイピングを行い、アジャイルかつ正確にクライアントからの機能要件を取りまとめることを提案します。読者には、次のような方を想定しています。 上流工程に携わっているが、うまく進まず悩んでいる これから上流工程に挑戦しようとしている 下流工程でコスト、労力が増大してしまったが、その原因は上流工程にあったと感じている 上流工程の進め方について、新しいアプローチを模索している 連載では、プロトタイピングに使用するツールとして、オブジェクト指向スクリプト言語であるRubyと、Ruby上に構築されたWebシステムフレームワークであるRuby On Rails(以下:RoR)についても説明し、実際に要件定義からプロトタイピングを作成してみるところまで行う予定です。 なお、Webシステムの開発を前提として解説を行いますが、クライアントサーバシ

    Rubyでアジャイルプロトタイピング(1) ― @IT
  • 1