前回のおさらいと今回の話 前回は手続き型パラダイムとオブジェクト指向パラダイムを見比べたときに、「ひとかたまりのデータとそれを操作する手続きを一カ所にまとめて守る」という方向に言語が進化していったというひとつの史観を示しました。その中で返答として「構造化プログラミング」の時点でその視点はすでにあるという指摘を頂いたりもしました。ただ、「ひとかたまりのデータとそれを操作する手続きを一カ所にまとめる」という発想もオブジェクト指向の「ひとつの側面としては」たしかにありますし、その側面を見ると、オブジェクト指向言語に「言語デザインでもってプログラマーがそれを行いやすくした」という面を見いだすことができそうです。そして、その視点に立ったときに「臭ってくる」ヤバい設計として、「データが露出してる」「別のクラスのデータいじってる」「複数の異なるデータに関心をもってしまっている」というものを挙げてみました
original: The introduction to Reactive Programming you've been missing (by @andrestaltz) (translated by @ninjinkun, reviewed by @ma0e) あなたはリアクティブプログラミングと呼ばれる新しい方法が気になっている。 勉強するのは大変で、良い教材がないのでさらに難しい。私が勉強を始めたときは、まずチュートリアルを探した。見つけたのは一握りの実践的なガイドだけ、しかもそれらは表面をなぞっているだけで、リアクティブプログラミングのアーキテクチャ全体像を構築しようとしてはいなかった。ある関数を理解するのに、ライブラリのドキュメントは役に立たないことがある。 これを見て欲しい。 Rx.Observable.prototype.flatMapLatest(selector,
プログラミング言語というのは、その作者が理想とする世界に合うようにデザインされているものだから(みんな信じないかもだけど、Javaですらそうなのですよ)、Clojureのことを理解するには、作者であるRich Hickeyのプログラミング観を知るのが手っ取り早いでしょう。 Rich Hickeyはさまざまなプレゼンテーションを発表していて、多くはネットで見られます。示唆に富んで皮肉も効いてておもしろいので、ファンも多くて、彼の独特の髪型(往年のロック歌手風)からか、「Rich Hickey’s Greatest Hits」というブログ記事もあったりします(プレゼンテーション動画へのリンク集です)。 ただ、彼のプレゼンテーションは難解な英語も出てきて、私のようなリスニング苦手人間には音声だけで聴くのは難しいです。そういう人は国外でも多いからか、有志が書きおこし(transcript)を公開し
(2021/2/25 内容を見直し、加筆訂正しました) 先日、こちらの記事で組織やプロジェクトの運営におけるコミニュケーションパスの問題について書きました。 qtamaki.hatenablog.com 同じような問題が、プログラミングにおいても言えます*1。 プログラムにおける変数や関数、クラスやメソッドなどのオブジェクト*2をノードとして見ると、それらにアクセスするという行為は、コミュニケーションを取っているのと同じです。 下の図のように、プログラムとは、様々なノードとノード間のコミュニケーションパスの塊とみなすことができます。 変数や関数をグローバルに参照するとすぐにスパゲッティ化するのは、コミニュケーションパスの本数が爆発的に増加することも原因となっています。 会社やプロジェクトなどの組織の場合、せいぜい数百個程度のノードを相手にすれば良い話ですが(それでも問題ですが)、プログラミ
※画面は開発中のものです。実際の製品とはぜんぜん違います。 各話一覧 第1話『画像が表示できました』 第2話『ゲームループとキー入力ができました』 第3話『オンラインゲームになりました』 第4話『WebGLを使い始めたらどう見てもマインクラフトです』 第5話『Babylonjsでゲートオブバビロン』 第6話『Blenderで涼風青葉ちゃんごっこの巻』 第7話『オープンワールドという泥沼』 第8話『たまにはデモします』 第9話『サウンドエフェクトの作業をしてコーディングで荒んだ心を癒やします』 第10話『ゲッダン☆と謎の儀式《バッド・ノウハウ》』 第11話『タイトル画面があるとゲームっぽい』 第12話『RPGアツマールに私も集まーる』 第13話『ネオアームストロングCannon.js砲じゃねえか完成度高けーなオイ』 第14話『冒涜的Firebase活用法』 第15話『babylon.
κeenです。最近JEITAのソフトウェアエンジニアリング技術ワークショップ2020に参加したんですが、そこで五十嵐先生、柴田さん、Matzとパネルティスカッションをしました。その議論が面白かったので個人的に話を広げようと思います。 年末年始休暇に書き始めたんですが体調を崩したりと色々あって執筆に時間がかかってしまいました。 時間を置いて文章を書き足していったので継ぎ接ぎ感のある文体になってるかもしれませんがご容赦下さい。 というのを踏まえて以下をお読み下さい。 いくつか議題があったのですが、ここで拾うのは一番最後の「プログラミング言語の未来はどうなるか」という話題です。 アーカイブが1月末まで残るようです。もうあと数日しかありませんが間に合うかたはご覧下さい。 そのとき各人の回答を要約すると以下でした。 五十嵐先生:DSLを簡単に作れる言語というのが重要。それとプログラム検証、プログラム
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く