Enviar pesquisa
Carregar
F#事例発表
•
12 gostaram
•
6,746 visualizações
bleis tift
Seguir
F# Meetup in TokyoでのF#の事例発表についての発表資料です。
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 25
Baixar agora
Baixar para ler offline
Recomendados
はじめてのChu カッコカリ
はじめてのChu カッコカリ
Masuda Tomoaki
PHP-ML で手書き数字認識
PHP-ML で手書き数字認識
y-uti
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
Hikari Fukasawa
SI屋のためのF# ~DSL編~
SI屋のためのF# ~DSL編~
bleis tift
F#のinlineと型推論(狩)
F#のinlineと型推論(狩)
Kazuhiro Matsushima
通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」
通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」
KinkumaDesign
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub (#kyotojs)
y_uuki
ASP.NET MVC で Bootstrap
ASP.NET MVC で Bootstrap
Yoshitaka Seo
Recomendados
はじめてのChu カッコカリ
はじめてのChu カッコカリ
Masuda Tomoaki
PHP-ML で手書き数字認識
PHP-ML で手書き数字認識
y-uti
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
Hikari Fukasawa
SI屋のためのF# ~DSL編~
SI屋のためのF# ~DSL編~
bleis tift
F#のinlineと型推論(狩)
F#のinlineと型推論(狩)
Kazuhiro Matsushima
通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」
通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」
KinkumaDesign
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub (#kyotojs)
y_uuki
ASP.NET MVC で Bootstrap
ASP.NET MVC で Bootstrap
Yoshitaka Seo
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
Swift bondでつなげてプログラミング
Swift bondでつなげてプログラミング
貴士 山本
C#とaop
C#とaop
Hiroshi Maekawa
Asp.netアプリケーションの最新プロファイリング
Asp.netアプリケーションの最新プロファイリング
Kiyoaki Tsurutani
Webクリエイターに告ぐ!? ツールに頼って余った時間で◯◯しよう! ~ 注目!制作現場で触っておきたいツール紹介~
Webクリエイターに告ぐ!? ツールに頼って余った時間で◯◯しよう! ~ 注目!制作現場で触っておきたいツール紹介~
Reimi Kuramochi Chiba
Power shell で DSL
Power shell で DSL
urasandesu
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Yoshifumi Kawai
Nom de fonction français
Nom de fonction français
hajikami
PCさえあればいい。
PCさえあればいい。
bleis tift
F#の基礎(?)
F#の基礎(?)
bleis tift
No more Legacy documents
No more Legacy documents
bleis tift
解説?FSharp.Quotations.Compiler
解説?FSharp.Quotations.Compiler
bleis tift
効果の低いテストの話
効果の低いテストの話
bleis tift
テストの自動化を考える前に
テストの自動化を考える前に
bleis tift
札束でExcelを殴る
札束でExcelを殴る
bleis tift
.NET系開発者から見たJava
.NET系開発者から見たJava
bleis tift
yield and return (poor English ver)
yield and return (poor English ver)
bleis tift
yieldとreturnの話
yieldとreturnの話
bleis tift
F#の基礎(嘘)
F#の基礎(嘘)
bleis tift
現実(えくせる)と戦う話
現実(えくせる)と戦う話
bleis tift
ラムダでウィザード 滅せよ手続き、とチャーチは言った (※言ってません)
ラムダでウィザード 滅せよ手続き、とチャーチは言った (※言ってません)
bleis tift
async/await不要論
async/await不要論
bleis tift
Mais conteúdo relacionado
Semelhante a F#事例発表
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
Swift bondでつなげてプログラミング
Swift bondでつなげてプログラミング
貴士 山本
C#とaop
C#とaop
Hiroshi Maekawa
Asp.netアプリケーションの最新プロファイリング
Asp.netアプリケーションの最新プロファイリング
Kiyoaki Tsurutani
Webクリエイターに告ぐ!? ツールに頼って余った時間で◯◯しよう! ~ 注目!制作現場で触っておきたいツール紹介~
Webクリエイターに告ぐ!? ツールに頼って余った時間で◯◯しよう! ~ 注目!制作現場で触っておきたいツール紹介~
Reimi Kuramochi Chiba
Power shell で DSL
Power shell で DSL
urasandesu
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Yoshifumi Kawai
Nom de fonction français
Nom de fonction français
hajikami
Semelhante a F#事例発表
(8)
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Swift bondでつなげてプログラミング
Swift bondでつなげてプログラミング
C#とaop
C#とaop
Asp.netアプリケーションの最新プロファイリング
Asp.netアプリケーションの最新プロファイリング
Webクリエイターに告ぐ!? ツールに頼って余った時間で◯◯しよう! ~ 注目!制作現場で触っておきたいツール紹介~
Webクリエイターに告ぐ!? ツールに頼って余った時間で◯◯しよう! ~ 注目!制作現場で触っておきたいツール紹介~
Power shell で DSL
Power shell で DSL
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Nom de fonction français
Nom de fonction français
Mais de bleis tift
PCさえあればいい。
PCさえあればいい。
bleis tift
F#の基礎(?)
F#の基礎(?)
bleis tift
No more Legacy documents
No more Legacy documents
bleis tift
解説?FSharp.Quotations.Compiler
解説?FSharp.Quotations.Compiler
bleis tift
効果の低いテストの話
効果の低いテストの話
bleis tift
テストの自動化を考える前に
テストの自動化を考える前に
bleis tift
札束でExcelを殴る
札束でExcelを殴る
bleis tift
.NET系開発者から見たJava
.NET系開発者から見たJava
bleis tift
yield and return (poor English ver)
yield and return (poor English ver)
bleis tift
yieldとreturnの話
yieldとreturnの話
bleis tift
F#の基礎(嘘)
F#の基礎(嘘)
bleis tift
現実(えくせる)と戦う話
現実(えくせる)と戦う話
bleis tift
ラムダでウィザード 滅せよ手続き、とチャーチは言った (※言ってません)
ラムダでウィザード 滅せよ手続き、とチャーチは言った (※言ってません)
bleis tift
async/await不要論
async/await不要論
bleis tift
F#によるFunctional Programming入門
F#によるFunctional Programming入門
bleis tift
VBAを書きたくない話(Excel-DNAの紹介)
VBAを書きたくない話(Excel-DNAの紹介)
bleis tift
Better C#の脱却を目指して
Better C#の脱却を目指して
bleis tift
モナドハンズオン前座
モナドハンズオン前座
bleis tift
JSX / Haxe / TypeScript
JSX / Haxe / TypeScript
bleis tift
自分戦略
自分戦略
bleis tift
Mais de bleis tift
(20)
PCさえあればいい。
PCさえあればいい。
F#の基礎(?)
F#の基礎(?)
No more Legacy documents
No more Legacy documents
解説?FSharp.Quotations.Compiler
解説?FSharp.Quotations.Compiler
効果の低いテストの話
効果の低いテストの話
テストの自動化を考える前に
テストの自動化を考える前に
札束でExcelを殴る
札束でExcelを殴る
.NET系開発者から見たJava
.NET系開発者から見たJava
yield and return (poor English ver)
yield and return (poor English ver)
yieldとreturnの話
yieldとreturnの話
F#の基礎(嘘)
F#の基礎(嘘)
現実(えくせる)と戦う話
現実(えくせる)と戦う話
ラムダでウィザード 滅せよ手続き、とチャーチは言った (※言ってません)
ラムダでウィザード 滅せよ手続き、とチャーチは言った (※言ってません)
async/await不要論
async/await不要論
F#によるFunctional Programming入門
F#によるFunctional Programming入門
VBAを書きたくない話(Excel-DNAの紹介)
VBAを書きたくない話(Excel-DNAの紹介)
Better C#の脱却を目指して
Better C#の脱却を目指して
モナドハンズオン前座
モナドハンズオン前座
JSX / Haxe / TypeScript
JSX / Haxe / TypeScript
自分戦略
自分戦略
Último
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
Último
(9)
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
F#事例発表
1.
.事例発表 bleis-tift August 3, 2014
2.
自己紹介 id:bleis-tift / @bleis なごやではたらくゆるふわ
F#er 仕事で F#使ってます!
3.
これまでの主な活動 C#(VB) プログラマのための F#入門 http://www.slideshare.net/bleistift/cvbf そうだ、bf
処理系をつくろう!もちろん SQL で! http://www.slideshare.net/bleistift/bfsql-7401985 仕事で使う F# http://www.slideshare.net/bleistift/f-9062112 Better C#の脱却を目指して http://www.slideshare.net/bleistift/better-c F#による Functional Programming 入門 http://www.slideshare.net/bleistift/unctional- programming
4.
これまでの主な活動 モナドハンズオン前座 http://www.slideshare.net/bleistift/ss-15215415 yield と return
の話 http://www.slideshare.net/bleistift/yieldreturn
5.
これまでの主な活動 再帰で考える http://bleis-tift.hatenablog.com/entry/20120119/1326944722 F#で初めての関数型プログラミング http://www.atmarkit.co.jp/fdotnet/special/introfs_01/introfs_01_01.html http://www.atmarkit.co.jp/fdotnet/special/introfs_02/introfs_02_01.html C#から使いやすい F#コードの書き方 http://bleis-tift.hatenablog.com/entry/20121201/1354362376 .NET の標準ライブラリと仲良くする話 http://bleis-tift.hatenablog.com/entry/fsadvent2013 詳説コンピュテーション式 http://bleis-tift.hatenablog.com/entry/computation-expression コンピュテーション式における
return と yield http://bleis-tift.hatenablog.com/entry/return-and-yield
6.
これまでの主な活動 LangExt https://github.com/LangExt/LangExt http://langext.github.io/LangExt/ Basis.Core https://github.com/BasisLib/Basis.Core
7.
今日話すこと 弊社と F# 事例紹介 仕事で F#を使うために
8.
弊社と.
9.
弊社について 社員数は 20 人程度 プログラマは半分くらい いわゆる一つの
SIer 開発では主に、「ちょっと特殊なクライアン ト」向けに Web API を作ってます .NET 系なので、C#や F#を使ってます
10.
弊社と. 入社後から、ちょっとしたツールとかに個人 的に使用 社内では、「条件さえあえば使ってみたい ねー」って雰囲気 3 年か 4
年前に条件のあう案件が! 本格的に業務で F#を使い始めた
11.
.使った主な案件 人力でやっていた作業を自動化する Web アプ リ(1ヶ月) プロキシサーバとして振る舞うシステムのコ ア機能の
Azure 化(3 週間) WebAPI 用のフレームワーク クラウド移行に伴うシステムの完全移行
12.
.を使った社内ツール・ライブラリ 案件以外でも、社内ツールに F#を使っている XML 用
DSL ライブラリ Web アプリ画面テスト支援ツール Web API 用テスティングフレームワーク 1 Web API 用テスティングフレームワーク 2
13.
事例紹介
14.
背景 某クラウドから某クラウドへの移行案件 権利的な問題から、元のシステム(C#で構 築)をそのまま持っていけない 「仕様書も自動化された結合テストもあるの でタイにオフショアします」(想像) 社員 O「是非 F#でやらせてください!」 役員
K「いいよ!」 社内としては、社員 O を含む 2 名が開発者として 開発スタート タイ側は開発者 2 名+ 1
15.
問題発生 社員 O が都合により案件から離れる 社員
K「タイ側のコード、レビューしても らっていいですか?」 type Function = obj[] - obj[] !? →タイに渡航し、F#や Git について教育
16.
全体の設計 トランザクションスクリプト風 個人の能力のばらつきを考えて API ごとに分離 全体を
Result を返すブロックで構築 Railway oriented programming(鉄道指向プログラ ミング) これのためにライブラリを作成(Basis.Core) 自称ちゃんと return する唯一のコンピュテーショ ン式ライブラリ
17.
ここには当日何かあったらしい
18.
全体的な結果 機能が増えたにもかかわらず、総行数は約 2 割減った 些細なバグがほとんどなくなった ドタバタはあったが、納期には間に合った C#だったらたぶん間に合わなかったし、バグも出 たはず
19.
仕事で.を使うために
20.
教育(その) 全く F#も関数プログラミングも知らない人 にいきなりつかわせるのは無理 当然教育が必要 とりあえず、実践 F#もしくはプログラミング F#を読んでもらう 後は、実際に使ってもらいつつ、頻繁にレ ビュー より
Fらしい書き方を伝える ペアプロは有効 ループを書かない方法や、null と None の違いな どを重点的に
21.
教育の成果(サンプル数) 範囲外アクセスがほとんど出なかった null 例外も F#に閉じた範囲では出なかった C#に戻っても問題のあるコードを書くことが 減った 関数型初心者がいても、サポートできればいける さらに、能力も向上
22.
教育(その ) とにかく型(レコードや判別共用体)を作ら せる obj を許さない リフレクションも許さない F#コード養成ギプス
23.
教育の効果(サンプル数 ) F#っぽいコードがある程度書けるように なった つまらないバグも減った ただ、それ以前の問題は結局解決できな かった 省略語はいくら言っても直らなかった・・・ よくいる普通のサラリーマンプログラマよりは使 える人材に
24.
業務で.を使ってみて 教育はとても大事 ある種のバグは減る 生産性については、環境次第 今後も F#を業務で使っていきます 事例もできる限り出していきたい
25.
おわり
Baixar agora