タグ

JavaScriptに関するwata88のブックマーク (126)

  • Vim を WebAssembly に移植した - はやくプログラムになりたい

    久々のブログです. 6月ぐらいにWebAssembly の仕様をざっくり読んだので,なんか WebAssembly でやりたいなと思って,VimWebAssembly に移植してブラウザで動くようにしてみました,という話です. github.com 多分実物を見ていただくのが一番早いので,下記のリンクにアクセスしてみてください. デモページはこちら(下記の注意事項を先にお読みください) 注意 デスクトップ版の Chrome か Firefox か Safari か Edge を使ってください.どうやら macOS では Safari が一番動きが良いです. デモページは全部で1MBほどのリソースを fetch します.モバイルネットワークなどからアクセスする場合はお気をつけください. keydown でキー入力を取っているので,キー入力を横取りするブラウザ拡張などが有効になっていると

    Vim を WebAssembly に移植した - はやくプログラムになりたい
  • Mozillaが「WebAssembly Studio」発表。C/Rust/AssemblyScript対応のオンラインIDE

    Mozillaが「WebAssembly Studio」発表。C/Rust/AssemblyScript対応のオンラインIDE Mozillaは、Webブラウザ上で高速に実行できるWebAssemblyに対応したアプリケーションを開発するためのオンラインIDE「WebAssembly Studio」を発表しました。 オンラインIDEのサービスとして「WebAssembly.Studio」でベータ公開され利用できるほか、コードがGitHubでオープンソースとして公開されており、サーバにインストールして実行することも可能です。 WebAssemblyは、Webブラウザ上でネイティブコードに近い実行速度で高速に実行できるバイナリフォーマットです。 マイクロソフト、Google、Mozilla、Appleなどの主要なWebブラウザベンダがW3CのWebAssembly Community Grou

    Mozillaが「WebAssembly Studio」発表。C/Rust/AssemblyScript対応のオンラインIDE
  • マーチン・ファウラー氏「リファクタリング 2nd Edition」で20年ぶり内容刷新、サンプルコードはJavaScriptに。Web主体で書籍はエッセンシャル版の位置づけ

    マーチン・ファウラー氏「リファクタリング 2nd Edition」で20年ぶり内容刷新、サンプルコードはJavaScriptに。Web主体で書籍はエッセンシャル版の位置づけ マーチン・ファウラー氏が20年ぶりに大幅に内容を刷新した書籍「リファクタリング 2nd Edition」を今年秋に出版する計画だ。サンプルコードはJavaからJavaScriptに変わる。また、コンテンツ体はWebサイトとなり、書籍はそのエッセンシャル版の位置づけとなる。 「リファクタリング」とは、ソフトウェアの機能追加や変更、性能向上などに備えるため、開発されたコードの外部に対する振る舞いは変更せず、より整理された、あるいは洗練されたコードに書き換えること、あるいはその手法のことを指します。 いまでは開発者の間で広く知られているこのリファクタリングについて、その目的や手法などを書籍としてまとめあげ、出版したことで啓

    マーチン・ファウラー氏「リファクタリング 2nd Edition」で20年ぶり内容刷新、サンプルコードはJavaScriptに。Web主体で書籍はエッセンシャル版の位置づけ
  • ファミコンのエミュレータをRust / WebAssembly で書き直した - undefined

    概要 以前、JSで書いた(ファミコンのエミュレータを書いた - undefined)ファミコンのエミュレータをRustで書き直してみた。 また、技術的な内容はQiitaの方にも書いているので興味のある方は参照してみてください。(まだ Hello, World!までしか書けてませんが。) qiita.com もともとファミコンのエミュレータって新しい言語を習得するのにちょうどいい題材だったりするのでは、って話しからスタートしてて、よくわからないのでJSで書いてみて、ようやくRustで一通りは実装できた感じ。まだバグや未実装(音声周りやマッパー)も多いんですが、ひとまずはお腹いっぱいな感じ。 成果物 github.com あと、いくつかのROMは以下で遊べるようにしてます。音が出るので注意してください。 またAPUの実装にまだバグが残っているのDCMチャンネルが未実装なので音が変だったり出てな

    ファミコンのエミュレータをRust / WebAssembly で書き直した - undefined
  • Can (a== 1 && a ==2 && a==3) ever evaluate to true?

    Moderator note: Please resist the urge to edit the code or remove this notice. The pattern of whitespace may be part of the question and therefore should not be tampered with unnecessarily. If you are in the "whitespace is insignificant" camp, you should be able to accept the code as is. Is it ever possible that (a== 1 && a ==2 && a==3) could evaluate to true in JavaScript? This is an interview qu

    Can (a== 1 && a ==2 && a==3) ever evaluate to true?
    wata88
    wata88 2018/01/17
    ウケる
  • JSer.infoを開始してから7年が経ちました

    2011年1月15日にJSer.infoを開始してから今日でちょうど7年となりました。 今年は特にイベントもないので簡単にJSer.infoの振り返りを書いてみます。 去年の紹介記事 去年一年間に紹介したサイト数は1074でした。 また、今までのすべての紹介したサイト数の合計は7691でした。 JSer.infoの紹介したサイトデータはすべてデータ化されているので次のページから見れます。 jser/jser.info JSer.info Data Dashboard JSer.infoのゴール あらためて振り返るとJSer.infoのゴールは次のようなものです。 「JavaScriptに興味がある人にもっとJavaScriptを知ってもらう」 「JavaScriptの情報を整理して正確に伝える」 「更新コストを小さくして、継続できる形を作る」 毎年この時期になるとゴールを振り返って、そもそ

    JSer.infoを開始してから7年が経ちました
    wata88
    wata88 2018/01/15
    すごい
  • イマドキのJavaScriptの書き方2018

    PySpa統合思念体です。これからJavaScriptを覚えるなら、「この書き方はもう覚えなくていい」(よりよい代替がある)というものを集めてみました。 ES6以降の難しさは、旧来の書き方にプラスが増えただけではなく、大量の「旧来の書き方は間違いを誘発しやすいから非推奨」というものを作り出した点にあります。5年前、10年前のやウェブがあまり役に立たちません。なお、書き方が複数あるものは、好き嫌いは当然あると思いますが、あえて過激に1つに絞っているところもあります。なお、これはこれから新規に学ぶ人が、過去のドキュメントやコードを見た時に古い情報を選別するためのまとめです。残念ながら、今時の書き方のみで構成された書籍などが存在しないからです。 たぶん明示的に書いていても読み飛ばす人はいると思いますが、すでに書いている人向けではありません。これから書くコードをこのスタイルにしていくのは別にいい

    イマドキのJavaScriptの書き方2018
    wata88
    wata88 2017/12/27
    昔の記憶が邪魔するやつ
  • Evolution of the Heroku CLI: 2008-2017

    Resources What is Heroku? Help Customers Careers Events Podcasts Compliance Center Heroku is for Developers CTOs Team Collaboration Startups Enterprises Agencies Students See More Languages Node.js Ruby Java PHP Python Go Scala Clojure See More Latest News from the Heroku Blog Heroku Blog Find out what's new with Heroku on our blog. More news View all blog posts Over the past decade, millions of d

    Evolution of the Heroku CLI: 2008-2017
  • サーバーサイドレンダリング不要論 - Qiita

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

    サーバーサイドレンダリング不要論 - Qiita
  • やっぱりサーバーサイドレンダリングなんかしなくていいやという気持ち - console.lealog();

    個人の意見 aka ポエムです。 界隈的には今さら感がすごいけど。 そんな今さらポエった事情としては、 とある案件でSPAをReactで作りつつサーバーサイドレンダリング(以下SSR)をすることになるかも SPAじゃないページもまとめてReactでSSRすることになるかも ただ個人的にはSPA+SSR不要論者 サーバーサイドのテンプレートとしてのReactも冗長なだけやろ派 でも仕事なのでしゃーない(お客様がそう申されるなら・・ なのでやるからには再考察してみて、前向きにやれる要素を見つけたい! けどどんだけ考えてもやっぱり意義が見つけられなーい( ´Д`)=3 という感じで、SSR自体の是非はまあどうでもよくて、ただ個人的に「しなくていい」と思ってる気持ちをまとめたものです。 技術に是も非もないです。大事なのはどう使うかなのです。 ちなみにやってみた結果・・とかいう話ではなく、やってない

    やっぱりサーバーサイドレンダリングなんかしなくていいやという気持ち - console.lealog();
  • これからは今まで以上に、jQueryが必要なくなるかもしれない

    3, 4年前あたりから、jQuery無しでこう記述するとか、jQueryの一部の機能を代替する軽量スクリプトなどが出始めました。 2017年も半年が過ぎ、その状況はさらに変わり始めています。 (Now More Than Ever) You Might Not Need jQuery 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 現在のブラウザ事情 jQueryに替わる、JavaScriptの選択肢 マイクロライブラリの台頭 IE9への対応はポリフィルで NodeListの反復 jQueryは遅いのか? jQueryについて私が嫌いなもの $なしでは生きていけない? 現在のブラウザ事情 jQueryが2006年にリリースされてから、DOMとブラウザのAPIは飛躍的に向上しています。2013年に「You Might Not Ne

    これからは今まで以上に、jQueryが必要なくなるかもしれない
    wata88
    wata88 2017/07/14
    babelとかあるんだから、書きやすい構文で js をコンパイルすればいいみたいな世界にはならないんだな
  • Server Side Renderingについて知るべきこと。Server Side Renderingとは何か? それによって何が改善されるのか?(前編) ng-japan 2017

    Server Side Renderingについて知るべきこと。Server Side Renderingとは何か? それによって何が改善されるのか?(前編) ng-japan 2017 JavaScriptフレームワークとして知られるAngularのイベント「ng-japan 2017」がAngular Japan User Group主催で6月17日に都内で開催されました。 Angularは基的にWebブラウザで実行されるJavaScriptアプリケーションのフレームワークですが、一方でサーバサイドでAngularが備えるHTML構成機能を実現する、いわゆるServer Side Rendering機能の開発も「Angular Universal」として進んでいます。 そのため、Server Side Renderingに興味を持つAngularデベロッパーも増えてきました。 ng-

    Server Side Renderingについて知るべきこと。Server Side Renderingとは何か? それによって何が改善されるのか?(前編) ng-japan 2017
    wata88
    wata88 2017/06/19
    cgiとかphpとかを思い浮かべている
  • その事例だとコメントは不要だと思います - erukitiのmiscなやつ

    「正しく書かれたソースコードにコメントは必要ない」なんて幻想だという話 - 土屋つかさのテクノロジーは今か無しか および 「正しく書かれたソースコードにコメントは必要ない」なんて幻想だという話(補足編) - 土屋つかさのテクノロジーは今か無しかで、計算式の意図を説明するためにコメントを書こうぜという主張が書かれてますが、この内容だと全く賛同できませんね。別にコメントを全否定するわけではありませんが、この主張の例だと不適切です。 //フェードインが未完了の場合 if (alpha < 1.0f){ //処理A } 元記事の主張は、alpha < 1.0f という計算式はコメントなしでは来の意味であるフェードインが未完了の場合、というものがさっぱりわからないということでした。つまり意味情報の欠落を問題にしています。 const isFadeinCompleted = () => alpha

    その事例だとコメントは不要だと思います - erukitiのmiscなやつ
    wata88
    wata88 2017/05/21
    おおむね条件文にコメント書くのは条件文がわかりづらくてリファクタが必要な場合が多い印象。冗長な処理とかになぜなのか書かれてたりすると助かる
  • hatebu.me

    This domain may be for sale!

    hatebu.me
    wata88
    wata88 2017/05/08
    フロントエンド大百科みたいな本が読みたい
  • フロントエンド技術の変化激しすぎィ!ついていけねえよ!って人向けのメッセージ - Qiita

    この記事の動機 当方フロントエンド好きなエンジニアフロントエンドが嫌い という増田がホッテントリ入りしてて、中身を読んでみると正論と言える内容もあるものの、幾つか勘違いもあって悲しくなった。 勘違いされたままなのは悲しい。 そこで、フロントエンドに浅く接している人に対して、ストレスなくフロントエンド技術の変化の激しさに対処出来るよう、フロントエンドエンジニアからの弁明とも言えるメモを残すことにした。 毎年のように流行りのフレームワークやらツールやらが変化してない? あなたが感じるこのフィーリングは正しい。 実際何が流行っているかという点では、毎年のように変化が起こっている。 ただし、"○○○が流行ってきたから、前まで使っていた△△△はクソ。"という考えは正しくないし、○○○が△△△よりも必ずしも優れているというわけではない。 フロントエンドの世界では、UXやデザインの違いによってとても

    フロントエンド技術の変化激しすぎィ!ついていけねえよ!って人向けのメッセージ - Qiita
    wata88
    wata88 2017/05/08
    ブラウザにはjsしか残ってないからな(強い言葉)、あれで何とかするしかないのだ。というか、GUIはホント難しい
  • SlackでのJavaScriptからTypeScriptへの移行

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    SlackでのJavaScriptからTypeScriptへの移行
  • React基礎 · GitBook

    React基礎 レッスン Lesson 01: 環境構築 Lesson 02: ES2015について Lesson 03: 関数型の書き方 Lesson 04: 初めてのコンポーネント Lesson 05: 初めてのinline style Lesson 06: 初めてのprops Lesson 07: 配列からの展開 Lesson 08: フォームの定義 Lesson 09: フォームによるデータ追加 Lesson 10: 総合課題「目的特化型電卓を作ってみよう」 おまけ Appendix 01: 様々なコンポーネントの書き方 Appendix 02: コンポーネントのstate Appendix 03: コンポーネントのライフサイクルメソッド Appendix 04: JSX vs. createElement Appendix 05: PropTypes Appendix 06: p

  • JavaScriptはなぜトレンドが毎年変わると思われていたのか - Qiita

    JavaScriptはなぜトレンドが毎年変わると思われていたのか JavaScriptのエンジニャーは口を開くたびに出てくるツール名が違う、いつも環境設定をしている、みたいな話をよく聞きます。実際、それを揶揄するようなエントリーが人気だったりします。 とはいえ、JavaScriptを実際に使い込んでいる人は別にそんなに大きな変化だと思っていない節があって、台風は外周部ほど風速が速い、みたいな印象を感じます。 カンブリア紀のJavaScript ウェブサイトをパカパカ動かすための言語でした。DHTMLです。FireBugが出る前のJavaScriptを開発していた人類は、念力デバッグを駆使していました。あるいはalert()。 三畳紀のJavaScript prototype.js、jQuery、Closure Compiler、YUI、mochikit、Ext.jsなどの時代。JavaSc

    JavaScriptはなぜトレンドが毎年変わると思われていたのか - Qiita
  • JavaScript 製ファミコンエミュレータを公開しました - まるまるこふこふ

    公開しました(過去系) github.com Demo FaithJS Screenshot 作ろうと思ったきっかけ コンピュータの仕組みについて知りたいなら NES エミュ作るのが手っ取り早いと、 優秀な人が強い事を言ってて、僕もコンピュータの仕組みについて知りたかったので、 実装しようと思いました。 まず読んだ コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方 CPUやメモリの仕組みを大まかに知ることができる 30日でできる! OS自作入門 OSの仕組みやアセンブラの基がわかる 自作エミュレータで学ぶx86アーキテクチャ コンピュータが動く仕組みを徹底理解! こちらもアセンブラに慣れるために読んだ たのしいバイナリの歩き方 バイナリに慣れるために読んだ コンピュータの仕組みについて何も知識がなかったので、上記のを読んで勉強しました 参考にしたサイト NES on

    JavaScript 製ファミコンエミュレータを公開しました - まるまるこふこふ
  • socket.io が提供してくれているものは何か - from scratch

    現在開発中のシステムにリアルタイムな処理があり、そこで socket.io を使おうかなと思ってて、そういう折にタイムリーにもこの辺りの記事がタイムラインで出てきたのでメモ代わりに自分の意見を残しておく。 blog.jxck.io qiita.com socket.io が提供してくれているもの 「ブラウザとサーバ間のプロトコル」という観点で見ると socket.io は WebSocket を基として繋がらなかった時に XHR Long Polling や polling といった形式の代替手段を提供してくれるもの、という位置づけ。 一方で「ライブラリ」という観点で見ると socket.io はリアルタイムアプリケーションを作る際に必要になる処理をまとめて実装し、クライアントとサーバ間での EventEmitter として抽象化してくれているもの、という風になる。 もう少し噛み砕いて言

    socket.io が提供してくれているものは何か - from scratch