タグ

ブックマーク / qiita.com (196)

  • jQueryはNGと言われた時の便利なメソッド - Qiita

    とあるお仕事で、jQueryなどのライブラリー利用不可というものがありました。その際利用した、jQuery的に使える便利なメソッドをメモしておきます。(※ 昔使っていたものを引っ張りだして改善したものなので、どこかで公開されている可能性があります) 更新 addClass,removeClassを修正致しました。 元記事 下記エントリの転載になります。 jQueryがNGな時に備えて、用意しておきたい便利なメソッド イベントリスナ jQueryでいうところの、.on() に該当するものです。 "addEventListener" か "attachEvent" かを判定し、addEventメソッドを定義しています。 var addEvent; if (window.addEventListener) { addEvent = function (target, name, fn) { if

    jQueryはNGと言われた時の便利なメソッド - Qiita
    wadackel
    wadackel 2015/03/20
  • Vue.jsで手軽じゃないアプリケーション構築 - Qiita

    概要 Vue.jsは、MVVMというMVCの派生種を設計基盤として構築されたクライアントサイドJSフレームワークです。AngularJSと表面上は似ていますが、設計思想は全く異なるもので、作成したUIコンポーネントを組合せてページを構成することを前提にしています。 「Vue.jsで遊んでみた」のような記事はよく見るのですが、実際にプロジェクトとして走らせる場合に、アプリケーション構成からテストまで、どのようにするのがベストなのかを、まとめました。 SPAをベースに、サーバーサイド言語上で動かすときの構成も調べています。 ブラウザサポート yyx990803/vue - Vue.jsはレガシー・ブラウザをサポートしていません。 参考記事 Getting Started - vue.js Vue.js概要? - Qiita - はてぶ200 大きめのアプリケーション構成について ガイドライン

    Vue.jsで手軽じゃないアプリケーション構築 - Qiita
  • 遅すぎたUnderscore.js詳述 - Collections編 - Qiita

    いまどこ? 基の関数をひとつずつ見ていく章です 1 . 遅すぎたUnderscore.js入門 - 全体像 2 . 遅すぎたUnderscore.js詳述 - Collections編 ←いまここ 3 . 遅すぎたUnderscore.js入門 - Arrays編 4 . Functions 5 . Objects 6 . Utility 7 . Chaining 前回でUnderscore.jsの全体像を見終わったので、今回からひとつずつAPIをみていきます。 基的に家サイト(underscorejs.org)の章立てに合わせていきたいと思います。 この章は最初が重たいですが、だんだんと被ってくるので最初を抜けたら楽になります。 注意点 家のコードを加筆・書き換えしたり、メタファー(たとえ)としてあえて厳密でない言葉で書いたりしていますのでご了承願います。 また、重複する説明が削

    遅すぎたUnderscore.js詳述 - Collections編 - Qiita
  • ネイティブと働いて分かった英語コミットメッセージの頻出動詞10つ

    ウッ ここで詰まる事は往々にしてあります. 特に急いでる時の煩わしさは甚だしいです. どうせならそれっぽい英語を使いたいのでOSSや同僚のコミットメージの語彙の出現確率を調べてみましたら、 もちろんfeatureによってコミットメッセージの付け方など数多あるものの、一定の頻出パターンは見い出せたので筆を取りました. (英語勉強しないと..) 方法 github.com/rails/railsのコミットメッセージ内における各動詞の出現確率を求め、 またOSSと仕事でのコミットメッセージの趣向も変わってくる事も勘案するため、 (仕事でDeprecateとか滅多に使わんし) 同僚に聞きつつ10つあげてみた. 以下列挙 (例は実際の同僚やOSS上でのコミットメッセージです.) Add *A to *B AをBに加える

    ネイティブと働いて分かった英語コミットメッセージの頻出動詞10つ
  • 協調フィルタリングでアイテムの推薦をする - Qiita

    みな味の好みがバラバラで、同じメニューでも人によって採点が高かったり低かったりしているようです。 似ている人を探す 何らかの対象に対して人々の評価が集まったとき、その傾向が似ている程度を決定する基準が必要になります。これを 類似性スコア (Similarity score) と言います。類似性スコアの算出にはさまざまな方法がありますが、上記の集合知プログラミングではユークリッド距離とピアソン相関係数が取り上げられています。いずれも 2 つの確率変数の間の関連度合いを表す尺度であり -1 から 1 の範囲を取ります。 ユークリッド距離 ここでは 平方ユークリッド距離 (Squared Euclidean distance) を使います。これはそれぞれの軸の上での差を求め、その二乗を累計するものです。つまり数式では def sim_distance(prefs, person1, person

    協調フィルタリングでアイテムの推薦をする - Qiita
  • PHPの脆弱性への攻撃名称と対策メモ - Qiita

    自分用メモ。ごちゃごちゃすると忘れるので、なるべくシンプルにまとめたい。 誤り、不備などあれば、随時追加修正します(ご指摘ありがとうございます)。 クロスサイトスクリプティング(cross site scripting、XSS) 概要 訪問者に目的のサイトとは別の罠サイトを踏ませて不正な処理を実行させる行為。 原因 フォームから受け取った値を、エスケープせずに画面に出力するために発生 (偽のフォームを作成する手法も有るので、JavaScriptの対策だけでは不足) HTMLの実体参照を用い、& を &amp; に、< を &lt; に、> を &gt; に、" を &quot; に、それぞれ置換する。 PHPではhtmlspecialchars関数を用いれば、一括で対策できる (ただしENT_QUOTESを設定しないとシングルクォーテーションはエスケープされない)

    PHPの脆弱性への攻撃名称と対策メモ - Qiita
    wadackel
    wadackel 2015/01/06
  • 【mkdirからデプロイまで3分】Sinatra+Haml+Sass+Coffee でサクッとHerokuに公開して捨てるwebアプリ - Qiita

    【mkdirからデプロイまで3分】Sinatra+Haml+Sass+Coffee でサクッとHerokuに公開して捨てるwebアプリRubyCoffeeScriptSinatraSassGem あいさつ Rubyでゴニョゴニョして、Haml+Sass+Coffeeでサクッとviews作って Herokuにサクッとpushして公開して吐いて捨てるようなアプリの作り方です. チャチャッと動いたモノを見せたい時とかに便利 3分というのはビジネスロジックの構築を除くプロジェクトのひな形作ってデプロイに至るまでの時間. 適当なひな形を持ってきた方が早いかもしれませんが、一回は手を動かさないとなんか気持ち悪い人向け. 今回使ったのはここに置いときました、jqueryとか定番ライブラリ入れとくと便利そう 以下説明 手順1: フォルダを作ってgemを揃える 今回はyour_appというアプリを作る事とし

    【mkdirからデプロイまで3分】Sinatra+Haml+Sass+Coffee でサクッとHerokuに公開して捨てるwebアプリ - Qiita
    wadackel
    wadackel 2015/01/03
    あとで
  • Homebrewのインストールとrbenvのインストールまで Mac編 - Qiita

    【重要】Mac環境を前提としております。Windowsでは現状残念ながらunicornのmakeに失敗するので、うまく行きません。 Windowsの場合は、VMwareをご使用下さい。vagrant 環境でも可能です。 1.macportを削除すること 2.Xcodeをインストールしてあること。 3.Xcodeのコマンドラインツールをインストールしてあること 4.rvmを使っている人は「rvm」を削除すること 5..bash_profile に変なことが書いてある人は消すこと。 6.万が一の為にタイムマシンでバックアップをとっておいた方が幸せ。 7.MYSQLを使う人というかほとんどだと思いますが、MYSQLのインストール 8.MacOSが「El Capitan」の場合は「SIP」を無効化する必要性があります。 手順は以下参照 ■URL SIPの無効化 Xcodeのインストール Xcode

    Homebrewのインストールとrbenvのインストールまで Mac編 - Qiita
    wadackel
    wadackel 2014/12/12
  • [JavaScript] getter/setterも使えるエコ楽なクラス定義 - もちろん継承も - private変数も - Qiita

    ゴール: getter/setterを含むクラス定義をエコ楽に記述できる(get/set) クラスの継承もエコ楽に正しく記述できる(extend) とにかく長いキーワードや余計なものはプログラマには書かせない constructorの代わりに、newを使える様にする prototypeも__proto__もプログラマには見せない書かせない Object.definePropertyやObject.setPrototypeOfなども見せない書かせない ついでに外部からアクセスできないprivateな変数も使える様にする ※npmにbase-class-extendとして登録しました。 ※参考: [JavaScript] そんな継承はイヤだ - クラス定義 - オブジェクト作成 この記事のゴールは、以下の様にクラス定義がエコ楽にできること。 // animal-ex.js 'use stric

    [JavaScript] getter/setterも使えるエコ楽なクラス定義 - もちろん継承も - private変数も - Qiita
  • 背景色によって、字を白と黒どちらにするか判定 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    背景色によって、字を白と黒どちらにするか判定 - Qiita
  • 改訂版: プログラマーが効果的な可視化を作成する (前編) - Qiita

    改訂版について (5/7/2019公開) この記事は、私がこちらに公開したもの中では最も読まれているようです。そこで、執筆後に気づいたこと、古くなった情報、新しい技術動向などを考慮に入れて改訂をしました。主な変更点は以下の通りです: 新しいセクションの追加 最近のの紹介 細かな表現の修正 この記事は複数のセクションに分かれていますので、前編から始め、順番にアップデートして行きたいと思います。何かお気付きの点などありましたら、コメント欄、もしくはkonoアットマークucsd.eduにお願いいたします。 はじめに この記事は、可視化の専門家ではない人がコンピュータを使ってデータ可視化を実際に行う場合に必要な、一般的なノウハウをお伝えするシリーズの第一回です。 前編: 効果的なデータ可視化とはどのようなものか? (稿) 中編: 分かりにくい可視化を避けるための手法の選択 後編: Part 1

    改訂版: プログラマーが効果的な可視化を作成する (前編) - Qiita
  • 「プログラムでシダを描画する」をPythonで描画過程まで出力する - Qiita

    import sys import random from PySide.QtGui import QApplication from PySide.QtGui import QMainWindow from PySide.QtGui import QLabel from PySide.QtGui import QPixmap from PySide.QtGui import QPainter from PySide.QtGui import QColor # Quot Begin # From http://qiita.com/noc06140728/items/8b8f06cfc312b8492df4 N = 20 xm = 0 ym = 0.5 h = 0.6 width = 500 height = 500 W1x = lambda x, y: 0.836 * x + 0.044

    「プログラムでシダを描画する」をPythonで描画過程まで出力する - Qiita
  • モデルやメソッドに名前を付けるときは英語の品詞に気をつけよう - Qiita

    はじめに 他の人が書いたコードを読んでいるときに時々気になるのが、英語の間違いです。 特に動詞、名詞、形容詞の使い分けが間違っていたりすると、かなり違和感を感じます。 そこで今回はモデル(=クラス)やメソッドに名前を付けるときの基的な原則をまとめてみます。 また、英文法的に正しい品詞が選べるようになるための習慣についても最後に説明します。 想定する言語/フレームワーク この記事の説明ではRuby/Ruby on Railsを想定しています。 ただし、基的な考え方は他の言語でも同じように使えるはずです。 モデルの名前は名詞にする 例: 「支払い情報」を表すモデルを作りたい場合 × Pay ○ Payment 「支払う = payか。よし。」でモデルを作ってはいけません! payは動詞で、payの名詞形がpaymentです。 Payモデルではなく、Paymentモデルを作りましょう。 例:

    モデルやメソッドに名前を付けるときは英語の品詞に気をつけよう - Qiita
    wadackel
    wadackel 2014/05/28
    ちゃんと意識しよっと。。
  • AngularJS使い方メモ - Qiita

    AngularJSアプリケーション開発ガイド を読みながら勉強したときのメモ。 HelloWorld AngularJS を入手する 公式サイトから angular.min.js をダウンロードする。 HTML を書く <html ng-app> <head> <script src="angular.min.js"></script> <script src="helloWorld.js"></script> </head> <body> <h1 ng-controller="HelloWorldController">{{message}}</h1> </body> </html> angular.min.js を読み込む。 ng-app ディレクティブを付けたタグの中が、 AngularJS のテンプレートとして処理される。 ng-controller ディレクティブを付けたタグの中

    AngularJS使い方メモ - Qiita
  • [JavaScript] そんな継承はイヤだ - クラス定義 - オブジェクト作成 - Qiita

    JavaScript のオブジェクト作成においてクラス定義で継承を実装する方法はいくつかあります。 正しい継承はどうあるべきか、基から検証しながら考えてみたいと思います。 ※正しくクラス定義がエコ楽にできる様に追加記事書きました。 [JavaScript] getter/setterも使えるエコ楽なクラス定義 - もちろん継承も - private変数も 一番簡単なオブジェクトの作成方法 典型的な JavaScript のオブジェクトを簡単に作成してみて、それらを確認してみましょう。 var obj1 = {x: 12, y: "ab"}; var obj2 = new Object; // または new Object() obj2.x = 34; obj2.y = "cd"; // obj < Object var obj3 = [12, "ab"]; var obj4 = new

    [JavaScript] そんな継承はイヤだ - クラス定義 - オブジェクト作成 - Qiita
  • Googleから学ぶ ヌルヌルサクサクなスライドメニュー - Qiita

    スマフォwebページのスライドメニュー アプリでは当たり前のように実装されているスライドメニューですが、webページではなかなか使い心地のよいスライドメニューが実装されているのは見かけません。 スマートフォンのブラウザではjavascriptでのアニメーションはどうしてもガタガタになってしまうし、ちらつきやスクロール制御のめんどくささからもうwebページでネイティブアプリ並のスライドメニューを実装するなんて無理と思っていました。 Facebookのwebページですらボタンの反応は悪いしアニメーションも動かないし最悪です。 一方Google先生はパーフェクトなスライドメニューを実装していた さすがGoogle先生! 俺達に出来ないことを( Googleのスライドメニューは以下の点でパーフェクトです。 1. スライドのアニメーションがとても滑らか・ちらつかない 2. ボタンの反応にストレスを感

    Googleから学ぶ ヌルヌルサクサクなスライドメニュー - Qiita