タグ

ブックマーク / qiita.com/shibukawa (11)

  • FacebookのHermesというJSエンジンがエロい - Qiita

    FacebookがHermesという組み込みのJSエンジンを公開したようです。 ReactNative用の組み込み用のJSエンジン(最新版だとオプション切り替えで使えるっぽい) MITライセンス プロプラなものとの組み合わせが発生しうる組み込みにおいては正義しかない ES2015をサポート(予定) 現時点ではクラスとかlet/constのブロックスコープは実装途中 Map/Setとかの組み込みクラス系は実装済み サイズの小ささをうたった処理系はES2015への対応はまだまだなのが多いので(Duktapeとか)良い 事前にJavaScriptのソースコードをパースして中間表現(LLVM IRをそのまま利用?)にしておいてロードする モバイルのCPUやバッテリー、メモリーにも優しい なお、エロいというのは強く感情が揺さぶられた結果が出てきたワードであってセクシャルな内容は一切含まれておりません

    FacebookのHermesというJSエンジンがエロい - Qiita
    mizchi
    mizchi 2019/07/12
  • アダプティブなGUIコンポーネントの考察

    よくあるユースケースである、ヘッダーのハンバーガーメニューとドロワー。どうやって実装するのが良いでしょうか? よくある実装としては、メニューとドロワーが置いてあるところの親のコンポーネントを置いて、ヘッダーのボタンが押されたコールバックを受け取り、ドロワーの表示フラグをオンにする、みたいな実装かと思います。明示的に関係を記述する、という感じ。 ですが、Angularではおそらく別の回答になります。Angularには暗黙的なインタラクションを可能にするAPIの数々があって、実際それを活用したコンポーネントなどもあるので、React/Vue/Mithrilとはちょっと違う世界が見える気がしたので、それを紹介します。 最近の主流のフロントエンドの世界観 まずは、Angularの話の前に、このエントリーの前提となる認識を合わせておきましょう。 最近は、フロントエンド界隈では、まずコンポーネントとい

    アダプティブなGUIコンポーネントの考察
    mizchi
    mizchi 2018/10/25
    このパターン、明確にアンチパターンであると思う
  • シングルページアプリケーションで今後あるといいのかもな、と思うものの妄想 - Qiita

    戻されているそうです。 シングルページアプリケーションは速度のための銀の弾丸ではなく、使い方を間違うとパフォーマンスは悪化します。 シングルページアプリケーションのフレームワークはコンポーネントで階層構造にしてオーガナイズできるようになっています。それによってモジュール性を高めて再利用性が向上したり、自分のレイヤー以外のことを気にしなくても良くなってコードの見通しが良くなる、という、20年ぐらい前からよく言われていたいつものやつです。 例えば、つぎのようにAというページが、Bというコンポーネントを使い、さらにCというコンポーネントを使っていたとします。 AはBの中身を知る必要はありません。・・・というのが正しいオブジェクト指向の作法とされています。Bコンポーネントは表示のためにサーバーアクセスが必要だったとします。そして、サーバーから取ってきた情報を分析して表示するタイミングで、コンポーネ

    シングルページアプリケーションで今後あるといいのかもな、と思うものの妄想 - Qiita
    mizchi
    mizchi 2017/05/01
    渋川さんがほしいのは next.js の mithril 版では
  • サーバーサイドレンダリング不要論 - Qiita

    サーバーサイドレンダリング、Isomorphic、Universal JavaScriptなどの言葉をよく見かけます。なるほどね、良さそうだね、外部公開するサービスを書くことがあったら挑戦してみたいね、Mithrilにもisomorphic-mithrilってのをがんばっている人がいるし、みたいなことを漠然と思っていたのですが、最近ASCII.jpのシステムコールプログラミングの連載を書いていて、あらためてHTTPの仕様を見返してみて、逆にサーバーサイドレンダリングをしない方がいいのではないか、と思い始めました。 追記(23:30): サーバーサイドレンダリングと書いていますがUniversal JavaScriptみたいな凝ったビューの更新の意味です。 サーバーサイドレンダリングの欠点 サーバーサイドレンダリングのメリットとしてあげられるのは次の2点です。 検索エンジンのクローラー向け

    サーバーサイドレンダリング不要論 - Qiita
    mizchi
    mizchi 2016/12/24
  • Cache-Controlヘッダは仕様通り実装されていない? - Qiita

    最初に 次のエントリーで追試しました。エントリーの内容は古いです。一応Qiitaは履歴もとってくれるのでこの記事を上書きしちゃってもいいんですが、そうなるとコメントのコンテキストがわからなくなってしまうので、別記事にしました。エントリーも記録のために残します。 Cache-Controlヘッダは仕様通り実装されていない?(2) 編 HTTPのキャッシュの仕組みをいろいろ調べているのですが、よくわからなかったので実験してみました。 HTTP キャッシュの作成 14.9 Cache-Control 上記のサイトの説明によれば、no-cacheとmust-revalidateは非常に近い説明になっています。no-cacheはsubsequent requestと書いてあるので、.htmlから呼ばれる.css、.jsあたりのことまで(subsequent request)書いていると思われま

    Cache-Controlヘッダは仕様通り実装されていない? - Qiita
    mizchi
    mizchi 2016/07/06
  • オブジェクト指向と20年戦ってわかったこと - Qiita

    この記事の内容 オブジェクト指向と10年戦ってわかったこと Twitterやはてブコメントを見たら、「わかりやすかった」というコメントもあったのですが、どちらかというとネガティブ方面なコメントが多く目につきました。マサカリという用語で忌憚なく意見を言う風潮については別にいいんですが、「わかりにくい」「間違っている」「古い」みたいなコメントは何も生み出さないし、みんなでニコニコポエムを投稿しあうやさしいインターネッツになったらいいなって思ったので、僕もオブジェクト指向について投稿しようと思います。 何原則? 3原則じゃなくて4では?みたいなコメントもあったのですが、別に3でも4でも5でも重要ではないかなって思います。この4原則の出どころがどこかは知らないですが、C++かSmalltalkあたり(このあたりの話を見かけたのはJava登場前だった気がする)をターゲットとしている気がします。Jav

    オブジェクト指向と20年戦ってわかったこと - Qiita
    mizchi
    mizchi 2016/05/10
  • OracleとGoogleの判決文を斜め読む - Qiita

    (7/7追記)僕は斜め読みだったんですが、もっときちんと読んだ上で解釈を書いてくれている方がいます。僕も時間をとって全文を読みたいとは思っていますが、まだ時間がかかりますし、yudaiさんの会社の方が妥当性は高いと思いますので、そちらをご参照ください↓ 朝っぱらから色々衝撃が走った第一四半期の最終日ですが、OracleGoogleの裁判について、どのあたりが問題だったとされるのか気になるので判決文等を読んでみました。 経緯 2010年8月、OracleGoogleを訴える。当初の争点は特許侵害 (publicKey1) 2012年4月、サンフランシスコ連邦地裁の法廷開始 2012年5月、Googleの特許侵害はないとの陪審評決。ただし、フェアユースは意見が別れる。 2012年6月: OracleGoogleJava/Android訴訟、損害賠償金ゼロで合意。今回議論された37件のJ

    OracleとGoogleの判決文を斜め読む - Qiita
    mizchi
    mizchi 2015/07/01
  • (翻訳)Mithril.jsの将来の計画 - Qiita

    3月ぐらいにMLでMithril.jsの将来計画を聞かれた時の、作者のLeo Horie氏のコメントが興味深かったので翻訳してみました。ちなみに、回答されていなくて明記もされてないのですが、MLのやりとりを見ているとMithrilにはコアメンバーが4-5人はいそうです。 Andreas Söderlund 私は現在とても大きなWebのプロジェクトを開始しようとしています。少なくとも5年は使われ続けることを考慮して、なるべく将来のことについて考えておきたいと思います。例えば、5年前はタブレットとモバイルデバイスは考慮に入れることはそれほどありませんでしたが、今はそれらのサポートが絶対に必要です。 最初の質問はLeoへの質問です。Mithrilはとてもすばらしいもので、すでにそれを使うことは決定しました。しかし、LeoがMithrilに対して5年後にどのあたりを見ているのかを聞いておきたいと思

    (翻訳)Mithril.jsの将来の計画 - Qiita
    mizchi
    mizchi 2015/06/01
  • 最速MVCフレームワークMithril.jsの速度の秘密 - Qiita

    Mithril 0.2が日リリースされました。ちょっとURLが変わったり( http://mithril.js.org/ )、API名が一部(m.moduleがm.mount)変わっていたり、コンポーネント機能がコーディング規約レベルから、専用のサポートAPIが追加されたりしていますが、0.1系と大した差はなさそうです。 某node.js会長とはいろいろ社内で話をしたりしたのですが、各種ベンチマークでもトップクラス、平均的には最速のクライアントサイドMVCフレームワークという称号を持ちながら、国内ではまだまだ知られていないMithril。レンダリング速度は仮想DOMの代名詞となったReact.jsの5倍以上(ベンチマークによります)です。 ↓ホームページから転載 ちなみにこちらのベンチマークで計測すると、MithrilはReact.jsの10倍以上速い結果になるのですが、これはちょっと計

    最速MVCフレームワークMithril.jsの速度の秘密 - Qiita
    mizchi
    mizchi 2015/05/02
  • Go用のGoogle製のGUIツールキットgxuiのインストール - Qiita

    GoogleGo用の新しいGUIライブラリのgxuiをリリースしました。 ソースコードを見て分かる特徴 ボタン、テキスト入力、ツリーコンポーネントとかがありそう ツリーアダプタ的なクラスがある。直接ツリーコンポーネントに要素を追加するんじゃなくて、MVC的な作り? テーマが切り替えられる。darkというのが最初から組み込まれている。色を変えるぐらいならすぐできそう。ちなみに、テーマといいつつ画像データはなくてフルソースコード。 ベースはOpenGL。 C拡張を使っているのでクロスコンパイルは簡単ではなさそう。 Macへのインストール MacOSX 10.9+Golang 1.4.2(公式バイナリ)で試しています。 glewというライブラリが必要そうなので、Sourceforgeからtarballをダウンロードしてきてインストールします。

    Go用のGoogle製のGUIツールキットgxuiのインストール - Qiita
    mizchi
    mizchi 2015/03/18
    これgoogle公式ってより20%プロジェクトじゃないの
  • C言語的にJavaScriptを使う - Qiita

    プログラミング言語は世の中にたくさんありますし、用途や好みによって自由に使えることが多いのですが、一部どうしても置き換えができない言語というものがあります。ブラウザやFlashマクロやPhotoshopマクロのJavaScript、Action Script、GPUのシェーダ言語、Visual Basic for Application、SQLなどなどです。それでもaltJSやORMなど、直接書かないという選択肢もあったりもしますが、どうしても直接書くほうが実行効率が良かったりチューニングが効いたりします。 JavaScriptを使ったコーディングを何年かやっていると、C言語で書かれたアルゴリズムをJavaScriptに移植しないといけない事態に遭遇する機会も増えてくると思いますので、それについて説明します。 整数型としてデータを扱う JavaScriptの言語仕様ではJavaScript

    C言語的にJavaScriptを使う - Qiita
    mizchi
    mizchi 2014/12/04
  • 1