CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
nodejs mizchiです。今日は、結局なんでJavascriptなのか、みたいなことを書きます。 ロジックと手続きロジックは論理的な手順を記述します。複雑なものはアルゴリズムなどと呼ばれますが、それは数学的な構造を含むアプローチであることが多いです。 それに対して、手続き的な記述は、決められた手順を踏むことが多いです。これに関しては「ググれ」というしかありません。ただ、言語に精通することで中身を想像できるようになり、実装が早くなります。 で、他人が作ったものを使い回すことでだいたいものは実装できるので、基本的にコーディングって手続き的なコーディングの連続になることが多いわけですね。ゲームプログラミングならともかく。 手続きを経て入手してきたデータを、他のパーツと差し替えて自分のやりたい結果に導いていく、その過程がコーディングだとも言えるでしょう。 というのがプログラミングの一般論。
どうもはじめまして、株式会社はてなのid:cho45です。これから数回に渡り、拙作のJavaScriptのライブラリであるJSDeferredの紹介と、それに関係するJavaScriptにおける非同期の技術に関して解説させていただきます。 JavaSciptにおける非同期処理 非同期処理とは まずは確認程度に、非同期処理がどういうものかを解説しておきます。先に乱暴にまとめてしまうと、以下の事柄が大切なところです。 非同期とは「あとで」という意味 同期処理はコードの見た目順に実行される/非同期ではそうならない JavaScript の非同期処理は絶対に同期処理にすることができない JavaScriptにおける非同期処理をいくつか例に出すと、以下のようなものが挙げられます。 リスト1 // XMLHttpRequest の例 var req = new XMLHttpRequest(); re
初心者向けの「わかりやすさ」を重視した解説に定評があるウェブ系テクニカルライター。ウェブの黎明期に趣味で始めた個人サイト製作からその「楽しさ」に魅了され、作成方法に関する様々な情報を発信。企業や団体のウェブサイト製作・解説書籍の執筆なども行っている。 ...続きを読む タブを押すと一瞬で表示内容が切り替わる機能の作り方 ウェブページを移動することなく指定範囲の表示内容を切り替えられるタブ機能は、狭い領域にたくさんの情報を掲載したい場合に便利です。ジャンル別に記事を掲載するニュースサイトや、地域別にお知らせを掲載する情報サイトなど、多数のウェブページで見かけます。 このようなタブ機能は、ほんの少しのHTML+CSS+JavaScriptソースを記述するだけで簡単に作れます。そこで今回は、ウェブページ上にタブ機能を作る方法をご紹介いたします。 本記事では、上図のように見えるタブ機能を作ることを
口上 historyとAjaxといえば、JavaScriptからある程度任意でhistoryのエントリをpushできるhistory.pushStateとか、history.replaceStateは既に大分有名になった感がある。 素晴らしい未来では、全てのブラウザにpushStateが乗っていて「location.hashを使ったAjax遷移が許されるのは10年前のブラウザまでだよねー」というハッピーな世界が実現するのだろう。が、今現在ではまだpushStateに対応していないブラウザのシェアも多く、Ajaxによる擬似画面遷移をモリモリ行うようなサイトではpushStateのある環境、ない環境の両方を考慮してやる必要がある。 (ちなみに、要件によっては「pushStateがないブラウザは通常の遷移で我慢しろ!」という割り切りも全然ありだと思う) 先に言っておくと、この記事は長いです。 環
このセッションでは、前半でNodeのコンセプトを、後半では来週にもリリース予定のNodeの新バージョンについて紹介します。 このデニス・リッチーの言葉はNodeの特徴を表していて、Nodeとは機能を加えるよりもむしろ取り去ったものです。 いまのOSのインターフェイスのほとんどは、1970年代のテレプリンタのような歴史をひきずっています。ケン・トンプソンとデニス・リッチーが開発したUNIXやCは当時のPDP11のためにデザインされたもので、いまのOSもその歴史上にあるのです。 UNIXの基本概念は、対話的なコマンドラインを作るものでした。lsコマンドを打つとその結果がテレタイプに出力されるといったものです。そして基本概念には、ブロックするシステムコールやプロセスが含まれています。 ブロックするシステムコールを呼び出すと、I/Oが完了するまで戻ってきません。戻ってくるまでどれだけかかるかも分か
追記いくつか誤植を修正しました。 Cluster API へのリンク Ruby のようなフルスタックにうんざりしているんだ => Rails のような~ Node 関連で良く聞かれる質問を集めて見ました。 この記事を通して Node について持っていた疑問を解消し、Node の良いところも、「ちょっとなぁ。。」なところも合わせて、きちんと理解する助けになればと思います。 そもそも "Node" なの? "Node.js" じゃないの?当初は "Node.js" と呼ばれていましたが、「正式名称は "Node" である。ただし曖昧さが出る場合は "Node.js" と表記しても良い」という旨の記述が本家の Wiki にあります。 What is the correct capitalization of Node.js? 日本のコミュニティもこれに合わせて Node と記述するようにしている
Jxck です。 少し前、以下のような記事がポストされたのを覚えてますでしょうか? 今すぐフォローすべきnode.js界のスーパーエンジニア 自分もこの記事にリストしていただいて、非常に光栄です。 しかし一方で、載った自分からしても、手放しに喜べない点があったのも事実でした。 それは、ここに上がっているのは日本人だけで、僕らが思う 本当のスーパーエンジニアの多くは、海の向こうで大活躍してるという点です。 また国内に絞ってみても決して外してはいけない、「あの人」が。。 自分としては、是非彼らの活躍にも注目してもらいたいと思っています。 そこで今日は Node.js のことを知りたい方がフォローすべき、 本当のスーパーエンジニア達を紹介したいと思います。 多くてもあれなので、10人に絞ってみます。 @ryah Ryan は言わずとしれた Node.js の生みの親です。彼を抜きに語る事はできま
第2回 JavaScriptの関数をマスターしよう:連載:Ajax時代のJavaScriptプログラミング再入門(3/4 ページ) 関数の引数として関数を引き渡す - 高階関数 - 以上、JavaScriptの関数がオブジェクトであり、変数にも自由に代入できることが理解できた。では、関数の引数として関数を引き渡すこともできるのではないか ―― そのとおり。 JavaScriptでは、文字列や数値を引数としてセットするのとまったく同じ要領で、ある関数をそのほかの関数の引数としてセットすることが可能だ。そして、このような関数のことを「高階(こうかい)関数」と呼ぶ。 ■高階関数の基本的な例 高階関数を利用した具体的な例をリスト12に示す。 以下のコードで定義するarrayReduce関数は、引数に与えられた配列(ary)の内容を、指定されたユーザー定義関数funcの規則に従って順番に処理し、最終
執筆した井上誠一郎氏ら共著者に敬服。お疲れさまでした。 パーフェクトJavaScript (PERFECT SERIES 4) 言語仕様のpart2(2〜7章)まで読みました。その後はパラパラっと流し読み。まずは言語仕様までの内容について雑感を述べます。 JSには既にサイ本と呼ばれるバイブルが存在しますが、サイ本は「仕様を淡々と解説している本」といった印象を持っています。対してパーフェクトJavaScriptは「仕様における用語を整理し、分かりやすくまとめて解説している本」といった印象でした。そして表紙がダサいです。ガラケーがのってます。サイ本に対してガラケー本といったところでしょうか。・・・って不名誉な名称だからやめとこうと思いましたが、パーフェクトJavaScriptと長いのでやっぱり使います。 対象読者 入門書ではないと「はじめに」で言い切っています。対象読者についてもそのページで言
仕様書を読んでもわかりにくい、addEventListener()の第3引数useCaptureの意味についてのメモ。 addEventListener()はIEでは未実装なので関係なし。 以下はFireFoxで確認。 useCaptureの意味 通常登録したイベントハンドラ(*1)はイベント伝搬のバブリングフェーズで呼ばれる。このため、DOM Treeの下の方のエレメントからイベントハンドラが順番に呼ばれる。 useCaptureをtrueにしてイベントハンドラを登録すると、キャプチャフェーズでイベントハンドラが呼ばれるようになる。このため、その他のイベントハンドラに先だって呼び出されるようになる。 (*1) 以下のものが含まれる。 DOMエレメントのプロパティに設定したイベントハンドラ(element.onmousedown = handler) HTMLタグに埋め込んだイベントハンド
インテル、JavaScriptに並列処理機能を追加する「River Trail」プロジェクトを初披露。IDF 2011 「JavaScriptはこれまでほとんどの場合、クライアント側でシーケンシャルな処理をしてきた」と語るのは、インテルのイベント「IDF 2011」に登場したJavaScriptの生みの親、モジラのCTO Brendan Eich氏。 そのEich氏に前に、JavaScriptに並列処理機能を追加する「River Trail」をインテルラボのディレクター兼CTOのJustin Rattner氏が初めて披露しました。 JavaScriptでマルチコアを活用する「River Trail」 River Trailは、「データ並列」な処理を実現するためのJavaScriptの拡張。 デモンストレーションでは、物理シミュレーションとして宇宙空間でお互いに影響し合う星の振る舞いを表示し
Dev fest 2020 taiwan how to debug microservices on kubernetes as a pros (ht...
iPhone/iPad用サイト作成時に使えるスワイプイベント実装jQueryプラグイン「TouchSwipe」 2011年02月17日- Skinkers Labs : TouchSwipe iPhone/iPad用サイト作成時に使えるスワイプイベント実装jQueryプラグイン「TouchSwipe」。 タッチパネルを触って左にスライド、右にスライドといった操作をスワイプといいますが、このイベントを取得するjQueryプラグインのご紹介です。 1本指だけではなく、2本指でスワイプした際のイベントを取ることも出来ます(それぞれ区別可能) ブラウザ上でiPhoneアプリっぽい動作を簡単に実現できますね。 demoをiPhone等で見てみましょう(違和感なくスワイプできるはずです) 1本指スワイプのデモ 2本指スワイプのデモ スワイプを使った画像ギャラリー 実装はjQueryベースということでや
最近スマートフォン対応やタブレット対応の案件が増えてきて、スワイプに対応させたいと言われる事が結構多いです。 知ってる人も居るかもしれませんが、スワイプが出来るようになるjQueryプラグインをまとめてみました。 画像ギャラリー専用のものから、ページ全体をスワイプで区切るものまで色々ありますよ。 参考になれば幸いです。 jQuery Touchwipe iPhone、iPad、Android用にスワイプでスライドショーを移動できます。 スワイプした時のイベントが簡単に取得できるので、画像切替意外にも色々使えそう。 PCの場合には、アンカーテキストで画像の切替ができます。 サイズも1kB程度なので、モバイル端末に優しいですね。 PhotoSwipe jQuery Mobile対応の全画面イメージギャラリー。 写真を大きく表示させて、ツールバーで操作するタイプです。 jquery.flicks
Ajax推進委員会 監修:ゼロベース 2005/8/2 2005年2月半ばから、「Ajax」という言葉がアルファギークたちの間で一気に広まった。「Webインターフェイスの新しい手法」「画期的なWebアプリケーションの仕組み」であるとして開発者たちの人気を集めるAjaxとは何なのか、その真実を見極めてみよう。 Ajaxとは「Asynchronous JavaScript and XML」の略で、Webブラウザでの表示部分を含めたWebアプリケーションの作り方を指す名前だ。具体的にはXML形式のデータをJavaScriptで処理することで、ブラウザのHTTPによるページ遷移とは非同期にサーバとやりとりして「動的に」ページ内容を変更する仕組みを指す。 Ajaxを実現する詳細なコード例は後述するとして、まずはAjaxが実現するWebアプリケーションがどのような動作をするのか、既存のWebアプリケー
Verify to continue To continue, please confirm that you're a human (and not a spambot).
stats.js (https://github.com/mrdoob/stats.js) という、JavaScriptでfpsもどきの値を出すライブラリをiPhone/Androidで試していた時に気づいたんだけど、iPhone/AndroidのWebKitではデフォルトのスクロール中はsetIntervalの監視が無効になっているっぽい。 具体的には、例えば setInterval(function() { count++; }, 1000); みたいなことをやっているページがあってとして 1. タッチ開始 2. 指を動かす 3. タッチ終了 4. 慣性スクロール の流れで、4.が完全に終わるまでcountの値は変わらない。また、実行キューに入っていたものがスクロール後に一気に実行されるというわけでもない。完全にtimerが止まっている。 一瞬「指を置いて動かしている間はJSの実行は全
2010-07-19 カテゴリ: Client Side タグ: JavaScript トラックバック JavaScriptのnewって何?一体何なの?という話 - 愛と勇気と缶ビール クラスってものはJavaScriptにはないはずなのに、 new ClassName();と書くとあたかもClassNameクラスのオブジェクトのインスタンスが生成され、それが返ってくるかのような挙動をしている。 これは気持ち悪い。言語仕様としてはクラスは本来存在しないのに、クラスのようなものが導入されている。まともな神経を持った人間なら、一体 new演算子って何なの?という疑問を持つのが当たり前である。 こんな扱いを受けているnewがあまりにも不憫で涙した>< newはprototype-basedなJavaScriptを書くための唯一の手段[1]で、真にJavaScriptらしいコードを書くためには欠か
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く