Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Ryuji Yamashita
PDF, PPTX
12,423 views
Skinny Framework で始めた Scala
Skinny Framework Meetup Tokyo 2 https://skinnyjp.doorkeeper.jp/events/35750
Software
◦
Read more
8
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 42
2
/ 42
3
/ 42
4
/ 42
5
/ 42
6
/ 42
7
/ 42
8
/ 42
9
/ 42
10
/ 42
11
/ 42
12
/ 42
13
/ 42
14
/ 42
15
/ 42
16
/ 42
17
/ 42
18
/ 42
19
/ 42
20
/ 42
21
/ 42
22
/ 42
23
/ 42
24
/ 42
25
/ 42
26
/ 42
27
/ 42
28
/ 42
29
/ 42
30
/ 42
31
/ 42
32
/ 42
33
/ 42
34
/ 42
35
/ 42
36
/ 42
37
/ 42
38
/ 42
39
/ 42
40
/ 42
41
/ 42
42
/ 42
More Related Content
PDF
Scalaでのプログラム開発
by
Kota Mizushima
PDF
Seasarプロジェクト徹底攻略
by
takezoe
PDF
実戦Scala
by
Yuto Suzuki
PDF
Seasar ユーザだったプログラマが目指す OSS の世界展開 #seasarcon
by
Kazuhiro Sera
PDF
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
by
Kazuhiro Sera
PDF
Skinny Framework 進捗どうですか? #fud_scala
by
Kazuhiro Sera
PDF
進撃のSbt
by
Yuto Suzuki
PDF
Skinny Meetup Tokyo 2 日本語スライド
by
Kazuhiro Sera
Scalaでのプログラム開発
by
Kota Mizushima
Seasarプロジェクト徹底攻略
by
takezoe
実戦Scala
by
Yuto Suzuki
Seasar ユーザだったプログラマが目指す OSS の世界展開 #seasarcon
by
Kazuhiro Sera
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
by
Kazuhiro Sera
Skinny Framework 進捗どうですか? #fud_scala
by
Kazuhiro Sera
進撃のSbt
by
Yuto Suzuki
Skinny Meetup Tokyo 2 日本語スライド
by
Kazuhiro Sera
What's hot
PPTX
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
by
真乙 九龍
PPTX
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
by
真乙 九龍
PPTX
Laravel Livewire の紹介
by
t Dash
PDF
DWANGO by ドワンゴ
by
scalaconfjp
KEY
PlayFramework1.x基礎編
by
Asami Abe
PDF
RxSwiftを“チーム開発に”導入する話
by
LINE Corporation
PDF
Swiftで、Webサーバにデータを送信・登録しよう!
by
Kanako Kobayashi
PDF
Atami
by
Souichiro Ito
PDF
ネタじゃないScala.js
by
takezoe
PPTX
プロダクトにおけるScala
by
Yuto Suzuki
PDF
ビッグじゃなくても使えるSpark Streaming
by
chibochibo
PDF
Skinny framework勉強会
by
Yusuke Arakaki
PDF
第1回名古屋Android勉強会Lt用資料
by
tantack
PDF
Serverless apps on aws using scala
by
Yoshitaka Fujii
PPTX
新事業がどんどん出来て組織が拡大中のフェーズのランサーズがどんな感じでプロジェクトを回しているのかまとめてみました
by
Satoshi Yokoi
PPTX
Do you like scala
by
Yuto Suzuki
PDF
AndroidStudioとGradleを利用したScala言語によるAndroidアプリの開発
by
Mogi Isamu
PPTX
Riot.jsを用いたweb開発 takusuta tech conf #1
by
Keisuke Imai
PPTX
CTOが語るUI/UX
by
Satoshi Yokoi
PPTX
Developing an Akka Edge1-3
by
saaaaaaki
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
by
真乙 九龍
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
by
真乙 九龍
Laravel Livewire の紹介
by
t Dash
DWANGO by ドワンゴ
by
scalaconfjp
PlayFramework1.x基礎編
by
Asami Abe
RxSwiftを“チーム開発に”導入する話
by
LINE Corporation
Swiftで、Webサーバにデータを送信・登録しよう!
by
Kanako Kobayashi
Atami
by
Souichiro Ito
ネタじゃないScala.js
by
takezoe
プロダクトにおけるScala
by
Yuto Suzuki
ビッグじゃなくても使えるSpark Streaming
by
chibochibo
Skinny framework勉強会
by
Yusuke Arakaki
第1回名古屋Android勉強会Lt用資料
by
tantack
Serverless apps on aws using scala
by
Yoshitaka Fujii
新事業がどんどん出来て組織が拡大中のフェーズのランサーズがどんな感じでプロジェクトを回しているのかまとめてみました
by
Satoshi Yokoi
Do you like scala
by
Yuto Suzuki
AndroidStudioとGradleを利用したScala言語によるAndroidアプリの開発
by
Mogi Isamu
Riot.jsを用いたweb開発 takusuta tech conf #1
by
Keisuke Imai
CTOが語るUI/UX
by
Satoshi Yokoi
Developing an Akka Edge1-3
by
saaaaaaki
Similar to Skinny Framework で始めた Scala
PDF
ビズリーチの新サービスをScalaで作ってみた 〜マイクロサービスの裏側 #jissenscala
by
takezoe
PPT
Inside mobage platform
by
Toru Yamaguchi
PDF
多分モダンなWebアプリ開発
by
tak-nakamura
PDF
Pylons ユーザのための Pyramid 移行ガイド
by
Nozomu Kaneko
PDF
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
by
Hiroh Satoh
PDF
Start python with fastapi
by
ku_taka
PDF
ScrapyとPhantomJSを用いたスクレイピングDSL
by
Masayuki Isobe
PDF
Pyramid入門
by
Atsushi Odagiri
PDF
Scala が支える医療系ウェブサービス #jissenscala
by
Kazuhiro Sera
PDF
What makes pyramid unique
by
Atsushi Odagiri
PDF
Djangoのススメ
by
Alisue Lambda
PDF
Ocs2012 tokyo/spring plone
by
Manabu Terada
PDF
Ocs2013 tokyo spring_plone
by
Manabu Terada
PDF
JavaScript時代のJava #kansumiB7 #kansumi
by
Yusuke Yamamoto
PDF
ScaLa+Liftとか
by
youku
PDF
ユーザ・デザイナーから見たPlone CMSのアピールポイント
by
Masaki NIWA
PPTX
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
by
fukuoka.ex
PDF
SkinnyFrameworkやろうぜ!(+ScalaMatsuriレポート) #scala_kb
by
Asami Abe
PDF
RESTful開発フロントエンド編(SPA・AltJS・フレームワーク)
by
K Tsukada
PPTX
Mithril
by
Yoshiki Shibukawa
ビズリーチの新サービスをScalaで作ってみた 〜マイクロサービスの裏側 #jissenscala
by
takezoe
Inside mobage platform
by
Toru Yamaguchi
多分モダンなWebアプリ開発
by
tak-nakamura
Pylons ユーザのための Pyramid 移行ガイド
by
Nozomu Kaneko
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
by
Hiroh Satoh
Start python with fastapi
by
ku_taka
ScrapyとPhantomJSを用いたスクレイピングDSL
by
Masayuki Isobe
Pyramid入門
by
Atsushi Odagiri
Scala が支える医療系ウェブサービス #jissenscala
by
Kazuhiro Sera
What makes pyramid unique
by
Atsushi Odagiri
Djangoのススメ
by
Alisue Lambda
Ocs2012 tokyo/spring plone
by
Manabu Terada
Ocs2013 tokyo spring_plone
by
Manabu Terada
JavaScript時代のJava #kansumiB7 #kansumi
by
Yusuke Yamamoto
ScaLa+Liftとか
by
youku
ユーザ・デザイナーから見たPlone CMSのアピールポイント
by
Masaki NIWA
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
by
fukuoka.ex
SkinnyFrameworkやろうぜ!(+ScalaMatsuriレポート) #scala_kb
by
Asami Abe
RESTful開発フロントエンド編(SPA・AltJS・フレームワーク)
by
K Tsukada
Mithril
by
Yoshiki Shibukawa
Skinny Framework で始めた Scala
1.
Skinny Framework で始めた
Scala Skinny Framework Meetup Tokyo 2 2015/12/22 @roundrop
2.
自己紹介 • 山下 竜司 •
(株) アットウェア • @roundrop • Facebook4J • 普段は主に Java で Web アプリ開発 • Scala は全然やっていない
3.
アジェンダ • 事例紹介 • なぜ
Skinny を選んだか • 実際 Skinny を使ってみてどうだったか
4.
Scala先駆者インタビュー http://www.atware.co.jp/blog/2015/11/1/scala-vol2-sera
5.
にちょっと出てくる
6.
社内ナレッジ共有ツール •某人気サービスと同じよ うなインターフェイス •社内事情とScalaの練習 も兼ねて自作 (2014年8月∼約2週間) •採用したフレームワーク Skinny Framework •1.2 ->
1.3 -> 2.0
7.
主な機能 • Google アカウントでのログイン •
skinny-oauth2-controller を使用 • 記事の表示・投稿・編集・プレビュー • 複数のタグ付け • 新規投稿時は Typetalk に通知 • 画像ファイルアップロード • コメントの投稿 • 記事のストック • 検索 • ストックやコメントされたりのイベントで通知 • Contribution の計算・ランキング • i18n 対応
8.
demo
9.
はじめての実装のおすすめ • scaffold または • DB
を固めてから reverse-scaffold • 生成されたソースを弄る • すると、そのうち慣れてくる
10.
はじめての実装のおすすめ • ビューテンプレートは ssp
で • 最初はまず ssp 使っとけばハマらない • Controller は SkinnyResource を継承し ない方式で • のほうが最初はわかりやすい(と思う) • example の CompaniesController • https://github.com/skinny-framework/skinny-framework-example/ blob/master/src/main/scala/controller/CompaniesController.scala
11.
はじめての実装のおすすめ • 最初から Skinny
ORM で狙ったとおりの SQL を発行するのは難しい • トライ&エラーを繰り返すよりも Model の テストを書いての試行錯誤が効率的 • 複雑なクエリは無理をせず生SQLで • ScalikeJDBC のドキュメントを読もう
12.
社内ナレッジ共有ツール •某人気サービスと同じよ うなインターフェイス •社内事情とScalaの練習 も兼ねて自作 (2014年8月∼約2週間) •採用したフレームワーク Skinny Framework •1.2 ->
1.3 -> 2.0 今では社内の情報共有インフラに定着
13.
なぜ Skinny を選んだか
14.
Scala • Scala、はじめてみたいけど • 環境構築めんどくさそう •
Scala のバージョンや sbt • activator って何者・・・ • FW/ライブラリ事情がわからない • FW いっぱいある・・・ • Play framework が無難? • DB アクセスライブラリいっぱいある・・・
15.
Scala • とりあえず普通の Web
アプリがつくりた いだけなんだけど・・・ • アクターモデルとか • 非同期前提とか • Reactive とか そういうのはあとでいいので・・・
16.
Scala • とりあえず普通の Web
アプリがつくりた いだけなんだけど・・・ • アクターモデルとか • 非同期前提とか • Reactive とか そういうのはあとでいいので・・・ Rails みたいなフルスタックでわかりやすいのがほしい
17.
Skinny Framework で始める
Scala http://www.java-users.jp/?page_id=1048#R2-4
18.
Skinny Framework で始める
Scala ( ゚д゚) ガタッ / ヾ __L¦ / ̄ ̄ ̄/_ \/ / http://www.java-users.jp/?page_id=1048#R2-4
19.
実際 Skinny を使ってみて どうだったか
20.
Skinny で始めた Scala •
はじめやすさ • わかりやすさ • 生産性
21.
Skinny で始めた Scala •
はじめやすさ • わかりやすさ • 生産性
22.
環境構築 •Java プログラマなら お馴染みのSAStruts よろしく解凍すれば すぐに使えるブラン クプロジェクト •依存ライブラリ込み 版もあり http://skinny-framework.org
23.
環境構築 • 解凍して IntelliJ
IDEA に放り込めば OK
24.
環境構築 • sbt 、Scala
のバージョン等もろもろ設定完了
25.
• めんどくさくなかった! • Skinny
が始めやすいのは本当
26.
Skinny で始めた Scala •
○ はじめやすさ • わかりやすさ • 生産性
27.
Skinny で始めた Scala •
○ はじめやすさ • わかりやすさ • 生産性
28.
Skinny のドキュメント • ドキュメント •
公式 http://skinny-framework.org • Example • https://github.com/skinny-framework/ skinny-framework-example • ScalikeJDBC 公式 • http://scalikejdbc.org • ScalikeJDBC の GitBook • https://www.gitbook.com/book/seratch/ scalikejdbc-cookbook/details
29.
Skinny のドキュメント • Play
framework のドキュメントよりも直 感的だし読みやすい構成・内容 • サイトトップに Overview -> 詳細へリンク • 局所的でなく一定の流れのあるサンプルコー ド + コメント • 適切な順序・粒度で書かれている
30.
Scala on Rails •
Play と違って仕組みやメソッド等の命名が Rails ライクなので独自の世界観が少なく スッと入ってくる感じ • params とか render とか strong parameter とか • それ故、他のメンバーもすんなり開発に入っ て来れています
31.
Servlet ベース • Servlet
コンテナ上で動く • Filter とか HttpServletRequest とかあると 妙に安心する • 困ってもなんとかできそう感 • コンフィギュレーションやデプロイも想像が つく
32.
Skinny で始めた Scala •
○ はじめやすさ • ○ わかりやすさ • 生産性
33.
Skinny で始めた Scala •
○ はじめやすさ • ○ わかりやすさ • 生産性
34.
コンパイル時間問題への対策 • 開発時は最小限のコンパイルのみ行うよう になっている • 基本、変更したものだけ差分コンパイル •
ビューの変更であればアプリサーバーの再起 動不要 • 今回程度のアプリでは特に大きなストレスは 感じなかった
35.
近道 - scaffolding •
Rails と同じく scaffold がある • 最初は、とりあえず scaffold でソース生成 して、それを弄るスタイルが捗る • 既存 DB スキーマから CRUD 生成する reverse-scaffold もある
36.
近道 - scaffolding •
私の場合、 1. DB 設計する 2. db:migrate してスキーマつくる $ ./skinny db:migrate 3. reverse-scaffold $ ./skinny g reverse-scaffold articles articles article 4. 生成されたソースをいじる 5. 3, 4 を繰り返す
37.
よくやるアレコレ入ってる • Web アプリでよくやるあれやこれやが予め 用意されてる •
i18n 対応 • CSRF プロテクション • 監査カラム自動更新、楽観的排他制御 • OAuth モジュール :
38.
• 何より、何も知らない Scala
素人が仕事し ながらの2週間程度でそこそこ使えるアプ リができたので、生産性はよいほうだと思 います
39.
Skinny で始めた Scala •
○ はじめやすさ • ○ わかりやすさ • ○ 生産性
40.
Skinny で始めた Scala •
○ はじめやすさ • ○ わかりやすさ • ○ 生産性 今回のケースでは Skinny を選んで正解だった
41.
まとめ • Scala 未経験者が
Skinny を使って社内ナ レッジ共有ツールをつくりました • Skinny の始めやすさのおかげで Scala を はじめるキッカケになった • フツーの Web アプリであれば Skinny は わかりやすいし生産性もよいのでオススメ
42.
まとめ • Scala 未経験者が
Skinny を使って社内ナ レッジ共有ツールをつくりました • Skinny の始めやすさのおかげで Scala を はじめるキッカケになった • フツーの Web アプリであれば Skinny は わかりやすいし生産性もよいのでオススメ Skinny Framework 使いましょう!
Download