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

find 検索

71 - 80 / 1323    [|<]  [|<]  [<]  1  2  3  4  5  6  7  8  9  10   [>]  [>|][>|]
タイトル/名前 更新者 更新日
日記/2015/03/29/グラフDBの参考URLメモ msakamoto-sf 2017-02-12 16:39:25
Java/HTMLパーサライブラリ調査メモ(2015-03時点) msakamoto-sf 2017-02-12 16:36:45
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
ソート項目 / ソート順     1ページ 件ずつ表示

日記/2015/03/29/グラフDBの参考URLメモ  

所有者: msakamoto-sf    作成日: 2015-03-29 16:38:13
カテゴリ: GraphDB Neo4j 

グラフDBってどんなものか、また利用者も多いっぽいNeo4jってどんなのか、参考URLだけメモ。

Neo4jが色々記事見つけやすかった?:

Community Edition だと GPLv3 提供、Enterprise Edition だと商用ライセンスか、AGPLv3のデュアルライセンス。

Neo4jのEclipse上で動くツール?:

Neo4jの入門系:


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

Java/HTMLパーサライブラリ調査メモ(2015-03時点)  

所有者: msakamoto-sf    作成日: 2015-03-29 16:35:05
カテゴリ: HTML Java 

2015-03現在の、Javaで利用できるHTMLパーサライブラリってどんなのがあるか探してみた、調査メモ。参考URL集。

Javaで利用できるHTMLパーサライブラリの一覧、一番の参考URL集:

  • Open Source HTML Parsers in Java
    • http://java-source.net/open-source/html-parsers
    • 去年くらいにもチェックしてみたが、今回チェックしてみたらうろ覚えだけどいくつか追加されてる気もする・・・。
    • とりあえずぼちぼち新し目のも載ってるようなので、まずはこれが参考?

先に結論を書くと、今回は以下の要件に適してそうなパーサを探してみたのだが、唯一イケそうなTagSoupが2011年頃?のv1.2.1で止まってて、しょんぼりした。

  • 汚い、壊れたHTMLでもパースできること。閉じタグが無いのは可愛い方で、そもそも "<" が一文字欠けてしまったりとか、そんなレベル。
  • SAX APIサポート。DOMを構築しない、メモリに優しいパーサ

特性としてどうしても個人が開発してOSSとしてリリースしてるものが多い・・・というかむしろ、それしかないっぽいので、開発者個人の事情によって開発が止まる可能性が高い。
事実として、今回の要件に適合しそうなライブラリのうち、ソースコードリポジトリへのコミットが2014年以降も確認できているものはHtmlCleanerとjsoupの2つしかない。

他人が開発したHTMLパーサを利用するということはその開発者に依存することになる。
ライブラリの開発動向を定期的にチェックし、いつか乗り換える時がくる、というのをリスクとして検討しておく必要がある。
・・・と、思いました。


以下、本文です。

Stack Overflow でも、いくつか「良いJavaのHTMLパーサ教えて!」という質問が立ってる。

いくつか調べてみた:

  • HtmlCleaner Project Home Page
    • http://htmlcleaner.sourceforge.net/
    • 汚いHTMLをwell formedなXMLに変換するライブラリ。その過程で、HTMLのパースもできるらしい。
    • BSDライセンス
    • ぼちぼち開発継続してる。
  • jsoup Java HTML Parser, with best of DOM, CSS, and jquery
    • http://jsoup.org/
    • https://github.com/jhy/jsoup/
    • HTML5にも対応した、汚いHTMLでも頑張れるパーサ。
    • 一旦DOM構造に全部変換して、JavaScriptやjQueryに類似したAPIで要素を取得できる。
    • MITライセンス
    • ぼちぼち開発継続してる。
  • TagSoup home page
    • http://mercury.ccil.org/~cowan/XML/tagsoup/
    • 汚いHTMLをSAX型APIでパースできる。DOM構築はしない。
    • ライセンスはAPL2
    • ソースは公開されてるものの、GitHubやSFなどの公開リポジトリには無い。ソースのアーカイブがあるだけ。
    • 2011年のXML文字エンティティに対応した v1.2.1 が最後のリリースで、以降の動きは不明。
  • HTML Parser - HTML Parser


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

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