抽象的

1360 ワード

最近会社で同僚と交流していますが、大体の人は「コードとデータは本質的な区別がない」ということを受け入れにくいです.例えば、彼らは一部のHTMLコード(またはもちろんJavaScriptなど)を考えています.
    
wahaha
セグメントXMLデータと
    
        subara
    
それに比べて、意味は全然違っています.同じように、この2つの「文字列」を別々に実行するものとしては、ブラウザであり、もう1つはデスクトップクライアントなどのC〓プログラムと比べて、本質的な違いがあります.その時一緒に問題を討論していたのは、ベテランの「エンジニア」や「開発者」がたくさんいました.しかし、異口同音で反論されたのを聞いて、「プログラミングが分かりません」と頭の中では考えられませんでした.
この話題を引きます.主にMVCについて議論し始めました.自然にSpringMVCと言って、Viewとして通常サポートされているテンプレート言語(JSP、Velocityなど)について議論しました.自然に「Viewを使わないのも一種のView」と言っています.よくある前後の分離方式でバックエンドアプリケーションでデータを提供しています.先端レンダリングをサポートします.
残念なことに、私の観点は皆さんに理解されていません.討論の過程は省略されています.主な違いは上に挙げた観点です.「Viewとは最終的にユーザーの前に現れるものです.(ここはWebページです.)」というのが一般的に受け入れられています.データを返すだけではMVC Webアプリケーションとは言えません.APIアプリケーションのようなWhateverというものです.
もちろん、検討していた当時は挙げたいとは思いませんでしたが、実際にはSpringからサポートされているView Resoloverタイプを逆さまに押しています.このMVCフレーム設計者はViewについて理解しています.具体的にはここのView Resoloverはテンプレート言語ビュー以外にどのタイプの戻り値をサポートしていますか?自分で調べて参照してください.)
それからコードとデータについての考えは一番早く上で見たのを覚えています.もちろん、ここで私も一回の正確ではない説明をする気がないです.興味がある人は自然に本をめくります.
    > '(car (a b))
    '(car (a b))
    > (car '(car (a b)))
    'car
    > (cdr '(car (a b)))
    '((a b))
こんな感じですよね.もちろん上では、Viewを単にユーザーに見せたものとして間違っているというわけではありませんが、より抽象的で簡潔な説明の前では、比較的正確ではないでしょう.ソースにします.