Javascriptを書きたくないヒ トのためのPythonScript
Upcoming SlideShare
Loading in...5
×
 

Javascriptを書きたくないヒ トのためのPythonScript

on

  • 14,656 views

Javascriptを書きたくないヒ トのためのPythonScript

Javascriptを書きたくないヒ トのためのPythonScript

Statistics

Views

Total Views
14,656
Views on SlideShare
11,762
Embed Views
2,894

Actions

Likes
30
Downloads
30
Comments
1

26 Embeds 2,894

http://blog.kzfmix.com 1261
http://blog.aoshiman.org 811
http://127.0.0.1 412
http://indogosse.tumblr.com 115
https://twitter.com 112
http://www.feedspot.com 36
http://cloud.feedly.com 32
http://spring-raining.tumblr.com 27
http://feedly.com 20
http://poochin.tumblr.com 9
http://s.deeeki.com 9
http://153.120.36.147 8
http://www.hanrss.com 7
http://compozz.tumblr.com 7
http://everrss.me 6
http://localhost 5
http://tweetedtimes.com 4
https://www.google.co.jp 3
http://webcache.googleusercontent.com 2
http://digg.com 2
http://www.tumblr.com 1
http://192.168.11.15 1
http://cache.yahoofs.jp 1
http://translate.googleusercontent.com 1
http://slideshare-download.seesaa.net 1
http://digambara54.rssing.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Javascriptを書きたくないヒ トのためのPythonScript Javascriptを書きたくないヒ トのためのPythonScript Presentation Transcript

  • Javascriptを書きたくないヒ トのためのPythonScript Shizuoka.py #2 @kzfm
  • 私について •  @kzfm – 製薬会社の研究員(最近インフラ周りばかり) – perl -> python (-> haskell) •  最近pandas(Rみたいに使えるやつ)が お気に入り •  PyconAPACも参加登録済み
  • マリー・アントワネット曰く
  • じJajavascriptがいやなら   pythonで書けばいいじゃない
  • これによりPython革命勃発 (私の中で)
  • ブラウザでのPython実行方法 1. javascriptでpythonを実装する 1.  <script type= text/python ></ script> 2. pythonで書いてjavascriptにコンパ イルする 1.  実行されるのはjavascript 1.  sass -> css 2.  jade -> html
  • Brython javascriptに汚染されて汚れまくった この世界をPythonで浄化してやる! (意訳) h%p://www.brython.info/
  • python inside !
  • いいところ、わるいところ •  brython.jsを読みこめばpythonで開発で きるのでお手軽にはじめられる •  開発も活発 •  jQuery等のjavascript資産を気軽に流用 できなさそう •  最初の読み込みで若干モサッとする –  javascriptのパーサを通して構文解析して構文 木をつくってjavascriptを出力してevalしてい る
  • 我々は 完全に浄化された言語世界では 生きられないのです!
  • ブラウザでのPython実行方法 1. javascriptでpythonを実装する 1.  <script type= text/python ></ script> 2. pythonで書いてjavascriptにコンパ イルする 1.  実行されるのはjavascript 1.  scss -> css
  • Javascriptと Pythonの 融合個体的アプローチ
  • PythonScript •  Pythonサブセット •  javascriptライブラリ を簡単に取り込める h%p://apppyjs.appspot.com/
  • はじめかた pip install pythonscripttranslator wget http://bit.ly/YSAbSS -O pythonscript.js echo 'print "Hello Shizuoka"' > app.py pythonscript < app.py > app.py.js (app.py.js)   console.log("Hello  Shizuoka");
  • <!DOCTYPE  html>   <html>      <body>          <h1>PythonScript  Example</h1>          <script  src="pythonscript.js"></script>          <script  src="app.py.js"></script>      </body>   </html>  
  • 補足 •  pythonscripttranslatorをインス トールするとpythonscriptというコマ ンドが使えるようになります •  これはpythonをjavasrcriptに変換し ます。 •  wgetでDLしたpythonscript.jsには 上記javascriptが必要とする関数が定義 されています。
  • コンパイルの流れ 1.  コードをPythonの astモジュールで パースして抽象構文 木に変換 2.  PythonToPytho nJSにより抽象構文 木がPythonJSに変 換 3.  PythonJSの抽象構 文木から Javascript生成
  • jQueryの使い方 •  PythonScriptにjQueryバインディン グがついてるのでそれを読み込んでおく •  J関数でアクセスできる($といっしょ) •  jQueryオブジェクトはj bu%on  =  J("#newtask”)   bu%on.bind("click",  false,  self.create) j  =  J("#taskinput").j   name  =    JS("j.val()")
  • Javascriptを取り込む •  JS関数を使えばいい •  例)handlebarsをつかう source  =  "<div  class='view'>{{name}}<a  href='#'  class='destroy'></a></div>"  +  “”   template  =    JS("Handlebars.compile(source)")   name  =  self.model.name   data  =  JS("template({name:name})") 注1)0.7.3だとJS関数の中で文字列をそのまま書くとコケる 注2)文字列も一度評価しないといけない感じ (+ )
  • 開発Tips •  livereloadを使えば、コードの更新を検知 してコンパイル、ブラウザのリロードをして くれる –  http://blog.kzfmix.com/entry/ 1367924270 •  よく監視させてるもの –  Jade –  Sass/Compass –  PythonScript
  • いいところ、わるいところ •  Javascriptの資産を手軽に使えるので 便利 •  楽しい、超楽しい、そして超ハマる •  バージョン上がると「えー動かんやん、な んでやーーー!?」ってなる – 発展途上
  • はまったところ •  jQueryバインディングにdelegateがなかった –  自分で追加して解決 •  ブラウザのイベントが受け取れない –  どうすんの? •  クラスメソッドが使えない –  シングルトンの作り方が分からなかった •  *args,**kwargsはサポートされているが –  関数で渡せなくてこまった •  が使えないのもテンプレート書くときに ちょっとめんどくさかった
  • デモ •  HakuinというSpine.jsインスパイアな フロントエンドMVCフレームワークを紹 介します。 •  白隠正宗美味いので飲むといいよ
  • あなたが使うべきなのは、 PythonScript? それともJavaScript?
  • CoffeeScriptでしたー (^O^)/ javascript