タグ

Programmingに関するmagelixirのブックマーク (12)

  • 雑把の UI アーキテクチャー史(MVCからMVVMへ) | プログラマーズ雑記帳

    Web の場合は View と Controller の違いははっきりしてます。 View は html ページとその作成を担当します。 CGI は アドレスとパラメーター(アドレスの ? の後など)を受け取り、処理を行います。 その受け取り部分が Controller です。 Model と View ではなく、なぜ MVC としたのでしょうか ? 『 GoF 』 では Controller を分ける利点をいくつか挙げられています。 キーボードの応答を変えたり、メニューからの呼び出しに変更するとき、表示方法を変更しなくていい。 入力イベントを無視するといったことをコントローラーのインスタンスの入れ替えで可能。 その他にも "View を入れ替えれば、 PC アプリ、 Web アプリでも使えるように" という理由もあります。 ちょっと無理そうな話ですが、例えば、 PC アプリが次のような

  • や...やっと理解できた!(2) JavaScriptのスコープチェーン - maeharinの日記

    前回はJavaScriptのプロトタイプチェーンについて、図解を用いることでなんとか理解できました。今回はスコープチェーンに挑戦してみます。前回と同じく「1. 図解を用いる」「2. 用語を明確に定義する」「3. Standard ECMA-262 3rd editionを情報ソースとする」というアプローチで紐解いて行きます。 用語の定義 ・エントリの文章における表記は、以下の表の「ECMA-262 3rd」に統一する ・エントリの図における表記は、以下の表の「エントリの略称」に統一する ・エントリ内におけるES3とは、Standard ECMA-262 3rd editionを指す ECMA-262 3rd エントリの略称 JavaScript(サイ)第5版(日語) Execution Contexts EC 実行コンテキスト Variable Object VO 変数定義の

    や...やっと理解できた!(2) JavaScriptのスコープチェーン - maeharinの日記
    magelixir
    magelixir 2013/06/12
    わかりやすい。すっきりした!
  • 米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ

    "米国人からコーディングについての怒りのメールを頂戴した" の補足 - その手の平は尻もつかめるさ ↑の方で補足いたしました。(2012.09.04 追記) 最近、英語のメールでよく怒られます。moznion です。 海を隔てて共同作業しているアメリカ人から、僕のコーディングについてお叱りのメールを頂いたので、 自戒の念を込めて邦訳して記します。 書いてあることは「当然」とも言うべき内容ですが、僕はその「当然」も守れていなかったのかぁ〜と反省。 以下、邦訳(意訳)です。 1. 郷に入っては郷に従え 既にソースコードが存在しているって事は、そこには同時にコーディングスタイルも存在しているってことだ。 その既存のソースコードに手を加える場合、別のコーディングスタイルを導入してはならない。 もし君がバックエンドのソースコードを弄っているなら、バックエンドのコーディングスタイルで記述するんだ。 フ

    米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ
  • https://fumieval.tumblr.com/post/28324791101

  • プログラミング言語人気TOP10の簡易解説

    0-1. 前書き この世にはたくさんのプログラミング言語が存在します。Wikiepdiaのプログラミング言語一覧を見ると、実に200個以上というわけの分からない数の言語が並んでいたりします。 【参考URL】プログラミング言語一覧 - Wikipedia http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%... 200の中にはほとんど使われてない言語も混じってるので、実際に仕事でざくざく使われている言語は20とか30とかそういうオーダーなのですが、それでも1人の人間が把握するにはちょっと多過ぎる数です。 記事では、そうした有り余るプログラミング言語の海の中で「どれを勉強したらいいの?」とか「どれを採用するのが適切?」という悩みをお持ちの方が「よし、この言語に決めた!」と自信を持って決断できるように背中を押すことを目的として書か

  • [サンプル] 透過プロキシ

    概要 「実行時型情報」のサンプルがちょっと不足してるなぁと思って作ったもの。 .NET Framework では、RealProxy というクラスを使って、 インターフェースのメソッド呼び出しを横取りして独自の処理に置き換えることができます。 ソース一式(ZIP 形式) RealProxy 例えば、マルチキャストデリゲートのようなことをインターフェースのメソッド呼び出しに対して行うようなプロキシ。 RealProxy クラスを継承して、Invoke メソッドをオーバーライドするだけ。 public class MulticastProxy<Interface> : RealProxy { public MulticastProxy(params Interface[] interfaces) : base(typeof(Interface)) { this.interfaces = new

    [サンプル] 透過プロキシ
  • クラス名の命名規則 - あのね、Util なの? Utils じゃないの? - moriyoshiの日記

    これも宗教論争ネタのひとつかもしれない。ユーティリティクラス名は複数形にすべきかどうか。個人的には、するべきだと思う。だって、utilities だもん。 クラス名に複数形を使うのは邪道だという見方もありますよね。「おまえな、卒業生を表すクラス Alumnus のコンテナは Alumni になるっての? そんなイレギュラーな命名規則、現場じゃ使えねえよ」-- でも、複数形語尾が不規則変化する名詞ってそんな数ありましたっけ? しかも、大体同じ意味を持つ別の単語で複数形語尾が規則変化するものがありますよね。もっというと、業務アプリで使う単語なんてどうせラテン語起源の単語ばかりなので、ほとんどの単語が規則変化します*1。ホントに困るんでしょうか。 いつも念頭においている命名規則を列挙してみました。 形容詞をクラス名につけるときは、そのクラスがドメインで概念として普遍的な意味を持つ場合。もっぱらイ

    クラス名の命名規則 - あのね、Util なの? Utils じゃないの? - moriyoshiの日記
  • ユニットテストツールもろもろ - あおきのTechメモ

    .NETでは、大きくわけて、NUnit、MbUnit、MSTest(Visual Studioのユニットテスト)、xUnit.netという4つのユニットテストツールが存在します。それぞれ、機能やシンタックスに特徴があるわけですが、それをまとめたページがCodePlexにあります xUnit.net - Unit Testing for .NET 4つのユニットテストツールには、少しずつ違いがあります。例えば、4つの中で一番後発のxUnit.netは、 テストクラスの宣言・・・[TestFixture]属性ではなく、Publicなメソッドを自動的に対象 テストの準備と破棄・・・[SetUp]属性と[TearDown]属性ではなく、コンストラクタとデストラクタを使う アサート文・・・「AreEqual〜」ではなく「Equal〜」のようにAre〜なしのシンタックスを使う というような特徴がありま

    ユニットテストツールもろもろ - あおきのTechメモ
  • Rubyが国際標準に、日本発プログラミング言語で初

    独立行政法人 情報処理推進機構(IPA)は2012年4月2日、プログラミング言語RubyがISO/IEC(国際標準化機構/国際電気標準会議)の標準規格として承認されたと発表した。日発のプログラム言語が国際規格となるのはRubyが初めて。 IPAでは2008年にRuby標準化検討ワーキンググループを設置し、Rubyの言語仕様の国際規格化を進めてきた(関連記事)。2011年3月にはJIS規格化が完了。同時に日工業標準調査会を通じてISO/IEC JST 1(第一合同技術委員会)へ国際規格案として提案を行った。ISO/IEC JTC 1での最終投票が2012年3月31日に締め切られ、RubyはISO/IEC 30170として承認された。 IPAでは「Rubyが国際規格となったことで、Ruby言語仕様の安定性や信頼性が増し、Rubyを学ぶプログラマの数、Rubyを採用する企業や組織の数が増大す

    Rubyが国際標準に、日本発プログラミング言語で初
  • いまさら聞けない、IDisposableインターフェイス - Bug Catharsis

    マネジーリソースとアンマネージリソース.NET Frameworkで扱うリソースの種類は、大きく2つに分けることができる。 CLRが管理するマネージリソース(GCヒープ)と、CLRが管理しないアンマネージリソース。 ガベコレによってオートマチックに解放されるのがマネージリソースで、 開発者が責任を持ってマニュアル管理しなければならないのがアンマネージリソース。 マイクロソフトから提供されているクラスについては、ガベコレがマネージリソースを回収するときに、 アンマネージリソースの解放も一緒に行われるが、それは、そのようにそのクラスが実装されているからにすぎない。 自分でアンマネージリソースを扱った実装をするクラスについては、 ガベコレはあくまでマネージリソースしか回収しないので、自らの手でアンマネージリソースを 解放してあげるように実装しなければ、いつまでたってもアンマネージリソースは解放さ

    いまさら聞けない、IDisposableインターフェイス - Bug Catharsis
  • コンパイルするとJavaScriptに! Rubyライクに記述できる「CoffeeScript」とは?

    JavaScriptプログラマーの間で「CoffeeScript」を使う人が増えています。CoffeeScriptとは一体どんな言語なのか、そして実際の現場で使うにはどうしたらいいのか、この連載を通して解説していきます。Webブラウザ向けのフロントエンド開発にも、そしてサーバサイド開発にも使える内容となっています。 CoffeeScriptが登場する前 JavaScriptは広く普及している言語ですが、ソースコードは見苦しいものになりがちです。小さなプログラム程度なら構いませんが、大規模なプログラムを作るのはかなり骨が折れる作業です。冗長な記号や面倒な決まり文句などが積み重なると、読みづらくメンテナンスしづらいソースコードができてしまいます。 JavaScriptを使ってある程度の規模の開発を経験したプログラマーの多くはそのような不満を感じ、もう一度JavaScriptで大きな開発をしたい

    コンパイルするとJavaScriptに! Rubyライクに記述できる「CoffeeScript」とは?
  • 1