タグ

javascriptに関するevergreeenのブックマーク (19)

  • なんじゃこりゃ!かっこよすぎる3Dマップが作れるeegeo.jsにしびれた!

    まるでゲームのような豪華で楽しい3Dマップをブラウザー上に手軽に表示できるWebサービスAPIの登場です。現時点では日地図は対応していませんが、とてもわくわくするサービスですね。 eegeo.jsは、人気の地図ライブラリーLeafletをベースにしたオープンソースの3DマップAPIです。 シンプルな2Dマップを埋め込んだり、作成したりできる地図ライブラリーはたくさんあります。特に有名なのはGoogle Maps、Bing Maps、HERE、Mapbox、OpenStreetMapです。また、地図抽象化ライブラリーとして人気の高いOpenLayersやLeafletなどでは、アプリケーションの仕組みはそのままで、地図の「ベースレイヤー」を変更できます。 Google Earth APIの使用がNPAPIセキュリティを理由に非推奨になったことで、3DマップAPIの選択肢は限られてしまいま

    なんじゃこりゃ!かっこよすぎる3Dマップが作れるeegeo.jsにしびれた!
  • 5000人調査でわかった!世界のフロントエンド開発者が使うツールはこれだ

    次々とリリースされるJavaScriptライブラリーにフレームワーク、進化を続けるCSSモジュール……と、変化の激しいフロントエンド開発界隈。いま開発者たちに実際に使われているのはどんなツール? 開発経験は2年以上ありますか? 高度なCSSスキルとしてSassやAutoprefixerの使用も含まれていますか? JavaScriptの知識は十分にあり、Gulp、nmp、jQueryを使いこなせていますか? そうであれば一般的な開発者だそうです。Ashley Nolan氏によるフロントエンド開発ツールのアンケート調査によれば。 気になる結果を見る前に…… この種のアンケート調査は新たなツールを見つけたり、知識不足の分野の把握に役立ちます。執筆時点で5254件の回答が寄せられていて、アンケート調査としてはかなりのサンプル数です。ただ、結果を疑いようのない真実だと受け取るには慎重になるべきです。

    5000人調査でわかった!世界のフロントエンド開発者が使うツールはこれだ
  • JavaScriptの2016年:フロントエンド開発者が押さえるべき重大トピック

    相次ぐモダンなフレームワークの登場、脱jQueryの動き、ECMAScriptの進化など、SitePointの常連ライターが2016年のJavaScript事情を振り返ります。 2016年は、見方によっては歴史的であり、奇妙でもあり、楽しくもあり、恐怖でもあった年でした。JavaScriptだけに絞ると、ほかの大きな出来事に比べれば取るに足りない変化に見えますが、開発者にとっては重大な出来事でしょう。 JavaScriptの人気はとどまるところを知りません。すべての人に好かれる言語仕様ではありませんが、10年前のように馬鹿にされることはほとんど無くなりました。個人的にはJavaScriptが大好きです。そう、あのもどかしかった初期の頃からです。C++Java、あるいはPHPから移ってきた人は最初は戸惑うでしょう。JavaScriptは取っ付きやすく見えますが、実はそうではありません。でも

    JavaScriptの2016年:フロントエンド開発者が押さえるべき重大トピック
  • まったくの初学者はJavaScriptをどう学ぶべきか? 失敗しない学習法を考えてみた

    動くモノを作るのは確かに楽しい。でもまったくの基礎を持たない状態でスライドショーを作ることは、JavaScriptを学習するのに良い方法と言えるのでしょうか? 「ただプロジェクトをやってみる」というアドバイスはJavaScriptを学習する者にとって、もっとも驚くほど危険な言葉の1つです。 誤解を避けるために言っておけば、プロジェクトがコーディング言語学習にとってすばらしい方法であることは確かです(『最新技術を学び続けるのは疲れる? フロントエンド開発者なら変化を楽しもう』参照)。しかし、なにが良いのか判断できるだけの基礎知識が十分にないまま特定のプロジェクトを始めると、問題が起こります。 これは大事なポイントです。なぜなら、プロジェクトへの挑戦を急いで始めてしまうと、多くの人がJavaScriptの学習を完全にあきらめてしまう原因の1つになるからです。 失敗をして欲しくないので、次のよう

    まったくの初学者はJavaScriptをどう学ぶべきか? 失敗しない学習法を考えてみた
  • フロントエンドエンジニアなら知っておきたい、JavaScriptのログ収集方法まとめ

    サーバーサイドに比べて見落とされがちな、フロントエンドのエラーログ収集。JavaScriptのログ収集、確認に役立つ手法、ツール、ライブラリーを総まとめ。 開発進行中も番モードでの運用時も、ソフトウェアアプリケーションにおいてロギングは大切です。 サーバーを運用しているなら、サーバーサイドの言語選択にかかわりなく無数のライブラリーを利用でき、広範に及ぶストレージメカニズムやログ出力を扱う際の各種ツールも使えます。 しかし、クライアント側アプリケーションとなるとロギングは見過ごされがちで、利用できる手法もかなり限られています。 この記事ではクライアント側アプリケーション、特にJavaScriptを中心としたシングルページアプリケーション(SPA)におけるロギングの実装方法を紹介します。 コンソール エラーとメッセージのロギング方法でもっとも一般的かつ分かりやすいのは、おそらくコンソールの使

    フロントエンドエンジニアなら知っておきたい、JavaScriptのログ収集方法まとめ
  • HTMLのテーブルをJSONで動的に更新できる「Tabulator」がスゴい!

    テーブル(表組み)をかっこよく、使いやすく表示するJavaScriptライブラリーはたくさんありますが、決定版になりそうなのが「Tabulator」です。JSONデータを簡単に読み込めるので、更新が必要なサイトやアプリにおすすめ。 標準HTMLのテーブル(table)は、複数の基的なデータをレイアウトするのにとても便利ですが、テーブルにもっとほかの使い道がないでしょうか。外部APIからデータを取得したり、テーブルをソートあるいは編集可能にしたりする必要があるなら、もう少し気の利いたものが必要です。 思い当たることがあるなら、Tabulatorはおすすめのライブラリーです。Tabulatorは複雑なインタラクティブなテーブルの構築を簡単にするために設計された軽量なjQuery UIプラグインです。数行のJavaScriptで、ほぼすべてのデータソースをきれいにフォーマットされたインタラクテ

    HTMLのテーブルをJSONで動的に更新できる「Tabulator」がスゴい!
  • Reactでも使える!シンプルなJavaScriptステート管理ライブラリー Mobxを試す

    Reactのステート管理といえばReduxですが、React以外でも使えるライブラリーとして注目されているのが、MobXです。jQueryとReactを使ったサンプルコードで解説します。 あなたが開発したのがjQueryを使ったごくシンプルなアプリに過ぎなくても、UIのさまざまなパーツの同期を維持する問題に直面したことがあるはずです。たいていの場合、データを変更すると複数の箇所に反映する必要があり、アプリの規模が大きくなるにつれて対応が困難になります。この問題にうまく対処するには、イベントを利用して、アプリのさまざまなパーツに対して、変更があったことを知らせるのが一般的です。 それでは現在、多くの人はアプリケーションのステートをどのように管理しているのでしょうか。 「ステート」とはいったい何者なのか? ある人物がこう言っています。「こんにちは、ぼくだよ! ぼくにはfirstName、las

    Reactでも使える!シンプルなJavaScriptステート管理ライブラリー Mobxを試す
  • 生まれ変わったFacebook製テストフレームワーク「Jest」とは何か?

    長らく停滞していたFacebook製のJavaScriptテストフレーム「Jest」が息を吹き返しています。概要とサンプルを使ったテストの手順を紹介します。JavaScript PlaygroundのJack Franklinによる特別寄稿です。 この記事ではFacebookが開発したテストフレームワークJestを使い、ReactJSコンポーネントをテストする方法を説明します。Jestの独創的な機能、特にReactアプリ向けテストを簡単に実施する機能について説明するまえに、プレーンなJavaScript関数でのJestの使用法を紹介します。 Jestが注目に値するのは、Reactに対応しているだけでなく、JavaScriptアプリケーションのテストにも使用できるからです。ただし、いくつかの機能はユーザーインターフェイスのテストにとても役立つ形で提供されるので、Reactにぴったりです。 サ

    生まれ変わったFacebook製テストフレームワーク「Jest」とは何か?
  • 「動き」はどの技術で実装すべきか? Web Animations APIの登場で常識が変わる

    CSS AnimationsやTranstions、Canvas、JavaScriptによるDOM操作など、Webアニメーションの実装にはさまざまな手法がありますが、決定版となる新しいJavaScript APIの策定が進んでいます。CSSアニメーションのスペシャリストであり、the new codeを運営するDudley Storeyさんによる特別寄稿です。 従来のWebアニメーションの問題を解決するAPI Webにおけるアニメーションは、性質のまったく異なる4つのグループに分けられます。 CSS TransitionsとAnimationsはパフォーマンスに優れ、キーフレームを提供しているが、構築に膨大な時間を必要とし、基的な開始と終了の制御のみをCSSJavaScriptで提供している。UIの応答、ループ、ページ読み込みなどのシンプルなアニメーションに利用される傾向がある SMI

    「動き」はどの技術で実装すべきか? Web Animations APIの登場で常識が変わる
  • jQueryにはもう頼らない!無限スクロールをネイティブで実装する最新テクニック

    とても便利なJavaScript APIが登場しました。要素の表示状態を検出できるIntersectionObserver APIを使えば、無限スクロールを手軽に実装できます。 Webプラットホームに最近、注目の新しいクライアントサイドJavaScript API「IntersectionObserver API」が登場しました。 軽量でしかも使い勝手の良いこのAPIは、特定のDOM要素の表示状態、つまり要素が(ブラウザーウィンドウか要素の)ビューポートに入っているかどうかを効率的に監視する手段を提供しています。要素がビューポイントと重なり合う領域の割合を指定すれば、要素の表示状態を正確に定義できます。 この機能の一般的な用途としては、次のものが挙げられます。 コンテンツの遅延ロード 無限スクロール 広告表示 スクロールでトリガーされるアニメーション(注:用途としては来おすすめできない。

    jQueryにはもう頼らない!無限スクロールをネイティブで実装する最新テクニック
  • まだfloat使ってるの? フォームのレイアウトはFlexboxで超簡単に実装できる

    CSSレイアウトが捗るFlexbox、もう使っていますか? ページ全体のレイアウトのような大掛かりなところよりも、今回紹介するフォームのような小さなところから試してみると便利さを実感できるかもしれません。 HTMLフォーム作成はWeb開発において避けては通れないものですが、その作業が楽しいことはまれなことです。幸いなことに、CSSのFlexboxを使えばこれまで困難だったことでも解決できることがあります。 Flexboxを使用せずに、フォームの一般的なコーディング方法を考えてみます。次のようなフィールドをHTMLでどのようにマークアップしますか? たいてい次のようにマークアップしますね。 <div> <label for="name">name</label> <input id="name" name="name" type="text" /> </div> <div> <label f

    まだfloat使ってるの? フォームのレイアウトはFlexboxで超簡単に実装できる
  • 知ってる?Web開発者がJavaScriptでゲームを作るときのはじめの一歩

    Web開発者が初めてゲームを作るときに戸惑うのが、「ゲームループ」という考え方。普通のWebアプリを作るのとどう違うのか、シンプルなゲームのプログラム構造に触れてみましょう。 「ゲームループ」は、時間をかけて状態を変化させることでアニメーションやゲームをレンダリングするために使う技術につけられた名前です。来は、ユーザー入力を受け取り、経過時間の状態を更新してからフレームをできるだけ多くの回数描く関数です。 この短い記事では、基的な技術がどう機能するかを説明します。基的な技術が分かれば、ブラウザベースのゲームやアニメーションの制作を始められます。 ゲームループは、JavaScriptでは次のようになります。 function update(progress) { // Update the state of the world for the elapsed time since la

    知ってる?Web開発者がJavaScriptでゲームを作るときのはじめの一歩
  • JSプログラマーのイラッとする「クセ」はESLintを導入して対処しよう

    人によって異なるJavaScriptの書き方もチーム開発では揃っていないと気持ちが悪いし、バグのもとに…。構文チェックツール「ESLint」を導入すれば、スタイルガイドに合わせたチーム開発が捗るそうですよ。 「リンティング(linting)」という言葉に聞き覚えはありますか? コードの潜在的問題を自動的に確認するためのツール(リンター)を使ったプロセスのことです。このようなツールを使用することで生まれる、重要なメリットがいくつかあります。 コードスタイルの一貫性を保つ:スペース、インデント、ブレース(波括弧)の配置などのコードスタイルの問題をリンターで確認できる。チームの同意を得たコーディングスタイルを設定ファイルに記述しておけば自動的に確認できる 潜在的エラーや良くないパターンを見分けられる:リンターは、重複変数、到達不能コード、無効な正規表現の可能性があるエラーを発見するため、より高度

    JSプログラマーのイラッとする「クセ」はESLintを導入して対処しよう
  • JSのソースコードが変えられない!困ったときにモンキーパッチで逃げ切る方法

    他人が作ったJavaScriptのプログラムを部分的に、でも元のコードを修正せずに対応するしかない…。そんなときにモンキーパッチ。やらなきゃいけないときの対処方法を実例で。 たった1つの小さな問題点を除いてきちんと動作する、第三者のコードを使ったことはありませんか? なぜ作成者はこんなやっかいなコンソールログを削除し忘れてしまったのだろう、そのAPIコールがもう1つちゃんとしていればうまくいったのに、と思うことがあるでしょう。こうした場合、メンテナンス担当者に変更箇所を実装させるのは困難(あるいは不可能)です。自分自身でコードを変更しようにも、ソースコードを持っていなかったり、自分でコードをホストしたくなかったりするときはどう対処すればよいか悩みます。 さあ、JavaScriptのモンキーパッチの世界を一緒に探検しましょう! この記事ではモンキーパッチとはなにかを説明します。また、第三者が

    JSのソースコードが変えられない!困ったときにモンキーパッチで逃げ切る方法
  • たった2行でサーバーとも同期できるJSデータベース「PouchDB」がアツい!

    NoSQLデータベース「CouchDB」と互換性のあるJavaScriptデータベース「PouchDB」を使えば、オフライン時はローカルに、オンライン時はサーバーに保存する処理が簡単に実装できます。Webアプリの開発が捗りそうですね。 近年、クライアントサイドのWebアプリケーションはますます洗練されてきました。ブラウザーでは絶えずJavaScriptのパフォーマンスの改良が提供され、ジオロケーション(geolocation)などのリッチJavaScript APIやピアツーピア通信によってどんどん多くのことができるようになっています。 リッチWebアプリケーションが進歩するにつれ、クライアントサイドの良好なストレージメカニズムも必要になり、最近になってPouchDBなどのJavaScriptデータベースが登場してきました。 PouchDBとは? PouchDBは、ブラウザーで快適に動作す

    たった2行でサーバーとも同期できるJSデータベース「PouchDB」がアツい!
  • カッコいいグラフがむちゃくちゃ簡単に描ける!Chart.js 2.0がスゴい

    データビジュアライゼーション系のライブラリーといえば、D3.jsが有名。でも、シンプルなグラフをWebで描くだけなら、もっと手軽なChat.jsを使ってみてもいいかもしれません。 Webサイトのデータ量が多いときは、データを見やすくするための方法を見つけなければなりません。なんだかんだと、人間は数値データの長いリストを理解するのが得意ではありません。 そこで、チャートやグラフが役に立ちます。チャートやグラフを使えば、 複雑な統計関連のデータが分かりやすく直観的に理解できるようになるのはもちろんのこと、英語を話さない人でも利用可能になります。基的なチャートであればみな同じスピードで理解できますが、専門用語が散りばめられた文章ではそうはいきません。 必要に応じてチャートを使えば、Webサイトは理解しやすくなり、見た目ももっと魅力的になります。 記事ではChart.jsと呼ばれるJavaSc

    カッコいいグラフがむちゃくちゃ簡単に描ける!Chart.js 2.0がスゴい
  • ReactとD3.jsの組み合わせで変わる!JavaScriptアニメーション開発

    人気のデータビジュアライゼーションライブラリー「D3.js」をもっと使いやすく、便利にするために。Reactを使ったコンポーネント化に取り組み、リアルタイムで描画されるアニメーションを作ります。 D3は最高です。Webのデータビジュアライゼーション分野におけるjQueryのように、考えられるあらゆることが実現できます。 オンラインで見られる最良のWebのデータビジュアライゼーションの多くがD3を使用しています。D3は素晴らしいライブラリーですが、最近のv4のアップデートで従来よりさらに安定性が増しました。 Reactと一緒に使えば、D3はさらに便利になります。 ちょうどjQueryのように、D3は高性能ですが課題もあります。データビジュアライゼーションが大規模になればなるほど、用いるコードは複雑になり、バグを修正したりアイデアを絞り出したりするのにさらに時間がかかるようになります。 しかし

    ReactとD3.jsの組み合わせで変わる!JavaScriptアニメーション開発
  • 🎉✨ Angular 2.0.0がリリースされました 🎉✨ · Angular Info

    どうも、らこです。 ついにAngular 2.0.0が正式リリースされました!めでたい!! 今回はRC.7も含めた変更点の解説に加えて、正式リリース後のAngularの予定についても紹介します。 RC.6からの変更点 RC.7、2.0.0ともに、ほとんどがバグ修正とドキュメンテーションの追加で、破壊的な変更はRC.7にひとつあるだけです。 2.0.0-RC.7 2.0.0 破壊的変更 ...Metadata系のクラスを廃止 refactor(core): remove `…Metadata` for all decorators and use the dec… · angular/angular@63e15ff RC.6までは、@Componentデコレーターに渡すオブジェクトの型はComponentMetadataというクラスになっていて、 Component以外にもそれぞれのデコレー

    🎉✨ Angular 2.0.0がリリースされました 🎉✨ · Angular Info
  • セミコロンは省略?人気スタイルガイドに学ぶJavaScriptのコーディング規則

    インデントにタブとスペースのどちらを使うのがいい? JavaScriptにセミコロンは付けるべき? JavaScript Standard Styleを使えばそんな論争にけりがつくかもしれません。 最近、注目を集めている@ferossのJavaScriptスタイルガイド、JavaScript Standard Styleを紹介します。チーム内での開発が円滑になり、プログラミングがより楽しくなります。 JavaScriptスタイルガイドのコーディング規約は、タブとスペースのどちらが良いかといった不毛な議論を無くし、コードに一貫性を持たせてくれます。JSLintやJSHint、ESLintといったLinterで使用できる多くのスタイルガイドのうちの1つです。 もしLinterが分からなければ、SitePointの記事『A Comparison of JavaScript Linting Too

    セミコロンは省略?人気スタイルガイドに学ぶJavaScriptのコーディング規則
  • 1