タグ 関数型
人気順 5 users 10 users 100 users 500 users 1000 usersビジネスロジックを「型」で表現するOOPのための関数型DDD / Functional And Type-Safe DDD for OOP
Object-Oriented Conference 2024で発表した資料です。 https://fortee.jp/oocon-2024/proposal/b31c9818-3cb8-4350-adfe-cbc839cdf829 ビジネスの専門知識(ドメイン)を中心に据えたドメイン駆動設計に代数的データ型などの関数型のパラダイムを加えたよりタイプセーフな関数型DDDを紹介します。 本セッションではドメ... 続きを読む
オブジェクト指向プログラミングは終わった カプセル化が悪い(感想戦) - Qiita
が(良くも悪くも)注目頂き、その観測で思ったことのメモです。1年後の自分用です! もっかい言いたいこと再考のポエムです。 概要 関数型には意図的に触れたくなかった 継承や再利用性への懐疑の共通認識 抽象化戦略開発戦略で補う話 タイトルは釣り 抽象化という言葉のふわっと感 カプセル化が問題 関数型言語には意図... 続きを読む
💣Webフロントエンドにおける関数型「風」プログラミングに関する個人的まとめ - Qiita
ここ数年の流れについて 技術的側面 Webフロントエンド(ほぼTypeScript&React界隈)において、オブジェクト指向(厳密に言うとクラスの利用)から脱却する流れがあります。原因は以下の2点。 クラスの継承の問題点が(IT業界全体に)広く定着したこと JS/TSの進化、Reactの進化、関数型言語の考え方などの影響により、... 続きを読む
SPAにおける状態管理: 関数型のアプローチも取り入れるフロントエンド系アーキテクチャの変遷 - エンジニアHub|若手Webエンジニアのキャリアを考える!
こんにちは、小林(@koba04)です。 本記事では、シングルページアプリケーション(以下、SPA)における状態管理について解説します。 GmailやTwitterは、SPAとして構築されている代表的なWebアプリケーションであり、スムーズなページ遷移をSPAによって実現しています。またElectronやPWA(Progressive Web Apps)の登... 続きを読む
ラムダ式とStream APIで学ぶモダンJava ― 関数型を取り入れて変化するJava言語の現在(by 谷本心/cero_t) - エンジニアHub|若手Webエンジニアのキャリアを考える!
1996年にJava 1.0が登場して、もう20年以上がたちました。この間、Javaにはさまざまな言語機能やAPIが追加され、変化し続けています。 これだけ長い歴史を持つプログラミング言語ですから、利用者が多かったり、フレームワークやライブラリが充実していたりする一方で、書籍やWebに掲載されている情報が少し古かったり、... 続きを読む
6歳の子どもに「関数型プログラミング」を教える方法 - GIGAZINE
プログラミングの考え方にはオブジェクト指向と関数型の2種類があります。オブジェクト指向に比べると理解しにくく挫折しがちな「 Functional programming (関数型プログラミング)」について、あるコンピューターサイエンスの学者が6歳の息子とゲーム形式で会話したことをブログでつづっています。6歳の子どもが興味を引き付けられた関数型プログラミングに関する会話は、子どものプログラミング教育... 続きを読む
関数の話 - ( ꒪⌓꒪) ゆるよろ日記
2018 - 04 - 03 関数の話 関数型 こんにちは、しいたけです。 某所で 関数型プログラミング とはリスト処理のことなのか、と燃えているのを見て、 関数型プログラミング とは何か、ということを自分なりの考えを述べたいと思いました。春なので。 この資料は2年ほど前に Supership の社内勉強会で使ったものですが、この中で関数とオブジェクトを対比している箇所があります。 関数もオブジェ... 続きを読む
まともな型クラス への入門: 関数型とオブジェクト指向の垣根を越えて - 檜山正幸のキマイラ飼育記
2016年9月に次の記事を書きました。 関数型プログラミングとオブジェクト指向について、何か書く、かも タイトルからして引き続く記事を予告しているのですが、その予告を実行することができませんでした。タイトル中の「何か」とは「型クラス」のことです。上記の記事の最後の部分は: 関数型プログラミングにもオブジェクト指向にも関係があって、今後重要度を増すであろう「型クラス」ですが、今述べた(愚痴った)よう... 続きを読む
React基礎 · GitBook
React基礎 レッスン Lesson 01 : 環境構築 Lesson 02 : ES2015について Lesson 03 : 関数型の書き方 Lesson 04 : 初めてのコンポーネント Lesson 05 : 初めてのinline style Lesson 06 : 初めてのprops Lesson 07 : 配列からの展開 Lesson 08 : フォームの定義 Lesson 09 : ... 続きを読む
関数型プログラミングはオブジェクト指向の正当な後継である - Qiita
対象読者 この記事はオブジェクト指向を本格的に学んだことがある全ての人々に「オブジェクト指向と関数型プログラミングの関係」を深く知ってもらうことを目的としています。これらの人々の中には未だにオブジェクト指向に固執している人や、最近よく目にする関数型が気になってSwiftやScalaを触り始めているがイマイチ本質が見えていない人が多く含まれています。そうした人々が次の一歩を踏み出すキッカケにこの記事... 続きを読む
関数型プログラミングはまず考え方から理解しよう - Qiita
関数型プログラミングが注目されて久しいです。 そろそろ勉強しておかないとなぁということで調べてみるものの、情報として出てくるのは"高階関数","カリー化","遅延評価","モナド"などの物々しい単語の数々。これらを勉強して理解した気になったものの、プログラムを書こうと思うと全然書けませんでした。 結局、関数型言語を実現する手段を学ぶ前に関数型と言われるパラダイムを理解しないことには書けません。とい... 続きを読む
プログラミング言語のパラダイムシフト(ダイジェスト)ーScalaから見る関数型と並列性時代の幕開けー
Transcript 1. プログラミング言語の パラダイムシフト Scalaから見る関数型と並列性時代の幕開け 安田裕介 Hackers Champloo 2015 LT 2. 自己紹介 • 名前:安田裕介 • id: TanUkkii • トライフォート勤務 3. 今日話す内容 • なぜ並列分散プログラミングが重要なのか • Scalaから見る並列分散プログラミングの現状 • このダイジェスト... 続きを読む
JavaScript - Immutable.jsを色々触ってみました - Qiita
immutable.jsは、facebook社が作っているJavaScriptのライブラリでimmutableなコレクションを提供してくれます。List, Stack, Map, OrderedMap, Set, OrderedSet and Recordがあるとのこと。 関数型言語にインスパイアされて作っているらしいので、関数型に馴染みのある関数が出てきて嬉しいです。 他にも、正格でなく遅延評価... 続きを読む
レビューポエム “関数型プログラミングに目覚めた! IQ145の女子高校生の先輩から受けた特訓5日間” を読んで | めがねをかけるんだ
レビューポエム “関数型プログラミングに目覚めた! IQ145の女子高校生の先輩から受けた特訓5日間” を読んで 大阪天満橋のジュンク堂書店で購入しました。本当は立ち読みですませる気だったんですが、買わないでレビューはフェアではないかなと思い……今は後悔しています。 僕はプログラミングをしてご飯を食べていますが、関数型プログラミングの領分はまったく未経験です。 関数型の説明が適切かどうかの判断につ... 続きを読む
関数型プログラマのための Rx 入門(補遺) - Okapies' Archive
前編、後編とお送りしてきたこの記事だが、特に後編について「何を言ってるのか分からん」というコメントを何人かの方から頂いた。…なんというか、ごめんなさい。 繰り返しになるが、Rx を使う上で関数型プログラミングの知識は必ずしも必要ではないし、むしろ(関数型のコンセプトが基礎にあるのに関わらず)知らなくても使えるようになっている。ライブラリの作者たちは「過度な抽象化は害になる」ということを弁えているの... 続きを読む
第5章 パーサコンビネータ―小さなパーサを組み合わせて大きなパーサを作る:[入門]関数プログラミング―質の高いコードをすばやく直感的に書ける!|gihyo.jp … 技術評論社
この章では,関数型の至宝であるコンビネータライブラリについて説明します。 コンビネータとは何か? この章でいうコンビネータとは,ある型の部品と部品を組み合わせて,同じ型のより大きな部品を作るための関数のことです。たとえば,パーサのコンビネータライブラリは,パーサを組み合わせるための各種コンビネータを提供しており,簡単にパーサを作成できます。コンビネータライブラリは,言語内DSL(Domain Sp... 続きを読む
Q. (関数型)リアクティブプログラミングとは何ですか? | POSTD
Wikipediaでリアクティブプログラミング (reactive programming)を調べてみました。また、関数型リアクティブプログラミング (functional reactive programming, F […]Wikipediaでリアクティブプログラミング (reactive programming)を調べてみました。また、関数型リアクティブプログラミング (functional... 続きを読む
Rubyistに贈るHaskell入門 - Qiita
Haskell分からない人が贈るHaskell入門 前に作ったこちらのスライドも併せてどうぞ。 Rubyと一緒なら怖くない! Haskellは関数型言語です。 「関数型」、この単語を聞いた時点で回れ右してオブジェクトの世界に向かって全力疾走したくなりますが、Rubyは関数型言語にも影響を受けている言語です。 ならばRubyで関数型の概念を理解することができるかもしれない! 関数型の特徴 関数型には... 続きを読む
Lambda にクラウドの夢を見る | Developers.IO
"AWS Lambda (Preview)" AWSさんのblogは、こちら。 Lambdaは何に似ているか? これは、まだPreview版だが、未来を感じさせるプロジェクトである。 最初、「これ面白いですよ」と言われた時、Amazonが関数型の言語でも出したのかなと思ったのだが、そうではなかった。でも、別の意味で、確かに面白い。 細かな説明では、このプロジェクトが何をしようとしているか理解する... 続きを読む
記者の眼 - オブジェクト指向や関数型は「敗者の道具」である:ITpro
日経ソフトウエア2014年11月号ではオブジェクト指向と関数型の真実を解き明かす渾身の特集を掲載。3Dモデル「ユニティちゃん」の楽しい連載も始まりました。詳しくはこちら 私は「もし完全無欠のプログラマがいるとしたら、どんなプログラマだろう」と夢想することがあります。「完全無欠のプログラマ」と聞いてどんなプログラマをイメージするかは人によって異なるでしょう。「難しいアルゴリズムを使いこなしてすばらし... 続きを読む
関数型プログラミングとオブジェクト指向の抜き差し可能な関係について整理して考える - モナドとわたしとコモナド
2014-09-22 関数型プログラミングとオブジェクト指向の抜き差し可能な関係について整理して考える Googleで適当に検索すると とズラリと出てくる。 オブジェクト指向 v.s. 関数型プログラミング 関数型とオブジェクト指向という一見相反するプログラミングパラダイムの併用について理解した プログラマが知るべき97のこと/関数型プログラミングを学ぶことの重要性 新人プログラマに知っておいても... 続きを読む
Swiftで脱アルゴリズム!iOS開発を関数型(宣言型)プログラミングへパラダイムシフトしてみる【脱アルゴリズム宣言①】 - Qiita
KenOKABE tech blog ←ブログコンテンツ Appleが新プログラミング言語 Swift を、iOSおよびOS Xアプリ開発用に提供しました。 この記事では、新言語Swiftプログラミングが既存のObjective-Cとは抜本的に異なるコーディングスタイルが可能になった事、そしてその背景となる技術的潮流について解説したいと思います。 好評なようなので、【脱アルゴリズム宣言】シリーズと... 続きを読む
JavaScript - 関数リアクティブプログラミング(FRP)で分断された2つの世界を繋ぐ【脱アルゴリズム宣言② - Qiita
関数リアクティブプログラミング(FRP)で分断された2つの世界を繋ぐ【脱アルゴリズム宣言②】 KenOKABE tech blog ←ブログコンテンツ 前回のブログ記事 Swiftで脱アルゴリズム!iOS開発を関数型(宣言型)プログラミングへパラダイムシフトしてみる【脱アルゴリズム宣言①】 では、命令型(手続き型)、宣言型(関数型その他)プログラミングパラダイムについて解説しました。 プログラミン... 続きを読む
Swiftで脱アルゴリズム!iOS開発を関数型(宣言型)プログラミングへパラダイムシフトしてみる
JavaScript - Javascrptで関数型プログラミングの入門 - Qiita
【他キーワード】 第一級関数(高階関数が扱える) カリー化(部分適用) 型推論 気をつけるべきは三点 Javascriptで関数型を考えるにあたっては、 抑えるべきポイントは下記三点となります。 すべての関数が値を返す 関数に副作用がない(参照透過) 関数を値として扱える 関数型として気をつけるにはほかにもあるのですが、 入門として今回は扱いません。 すべての関数が値を返す 関数がすべての値を返す... 続きを読む