Submit Search
Upload
3月度定例会プレゼン資料 張田浩明 最新
•
Download as PPTX, PDF
•
0 likes
•
187 views
H
hharita
Follow
パワポサイズを4:3に変更で再度アップ
Read less
Read more
Business
Report
Share
Report
Share
1 of 43
Download now
Recommended
HDCLT
HDCLT
Daigaku Ando
はこだてデベロッパーカンファレンスのLTで喋ったスライド
Ruby on Rails 4.0 勉強会資料
Ruby on Rails 4.0 勉強会資料
techscore
Rails4 社内勉強会の発表資料です。 Blog: http://www.techscore.com/blog/2013/09/09/rails4-%E7%A4%BE%E5%86%85%E5%8B%89%E5%BC%B7%E4%BC%9A%E3%83%AC%E3%83%9D%E3%83%BC%E3%83%88/ (2013/10/03) TECHSCORE 本体に Rails4 の記事を書きました!スライドでは書ききれなかった詳細についても解説していますので、そちらもご覧ください。see http://www.techscore.com/tech/Ruby/rails-4.0/
CRF を使った Web 本文抽出
CRF を使った Web 本文抽出
Shuyo Nakatani
CRF(Conditional Random Fields)を使って html から本文を抽出する実装プロトタイプの紹介です。 http://www.slideshare.net/shuyo/web-using-crf の改訂版です。
TreeFrog Frameworkの紹介
TreeFrog Frameworkの紹介
ao27
C++ Webアプリケーションフレームワーク TreeFrog Framework の紹介
社内Java8勉強会 ラムダ式とストリームAPI
社内Java8勉強会 ラムダ式とストリームAPI
Akihiro Ikezoe
An engineer uses monads
An engineer uses monads
Kousuke Ruichi
函数型なんたらの集い 2014 in Tokyo http://connpass.com/event/8634/
CRF を使った Web 本文抽出 for WebDB Forum 2011
CRF を使った Web 本文抽出 for WebDB Forum 2011
Shuyo Nakatani
WebDB Forum 2011 の技術報告セッションで発表した際の資料です。
Web本文抽出 using crf
Web本文抽出 using crf
Shuyo Nakatani
Recommended
HDCLT
HDCLT
Daigaku Ando
はこだてデベロッパーカンファレンスのLTで喋ったスライド
Ruby on Rails 4.0 勉強会資料
Ruby on Rails 4.0 勉強会資料
techscore
Rails4 社内勉強会の発表資料です。 Blog: http://www.techscore.com/blog/2013/09/09/rails4-%E7%A4%BE%E5%86%85%E5%8B%89%E5%BC%B7%E4%BC%9A%E3%83%AC%E3%83%9D%E3%83%BC%E3%83%88/ (2013/10/03) TECHSCORE 本体に Rails4 の記事を書きました!スライドでは書ききれなかった詳細についても解説していますので、そちらもご覧ください。see http://www.techscore.com/tech/Ruby/rails-4.0/
CRF を使った Web 本文抽出
CRF を使った Web 本文抽出
Shuyo Nakatani
CRF(Conditional Random Fields)を使って html から本文を抽出する実装プロトタイプの紹介です。 http://www.slideshare.net/shuyo/web-using-crf の改訂版です。
TreeFrog Frameworkの紹介
TreeFrog Frameworkの紹介
ao27
C++ Webアプリケーションフレームワーク TreeFrog Framework の紹介
社内Java8勉強会 ラムダ式とストリームAPI
社内Java8勉強会 ラムダ式とストリームAPI
Akihiro Ikezoe
An engineer uses monads
An engineer uses monads
Kousuke Ruichi
函数型なんたらの集い 2014 in Tokyo http://connpass.com/event/8634/
CRF を使った Web 本文抽出 for WebDB Forum 2011
CRF を使った Web 本文抽出 for WebDB Forum 2011
Shuyo Nakatani
WebDB Forum 2011 の技術報告セッションで発表した際の資料です。
Web本文抽出 using crf
Web本文抽出 using crf
Shuyo Nakatani
クラウド運用のためのストリームマイニング
クラウド運用のためのストリームマイニング
Shin Matsumoto
ステップ・バイ・ステップで学ぶラムダ式・Stream api入門 #jjug ccc #ccc h2
ステップ・バイ・ステップで学ぶラムダ式・Stream api入門 #jjug ccc #ccc h2
Masatoshi Tada
きつねさんと学ぶ Lambda式&StreamAPIハンズオン[関ジャバ2015/7/11] #kanjava
きつねさんと学ぶ Lambda式&StreamAPIハンズオン[関ジャバ2015/7/11] #kanjava
bitter_fox
きつねさんと学ぶ Lambda式&StreamAPIハンズオン
Java concurrency in_practice_chap06
Java concurrency in_practice_chap06
ohtsuchi
Atc15_reading_networking_session
Atc15_reading_networking_session
紘也 金子
ATC15読み会で使ったスライドです.
Spring3.1概要x di
Spring3.1概要x di
Yuichi Hasegawa
2/13
性能測定道 事始め編
性能測定道 事始め編
Yuto Hayamizu
2013/10/05に開催された日本PostgreSQLユーザ会 第27回しくみ+アプリケーション勉強会での講演です。 http://www.postgresql.jp/wg/shikumi/shikumi27 ---- コンピュータシステムにおける性能測定とは、技芸です。 性能測定というと、単に測定ツールを実行するだけの作業だと考えられがちです。しかし実際には、何のために測定をするのか、そのために何を測定するべきか、そして何を使って測定するべきかを理解した上で行わなければ全く意味を成さない、深みのある技芸の世界です。 講演者の所属する研究室では長年にわたりデータベースシステムの研究・開発を行ってきました。その過程で培われた性能測定の技芸について、最近の実例も交えつつその考え方をご紹介したいと思います。
Fundamentals of Relational Database Management Systems chapter19
Fundamentals of Relational Database Management Systems chapter19
Keisuke Suzuki
Fundamentals of Relational Database Management Systems 19章輪読資料
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
社内で行ったシステムパフォーマンス勉強会の第4回(誤字修正版)
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
社内で行ったシステムパフォーマンス勉強会の第4回。
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
Yosuke Mizutani
アドテク×Scala meetup 2014-11-20 http://connpass.com/event/8384/
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Yahoo!デベロッパーネットワーク
JJUG CCC 2017 Spring 発表資料 http://www.java-users.jp/ccc2017spring/
MySQL最新情報と、データベースのお勉強のススメ-第68回PHP勉強会
MySQL最新情報と、データベースのお勉強のススメ-第68回PHP勉強会
sakaik
2013年5月27日(月)に開催された、第68回PHP勉強会で、MySQLおよびデータベースについてお話をさせていただきました。 MySQLのバージョン番号についての基本的な話題から、MySQLの最新情報まで、そして、先週発売されたばかりの、セルコ「プログラマのためのSQL」第4版の紹介もあります。
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -
yoyamasaki
KOF2013での発表資料です。
研究生のためのC++ no.7
研究生のためのC++ no.7
Tomohiro Namba
研究室のゼミの資料。研究に役立つC++入門。 七回目はプログラムの高速化。最適化、マルチスレッド等。
Open棟梁と、さまざまな開発標準とのフィッティング案
Open棟梁と、さまざまな開発標準とのフィッティング案
Daisuke Nishino
Open棟梁と、さまざまな開発標準とのフィッティング案 https://www.osscons.jp/jomanyt0z-537/#_537
StreamGraph
StreamGraph
Altech Takeno
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Koji Hasegawa
テスト自動化研究会主催「テスト自動化カンファレンス2014」発表資料 質疑応答やTweetいただいた内容について補足を加えたエントリを書きました http://nowsprinting.hatenablog.com/entry/2014/12/15/080000
ネットワーク自動化ツール紹介(Ansible・NAPALM編)
ネットワーク自動化ツール紹介(Ansible・NAPALM編)
akira6592
2017/10/10 開催の「NetOpsCoding#5 × ネットワークプログラマビリティ勉強会#13」における 「Ansible x NAPALM x NSO 解説・比較パネルディスカッション」内の発表資料です。 https://network-programmability.connpass.com/event/67156/
LDA入門
LDA入門
正志 坪坂
orderbusters_servicedocument_batton_saleshub.pdf
orderbusters_servicedocument_batton_saleshub.pdf
sano54
株式会社batton 受発注バスターズ説明資料
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
ssuser8de8212
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
More Related Content
Similar to 3月度定例会プレゼン資料 張田浩明 最新
クラウド運用のためのストリームマイニング
クラウド運用のためのストリームマイニング
Shin Matsumoto
ステップ・バイ・ステップで学ぶラムダ式・Stream api入門 #jjug ccc #ccc h2
ステップ・バイ・ステップで学ぶラムダ式・Stream api入門 #jjug ccc #ccc h2
Masatoshi Tada
きつねさんと学ぶ Lambda式&StreamAPIハンズオン[関ジャバ2015/7/11] #kanjava
きつねさんと学ぶ Lambda式&StreamAPIハンズオン[関ジャバ2015/7/11] #kanjava
bitter_fox
きつねさんと学ぶ Lambda式&StreamAPIハンズオン
Java concurrency in_practice_chap06
Java concurrency in_practice_chap06
ohtsuchi
Atc15_reading_networking_session
Atc15_reading_networking_session
紘也 金子
ATC15読み会で使ったスライドです.
Spring3.1概要x di
Spring3.1概要x di
Yuichi Hasegawa
2/13
性能測定道 事始め編
性能測定道 事始め編
Yuto Hayamizu
2013/10/05に開催された日本PostgreSQLユーザ会 第27回しくみ+アプリケーション勉強会での講演です。 http://www.postgresql.jp/wg/shikumi/shikumi27 ---- コンピュータシステムにおける性能測定とは、技芸です。 性能測定というと、単に測定ツールを実行するだけの作業だと考えられがちです。しかし実際には、何のために測定をするのか、そのために何を測定するべきか、そして何を使って測定するべきかを理解した上で行わなければ全く意味を成さない、深みのある技芸の世界です。 講演者の所属する研究室では長年にわたりデータベースシステムの研究・開発を行ってきました。その過程で培われた性能測定の技芸について、最近の実例も交えつつその考え方をご紹介したいと思います。
Fundamentals of Relational Database Management Systems chapter19
Fundamentals of Relational Database Management Systems chapter19
Keisuke Suzuki
Fundamentals of Relational Database Management Systems 19章輪読資料
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
社内で行ったシステムパフォーマンス勉強会の第4回(誤字修正版)
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
社内で行ったシステムパフォーマンス勉強会の第4回。
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
Yosuke Mizutani
アドテク×Scala meetup 2014-11-20 http://connpass.com/event/8384/
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Yahoo!デベロッパーネットワーク
JJUG CCC 2017 Spring 発表資料 http://www.java-users.jp/ccc2017spring/
MySQL最新情報と、データベースのお勉強のススメ-第68回PHP勉強会
MySQL最新情報と、データベースのお勉強のススメ-第68回PHP勉強会
sakaik
2013年5月27日(月)に開催された、第68回PHP勉強会で、MySQLおよびデータベースについてお話をさせていただきました。 MySQLのバージョン番号についての基本的な話題から、MySQLの最新情報まで、そして、先週発売されたばかりの、セルコ「プログラマのためのSQL」第4版の紹介もあります。
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -
yoyamasaki
KOF2013での発表資料です。
研究生のためのC++ no.7
研究生のためのC++ no.7
Tomohiro Namba
研究室のゼミの資料。研究に役立つC++入門。 七回目はプログラムの高速化。最適化、マルチスレッド等。
Open棟梁と、さまざまな開発標準とのフィッティング案
Open棟梁と、さまざまな開発標準とのフィッティング案
Daisuke Nishino
Open棟梁と、さまざまな開発標準とのフィッティング案 https://www.osscons.jp/jomanyt0z-537/#_537
StreamGraph
StreamGraph
Altech Takeno
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Koji Hasegawa
テスト自動化研究会主催「テスト自動化カンファレンス2014」発表資料 質疑応答やTweetいただいた内容について補足を加えたエントリを書きました http://nowsprinting.hatenablog.com/entry/2014/12/15/080000
ネットワーク自動化ツール紹介(Ansible・NAPALM編)
ネットワーク自動化ツール紹介(Ansible・NAPALM編)
akira6592
2017/10/10 開催の「NetOpsCoding#5 × ネットワークプログラマビリティ勉強会#13」における 「Ansible x NAPALM x NSO 解説・比較パネルディスカッション」内の発表資料です。 https://network-programmability.connpass.com/event/67156/
LDA入門
LDA入門
正志 坪坂
Similar to 3月度定例会プレゼン資料 張田浩明 最新
(20)
クラウド運用のためのストリームマイニング
クラウド運用のためのストリームマイニング
ステップ・バイ・ステップで学ぶラムダ式・Stream api入門 #jjug ccc #ccc h2
ステップ・バイ・ステップで学ぶラムダ式・Stream api入門 #jjug ccc #ccc h2
きつねさんと学ぶ Lambda式&StreamAPIハンズオン[関ジャバ2015/7/11] #kanjava
きつねさんと学ぶ Lambda式&StreamAPIハンズオン[関ジャバ2015/7/11] #kanjava
Java concurrency in_practice_chap06
Java concurrency in_practice_chap06
Atc15_reading_networking_session
Atc15_reading_networking_session
Spring3.1概要x di
Spring3.1概要x di
性能測定道 事始め編
性能測定道 事始め編
Fundamentals of Relational Database Management Systems chapter19
Fundamentals of Relational Database Management Systems chapter19
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
MySQL最新情報と、データベースのお勉強のススメ-第68回PHP勉強会
MySQL最新情報と、データベースのお勉強のススメ-第68回PHP勉強会
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -
研究生のためのC++ no.7
研究生のためのC++ no.7
Open棟梁と、さまざまな開発標準とのフィッティング案
Open棟梁と、さまざまな開発標準とのフィッティング案
StreamGraph
StreamGraph
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
ネットワーク自動化ツール紹介(Ansible・NAPALM編)
ネットワーク自動化ツール紹介(Ansible・NAPALM編)
LDA入門
LDA入門
Recently uploaded
orderbusters_servicedocument_batton_saleshub.pdf
orderbusters_servicedocument_batton_saleshub.pdf
sano54
株式会社batton 受発注バスターズ説明資料
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
ssuser8de8212
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
【slideshare】オンライン二次健診サービス_20240607.pptx (1).pdf
【slideshare】オンライン二次健診サービス_20240607.pptx (1).pdf
chiakiota2
ファストドクター オンライン二次健診サービスの紹介資料です。
うりぼーギルドの歩き方
うりぼーギルドの歩き方
Kota
うりぼーギルドの歩き方です。
Sales Hub_Kuzen_Our Service Introduction
Sales Hub_Kuzen_Our Service Introduction
nomofuruse1
Sales Hub_Kuzen_Our Service Introduction
株式会社メンバーズ「脱炭素アクション100」2023年度実施レポート(2024.6.6)
株式会社メンバーズ「脱炭素アクション100」2023年度実施レポート(2024.6.6)
Members_corp
メンバーズでは、デジタルクリエイター(当社社員)がお客さま企業の支援を中心とした日々の業務における行動の一つひとつを変えることで脱炭素社会の実現に貢献するために、2023年4月に「脱炭素アクション100」を全社に展開し社員による取り組みを開始しました。これらの脱炭素の取り組みを広く活用していただきたいと考え、メンバーズでの推進プロセスおよび実績をまとめたレポートを公開します。
KGIとKPIについて(営業の目標設定とKPIの商談プロセス) About KGI and KPI
KGIとKPIについて(営業の目標設定とKPIの商談プロセス) About KGI and KPI
Tsuyoshi Horigome
KGIとKPIについて
Business Strategy - ITIL Case Studies by Using ITIL 2011 (Japanese)
Business Strategy - ITIL Case Studies by Using ITIL 2011 (Japanese)
Jerimi Soma
test
【slideshare】オンライン二次健診サービス_20240607.pptx.pdf
【slideshare】オンライン二次健診サービス_20240607.pptx.pdf
chiakiota2
ファストドクター オンライン二次健診サービスの紹介資料です。
クイズでレクリエーション!企業向けクイズワークショップ「みんなのクイズ」の説明資料
クイズでレクリエーション!企業向けクイズワークショップ「みんなのクイズ」の説明資料
Jun Chiba
クイズでレクリエーション!企業向けクイズワークショップ「みんなのクイズ」の説明資料です。社内イベント、内定者懇親会、研修前のアイスブレイクなどで利用可能です。
画像生成AIのビジネス活用術をご紹介! 5つの活用シーンと具体的事例も併せて紹介します
画像生成AIのビジネス活用術をご紹介! 5つの活用シーンと具体的事例も併せて紹介します
otakai1201
画像生成AIのビジネス活用術を解説しています
CFO組織の働き方を変える 経理業務変革プラットフォーム 「BlackLine」のご紹介
CFO組織の働き方を変える 経理業務変革プラットフォーム 「BlackLine」のご紹介
taisukekuwano4
経理業務変革プラットフォーム「BlackLine」の概要紹介資料です。
20240606_Service Design Exercise_Visual Report_vol.1.pdf
20240606_Service Design Exercise_Visual Report_vol.1.pdf
jun_suto
2024年度高知大学地域協働学部で開講されたサービスデザイン基礎演習Day1の様子をまとめたビジュアルレポートを公開しました。 本演習では、「LEGO® SERIOUS PLAY® (レゴ® シリアスプレイ®)メソッドと教材を活用したワークショップ」を取り入れ、デザイン思考/サービスデザイン、リーンスタートアップ、アイデアソン手法を組み合わせ、地域課題解決や社会課題解決に向けた商品/サービスの開発や政策形成の基本的な考え方と手法を学ぶことを目的に開講されています。
株式会社VISIONARY JAPAN_エンジニアチーム 採用ピッチ資料(ver2.2).pdf
株式会社VISIONARY JAPAN_エンジニアチーム 採用ピッチ資料(ver2.2).pdf
recruit9
株式会社VISIONARY JAPANのエンジニア向けの採用ピッチ資料です。
smartcamp_RECRUIT_deck 2024060606 dddddd
smartcamp_RECRUIT_deck 2024060606 dddddd
design777859
Smartcamp deck.
LabBase就職ご紹介資料_240605サービス概要説明資料240605.pdf
LabBase就職ご紹介資料_240605サービス概要説明資料240605.pdf
ssuser8de8212
Business
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadership
Yasuyoshi Minehisa
service
Recently uploaded
(17)
orderbusters_servicedocument_batton_saleshub.pdf
orderbusters_servicedocument_batton_saleshub.pdf
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
【簡易版】DMMチャットブーストCV サービス該当の紹介資料.pptx.pdf
【slideshare】オンライン二次健診サービス_20240607.pptx (1).pdf
【slideshare】オンライン二次健診サービス_20240607.pptx (1).pdf
うりぼーギルドの歩き方
うりぼーギルドの歩き方
Sales Hub_Kuzen_Our Service Introduction
Sales Hub_Kuzen_Our Service Introduction
株式会社メンバーズ「脱炭素アクション100」2023年度実施レポート(2024.6.6)
株式会社メンバーズ「脱炭素アクション100」2023年度実施レポート(2024.6.6)
KGIとKPIについて(営業の目標設定とKPIの商談プロセス) About KGI and KPI
KGIとKPIについて(営業の目標設定とKPIの商談プロセス) About KGI and KPI
Business Strategy - ITIL Case Studies by Using ITIL 2011 (Japanese)
Business Strategy - ITIL Case Studies by Using ITIL 2011 (Japanese)
【slideshare】オンライン二次健診サービス_20240607.pptx.pdf
【slideshare】オンライン二次健診サービス_20240607.pptx.pdf
クイズでレクリエーション!企業向けクイズワークショップ「みんなのクイズ」の説明資料
クイズでレクリエーション!企業向けクイズワークショップ「みんなのクイズ」の説明資料
画像生成AIのビジネス活用術をご紹介! 5つの活用シーンと具体的事例も併せて紹介します
画像生成AIのビジネス活用術をご紹介! 5つの活用シーンと具体的事例も併せて紹介します
CFO組織の働き方を変える 経理業務変革プラットフォーム 「BlackLine」のご紹介
CFO組織の働き方を変える 経理業務変革プラットフォーム 「BlackLine」のご紹介
20240606_Service Design Exercise_Visual Report_vol.1.pdf
20240606_Service Design Exercise_Visual Report_vol.1.pdf
株式会社VISIONARY JAPAN_エンジニアチーム 採用ピッチ資料(ver2.2).pdf
株式会社VISIONARY JAPAN_エンジニアチーム 採用ピッチ資料(ver2.2).pdf
smartcamp_RECRUIT_deck 2024060606 dddddd
smartcamp_RECRUIT_deck 2024060606 dddddd
LabBase就職ご紹介資料_240605サービス概要説明資料240605.pdf
LabBase就職ご紹介資料_240605サービス概要説明資料240605.pdf
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadership
3月度定例会プレゼン資料 張田浩明 最新
1.
Java8新機能 ラムダ式とストリーム API 2016年3月度定例会 張田浩明 全43枚 1
2.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 2
3.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 3
4.
Java8使うならJava8らしく描こうよ!! 4
5.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 5
6.
ラムダ式とストリームAPI ラムダ式とは関数を簡便に表現するための記法。 ストリームAPIは、ラムダ式を利用したコレクション操作用の API 6
7.
7 1. フルーツの一覧の中から 2. 名前が”りんご“で始まり 3.
値段が100円以上のものを、 4. 値段順で並び替えたものを 5. 名前だけ取り出して、 6. リスト作成する 簡単なサンプル
8.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 8
9.
9
10.
なぜラムダ式が必要になったのか • 並列処理が当たり前に使われるようになり、ラムダ 式の必要性が高まった。 Microsoftの提案を受け入れていれば、ラムダ式が もっと早く入っていたかもしれない。。 10
11.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 11
12.
ラムダ式使用例 • リストの中身を1つずつ取り出して処理するためforEachというメソッ ドが 追加されている。 • list.forEach(中身を1つずつ取り出してそれぞれに対してした いこと
); • 「リストの中身を1つずつ取り出してそれぞれに対してしたいこと」を、 Javaのコードとしてどう書くのか? • forEach メソッドのシグネチャを見てみると、Consumer クラスを引 数に取るらしい。 12
13.
ラムダ式使用例 • Consumerクラスの実装はこんな感じ 13
14.
ラムダ式使用例 • つまり forEach
メソッドを使って、リストの中身を1つず つ取り出して出力したいとなると、下記のような Consumer オブジェクトを引数に渡す必要がある。 14
15.
15 『なにこれJavaうざい。。 めんどくさい』 とモダンな方々なら思うよね絶対
16.
16 ここでラムダ式の出番!!!
17.
17 ここでラムダ式の出番!!! そもそもラムダ式ってなんだ??
18.
ラムダ式とは、 • 関数を第一級オブジェクトとして扱えるようにしたもの • JVMで関数を直接扱えるようになったわけではなく、内 部的にはクラスのインスタンスを使って表現している。 •
ラムダ式で記述すると自動的に並列処理化される! 18
19.
ラムダ式使用例 19 アロー演算子 (ハイフン( - )
+大なり( > ))
20.
ラムダ式書き方 (引数) -> 引数に対して行いたい処理 ___________________________________________________________________________________________________ //引数が一つ (x)
-> x * x x -> x <= 10 ________________________________________________ //引数が二つ ( int x , int y )-> { return x + y; } ( x , y ) -> x + y 20 メソッドとして考えれば イメージ湧きやすい!!!
21.
使い方:メソッド参照 • ラムダ式だけでなく、既存のメソッドも関数型インタフェースで受け取ることが可能。 //ラムダ式を使った場合 list.forEach(x ->
System.out.println(x)); //メソッド参照を使った場合 list.forEach(System.out :: println); 21 //複数行処理も可能 list.forEach(x -> { System.out.println(x); System.out.println(x); });
22.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 22
23.
ストリームAPIとは • パイプライン型のデータ処理のAPI • 絞り込み、データ変換、グループ化、集計など の操作をそれぞれ分離した形で記述できる。 •
絞り込みの条件や、加工方法などをラムダ式で指定 する。 • メソッドチェーン形式で記述できる。 • Listや配列などの集合要素に対して、逐次的もしくは並 行的に処理を提供するクラス 23
24.
ストリームパイプライン • 処理をメソッドチェーンで記述する • ソース
( Source ) • 中間操作 ( Intermediate Operation ) • 終端操作 ( Terminal Operation ) • ストリームパイプラインは、1つ以上のソース、0個以上の 中間操作、1つの終端操作から構成される。 • 終端操作の結果をソースとして処理を継続させることも 可能。 (終端操作の後にメソッドチェイン可能) 24
25.
サンプル 25 1行目がソース 2~5行目までが中間操作 6行目が終端操作
26.
ストリームパイプラインの挙動 26
27.
ソース • 既存のデータからStream型のオブジェクトを作る。 • Streamの種類 Stream<T> IntStream
, LongStream , DoubleStream • つくりかた Collection.stream() Arrays.stream() Stream.of(Object…) 27 bufferReader.lines() IntStream.range(int,int)
28.
中間操作 • 絞り込みや写像などの操作を指定して、新しいStreamを返 す。 • 遅延実行 処理方法を指定するだけで、実際には処理しない。 中間操作を呼び出すたびにループしてたら効率が悪い。 終端操作が呼ばれた時に、複数の中間操作をまとめてルー プ処理 •
処理の種類 ・絞り込み : filter ・オブジェクト変換 : map,flatMap ・並び替え : sorted 28 ・数の制御 : limit , skip ・同一要素除外 : distinct Etc…
29.
終端操作 • ストリームパイプラインを実行して、何らかの結果を取得する処 理。 forEachだけは戻り値を返さない。 • 処理の種類 •
畳み込み : collect , reduce • 集計: min , max , average , sum , count • 単一の値の取得: findFirst , findAny • 要素の検証: allMatch , anyMatch , noneMatch • 繰り返し: forEach , forEachOrdered 29 Etc…
30.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 30
31.
中間操作使用方法 : filter,
map 31 • Filter • Map __________________________ _________________________ //結果 : 300 400 500 //結果 : ”100” ”200” “300” “400” “500”
32.
中間操作使用方法 : distinct,
sored 32 • Distinct _____________ • Sorted __________ ※ List#sortメソッドが追加されている為、Streamに変換しなくても ソートすることは可能 ※ .reverse()を追加することで降順でソートが可能になる。 //結果 : 100 200 300 //結果 : 100 200 300 400 500
33.
終端操作使用方法 :anyMatch 33 • AnyMatch,
AllMatch, NoneMatch ___________________________________________ 結果 : b = true;
34.
ショートカットサーキット評価の終 端操作 • 例えば、Stream#countは全要素をループで回す ので時間がかかるが、Stream#findAnyはショート サーキット評価なので,1つ目の要素が見つかれば すぐに終わる。 34
35.
終端操作使用方法 :collect 35 • ToList _______________________________________________
36.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 36
37.
メリット パイプライン記述だから処理内容が見やすい ・保守性の向上 ・可読性の向上 簡単に並列実行できるようになる。 ->ラムダ式を用いることで自動的に並列処理 lists.stream().parallel() -> 使ったことないから詳しいこ とは説明できません。。 37
38.
保守性が向上する…? 処理の追加・削除・順番の入れ替えなどがやりやすい 再利用性やテスタビリティも向上するかも。 38
39.
39 可読性は..? • 野球選手の一覧から、チームごとの投手の平均年俸を取得する処理の例 • 気をつけないとすぐに読みにくくなる •
stream()とかstream()とかstream()とかノイズが多い。
40.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • メリットは? • まとめ • 質疑応答 40
41.
まとめ • ラムダ式 • 慣れたらラムダ式以外で書く術が考えられなくなる・・ •
デメリットも少ないし使わない手はないよね • ストリームAPI • 慣れるまでは読み書きも難しいし、バグを生みやすいかもしれない。 • でも慣れると少ない記述で複雑な処理が実行できる。 そして何より書いていて楽しい! (java7以前をバリバリ書いていた人なら絶対思っているはず。。) • しかし、標準で用意されてる機能が少ない気がします。。。。。 • 今後は独自で拡張する輩が出てきてオレオレコードが拡散するか も??? 41
42.
目次 • 本日のテーマ • ラムダ式とは?StreamAPIとは? •
ラムダ式基礎 • ラムダ式使用例 • ストリームAPIの基礎 • ストリームAPIの使用例 • まとめ • メリットは? • 質疑応答 42
43.
43 ご静聴ありがとうございました。
Editor's Notes
パラダイムシフト -> 革命
Download now