タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとJavascriptとprogrammingに関するsuginoyのブックマーク (39)

  • Maintainable JavaScriptにみる、コンテキストとアプリケーションロジックの分離 - 愛と勇気と缶ビール

    個人的なこと 読書はいわゆる自己投資?にあたるものなのでケチるもんじゃないよなあ、とは思いつつも可能なら安い値段でより大きなリターンを得たいよねー、ということで最近はOreillyの半額セールに目を光らせるようになりました。英語は「拾い読み」がし辛いという欠点があるのですが、まぁ、安いし、全てのにちゃんと訳が出るわけでもないので、ええかなぁと。 そんなわけで "Maintainable JavaScript" というを読んでいたのですが、その中のEvent Handlingについての章が「おお、これこれ」という感じだったのでちょっと紹介。 Maintainable Event Handling jQuery覚えたぜ!って感じの人がとりあえずコードを書くと、だいたいこんな感じになりますね。ちなみに、これは別にjQueryがどうとかいう話ではなくて、質的には生DOMでも他のライブラリでも

    Maintainable JavaScriptにみる、コンテキストとアプリケーションロジックの分離 - 愛と勇気と缶ビール
  • ソースコードで最もよく使われる単語が明らかに | スラド デベロッパー

    英文で最も多く使われるアルファベットが「e」だというのはよく知られていますが、最も多く使われる単語は「the」だそうです。プログラミング言語ではどうなのか、GitHubで公開されているソースコードを解析した結果が発表されました(The Most Frequent Word in Source Code on GitHub: PDF)。 調査ではソースコードからコメント行を除外し、アルファベットと数字のみが連続する部分を単語として検出しています。調査対象となった10種類のプログラミング言語全体で、ソースコードに最も多く登場する単語はなんと「0」で、次に「if」が続くという結果になっています。 「if」のように良く使われそうな予約語が1位というのなら解りやすいのですが、「0」が圧倒的多数で1位の座を獲得したことに素直に驚きました。マジックナンバーは使用厳禁と言いながらも、考えてみれば初期化等に

    suginoy
    suginoy 2012/08/02
    「Javascriptで第16位の 4294967295 って、なんでこんなのが16位に出てくんの?」「UMAX_INT がシステム定義の定数などで提供されていないために、あちこちのライブラリで記述されてるんですかね」
  • AZusaar! を全面リファクタリングしました - くりにっき

    全面リニューアルではなく全面リファクタリングです。 AZusaar!のjsがいろいろと酷かったので1ヶ月半くらいかけてちまちまリファクタリングしていました Before https://github.com/sue445/azusaar_js/tree/c87e7bb098b50ae3cc32b6b687f17f5bff7568b9 After https://github.com/sue445/azusaar_js/tree/32f2f01a68cce667268853c586d6568b3189d137 全然原型をとどめてない(ノ∀`) Github: https://github.com/sue445/azusaar_js リファクタリング用に作ったリポジトリですが、Githubにコードを置いておくと(自分が)何かと便利なのでそのままにしておきますw 最初の頃は「テスト駆動JavaS

    AZusaar! を全面リファクタリングしました - くりにっき
    suginoy
    suginoy 2012/06/12
    「最終的にはQUnit + QUnit-TAP + phantomjs + prove という組み合わせに落ち着きました」
  • 最近のウェブ系スタートアップが採用しているプログラミング言語やフレームワークまとめ - laiso

    http://www.quora.com/Node-js-Ruby-Python-who-wins-in-5-years を読んでて「勝利条件としてより多くの”スタートアップ”に選択されること」という話がでてたけど、そもそも今は何が採用されているのか状況がよくわかたっていなかったので調べた。 スタートアップ? 一般(自分の周辺)に「ウェブサービス」みたいな呼称されているもの。消費者向けというかなんというか、企業向けシステムとか、ソーシャルゲーム単品とかは含めないことにした なんでスタートアップ?(小規模な企業) 企業が大きくなってくると、いろんな領域で必要なことがあってこの企業は→このプログラミング言語みたいなひもづけができなくなるので 項目は =企業ではなく=サービスでわけた 順番、国内外は適当。できるだけ知名度のありそうなサイトを選んだ いわゆるサーバーサイドのアーキテクチャの話(それ

    最近のウェブ系スタートアップが採用しているプログラミング言語やフレームワークまとめ - laiso
  • I/O待ちを緩和させるのに効果的な Reactor パターン - I am bad at math

    クラウド上で動作するプログラムを組んでいく際、スケールすることを狙って多くのロジックがデカップリングされ、複数のサーバに分散されることと思いますが、そこで顕著になってくるボトルネックの一つがネットワークなどのI/O待ちです。 このI/O待ちを減少させるのに効果的なのが Reactor パターン。 このパターン自体は特に目新しいものでもないのですが、近年のクラウドブームで再び脚光を浴びそうなので自分の備忘録もかねて紹介します。 Reactor パターン http://en.wikipedia.org/wiki/Reactor_pattern この Reactor パターンはどういった場合に使用するかというと 複数のI/O待ちが想定される場合 というのが代表格のようです。今回はネットワークI/Oを想定していますが、データベースへの問い合わせに時間がかかる際にも有用となります。 例としてクローラ

    I/O待ちを緩和させるのに効果的な Reactor パターン - I am bad at math
  • Online Courses and Video Courses | Envato Tuts+

    Learn new creative and technical skills with 550+ video-based courses and short courses to help you develop. From code and web design courses to photography and design & illustration courses, it’s all here. What would you like to learn? Budding WordPress developers will love the huge selection of WordPress courses, while designers can master everything from Photoshop to print design. Or maybe you’

    Online Courses and Video Courses | Envato Tuts+
    suginoy
    suginoy 2012/04/16
    この間みたのはここっぽいな。
  • 言語女子会: undefとnullは両方必要? - 西尾泰和のはてなダイアリー

    Twitterのタイムラインが面白すぎて、ついうっかり言語を擬人化して脳内で言語女子会なるものを開いてしまいました。なお、登場人物と実在の人物は1対1に対応しません。 undefinedとnullの両方必要なの? とあるプログラミング言語が集う女子会にて: Perl: そういえばさ、なんでJavaScriptちゃんってundefinedとnullの両方もってるの? JavaScript: えっ、未定義の変数にアクセスした時undefined返したいじゃない? Python: 例外投げて死ねばいいじゃん Ruby: 例外投げて死ねばいいよね Python & Ruby: ねー♡ Java: いやそこは参照型ならnull、数値型なら0で初期化すべきでしょ C: これだから最近の若い子は…初期化にだってコストが掛かるんだからね!デフォルトで初期化するなんて無駄遣いよ!必要な人だけが責任をもって初

    言語女子会: undefとnullは両方必要? - 西尾泰和のはてなダイアリー
  • サバクラ両方で動く JavaScript の大規模開発を行うために

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    サバクラ両方で動く JavaScript の大規模開発を行うために
  • Expandoとは何か - uehaj's blog

    Expandoはマップの様に動作するオブジェクト(orオブジェクトの様に動作するマップ)である。マップの要素にクロージャを代入するとメソッドの様に動作する。マップの要素に値を代入すると、そのフィールドがあるかのように動作する。Expandoはas演算子によりマップからas演算子で変換することで生成可能(Expandoから継承した新たなクラスを作っても良いけどマップから変換したほうが簡単)。 マップの要素に代入したクロージャのスコープはもともとのレキシカルスコープに加えて、Expando内のメソッド名やフィールド名が見えるようになる(delegateに割り当てられる)。 まとめると、Groovyでは来オブジェクトとマップは別物なのだが、それを混同できるようなオブジェクトがExpando。ちなみにJavaScriptのオブジェクトはもともとこんな風になってる(すべてがExpando)。 例

    Expandoとは何か - uehaj's blog
  • Twitterが検索用URLの仕様を変えた

    江添亮 自由ソフトウェア主義者 C++ Evangelist C++標準化委員会の委員 ドワンゴ社員 C++11を執筆した。 株式会社ドワンゴで働いている。 Mail:boostcpp@gmail.com Twitter:@EzoeRyou GitHub: https://github.com/EzoeRyou 江添亮のマストドン@EzoeRyou 筆者にブログのネタを提供するために、品物をアマゾンお気に入りリスト経由で送りたい場合: Amazon.co.jp: 江添亮: 江添のほしい物リスト 筆者にブログのネタを提供するために、直接に品物を送りたい場合、住所をメールで質問してください。 View my complete profile ► 2020 (31) ► December (2) ► November (2) ► September (2) ► August (4) ► Jul

  • なぜJavaScriptで「76287755398823936」が正しく表示できないか、あるいはなぜRubyでも表せないか。 - ψ(プサイ)の興味関心空間

    Twitter住所特定実験」を開発中に気づいた事です。取得したツイートをサーバからJSONでクライアント側のJSに送る処理があって、当初この時にTwitterのツイートのIDをJSONに数値として含めて送っていました。 が、JavaScriptではこの値を受信してeval()した†1際、うまく変換することができず、たとえばChrome/Firefoxでは「76287755398823940」となり、微妙に異なった数値になってしまいました。 以下をクリックすることで、実際に実行できます。 javascript:alert(76287755398823936) IE8/9だと「76287755398823930」となり、まだ微妙に違った値になります。 ■doubleの精度の問題?? まず疑われたのはdoubleの精度の問題。一部では有名な話で、JavaScriptでは数値はすべてdouble

  • やっぱりdoubleでは「76287755398823936」は表現できない - ψ(プサイ)の興味関心空間

    「なぜJavaScriptで「76287755398823936」が正しく表示できないか、あるいはなぜRubyでも表せないか。」の続きです。後半戦、テンションあげてまいりましょー(涙目 ■出力側ソースコードのチェック! さて...では重い腰を上げてソースコードを読みましょうか...。 FirefoxでもChromeでも起きるなら、何かWindowsのライブラリのバグ...なんでしょうか。ま、いいや。とりあえずソースコードが探しやすそうなChromeから見てみましょう。 それっぽいメソッドを探していくと...見つかりました。これですね。v8::internal::Grisu3()です。...あれ...?標準ライブラリじゃ...ない...!?うげぇめんどくさい... v8をWindows上でコンパイルするのはひたすら☆面倒†1なので、Ubuntu上でコンパイルしてCodeLiteというIDEを

  • Reading Readability - Backnumbers: Steps to Phantasien

    最近コードを読んでない. リハビリしようと軽めのものを探し, Readability を眺めてみた. Readability はもともと Instapaper にヒントを得て 書かれたブックマークレットで, HTML ページの文だけを抽出して見やすく表示する. Safari Reader の元ともなっており, 最近は 独立したサービス にもなった. Google Code でホストされているオープンソース版は実験ブックマークレット当時のもの. 2000 行くらい. 新しくはないけれど, 軽めのコードという趣旨にはあう. (私が Instapaper for Kindle ファンなのも Readability を読む気になった理由かもしれない. 題と関係ないけど Instapaper はちいさい Kindle のキラーアプリだと思うんだよね.) 文抽出 Readability の肝であ

  • SNBinderと「混ざり物のないコンソメスープ」と

    先日オープンソース化したSNBinder(参照)、たくさんの人たちから色々なフィードバッックをいただけてとても感謝している。ブログの記事として書かれたものは私が知る限り以下の三つ。 penultimate diary: SNBinderを試してみる js do.it: SNBinderを試したよ! a2c.get.diary: SNBinderに目からウロコ 小さなMVCが今現実に 当初は、最新のjQueryと動かないというバグがあったり、READMEにタイポがあったりとご迷惑をおかけしてしまったが、こうやってフィードバックをいただくことによって、励みになったり改良したり、というのがオープンソースの醍醐味である。とてもありがたい。 ちなみに、SNBinderは原型のようなものは1年前以上前からあったのだが、ViewとControllerの切り分けに部分がなかなかすっきりせず、公開を控えてい

  • jQuery plugin refactoring

    step1: 動けばいいレベル 適当にざっくり書いて終了 イベントハンドラのなかでテキトーに全て終わらせる メソッドチェイン長いのがかっこいいと思ってる年頃 <div class="item"> <div class="label">A</div> <h2 class="title">itemA</h2> <p class="main">text text text text</p> <p class="showMore">more</p> <p class="more">more more more more</p> <p class="hideMore">hide</p> </div> <div class="item"> <div class="label">B</div> <h2 class="title">itemB</h2> <p class="main">text text

  • JavaScriptでEPUBビューアーを自作してみた (1/7)

    iPadのiBooksやSONY Reader、Nookなど、多くの電子書籍リーダーがサポートしているEPUB形式はXHTML+CSSがベースになっているので、誰でも自由にビューアーを作成できます。今回のJavaScriptラボは、Webブラウザー上でEPUBデータを表示するオリジナルのビューアーアプリを作ってみましょう。 ビューアーといっても、EPUB形式をきちんと解析して処理するには手間がかかりますので、今回はEPUBに含まれるXHTMLを表示するだけのシンプルなアプリです。それでも、著作権保護機能がかかっている場合を除けばほとんどのEPUBデータを表示できます。 今回のサンプルはHTML5 File APIを使っているので、Firefox 3.6以降でのみ動作します(一部をのぞく)。また、FirefoxのデバッガーであるFirebugを利用しますので、事前にインストールしておいてくだ

    JavaScriptでEPUBビューアーを自作してみた (1/7)
  • 2010年度 ドワンゴ研究開発本部 新卒研修の紹介 - ドワンゴ 研究開発ブログ

    この春、ドワンゴに技術者として28人の新卒社員が入社しました。 ドワンゴでは、実務に入る前に仕事の流れを覚えてもらうための技術者向け研修を行っており、彼らにも研修を受けてもらいました。 日はその研修について紹介します。 研修の内容は"ニコニコ動画の公開マイリストをカテゴリ分けし、ブラウジング可能とするシステムの開発"としました。 言い換えると、"感覚的にニコニコ動画の公開マイリストを探せるシステムを作る"というものです。 この内容を、1チーム4人、7チームに分かれて行ないました。 期間は4月30日~6月4日までの、およそ1ヶ月。 新卒社員たちはその期間内で、設計から、開発、ドキュメント作成までを行いました。 開発期間終了日の翌日(6月3日)に、各チームが部長、及び部長の前で出来上がったシステムのプレゼンテーションをしました。そこで優秀だと評価されたチームが研修最終日に表彰されま

  • Firebugの意外と知られていない機能紹介(プログラマ向け) - KAYAC Engineers' Blog

    羊毛布団を洗濯機にかけられないことを知りました。ago(@kyo_ago)です。 意外と知られていない機能が多い!?Firebugの使い方を見て、プログラマ向けも欲しくなったので書いてみました。 1. ショートカット一覧 以下のページでFirebugのショートカット一覧が公開されています。 http://getfirebug.com/wiki/index.php/Keyboard_and_Mouse_Shortcuts 取り合えず以下の二つだけでも覚えておくと効率的かもしれません。 F12でFirebugの有効、無効の切り替え 広いコマンドラインモード時にCtrl+Enterでコードを実行 また、以下のメニューからショートカットの変更も行えるので、他の拡張等とショートカットがかぶった場合でも別のキーで使用することが出来ます。 2. Firefox体のツールバーに「要素を調査」ボタン Fi

    Firebugの意外と知られていない機能紹介(プログラマ向け) - KAYAC Engineers' Blog
  • 正規表現とオートマトン:なんだ簡単じゃん、JavaScriptによる実装 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    先週のエントリー「この機会にマスターしようぜ、正規表現、構文図、オートマトン」において、正規表現とオートマトンの理屈は説明しました。んじゃ、適当な正規表現に対応するオートマトンを作ってみましょう。 非決定性オートマトンはめんどくさいので決定性オートマトンにします。正規表現から作ったオートマトンが非決定性になってしまったときは、がんばって決定性オートマトンに変形するかあきらめるかしてください。 例題となる正規表現とオートマトンは、「Erlang実験室:状態遷移を書くのはこんなに簡単」で使ったものをそのまま流用します。 正規表現: (a, a?, b*, c) 図と表のなかで、EOSは End Of String のマーカー、◎は終状態です 遷移表: 0から3までの各状態について、入力ごとの遷移先は次の通り。×はエラーです。 状態 文字a 文字b 文字c EOS その他 0 1 × × × ×

    正規表現とオートマトン:なんだ簡単じゃん、JavaScriptによる実装 - 檜山正幸のキマイラ飼育記 (はてなBlog)