タグ

プログラムに関するkatzchangのブックマーク (55)

  • (Forum) 私はなぜフレームワークが嫌いか - The Joel on Software Translation Project

    BenjiSmith / 青木靖 訳 2005年9月30日 金曜 私は現在JavaによるWebアプリケーションの構築を計画している(そう、様々な理由のためにJavaである必要があるのだが、それについては今は話したくない)。その過程で私は、ポートレットをサポートしたJSR準拠のMVCロールベースCMS WebサービスJ2EEアプリケーションのコンテナフレームワークを数多く評価した。 機能リストやドキュメンテーションに目を通すのに何十時間も費やしたのち、私は自分の目玉をえぐり出したくなった。 たとえば私がスパイスラックを作ることにしたとしてみよう。 私は小さな木工プロジェクトを前にもやったことがあり、何が必要になるだろうかについては十分に理解している。木片と、それに巻き尺や鋸や水平器やハンマーといった基的な道具だ。 ただのスパイスラックでなく、まるまる一軒の家を建てるのだとしても、私は依然と

    katzchang
    katzchang 2007/12/04
    ファクトリーファクトリーファクトリー。環境設定管理のためのプログラムとか書き出すと要注意ってこった。
  • もっと楽しむ! プログラミング言語 「豆」談義:第1回 古くて新しい関数型言語「Lisp」|gihyo.jp

    はじめに「僕たちは今……」 人間の思考に、ことば――すなわち言語は欠かせないものです。考えごとをするときに、ことばを使っていない人はいないでしょう。 さて、僕達は今、コンピュータを身近に感じる世界にいます。 コンピュータというのは、ハードウェアとソフトウェアに大きく分けることができますが、ソフトウェアはさまざまなプログラミング言語を用いて書かれたプログラムで構成されています。 プログラムの重要さは、コンピュータのハードウェアを変更しなくても、中のプログラムを変えることによってコンピュータの用途を「計算」「⁠文書作成」「⁠ゲーム」「⁠勤怠管理」「⁠ショッピング」と変えることができることからもわかります。つまり、皆さんが「コンピュータって便利だね」と、言うときに指すコンピュータとは、プログラミング言語で書かれたプログラムのことなのです。 そのプログラミングの始まりは、チャールズ・バベッジが作成

    もっと楽しむ! プログラミング言語 「豆」談義:第1回 古くて新しい関数型言語「Lisp」|gihyo.jp
    katzchang
    katzchang 2007/11/01
    Lispでは関数そのものを動的に生成。なるほど。しかし、複数ページのサイトはブクマしにくい。
  • Jbehaveを使ってみた。 - うなの日記

    るびまのRSpecの記事を見たときから密かに気になってた振舞駆動開発 (Behaviour Driven Development:BDD)ですが、IBM developerWorks ビヘイビア駆動開発を舞台にした冒険より「Jbehave」というJavaでBDDするライブラリがあるらしいのでちょっと使ってみました。 振舞駆動開発とは何か。何がうれしいのか。 るびまのRSpecの記事で熱く語られています。 個人的なイメージはこんな感じ。注:間違っている可能性大です。真に受けないでくださいね。 Jbehaveを使うと、API仕様を書くのと同じ文法でテストが書ける! 「APIの詳細仕様」=「振る舞いを定義したコード」=「テストケース」になる! なので、「振る舞いを定義したコード」さえ書けばあとの2つはいらない→早く帰れる! Jbehaveを使ってみる Jbehaveを使ったテスト手順の概要は次の

    Jbehaveを使ってみた。 - うなの日記
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • ひがやすを blog - S2JDBCについてもう少し言っておくか

    何をもって10倍と言うのか、、、と思ったんだけど、 何に比べて生産性が10倍かというとJava標準のJPA(Java Persistence API)に対してです。 相手が悪い。 JPAと比べてどうするのって思う。 S2Daoと比較することで、S2DaoのユーザをS2JDBCに移行させることにどれほど意味があるのかは疑問です。それで、Seasar2のユーザが増えるわけではないから。 これまで、Seasar2のユーザではなかった人たちが、S2JDBCの生産性の高さに引かれて新規ユーザになってくれるのが望ましいシナリオではないでしょうか。 JPAはJavaの標準だし、比較対照としては妥当だと思います。標準だけど、生産性は高くない。一見簡単そうだけど、はまりどころが多くて結局生産性は悪くなる。だから、生産性を比較しやすいって「ずるい」計算もあります。 jdbcManager.callBySql(

    ひがやすを blog - S2JDBCについてもう少し言っておくか
    katzchang
    katzchang 2007/10/27
    SQL発行でよく文法ミスするけど、俺だけじゃないよね。
  • 「ゲームとオブジェクト指向と一流の条件」 - カレーなる辛口Javaな加齢日記

    http://d.hatena.ne.jp/shi3z/20071016/1192519532 どうも最近、若い「プログラマ」の方々と話をすると話が噛み合ない。 話をよーく聞いてみると、クラスとオブジェクトの区別がついていなかったり、継承と集約(とコンポジション)の区別がついていなかったりして、「もっと多態性を活かしたクラス設計にしなさい」と言うと、「多態性ってなんですか?」と逆に聞かれる始末で、これってゆとり世代よりずっと深刻なんじゃないかと思ったりした。仮にもプロとして。 これには全く同意. クラスとオブジェクト(インスタンス)の区別やポリモフィズム/多態性はOOPの基中の基だ.多態性/ポリモフィズムという「単語」は必ずしも知らなくてもいいけれど,そういう機能を使ったコードが書けないし,そういう発想がない人が多すぎる.それでJavaC++Rubyを使ってると言うのはおこがましい

    「ゲームとオブジェクト指向と一流の条件」 - カレーなる辛口Javaな加齢日記
    katzchang
    katzchang 2007/10/18
    「三流」とどう付き合うかを考えた方が現実的だと思う。自分で勉強しろったって、勉強しないやつを簡単にクビにできたらいいんだろうけど。
  • 長文日記

    katzchang
    katzchang 2007/10/18
    「若い『プログラマ』」だけじゃない。世の中のレベルは、期待するほど高くない。
  • #define private public - 神様なんて信じない僕らのために

    というのを見かけて、ちょちょちょ!! と思った。

    #define private public - 神様なんて信じない僕らのために
    katzchang
    katzchang 2007/10/16
    テスト/デバッグ用としてはいいかも…。ガサ入れな感じで。ちゃんと動くなら…ですけど。
  • 「渡された仕様書を実装するサラリーマンプログラマ」の悲哀

    @ITの「業務用途でRubyを使う上での課題 」を読んでなんだか悲しくなった。 チーム開発でRubyを使ったときに今後起こりえる問題として、サン・マイクロシステムズ システム技術統括部 チーフテクノロジストの下道高志氏は、こう指摘する。「他人の書いたPHPコードのメンテナンスはできない。Rubyはどうかといえば、現状はいい。しかし今後“職業プログラマ”ではなく、渡された仕様書を実装する“サラリーマンプログラマ”が増えてくると、コードのスパゲッティ化は避けられないだろう」。 【業務用途でRubyを使う上での課題 − @ITより引用】 これは言語の問題ではなく、日のソフトウェア産業全体が抱える問題。以前にも「ソフトウェアの仕様書は料理レシピに似ている」というエントリーで書いたが、来のソフトウェア作りとは、絵を描いたり、音楽を作ったり、建物をデザインするのと同じ「創作活動」である。ドラッ

    katzchang
    katzchang 2007/10/11
    ってか、プログラムは仕様書そのものでしょ。他の「仕様書」にはない厳密性・テスト可能性を備えた、唯一の仕様書。
  • 業務用途でRubyを使う上での課題 - @IT

    Rubyがビジネスの現場で静かに普及し始めている。Twitterや、はてなスクリーンショットなど、Webサービスの開発フレームワークとしてRuby on Railsを使った例は、いまや珍しくなくなった。Rubyを普及推進する「Rubyアソシエーション」という法人格を持つ団体が設立されたことや、Rubyが一般紙などマスコミで取り上げられる機会が増えたことなどから認知が進んでいる。 国内の大手でも、例えば楽天Ruby on Rails導入を進めている。楽天技術研究所の森正弥氏によれば、「現在、楽天で使う開発言語は40%がPHP、40%がJava、20%がその他」とRubyの利用率は低いが、内部的にRubyの利用を進めているほか、今後はユーザーの目に触れるフロント部でもRubyの適用を進めるという。 7000台のサーバ、1000人の開発者という大所帯を抱える楽天だが、より広くRubyを使うに当

    katzchang
    katzchang 2007/10/11
    「rubyの楽しさ」ってよく強調されるけど、説得力ない。新しい技術に触れるアーリーアダプターが楽しそうにしてる風景は想像できるが、それは「rubyの楽しさ」とは違う。
  • テストファーストの弊害

    テストファーストは、XP(エクストリームプログラミング)の中でも特に広く浸透したプラクティスの1つである。 テストファーストは、モノを作るよりも前に、まずテストから着手する、という手法だ。モノが無ければテストできないという常識を、根からひっくり返す斬新なアイディアは、多くのソフトウェア開発者に衝撃を与えた。 テストファーストは、短期開発におけるXPの有効性が認められ、JUnitなどのテストツールが普及した今では、広く受け入れられるようになった。 だが、このようなまったく新しい手法は、初めはなかなか受け入れられ難いが、いったん受け入れられると、今度は逆に、魔法の技術であるかのように盲信されやすい。テストファーストについても、最近では「JUnitでテストコードを書いていれば、ソフトウェアの品質は問題ない」という風潮が広まりつつあるような危惧も感じる。 テストファーストの効果は、多くの人が認め

    katzchang
    katzchang 2007/10/04
    銀の弾丸じゃないってことだろか。テストファーストじゃなくて詳細設計でも、同様の問題はある。むしろ自然言語ドキュメントよりソース+コメントの方が明確、読みやすいと思う。
  • Apple Developer Connection(日本語)

    visionOSに向けた構築 まったく新しいプラットフォームでデベロッパの新世界が広がります。

    Apple Developer Connection(日本語)
  • ハタさんのブログ : Javascriptによる大規模開発の覚え書き

    未だに半年前のエントリにブクマされるみたいなので、もう少しjavascriptについて書いてみる。 今回は大規模化開発におけるJavascriptの注意点とかそういうの。当てはまらない環境の方もいます。(しかも基的な事だらけで大したことは書いてないです) ほぼリッチクライアントを主目的としたjavascripterとコードを対象とします。 どちらかというと、ライブラリを提供する側の視点から 1.ログを出力せよ あなたが書いたコードは遅い、と必ず言われます。なので言われる前から、自分の書いたコードの処理時間をログするようにしましょう。 次のような処理時間を計測するロガーを作ります。 var TraceLog = function (){ this.startTime = -1; var outer = document.getElementById('_outer'); if(oute

  • フレームワーク脳 vs ライブラリ脳

    katzchang
    katzchang 2007/09/25
    「そりゃマシン語なんて覚えてる場合じゃないよ」ホント、そーなんですって。この人は低レベル指向ってのが結論かな。ライブラリ脳とOO脳は微妙かも。ajaxの通信先としてサーブレット使ってましたよ。かなり素朴に。
  • Ajax/Javascript/Dhtml examples and demos to download

  • Yoshioriの日記: だったら Java でも良いじゃないか!!

    諸君!!俺は Java が好きだ!! って書いてみたかった。 言語論争あんまり好きじゃないから あんまりそれらしいこと書いてなかったけど ちょっとだけ書いてみます。 「j」が付かない方の Yoshiori から見た Djangoへの片思い日記 - Struts脳の恐怖とRails ということで♪ いわゆる高級言語というのは 人間が書きやすい&読みやすいという側面も大きいと思っています。 で、完全に僕の主観ですが Java のソースコードは凄く読みやすいです。 他の言語がメインの人に聞いても 「やっぱり Java は読みやすいよね」 と、言われることもあります。 さて、実際にプログラムを書くときですが、 そのプログラムの稼働期間はどのくらいでしょうか? 開発期間より稼働期間のほうが長い場合、 保守などでコードを書く時間より 書いたコードを読む時間のほうが多いときがあります。 複数人で書いてい

    katzchang
    katzchang 2007/09/22
    言語も広義ではフレームワークなんだなぁ。使い方しだい。
  • COBOL屋の呪縛 - masayang's diary

    今回の日出張ではいくつかのプロジェクトの状況をみてきた。で、思ったこと。 「COBOL時代のデータ構造を引きずることで、生産性や保守性が落ちている」 フラグだらけのマスター 物のコードをだすわけにはいかないので、すごく簡略化した例で説明したい。あるシステムを利用できるユーザのマスターテーブルがあるのだけど、そいつには「なんちゃらサービス利用可否フラグ」みたいなのがたくさんついているのね。 この方式の問題は以下の通り。 テスト負荷 フラグがあるということはそれをチェックするif文があるということ。 if文があればテスト件数は最低2件は増える。 入れ子になれば、4件、8件...と増えていく。andやorでも同じ。 コードの冗長性 「あるユーザがサービスAを使えるか」を調べる処理と「あるユーザがサービスBを使えるか」を調べる処理はほぼ同様になることは明らか。 「サービスAを使えるユーザ」を調

    COBOL屋の呪縛 - masayang's diary
    katzchang
    katzchang 2007/09/22
    全体的に超同意。おまけはアンチパターン。フィラーは1回しか見たことないけど。↓純粋なCOBOL屋さんは40代くらいまでだと思うけど、その子や孫が多数いるんじゃないかと。
  • ソフトウェア工学とは何か

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

  • アルゴリズムを知らない子ども達 - val it : α → α = fun

    This entry was posted by Jun Mukai on Wednesday, 12 September, 2007 あまりも当たり前過ぎて21世紀に入ってから言葉にだしたことはあまりないのですが、当然のことながら、プログラムというのは、アルゴリズムを理解して初めて「書ける」と言うのです。 プログラムが書ける、という状態は「アルゴリズムを理解する」という状態の延長線上にあるべきで、アルゴリズムを理解していないということは挙動を理解していない、つまりプログラムを理解していないのとほぼ同じだと思います。 最近はLLと呼ばれる、いわゆる軽量スクリプト言語がメインになってきていますが、それでも依然として、コンピュータというのはアルゴリズムで動くもので、プログラムというものは全てアルゴリズム論の延長上にあると思っています。 その意識がないと、たとえPHPJavaScriptのコー

    katzchang
    katzchang 2007/09/14
    情報工学の基礎はこの辺だろ。
  • 情報処理技術者試験合格者はCASLやってるからいいんじゃないのか? : ひろ式めもちょう

    なんかえらく熱くなってるなあ。 shi3zの日記 - マシン語ってどんな感じか知りたくなった方へ http://d.hatena.ne.jp/shi3z/20070913 弊社CTOの水野拓宏が8分で8080のマシン語プログラムをざっくりと解説しています もはや題外れて 「ケッケー、 おいらTK-80もってるんだぜー」 って自慢にしか見えない…(ほしいわけだが)。ニコニコ動画にはアクセスしないことにしているので見てないけど、マシン語を解説するならコーディングシートに手書きでニーモニック並べてあげたほうが理解しやすいんじゃないかな。 それはともかく思ったのは、第二種情報処理技術者試験(現基情報技術者試験)の受験者・合格者は、仮想マシン語であるところのCAP-XやCASLをやってるハズなのだから、 「最近の若いヤツはマシン語をしらん!プンプン!」 とかいう批判はあたらないのではないか。 な

    情報処理技術者試験合格者はCASLやってるからいいんじゃないのか? : ひろ式めもちょう
    katzchang
    katzchang 2007/09/14
    CASLなんてやってません