home ホーム search 検索 -  login ログイン  | help ヘルプ

find 検索

51 - 60 / 1302    [|<]  [|<]  [<]  1  2  3  4  5  6  7  8  9  10   [>]  [>|][>|]
タイトル/名前 更新者 更新日
Java/Nashorn(Java8以降のJavaScriptエンジン)の参考URLメモ(2015-03時点) msakamoto-sf 2017-02-12 16:28:06
JavaScript/参考メモ/AST,構文解析,Call Graph,CFG(Control Flow Graph)生成周り(2015-03時点) msakamoto-sf 2017-02-12 16:25:23
JavaScript/参考メモ/asm.js(2015-03時点) msakamoto-sf 2017-02-12 16:22:20
JavaScript/参考メモ/altJSとtranspiler(2015-03時点) msakamoto-sf 2017-02-12 16:21:07
JavaScript/参考メモ/VirtualDOM(2015-04時点) msakamoto-sf 2017-02-12 16:20:54
JavaScript/参考メモ/Polyfill(2015-03時点) msakamoto-sf 2017-02-12 16:20:42
JavaScript/参考メモ/Promise関連(2015-04時点) msakamoto-sf 2017-02-12 16:20:28
JavaScript/参考メモ/Data Binding, ObserverパターンとVue.js(2015-03時点) msakamoto-sf 2017-02-12 16:20:11
技術/Chrome/初期設定で起動する(--user-data-dir) & リモートデバッグ可能にする(--remote-debugging-port) msakamoto-sf 2017-02-12 16:18:14
技術/ソフトウェア設計/MVVM(Model View ViewModel)デザインパターンとData Bindingの参考URLメモ(2015-03時点) msakamoto-sf 2017-02-12 16:11:02
ソート項目 / ソート順     1ページ 件ずつ表示

Java/Nashorn(Java8以降のJavaScriptエンジン)の参考URLメモ(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:26:30
カテゴリ: Java JavaScript 

Java8のJavaScriptエンジン、Nashorn(ナースホルン)の参考URLのメモ書きです。

参考URLその1:

特徴:

  • ECMAScript-262 Edition 5に準拠。
  • ASTにした後JVMコードに変換するので、HotSpotVMのパフォーマンスの恩恵に預かれる。
  • Rhinoの呼び出し方からAPIを変えてないので、Rhinoの呼び出しをそのままNashornでも使える。

以下、参考URLその2.

以上。

(今思ったんだが、JSON.stringifyとかJSON.parseも使えるなら、複雑なデータ構造をプログラマブルにカスタマイズするような用途だと、組み込みのNashornをうまく活用できはしまいか。)



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:28:06
md5:dab12e6a42752078cd3ee8d2c2728a98
sha1:01b36077621217bbf5116b5222cd1219dcabaad0

JavaScript/参考メモ/AST,構文解析,Call Graph,CFG(Control Flow Graph)生成周り(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:23:20
カテゴリ: JavaScript 

JavaScriptのAST,構文解析,Call Graph, CFG(Control Flow Graph)生成周りの2015-03時点での参考URLメモです。

JavaScriptのcall graphを生成するには?

JavaScriptの構文解析ライブラリ

JavaScriptのParserにはどんなのがある?:

Esprimaというのが有望そう?:

JavaScriptの構文解析→AST変換までしてくれるライブラリなど

結構ライブラリが充実してきてる。Lintなどで構文解析する需要が大きいらしい。

JSのカバレッジ計測

ASTを変換することでカバレッジ計測用のコードを挿入するアプローチ。以下はあくまでもブラウザ上で実行されるJSのカバレッジ計測。node.jsエコシステムについては未調査。



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:25:23
md5:1bbc46659a2c0317d0011a5fa54b97d2
sha1:2ecc9f444252dc1530a002b46dc8d11255065c01

JavaScript/参考メモ/asm.js(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:21:31
カテゴリ: JavaScript 

asm.jsについての参考URLのメモ書きです。

  • asm.jsとは:最適化のために、専用の制限を加えたJS仕様と、その最適化処理系。らしい。
  • C/C++で記述したコードをJSに変換できる。C/C++で書かれた純粋なデータ処理ロジックをそのままJSに持ち込めるので、画像処理や音声データ処理で蓄積されたC/C++の資産をJSでも活用できる。
  • 例としてC/C#などで画像処理アルゴリズムを記述して、それをLLVM-IRに吐き出し、それをJSに変換、そこまで行けばasm.jsで最適化することで、ブラウザアプリから高速にそうしたアルゴリズムを利用可能になる。
  • 類似技術としてはPNaClという、ネイティブコードをブラウザ上で動作させる技術がある。

参考:



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:22:20
md5:3b443a67fff913f70472476f0d480462
sha1:62ce681433b03a8da219cdb1edb1e4f411984a14

JavaScript/参考メモ/altJSとtranspiler(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-30 16:00:40
カテゴリ: JavaScript 

altJSやJavaScript transpiler (ES6で書いたのをES5に変換する) 界隈、現在どうなってるのかググって参考URLのメモ(2015-03時点)。

altJSの一覧, 比較資料

メジャーなaltJSの公式URL、参考記事

JavaScript Transpiler



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:21:07
md5:2167dbccd7fd2f6fba23fc9bf9d387a8
sha1:461e762dacd3f71586962279078bf86dbead607b

JavaScript/参考メモ/VirtualDOM(2015-04時点)  

所有者: msakamoto-sf    作成日: 2015-04-29 11:54:10
カテゴリ: JavaScript 

JavaScriptでのVirtualDOM参考URLメモ(2015-04時点)。

いくつかVirtualDOMの機能を取り込んだメジャーなライブラリがある。Facebookのreact.jsがその一つ。他にもReactive.jsというのがあるが、この辺りはreactiveプログラミングのライブラリの中にVirtualDOM機能を含んでいる。もちろんVirtualDOM単体のライブラリもあり、そのへんもmizchi先生のQiita記事で触れられてる。

とりあえず2015年時点なら、このAdvent Calendarの記事全部目を通せば大体勉強できそう:

React・・・じゃない、Reactive.jsを使った動くサンプルコードをjsfiddleで公開してくれてるので、分かりやすい記事:

JS界隈のエッジな記事は、日本だとQiitaに集まってる気がするので。とりあえずggrksかQiitaで検索すれば良さそう:



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:20:54
md5:68e0baa21fe6ed3fa6ad5fe4a76328c1
sha1:315d87e04dadb88e18b111dd831d0375a257a80a

JavaScript/参考メモ/Polyfill(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:06:10
カテゴリ: JavaScript 

JavaScriptの"Polyfill"ってなんなのかググった参考URLのメモ。

要するにHTML/JS/CSSの最新仕様や、まだドラフトとか提案段階の機能を、古いブラウザとかでも先取りして動かせるようにしてくれるライブラリをまとめて "Polyfill" というカテゴリで扱ってるらしい。

そのため、SVGだとかWeb ComponentsだとかCSS3の一部の機能だったりとか、ピンポイントで先行実装したライブラリが何種類も、それぞれ勝手に開発されて流行り廃りしてる状況。

ただし、古いブラウザでもできることに限界があったりするので、どこまでの機能を提供してくれるのか、要注意らしい。



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:20:42
md5:f5bcea04d915d10642b3a6ff3082a230
sha1:4aca3392f9beea6a3ed43f432af192afe0d38f3f

JavaScript/参考メモ/Promise関連(2015-04時点)  

所有者: msakamoto-sf    作成日: 2015-04-29 11:57:11
カテゴリ: JavaScript 

JavaScriptのPromiseの参考URLメモ。

ES6で正式登場、ブラウザによっては一部機能先行実装。未対応のブラウザでも、Polyfill(互換実装)あり。

概要とか、ひと通りサンプルコード付きで分かりやすかった学習サイト:

初期の仕様とりまとめサイトとか、MDNとか:

その他入門系:



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:20:28
md5:f7624e0e960b6dd5ede31638ceec2b87
sha1:f6f94dd03934b627dcdf76ffa6584b8e9abeae67

JavaScript/参考メモ/Data Binding, ObserverパターンとVue.js(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:12:06
カテゴリ: JavaScript 

JavaScriptでのData Bindingってどうしてるのか、軽くググってみたところObserverパターンの応用であり、JSでのライブラリの代表例としてVue.jsというのがありましたので、2015-03時点で参考URLをメモ。

  • 技術/ソフトウェア設計/MVVM(Model View ViewModel)デザインパターンとData Bindingの参考URLメモ(2015-03時点) でもWPFの世界の参考記事をいくつかググって並べたが、One Way / Two Way / Once の3種類位あるらしい。
  • One-Way は単方向。Two-Wayが双方向。Onceは最初の一度きり、という具合に使い分けされてるらしい。
  • 実装としては、Observerパターンを使って、オブジェクトの変更イベントを購読(subscribe)して、データの変更やViewの変更イベントをお互いに伝え合う形。
  • JSで開発する場合は、Two-Wayの利用頻度が高めなのかも。

JavaScriptとObserverパターン

JavaScriptでObserverパターンはどう作るか?いくつか、実際にサンプルコードで例示してくれてる記事が見つかった。

JavaScriptでのData Bindingのサンプル

参考:

その他、Stack Overflowより:

Vue.jsの参考URL

2015-03現在、Observerを基盤としたDataBindingと、さらに一部ではReactなどのパラダイムを取り入れたライブラリ・フレームワークが百花繚乱なのがJavaScript界隈のホットな現状。
その中で、Vue.jsを使ったMVVMとData Bindingのサンプルがいくつか見つかったので、メモ。



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:20:11
md5:49701b4f3571d036de79ed6059916486
sha1:09bb8cc1a48a60430ddc9acbc5016e8200cd3753

技術/Chrome/初期設定で起動する(--user-data-dir) & リモートデバッグ可能にする(--remote-debugging-port)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:16:17
カテゴリ: Chrome JavaScript 

(1) まずchrome.exeがどこにあるか調べる。Winならタスクマネージャからchrome.exeのプロパティを開いてフルパスを確認する。2015-03-29時点で試してみたら、以下の場所にあった。インストール時の状況や環境によって変わるかも。

C:\Users\(ユーザ名)\AppData\Local\Google\Chrome\Application\chrome.exe

(2) 初期状態とするため、空のプロファイルディレクトリを作成する。"c:\work\temp\chrome-test-profile1" というフォルダを作成したら、"--user-data-dir" オプションに指定して起動する。
コマンドプロンプトを開き、以下のように実行する。

> cd C:\Users\(ユーザ名)\AppData\Local\Google\Chrome\Application

> chrome.exe --user-data-dir=c:\work\temp\chrome-test-profile1

(3) リモートデバッグを行いたい場合は、"--remote-debugging-port=NNNN" オプションを付けて以下のように起動する。

> cd C:\Users\(ユーザ名)\AppData\Local\Google\Chrome\Application

> chrome.exe --remote-debugging-port=9222 --user-data-dir=c:\work\temp\chrome-test-profile1

(4) 起動したchromeウインドウで、試しに何かデバッグしたいWebサイトを読み込んでみる。

(5) デバッガとして操作するChromeを起動し、"--remote-debugging-port" に指定したポートでlocalhostにアクセスしてみる。 上の例なら以下にアクセス:

http://localhost:9222/

→ "Inspectable pages" という画面で、デバッグ対象chromeで表示しているタブ一覧が表示される。デバッグしたいタブをクリックすると、対応するDevTools画面が表示される。



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:18:14
md5:8702cfdc0bc28508ea7a5c3577501d9a
sha1:f68819a3a9f390f1e8142536a1f0def0af572d9d

技術/ソフトウェア設計/MVVM(Model View ViewModel)デザインパターンとData Bindingの参考URLメモ(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:09:29
カテゴリ: Java JavaScript システム開発 プログラミング 

Web開発でもJSのライブラリやフレームワークで目にするようになったMVVM(Model View ViewModel)とかData Binding って何だろう、とぐぐったので、2015-03時点の参考URLのメモ。

  • WPF(Windows Presentation Foundation)やSilverlightの世界で生まれた考え方らしい。
  • そのため、MSDNとかWindows系の開発者のblog等で丁寧に動作原理を解説してる記事が多い。
  • Model View ViewModel - Wikipedia

分かりやすかった:

MSDNの固めの解説記事:

  • Model-View-ViewModel (MVVM) パターンの使用 - Windows app development
  • 5: Implementing the MVVM Pattern Using the Prism Library 5.0 for WPF

MVVMとData Bindingの関連性の自分なりの認識:

  • MVVMのキーとなるのがObserverパターンであり、この応用としてData Bindingがある。
  • View と ViewModelはData Bindingで結ばれている、つまり双方向でObserveな関係(誤解してるかもなので、今の時点でのイメージ的な言い回し)。
  • Viewへの変更イベントはそのままViewModelへ通知され、ViewModelが対応するModelをアップデートする。
  • 逆に、別のコードからのModelへの変更はそのままViewModelに通知され、ViewModelが適切なPresentationに変換してViewに通知する。

Data Bindingについては、以下の記事が基本的な作りを解説してくれてて分かりやすかった:

ただ、Observeによる処理の流れでは、重い処理が間に入ると流れがそこで止まってしまう。そのためマルチスレッドで重い処理を切り出すなどの工夫が必要となる。

MVVMにおけるマルチスレッド処理の活用について、いくつか参考になりそうな記事が見つかったのでメモ:



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2017-02-12 16:11:02
md5:df90cdd84ede766c83ee27ca2509fb6f
sha1:b009a4d11d9f7c6a7fa26b82332f66409e8f064b