Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
JSXをモダンな感じで開発してみた
Search
cancer
January 21, 2015
Technology
0
480
JSXをモダンな感じで開発してみた
2015/1/21 koba04 さんとワイワイJavaScript勉強会 #ajiting で発表した資料
cancer
January 21, 2015
Tweet
Share
More Decks by cancer
See All by cancer
AngularJSで作ったアプリをReactで置き換えてみた
cancer
0
230
CSSスプライトを動的生成して快適ソシャゲ開発
cancer
1
260
JavaScriptでKeyframeAnimationを作ってみた
cancer
1
77
第2回 Sass勉強会 in 社内
cancer
1
70
Other Decks in Technology
See All in Technology
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
8.7k
AWS 잘하는 개발자 되기 - AWS 시작하기: 클라우드 개념부터 IAM까지
kimjaewook
0
130
Codexとも仲良く。CodeRabbit CLIの紹介
moongift
PRO
0
200
「使い方教えて」「事例教えて」じゃもう遅い! Microsoft 365 Copilot を触り倒そう!
taichinakamura
0
380
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
43k
AWS IoT 超入門 2025
hattori
0
330
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
3
5.5k
オープンソースでどこまでできる?フォーマル検証チャレンジ
msyksphinz
0
130
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.8k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
ビズリーチ求職者検索におけるPLMとLLMの活用 / Search Engineering MEET UP_2-1
visional_engineering_and_design
1
110
[Codex Meetup Japan #1] Codex-Powered Mobile Apps Development
korodroid
2
520
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
Writing Fast Ruby
sferik
629
62k
It's Worth the Effort
3n
187
28k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.3k
Docker and Python
trallard
46
3.6k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
The Cost Of JavaScript in 2023
addyosmani
54
9k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
Leading Effective Engineering Teams in the AI Era
addyosmani
4
390
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Transcript
JSX をモダンな感じで開発 してみた
自己紹介 宇野 陽太( ) @cancer6 株式会社ピクセルグリッド(2015/1~) AngularJS / Backbone /
React あたりを触ったり CSS の設計したりなど
JSX
... ではなく
None
... でもなく
Adobe JSX
What is Adobe JSX http://en.wikipedia.org/wiki/ExtendScript 正式名称はExtendScript( たぶん) レイヤー 編集やファイル作成などの操作ができる Photoshop
用のスクリプト(JS) Photoshop CS の頃からある Photoshop の内部にあるJS エンジンで実行 ES3 相当 / JSON とかsetTimeout とか使えない Photoshop Script とかAdobe JSX とかとも呼ばれてる ExtendScript Toolkit というIDE がある
Architecture
Architecture 3,4 年ぐらい前に作ったものをリファクタリングする CoffeeScript gulp gulp-coffee gulp-concat(include 用) gulp-rename( 拡張子.js
を.jsx に直す) (and more) Underscore
#include ExtendScript では外部ファイルを\#include で読み込むこと ができる #include "lib/underscore.js"; #include "actions/action.js"; #include
"module/a.js"; #include "module/b.js"; 開発中はinclude.jsx とapp.jsx だけconcat し、 ビルド時に全部結合していました ( 理由は覚えてない...)
Test
テストフレー ムワー ク 実行環境がPhotoshop or ExtendScript Toolkit レイヤー オブジェクトや独自のファイルオブジェクトなど がある
ブラウザやター ミナル上で実行するのが難しい
テストダブル Photoshop のエンジンがいつものJS と違う sinon.js 使おうとするもsetTimeout が無くてエラー が出る
なので自分で作る ocha.js mocha / jasmine ライクに書けるフレー ムワー ク sinobi.js sinon.js
ライクに書けるテストダブル それぞれ最低限のテストが書ける程度に作って ExtendScript Toolkit から実行する
今回はやらなかったけど... https://github.com/adobe-photoshop/generator-core Generator プラグインにするとよりモダンに Photoshop CC から利用可能 Photoshop の中にNode.js サー
バー が組み込まれてる terminal などからGeneratorCore を起動することで接続で きる
ご清聴ありがとうございました