Submit Search
altJSの選び方
30 likes
16,732 views
T
terurou
Frontrend in NagoyaでのLT資料です
Technology
Read more
1 of 22
Download now
Downloaded 33 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
More Related Content
PDF
ソーシャルゲーム開発における運用とそのツール
Yoshiaki Sugimoto
PPTX
いまNode Express4で書いてるディレクターが 初めて書き始める2ヶ月前くらいの自分に言っておく
Takahiro YAMAGUCHI
PPTX
Node.jsに縁のない職場でnode.jsを使い始める戦術
Isamu Suzuki
PDF
「新しい」を生み出すためのWebアプリ開発とその周辺
Yusuke Wada
PDF
サーバサイドエンジニアから見た MT構築のレガシーなノウハウ (入門編)
Osamu Nagatani
PDF
デザイナーにもできる再構築の高速化/負荷分散
Hajime Fujimoto
PPTX
モノづくりを楽しもう! ~ このデバイスとクラウドでできること
Kazumi OHIRA
PDF
GitHub Enterprise with GMO Pepabo
Hiroshi SHIBATA
ソーシャルゲーム開発における運用とそのツール
Yoshiaki Sugimoto
いまNode Express4で書いてるディレクターが 初めて書き始める2ヶ月前くらいの自分に言っておく
Takahiro YAMAGUCHI
Node.jsに縁のない職場でnode.jsを使い始める戦術
Isamu Suzuki
「新しい」を生み出すためのWebアプリ開発とその周辺
Yusuke Wada
サーバサイドエンジニアから見た MT構築のレガシーなノウハウ (入門編)
Osamu Nagatani
デザイナーにもできる再構築の高速化/負荷分散
Hajime Fujimoto
モノづくりを楽しもう! ~ このデバイスとクラウドでできること
Kazumi OHIRA
GitHub Enterprise with GMO Pepabo
Hiroshi SHIBATA
What's hot
(20)
PDF
サブドメイン前提のチーム機能開発で踏んだ OAuthの罠の話 in express
Takahiro YAMAGUCHI
PDF
グラフ解析で社長の脳内さらす!
Kazuki Morozumi
PDF
アプリしか作れないけどAzureに触ってみた #ngtnet
Kazumune Katagiri
PPTX
Node.jsで使えるファイルDB"NeDB"のススメ
Isamu Suzuki
PPTX
BluemixでサクッとIoT ! ~ IoT Foundation, Node-RED や Azure Event Hub との連携もお助けヾ(o´∀`o)ノ
Kazumi OHIRA
PDF
Webサービスのコンテンツパターン 或いはデータの活⽤
Yusuke Wada
PDF
Nodeにしましょう
Yuzo Hebishima
PPTX
Node.jsではじめるサーバ構築
AimingStudy
PPTX
ガチリアルな修羅チーム開発
Atsushi Kojima
PDF
オープンデータのためのスクレイピング
直之 伊藤
PDF
まだ DOM 操作で消耗してるの?
Yuki Ishikawa
PDF
NuxtJS + REST APIで運用中サービスをNuxtJS + GraphQLに変更したことによる光と影
gree_tech
PPTX
A/BテストをAzure×Googleアナリティクスで試してみました。
典子 松本
PDF
ご注文は構成管理ですか??
Cosign930
PPTX
Microsoft機械学習の簡単な紹介
A AOKI
PDF
Python Tip LT 20210805 nlog2n2
Sekiguchi Toshihiro
PPTX
お得に手軽に♪試してみよう!サーバーレスアーキテクチャ ~Azure Functions / Logic Apps~
典子 松本
PDF
脆弱性検知ツールVulsを試してみた
Cosign930
PDF
S14 t3 yosuke_yamashita
Takeshi Akutsu
PDF
サーバサイドエンジニアが 1年間まじめにSPAやってみた
Itaru Kitagawa
サブドメイン前提のチーム機能開発で踏んだ OAuthの罠の話 in express
Takahiro YAMAGUCHI
グラフ解析で社長の脳内さらす!
Kazuki Morozumi
アプリしか作れないけどAzureに触ってみた #ngtnet
Kazumune Katagiri
Node.jsで使えるファイルDB"NeDB"のススメ
Isamu Suzuki
BluemixでサクッとIoT ! ~ IoT Foundation, Node-RED や Azure Event Hub との連携もお助けヾ(o´∀`o)ノ
Kazumi OHIRA
Webサービスのコンテンツパターン 或いはデータの活⽤
Yusuke Wada
Nodeにしましょう
Yuzo Hebishima
Node.jsではじめるサーバ構築
AimingStudy
ガチリアルな修羅チーム開発
Atsushi Kojima
オープンデータのためのスクレイピング
直之 伊藤
まだ DOM 操作で消耗してるの?
Yuki Ishikawa
NuxtJS + REST APIで運用中サービスをNuxtJS + GraphQLに変更したことによる光と影
gree_tech
A/BテストをAzure×Googleアナリティクスで試してみました。
典子 松本
ご注文は構成管理ですか??
Cosign930
Microsoft機械学習の簡単な紹介
A AOKI
Python Tip LT 20210805 nlog2n2
Sekiguchi Toshihiro
お得に手軽に♪試してみよう!サーバーレスアーキテクチャ ~Azure Functions / Logic Apps~
典子 松本
脆弱性検知ツールVulsを試してみた
Cosign930
S14 t3 yosuke_yamashita
Takeshi Akutsu
サーバサイドエンジニアが 1年間まじめにSPAやってみた
Itaru Kitagawa
Ad
Viewers also liked
(15)
PPTX
altJS勉強会「Haxeすごいからみんな使え!」
政樹 尾野
PDF
大規模なギョームシステムにHaxeを採用してみた話
terurou
PDF
Full Stack Scala
Ramnivas Laddad
PDF
ネタじゃないScala.js
takezoe
PDF
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
Dmitry Soshnikov
PDF
Elm overview
dsuke Takaoka
PPTX
Scala初心者がPlay/ScalaでロックなWebアプリを作ったお話
omi end
PDF
Purescript with Monad
Kousuke Ruichi
PDF
cocos2d-xおよび開発ツールについて
Tomoaki Shimizu
PPTX
IdrisでWebアプリを書く
Hideyuki Tanaka
PDF
Type-safe front-end development with Scala
takezoe
PPTX
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
Tomoaki Shimizu
PDF
jQueryを中心としたJavaScript
hideaki honda
PDF
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
PDF
最強オブジェクト指向言語 JavaScript 再入門!
Yuji Nojima
altJS勉強会「Haxeすごいからみんな使え!」
政樹 尾野
大規模なギョームシステムにHaxeを採用してみた話
terurou
Full Stack Scala
Ramnivas Laddad
ネタじゃないScala.js
takezoe
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
Dmitry Soshnikov
Elm overview
dsuke Takaoka
Scala初心者がPlay/ScalaでロックなWebアプリを作ったお話
omi end
Purescript with Monad
Kousuke Ruichi
cocos2d-xおよび開発ツールについて
Tomoaki Shimizu
IdrisでWebアプリを書く
Hideyuki Tanaka
Type-safe front-end development with Scala
takezoe
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
Tomoaki Shimizu
jQueryを中心としたJavaScript
hideaki honda
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
最強オブジェクト指向言語 JavaScript 再入門!
Yuji Nojima
Ad
Similar to altJSの選び方
(20)
PDF
CTOの考えるエンジニアマネジメント2
LIFULL Co., Ltd.
PDF
エンジニアのキャリアを考える
MKT International Inc.
PDF
PCCC21:株式会社日立製作所 「研究開発力向上のための研究DXソリューション」
PC Cluster Consortium
PDF
サービスデザイン思考×ピクト図解 V1.1
Hidehiko Akasaka
PDF
Bp study bmg_ピクト図解_20140226_v2_公開用
Hidehiko Akasaka
PDF
失敗しない仮想化環境の設計・構築法
VirtualTech Japan Inc.
PDF
Upwind Technology, Inc. Company Profile(Japanese)
Upwind Technology Inc.
PDF
ビジネスパーソンのためのDX入門講座エッセンス版
Tokoroten Nakayama
PDF
開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?
CASAREAL, Inc.
PDF
マイクロソフトにおけるエバンジェリズム活動
Osamu Monoe
PDF
楽天の中のわたしと勉強会
Rakuten Group, Inc.
PPTX
自治体のデータ利活用ポイント(20171025)
Hiroyuki Ichikawa
PPTX
日本仮想化技術株式会社のインターンシッププログラムについて
VirtualTech Japan Inc./Begi.net Inc.
PPTX
サービス×現場
真一 牛島
PDF
プロダクトマネージャーはエンジニアリングマネージャーになれるのか
Atsumi Kawashima
PDF
最新技術でここまでできる!VR・AR・MRの活用と一歩先行くテレワーク
Masashi Eguchi
PDF
仮想環境の設計手法
VirtualTech Japan Inc.
PDF
クラウドとは何か
VirtualTech Japan Inc.
PDF
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
Masayuki Ishikawa
PDF
第11回SIA例会プレゼン資料
Tae Yoshida
CTOの考えるエンジニアマネジメント2
LIFULL Co., Ltd.
エンジニアのキャリアを考える
MKT International Inc.
PCCC21:株式会社日立製作所 「研究開発力向上のための研究DXソリューション」
PC Cluster Consortium
サービスデザイン思考×ピクト図解 V1.1
Hidehiko Akasaka
Bp study bmg_ピクト図解_20140226_v2_公開用
Hidehiko Akasaka
失敗しない仮想化環境の設計・構築法
VirtualTech Japan Inc.
Upwind Technology, Inc. Company Profile(Japanese)
Upwind Technology Inc.
ビジネスパーソンのためのDX入門講座エッセンス版
Tokoroten Nakayama
開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?
CASAREAL, Inc.
マイクロソフトにおけるエバンジェリズム活動
Osamu Monoe
楽天の中のわたしと勉強会
Rakuten Group, Inc.
自治体のデータ利活用ポイント(20171025)
Hiroyuki Ichikawa
日本仮想化技術株式会社のインターンシッププログラムについて
VirtualTech Japan Inc./Begi.net Inc.
サービス×現場
真一 牛島
プロダクトマネージャーはエンジニアリングマネージャーになれるのか
Atsumi Kawashima
最新技術でここまでできる!VR・AR・MRの活用と一歩先行くテレワーク
Masashi Eguchi
仮想環境の設計手法
VirtualTech Japan Inc.
クラウドとは何か
VirtualTech Japan Inc.
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
Masayuki Ishikawa
第11回SIA例会プレゼン資料
Tae Yoshida
More from terurou
(20)
PDF
Webブラウザ上で動作する帳票エンジンを作る話
terurou
PDF
自社サービスでDurable Functionsを採用した話
terurou
PDF
Computation Expressions for Haxe
terurou
PDF
デンキヤギの採用の考え方
terurou
PDF
Vue.jsをhaxeで
terurou
PDF
MQTTとAMQPと.NET
terurou
PDF
DataGridを自前実装する話
terurou
PDF
オブジェクト指向の皮をかぶった関数型プログラミング言語 Haxe
terurou
PDF
動的なILの生成と編集
terurou
PDF
FIRST STEP to Haxe/JavaScript
terurou
PDF
大規模なJavaScript開発の話
terurou
PDF
Metro Style AppsでMSILver.2012/06/09
terurou
PDF
Metro Style AppsでMSIL
terurou
PDF
Yet Another DLR for Silverlightの試作
terurou
PDF
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
terurou
PDF
CommonJSの話
terurou
PDF
Scala×silverlight
terurou
PDF
DLR言語によるSilverlightプログラミング
terurou
PDF
Iron Python / Iron Ruby で .NET Programming
terurou
PDF
クラウドGPS(仮)
terurou
Webブラウザ上で動作する帳票エンジンを作る話
terurou
自社サービスでDurable Functionsを採用した話
terurou
Computation Expressions for Haxe
terurou
デンキヤギの採用の考え方
terurou
Vue.jsをhaxeで
terurou
MQTTとAMQPと.NET
terurou
DataGridを自前実装する話
terurou
オブジェクト指向の皮をかぶった関数型プログラミング言語 Haxe
terurou
動的なILの生成と編集
terurou
FIRST STEP to Haxe/JavaScript
terurou
大規模なJavaScript開発の話
terurou
Metro Style AppsでMSILver.2012/06/09
terurou
Metro Style AppsでMSIL
terurou
Yet Another DLR for Silverlightの試作
terurou
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
terurou
CommonJSの話
terurou
Scala×silverlight
terurou
DLR言語によるSilverlightプログラミング
terurou
Iron Python / Iron Ruby で .NET Programming
terurou
クラウドGPS(仮)
terurou
altJSの選び方
1.
altJSの選び方 terurou デンキヤギ株式会社 2014/06/21
2.
自己紹介 1
3.
自己紹介/所属等 • デンキヤギ株式会社 代表取締役 •
社員, フリーランス, 協業企業 募集してます • DSTokai管理人 • 東海地方のメタコミュニティ • IT勉強会カレンダーっぽいやつの東海地方版 • NGK(名古屋合同懇親会) • エンジニア向けクロスコミュニティ忘年会 • ここ数年は100人超の参加者 2
4.
自己紹介/技術領域 • フロントエンドアーキテクト(自称) • 大量データ×フロントエンドが専門? •
数百万件以上をストレスレスに操作 • 100万件を編集するExcelっぽいヤツとか… • バックエンド込みのアーキテクチャ設計から フレームワーク・コンポーネント実装まで • 最近はHaxe製SPAフレームワークとか • Haxe/JS歴2年, その他にWPF, Silverlight等 • JavaScript歴は12年ぐらい 3
5.
altJSとは? 4
6.
altJSとは? • Alternative JavaScript •
JavaScriptの代替プログラミング言語 コンパイル altJSで書かれた ソースコード JavaScriptの ソースコード 5
7.
なぜaltJSが必要なの? 6
8.
JavaScriptが色々つらい 7
9.
JavaScriptのつらいところ • 言語仕様が難しく、柔軟すぎる • prototype,
thisスコープ, クラスっぽい何か • 人やライブラリによってコードスタイルが 大きな差異がある • 結果的にレビュー, ドキュメントが増加… • 動的型付け • 静的型付けよりもバグ混入の可能性が高い • 学習コストの上昇, 保守性の低下へ… 8
10.
それ ECMAScript 6
で… • 使える時代が来るまで待つのが… • 2014年12月を目標に仕様策定中 • 仕様に従ったブラウザが来るのはその後 • IE13以上?が普及した時代が来れば… • ES6が来ても全てが解決する訳ではない • 仕方ないのでJavaScriptは生成しましょう 9
11.
altJSを選ぶ 10
12.
altJSは100種類以上… https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS 11
13.
とりあえずメジャーなaltJSに絞る • TypeScript • 今一番の注目株 •
最近1.0がリリースされ、本も3冊出版された • Haxe • マルチプラットフォーム言語 • CoffeeScript • Railsに採用されている 安定性, 採用実績, 国内外のユーザ数, 将来性等を 考慮すると、このあたり(2014年6月時点) 12
14.
ここから更に選定するためのポイント • 静的型付け or
動的型付け • 世間の流れは静的型付け • 静的型付けの方が開発効率や品質面で有利 • 前はそうでもなかったが、技術は進歩する • 開発対象 • Web? マルチプラットフォーム? … • Rails? PHP? Java? ASP.NET? … • メンバーの学習コスト • 既に習得済み? 近くの人に聞ける? 本は? • 過去にやったことがある言語に似てる? 13
15.
TypeScript • モダンな言語仕様 • ECMAScript
6に似た構文(ES6の先行実装) • 静的型, 型推論, 構造的部分型, … • 開発体制, 品質が信用できる(Microsoft製) • 開発環境, 日本語情報が整備されている • コンパイルが遅い(数秒から十数秒) • 実際はバックグラウンドコンパイルするので 遅さが気になる場面は限定されるが… 14
16.
Haxe • 構文は少し古臭いが、高度な言語機能 • ActionScript
3やC#に似た構文 • 静的型, 型推論, 構造的部分型, 代数的データ型, マクロ(AST変換)等、TypeScriptより高機能 • 若干JavaScriptとの親和性が低い • マルチプラットフォーム • JS以外にFlash, PHP, C++, C#, Java等 • 超高速コンパイル(数万行でも1秒未満) • なぜか名古屋と福岡にユーザが多い 15
17.
CoffeeScript • JavaScriptの構文をとにかく軽量化 • Rubyに似ており、記述するのは非常に楽 •
が、前提知識がないとコードが読めない • 動的型付け • altJSの草分け的存在 • Railsに採用されている • 歴史的経緯から現在のユーザ数は多いが、 今後のユーザ増加は望み薄っぽい 16
18.
まとめ 17
19.
結局どれ?(個人の見解) • TypeScript • 特に決め手がなければコレ •
日本語文献(書籍, Web)が多数、今後も増える • Haxe • マルチプラットフォーム、ゲーム開発 • ML由来の高度な型システムとmacroが欲しい • コンパイルが遅い言語は使いたくない • CoffeeScript • Rails案件または既にユーザであれば… • 今から決め手もなく選択するのは、うーん… 18
20.
altJSを使わないという選択肢もある 検討した結果、altJSを使うメリットがない ケースも当然存在する • jQueryでちょっとEffectをつける程度 • 俺たちはJavaScript忍者だ •
altJSとか信用できない でも、altJSを適用すべき範囲は結構広い 19
21.
全てをaltJSに置き換える必要もない • ツールからJavaScriptすることが一般化 • Flash/CreateJSで書きだしたりとか •
生成コードをaltJSに書き直しとかありえない • altJSとJavaScriptが混在する開発スタイル, アーキテクチャは当たり前 • メンバー構成や担当作業に最適化 • もちろん無秩序にならないように設計は必要 20
22.
個人的には Haxe 推しです 今回の発表では詳細な解説は 全てすっ飛ばしたので、 質問・クレームは
@terurou まで 21
Download