はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena
  • Hatena

    はてなブックマーク

    トップへ戻る

    • 総合
      • 人気
      • 新着
      • IT
      • 最新ガジェット
      • 自然科学
      • 経済・金融
      • おもしろ
      • マンガ
      • ゲーム
      • はてなブログ(総合)
    • 一般
      • 人気
      • 新着
      • 社会ニュース
      • 地域
      • 国際
      • 天気
      • グルメ
      • 映画・音楽
      • スポーツ
      • はてな匿名ダイアリー
      • はてなブログ(一般)
    • 世の中
      • 人気
      • 新着
      • 新型コロナウイルス
      • 働き方
      • 生き方
      • 地域
      • 医療・ヘルス
      • 教育
      • はてな匿名ダイアリー
      • はてなブログ(世の中)
    • 政治と経済
      • 人気
      • 新着
      • 政治
      • 経済・金融
      • 企業
      • 仕事・就職
      • マーケット
      • 国際
      • はてなブログ(政治と経済)
    • 暮らし
      • 人気
      • 新着
      • カルチャー・ライフスタイル
      • ファッション
      • 運動・エクササイズ
      • 結婚・子育て
      • 住まい
      • グルメ
      • 相続
      • はてなブログ(暮らし)
      • 掃除・整理整頓
      • 雑貨
      • 買ってよかったもの
      • 旅行
      • アウトドア
      • 趣味
    • 学び
      • 人気
      • 新着
      • 人文科学
      • 社会科学
      • 自然科学
      • 語学
      • ビジネス・経営学
      • デザイン
      • 法律
      • 本・書評
      • 将棋・囲碁
      • はてなブログ(学び)
    • テクノロジー
      • 人気
      • 新着
      • IT
      • セキュリティ技術
      • はてなブログ(テクノロジー)
      • AI・機械学習
      • プログラミング
      • エンジニア
    • おもしろ
      • 人気
      • 新着
      • まとめ
      • ネタ
      • おもしろ
      • これはすごい
      • かわいい
      • 雑学
      • 癒やし
      • はてなブログ(おもしろ)
    • エンタメ
      • 人気
      • 新着
      • スポーツ
      • 映画
      • 音楽
      • アイドル
      • 芸能
      • お笑い
      • サッカー
      • 話題の動画
      • はてなブログ(エンタメ)
    • アニメとゲーム
      • 人気
      • 新着
      • マンガ
      • Webマンガ
      • ゲーム
      • 任天堂
      • PlayStation
      • アニメ
      • バーチャルYouTuber
      • オタクカルチャー
      • はてなブログ(アニメとゲーム)
      • はてなブログ(ゲーム)
    • おすすめ

      Google I/O

    『tsimoのメモ』

    • 人気
    • 新着
    • すべて
    • Rubyのコードを書く際のルール - tsimoのメモ

      53 users

      smkw.hatenablog.com

      引き続きコード改善系の記事 http://robots.thoughtbot.com/post/50655960596/sandi-metz-rules-for-developers クラスは100行まで メソッドの中身は5行以内 メソッドのパラメータは4つまで コントローラがインスタンス化するオブジェクトは1つだけ 4つ目のルールは、ウェブのダッシュボードページのようにいろんな要素が組み合わさる画面を出力する場合に従いづらいが、そういうときはファサードとなるクラスを間に入れて、その中で必要なオブジェクトを作ったりしてるらしい。 1つ前の記事におけるビューオブジェクトとかになるんですかね。 要するに、クラスは小さく、メソッドも小さく、個々のクラス、メソッドの役割を明確にってことですかね。 それはそれで「クラスの数多すぎ問題」とか言い出す人が出てきそうな気もするけど。

      • テクノロジー
      • 2015/09/17 19:44
      • Ruby
      • あとで読む
      • Rails
      • コメント
      • development
      • *あとで
      • programming
      • 膨れ上がったモデルから機能を分離する切り口 - tsimoのメモ

        14 users

        smkw.hatenablog.com

        Railsのモデルにちょびちょびと処理を追加していると、いつの間にかサイズが膨れ上がってしまっていたりする。 Railsでロジックを書く場所として与えられている場所はコントローラかモデルなので、「コントローラは単純にしなさい」という教えに従うと、必然的に多くの処理はモデルに書くことになってしまい、モデルが膨れ上がる結果に陥りやすい。 それを解消するために、モデルから切り出せるものは切り出しましょう、ということで、下記の記事に、膨れ上がったモデルから機能を別の独立したクラスに切り出すための7つの切り口が提示されていた。 http://blog.codeclimate.com/blog/2012/10/17/7-ways-to-decompose-fat-activerecord-models/ 以下はそのメモ。 バリューオブジェクト 上の記事では例として、costという数値フィールドをRat

        • テクノロジー
        • 2015/09/09 23:19
        • rails
        • アーキテクチャ
        • programming
        • Applicative Programming - tsimoのメモ

          6 users

          smkw.hatenablog.com

          Functional JavaScriptという本を読んでると、Applicative Programmingという言葉が出てきた。 定義の文章を読んでも何を指している言葉なのかよくわからなかったが、 _.map _.reduce _.filter などのunderscore.jsの関数ように、引数に関数を与え、内部でその関数を利用するという関数の組み合わせ方で処理を構築する方法を指すようだ。 オブジェクト指向な視点で言えばストラテジーパターンに相当するんですかね。 わざわざ名前をつけるほどのことなのかとも思ったが、C/C++ぐらいしかしらない状態で、RubyだかLispだかOCamlあたりではじめてmap関数的なものを知ったときには便利だと思った記憶がある。 Functional Javascript: Introducing Functional Programming With Un

          • テクノロジー
          • 2015/09/09 19:38
          • programming
          • あとで読む
          • Railsでモデルデータのクラスをサブクラスに変更する - tsimoのメモ

            5 users

            smkw.hatenablog.com

            Single Table Inheritanceで親子関係にある二つのクラスHoge, Fugaがあるとする。 class Hoge < ActiveRecord::Base end class Fuga < Hoge end このときHogeクラスのオブジェクトaがあったとしてそれをFugaクラスに変換したいとする。 そもそもそういう状況がオブジェクト指向的にどうなのかというのは置いておく。 このとき、 a = Hoge.find(1) b = a.becomes(Fuga) b.save! とすればいいのかと思って試してみるも、ロードしなおしたオブジェクトはHogeクラスのままだった。 オブジェクトを保存するときのクエリーを見ると次のようになっていた。 UPDATE `hoges` SET `type` = 'Fuga', `updated_at` = '2013-04-08 14:0

            • テクノロジー
            • 2014/01/28 10:52
            • Rails
            • *programming
            • POP before SMTPで認証するメールサーバをAction Mailerで使う - tsimoのメモ

              3 users

              smkw.hatenablog.com

              Railsアプリからさくらのメールボックス経由でメールを送信しようとするとエラーメッセージが返された。 メールを送るにはまず受信しろ、という内容のものだった。 POP before SMTP これはさくらのサーバがPOP before SMTPという認証方式を採っているためで、このサーバからメールを受信できる人だけがメールの送信をできる。 そんなわけで、送信前に一度POPサーバの方にアクセスする必要がある。 これをRailsというかRubyでは、次のようにする。 require 'net/pop' Net::POP3.auth_only('SMTPサーバのアドレス', 110, 'ユーザ名', 'パスワード') これをメール送信のたびに実行する必要があるわけだが、DRYにやるにはどうすればいいのだろうか。 調べてみると、ActionMailerにはインターセプタという仕組みがあり、メールを

              • テクノロジー
              • 2013/07/21 02:43
              • Rails
              • network
              • ruby
              • 京都インディーズゲームセミナー Unity入門講座に行ってきた - tsimoのメモ

                3 users

                smkw.hatenablog.com

                先日「第2回 京都インディーズゲームセミナー Unity入門講座」という催しに参加してきた。 ぼくはこれまでスーファミ、N64、GC、Wii、Wii U、GBA、NDS、3DS、PS2、PS3、PSP、PS Vitaを購入してきた程度にはゲームを嗜んでいるが、どちらかというとゲームよりも実用的なシステムの方への関心が強い。 しかし、使って楽しい、使って心地良いシステムを作るための考え方としてゲーム開発方面の知識を学びたい、といった動機で参加した。 Unityに関しては、知ってはいたけど使ったことはなかった。 「Unity 超入門 〜Unityって何だ?〜」 最初はUnityの高橋さんによるUnityについての説明で、ツールのデモ、アセットストアの紹介、Unityで作られたゲームの紹介がなされた。 Unityという開発環境 Unityのサンプルのプロジェクトを使い、Unityがどういう環境な

                • テクノロジー
                • 2013/04/29 15:50
                • unity
                • Railsアプリでユーザのタイムゾーンを取得する方法 - tsimoのメモ

                  3 users

                  smkw.hatenablog.com

                  Railsでアプリケーションを作成していて、ユーザのタイムゾーンをユーザの手をわずらわせること無く取得したいことがあり、その方法を調べたものの、お決まりの方法らしきものを見つけることができなかった。 それでひとまず、detect_timezone_railsというgemを利用してブラウザ側でタイムゾーンを判定して結果をcookieに保存し、サーバ側でその値を読み取ることにした。 Gemfile に次の行を入れてbundle installする。 gem 'detect_timezone_rails' assets/javascripts/application.js に次の行を追記する。 //= require detect_timezone //= require jquery.detect_timezone //= require jquery.cookie jquery.cookie

                  • テクノロジー
                  • 2013/02/21 22:14
                  • ニコニコ動画が未来を作る 〜 ドワンゴ物語 - tsimoのメモ

                    6 users

                    smkw.hatenablog.com

                    ドワンゴができるまでの創業時メンバーたちの活動から、ドワンゴの設立、そしてニコニコ動画が生まれるまでを描いたドワンゴの社史ともいうべき本。本書のサブタイトルは「ドワンゴ物語」となっているのだが、本書の内容からするとこちらがメインタイトルで、ニコニコ動画は最後に登場する1トピックでしかない。ニコニコ動画について詳しく知りたいと思って買った人は肩すかしを食らうことになるが、ドワンゴという会社に興味がある人には面白い本かと思う。 ニコニコ動画が未来をつくる ドワンゴ物語 (アスキー新書) 作者: 佐々木俊尚出版社/メーカー: アスキー・メディアワークス発売日: 2009/10/09メディア: 新書購入: 25人 クリック: 781回この商品を含むブログ (68件) を見る 僕がドワンゴという名前を知ったのは着メロのテレビCMだったと記憶している。だからそれ以前のゲーム開発会社としての側面は全く知

                    • 世の中
                    • 2009/10/13 15:11
                    • dwango
                    • 「はてな流大規模データ処理」@関西オープンソース2008 - tsimoのメモ

                      3 users

                      smkw.hatenablog.com

                      はてな 伊藤直也さんによる講演「はてな流大規模データ処理」のメモ。 (ご本人による資料:http://d.hatena.ne.jp/naoya/20081111/1226395400) 負荷分散 負荷分散にはCPUの負荷分散とIOの負荷分散がある 前者はマシン増設で済むが、後者はそう単純にはいかない データは全部メモリにキャッシュ (全データ量)<(メモリサイズ)をキープ メモリを増設して解決する問題は増設して済ます メモリの増設で対処できなくなったらキャッシュを複数のマシンに分散させる(最終手段) MySQLの使い方の実際 Key-Valueのストレージ JOINは使わず、クエリーを分割 見苦しい部分はORマッパーが覆い隠す 大規模データ処理への取り組み RDBでがんばるのはムリがある RDBからまとめて取り出しておいたデータを、用途に特化した自前のプログラムで処理する キーワード =>

                      • テクノロジー
                      • 2008/11/11 09:03
                      • hatena
                      • restful_authenticationプラグイン - tsimoのメモ

                        7 users

                        smkw.hatenablog.com

                        Ruby-1.8.6, Rails-2.0.2でアプリで使えるユーザ認証の手段を探していてrestful_authenticationプラグインというものを見つけた。使い方を紹介してくれている動画があって、その通りにやったらあっさり使えた。 で、メモ。 インストール $ script/plugin source http://svn.techno-weenie.net/projects/plugins/ $ script/plugin install restful_authentication ユーザとセッション管理用クラスの生成 $ script/generate authenticated user session ルーティングの設定 config/route.rbに次の行を追加 map.resources :users map.resource :session # map.res

                        • テクノロジー
                        • 2008/03/27 19:29
                        • restful_authentication
                        • rails
                        • plugin
                        • ruby
                        • tsimoの日記 - Rubyをソースコードからコンパイルする

                          12 users

                          smkw.hatenablog.com

                          MacOS10.4.4でRuby-1.8.4をソースコードからコンパイルした。単純に ./configure make make test make intall とすれば、特にエラーもなくことが済んだのだが、irbを使おうとするとエラーが出た。 $ irb dyld: NSLinkModule() error dyld: Symbol not found: _rl_filename_completion_function Referenced from: /usr/local/lib/ruby/1.8/powerpc-darwin8.4.0/readline.bundle Expected in: flat namespacereadlineのライブラリに_rl_filename_completion_functionという名前のシンボルがないという意味だろうか。よくわからないのでGoo

                          • テクノロジー
                          • 2006/02/23 17:21
                          • Ruby
                          • OSX
                          • dev
                          • Mac
                          • Apple
                          • tips

                          このページはまだ
                          ブックマークされていません

                          このページを最初にブックマークしてみませんか?

                          『tsimoのメモ』の新着エントリーを見る

                          キーボードショートカット一覧

                          j次のブックマーク

                          k前のブックマーク

                          lあとで読む

                          eコメント一覧を開く

                          oページを開く

                          はてなブックマーク

                          • 総合
                          • 一般
                          • 世の中
                          • 政治と経済
                          • 暮らし
                          • 学び
                          • テクノロジー
                          • エンタメ
                          • アニメとゲーム
                          • おもしろ
                          • アプリ・拡張機能
                          • 開発ブログ
                          • ヘルプ
                          • お問い合わせ
                          • ガイドライン
                          • 利用規約
                          • プライバシーポリシー
                          • 利用者情報の外部送信について
                          • ガイドライン
                          • 利用規約
                          • プライバシーポリシー
                          • 利用者情報の外部送信について

                          公式Twitter

                          • 公式アカウント
                          • ホットエントリー

                          はてなのサービス

                          • はてなブログ
                          • はてなブログPro
                          • 人力検索はてな
                          • はてなブログ タグ
                          • はてなニュース
                          • ソレドコ
                          • App Storeからダウンロード
                          • Google Playで手に入れよう
                          Copyright © 2005-2025 Hatena. All Rights Reserved.
                          設定を変更しましたx