タグ

2015年11月1日のブックマーク (6件)

  • iOSアプリの開発効率をあげるSwiftの便利Extension - Think Big Act Local

    Swift の Extension を使うと既存クラスや自作クラスを拡張することができます。 会社や個人のプロジェクトでいつも使っている便利な拡張コードをまとめてみます。 便利な Extension の紹介 クラス名の取得 そのクラス・インスタンスのクラス名を取得するextensionです。 extension NSObject { class var className: String { get { return NSStringFromClass(self).componentsSeparatedByString(".").last! } } var className: String { get { return self.dynamicType.className } } } 以下のような感じで使います。 MyCustomClass.className // "MyCustomC

    iOSアプリの開発効率をあげるSwiftの便利Extension - Think Big Act Local
  • エンジニアをどう評価し、どう育てるか

    エンジニアをどう評価し、どう育てるか。自分自身そんな偉そうなことを言える実力を持ってるわけでもないんですが、最近考えざるを得ない機会が増えてきたので、自分の考えをまとめてみました。 エンジニアスキルの3つのレイヤー エンジニアのスキルは、大きく分けると3つのレイヤーがあると思っています。 1つ目は「業務スキル」。特定のプロダクトや会社に特有のスキルで、プロダクトや会社が変わると役に立たなくなるもの。 2つ目は「言語・フレームワークスキル」。いわゆる「rubyできます」「railsできます」みたいなやつですね。 そして3つ目は「汎用スキル」。会社や言語が変わっても使えるスキルです。 この3つはそれぞれオーバーラップする部分もありますが、汎用スキルが土台になって、その上に言語・フレームワークのスキルを構築し、一番上に業務スキルが乗っかってるイメージです。 じゃあその汎用スキルって何よ?っていう

    エンジニアをどう評価し、どう育てるか
  • 知って得する!55のRubyのトリビアな記法

    Rubyはたのしい言語です。Rubyを触っているとマニュアルにも書いていない「小さな発見」に遭遇することがよくあります。このような「発見」は、プログラムの質や効率の改善には直結しないかもしれません。いや、むしろチームプログラミングでは妨げになる可能性すらあります。しかしその一方で、言語自体が自分の知らない領域を持ち続けていることが、その対象に対する興味を失わせないための大きな要因である、というのもまた疑いのない事実なのです。つまり「発見」はたのしさに直結しているのです。 このブログにおいて「知って得するRubyのトリビアな記法」というタイトルで、今まで3回記事を書きました。 “知って得する21のRubyのトリビアな記法” “第2弾!知って得する12のRubyのトリビアな記法” “第3弾!知って得する12のRubyのトリビアな記法” これらのトリビアには、ネット検索で見つけたもの、Twitt

  • nginxでDDoS対策をする方法

    nginxでDDoS対策をするための方法を調べてみました。 いくつか方法が見つかったので、リンクをまとめてみました。あとで、色々試してみようと思います。 nginxをプロキシサーバとして利用して、バックエンドにアプリサーバを配置するような構成で使うので、外部から来たDDoSをnginxでブロックしてアプリサーバを守る。といったような用途になるかと思います。 もちろん、nginxが応答できるHTTPリクエストの範疇に収まらない攻撃は、その前段階でブロックしたり、他のサーバにアクセスを逃したりする必要があります。 DDoS攻撃に対するシンプルな戦略 | ツチノコブログ(http://tsuchinoko.dmmlabs.com/?p=611) さらに、こちらで紹介されているように、完璧に防ごうとすると青天井のコストが見えてしまったりするので、”どれくらいDDoSからの保護をするのか”を明確にル

    nginxでDDoS対策をする方法
  • gitに新機能を追加してgit masterを目指す(初級編) - クフでダローバルな日記

    学科の実験「大規模ソフトウェアを手探る」でgitを弄って改良しようとしたので、その過程と結果を何回かにわたって書いてみようと思います。 「レポートとしてブログ記事が認められる」という変則的な実験なので、レポートとして書きますが、文体は敬語かつ口語っぽく書かせていただきます。 また、単にハウツーを書くだけではなく、チームや個人としての感想や想いについても書かせていただきます。 というのも、ブログ記事が推奨されている理由が、 今後同じく大規模ソフトウェアやOSS、特に自分の暑かったソフトについて手探ろうとしている人たちの参考となるため であるためです。 従って、この記事は単なるレポートではなく、他の方に参考にして戴ける記事にしたいと思っているので、質問や意見などがあればコメント欄やはてブコメントなどで仰ってください。 twitterは@showmeearなので、リプを飛ばしていただいても構いま

    gitに新機能を追加してgit masterを目指す(初級編) - クフでダローバルな日記
  • CDIを使ったプログラムの単体テスト(1)

    これから何回かに分けてCDIベースのテストを支援するDeltaSpikeのモジュールを紹介します。今回はDeltaSpike Test-Controlモジュールです。 CDIベースの単体テストの問題 CDIを使ったインジェクション、プロデューサ、インタセプタ、イベントなどを使ったクラスをどうやってテストしたらよいのでしょう。setterインジェクションを使うなど、無理をすればある程度はコンテナ無しでもテストができるかもしれませんが、できればCDIの普通の使い方をしたままでテストをしたいものです。そうなると、JUnitとCDIコンテナを連携させる仕組みが必要になります。 テスト対象がEJBやコンテナ管理のJPAを使っている場合など、Java EEコンテナに依存する場合には、Arquillianを使うのが定番ですが、Arquillianはテストをアプリサーバー上で実行するためにアプリサーバーの

    CDIを使ったプログラムの単体テスト(1)