Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Android開発をしていると、同じint型でもDrawableのidだったりLayoutのidだったり、はたまたアプリ内で使う独自の数値であったりと様々な使い分けを求められるシチュエーションが多々あります。 Android Support libraryにはそんなときに便利なコードを見やすく、書きやすくするアノテーションがandroid.support.annotation パッケージの中に入っています。 その一部の使い方をまとめてみました。 2016/03/22 追記 その2も記載しました Androidのコードを 見やすく! 書きやすく! するアノテーション その2 メソッドの引数にNullを許容しない @NonNull メソッドの引数にNullを許容しないことを明示できます。 これを指定していると呼び出し側が引数にNullを指定した場合に Lintで Probable bugs の
DELETE_FLAG という思考停止フラグ DELETE_FLAG という boolean の列が DB 設計でよく話題になります。 論理削除という言葉で上手に論理武装し、スキを見せるとすぐに入れたがる人がおり、 一方でそれにつよく反対する人もいます。 自分の経験としては、広義の論理削除はありえると思いますが、実現方法が DELETE_FLAG だとなった時、それはあまり考えてないでなんとなくパターンとして盛り込んでる場合が多いと感じます。 ただし、設計に唯一の答えは無いので、もしかしたらそれが妥当な設計である場合があるかもしれません。 今回は「DELETE フラグがなぜダメなのか?」などという話をするつもりも、アンチパターンだと断言するつもりもありません。 問題は、仕様をきちんと把握すると、「最適な設計は DELETE_FLAG ではない」という場合が有って、その場合は、その最適な設計
2年目のゲームプログラマがゲーム会社でUnityを使用して スマートフォン向けのゲームを開発して感じたことをまとめておきます 【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 コーディング編 【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 拡張メソッド編 【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 デバッグメニュー編 【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 UI編 【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 アセットバンドル編 nullチェックの回避方法 nullチェックは大変でバグの原因にもなりやすいので nullチェックを回避する方法を書き残しておきます 変数初期化子で初期化しておく 変数初期化子で空のパラメータを代入したりインスタンス生成したりすることで メンバ変数がnullかどうかを意識することなく
最近はクラウド上のサーバーを利用する事も多くなってきた。 サーバーの用意やネットワーク周りの設定はインフラ部門がやってくれるけど、アプリのデプロイ/設定は開発者がする事が多いので、開発メインでやってるエンジニアでも最低限SSHの知識は必要になる。 また、Vagrant等でローカル環境にVMを作成する事もあるので、ローカル環境内でSSHを使用するケースも増えてきた。 というわけでインフラエンジニアじゃなくてもSSHクライアントの知識は必須になってきているので、改めてSSHの再学習をしてみることにした。 SSHとは 暗号や認証の技術を利用して、安全にリモートコンピュータと通信するためのプロトコル。 SSHでは以下の点で従来のTelnetより安全な通信が行える。1 パスワードやデータを暗号化して通信する。 クライアントがサーバーに接続する時に、接続先が意図しないサーバーに誘導されていないか厳密に
最近不適切にFizzBuzzをやるのが楽しく、常にFizzBuzzのことばかり考えている気がします。これが"恋"というものなのでしょうか。 というわけなので、最近書いたFizzBuzzをいくつか紹介したいと思います。 basic.rb 基本パターン (1..100).each do |n| puts case 0 when n % 15 then :FizzBuzz when n % 3 then :Fizz when n % 5 then :Buzz else n end end いいですね。ポイントはcaseの使い方です。caseは、caseに渡したオブジェクトと、各when節の評価結果を===メソッドで比較します。例えばFizzBuzzに該当するかの判定部分は0 === n % 15といった処理が走ることになるわけですね。 tap.rb tap with breakの活用
WP One Metric WP One Metricっていうコンテンツの評価を可視化するWordPressプラグインを作りました。Github > WP One Metric Webコンテンツの成果を評価するたった1つの指標「One Metric」の記事に書いてある指標の計算ロジックをそのままWordPressプラグインにしてます。 縦軸が評価指標、横軸が各記事です。縦軸の50を基準に良し悪しの判断の指標とすればよいです。 使い方 使い方は「設定>WP One Metric」からGAに関する情報を設定するだけです。 View IDはGoogle Analyticsの「アナリティクス設定 > ビュー設定」にあるビューIDに記載してある数字を入れてください。 そして。「ダッシュボード>WP One Metric」からAnalyzeボタンを押すと解析が走ってグラフが表示されます。 解析は過去4
この記事は2014年6月ころに大部分を書いたので、現在のrailsとは異なる部分もあります。 まだ参照してくださる方がいるのですが、かなり古いためあまりお勧めできません ※削除ができないため残してあります。 はじめに この投稿は本格的にプログラミングに打ち込んだことのない人向けに、Ruby on Rails Tutorialを通してプログラミングを学習してもらうというものです。 このサイトは非常によく出来ていますので、(※基礎的なプログラミング力さえあれば)レッスンを単純になぞるだけで、誰でもWebアプリケーションが出来てしまいます。 ですが、このチュートリアルは入門には難しすぎます。 なので、基礎的なプログラミング力も持っておらず、RailsTutorialを自力でこなすことができない人のために、 自力でRailsTutorialを進められるようになるところまでをサポートします。 ※この
概要 Lollipop が発表されてから時間も立ち、Android Auto、Android Wear、Android TV と、多様性を見せ始めた Android ですが、今後とも多種多様なデバイス向けに様々なアプリを作っていく流れがあるなか、新しくアプリを作るなら抑えておきたい要所をまとめました。 TL;DR 抑えるところは 3 つ。 画面とライフサイクル 非同期処理 互換性 かなり端的にいうと、Activity や Service などのライフサイクルとうまく付き合いながら、コードの構成のレイヤー化を行い、非同期処理を簡潔に記述できる準備をしておくことと、非同期処理とあわせてマルチスレッドプログラミングの基本を抑えておくこと、互換性への準備を最初にしておきましょう、という話です。 画面とライフサイクル MVC を基本として、データ構造を定義して Activity や Fragment
SEO好きですか?私は嫌いです。そんな事に取り組むよりも仕組みやコンテンツの改善に取り組みたいです。今回はそんなSEO嫌いにお送りする、SEO対策集です。やってられないSEOは1日で終わらせてもっと生産的な仕事に集中しましょう! まずは結論から 下記をテンプレートにしていただければ良いです。google検索表示もfacebook表示も上手くいきます。twittercardの表示だけは公式サイト(日本語)より申請がいるのでそれだけしておきましょう。 <title>Qiita - プログラマの技術情報共有サービス</title> <meta content="Qiita - XXX" name="title"> <meta content="ブログ記事詳細. 120字以内を心がけよう。その中でも最初の40字は大事。" name="description"> <meta content='キーワ
先日「サーバーのセキュリティ設定がなにすればいいかわからない」と相談をうけまして。 自分も初心者の時どこまでやればいいかわからず手当たりしだいにやって沼に入っていたのを思い出しながら自鯖構築したときのメモを元にまとめてみました。 注意 セキュリティ対策は用途や場合などによって違います。 自分で理解したうえで自己責任でおねがいします。 対象読者 Linuxのサーバーを建て慣れていない人 Linuxはある程度さわれる人(自分でパッケージを入れたり、サービスを止めたりできる) ラインナップ ☆は導入の重要度と導入の容易さから個人的偏見からつけた値です。 4つ以上が"最低限やること"だと思ってください。 sshd
この記事は Vim Advent Calendar 2014 の 17 日目の記事です。 16日は Kuniwak さんの「vimrc アンチパターンを自動でチェックする」でした。(私の vimrc も多くのアンチパターンがあったので、戒めていくとともに、vint でチェックしようと思います。。) プラグインなしのvimをつかう 先日のVACでも紹介されていたincsearch含め、プラグインは便利で私も色々使っているのですが、あえて、今回はVim(7.2以上)であれば使える基本コマンドで、私自身がよく使っているコマンド(Exコマンド含む)を10つに絞って紹介したいと思います。 #最近、サーバー系の作業が増えて、プラグインなしのvim使うことも増えてきました。 人によってなじんだキーバインドの設定はあるかと思いますが、実際のところこれだけ覚えとけば(プレーンなvimでも)それなりに不自由し
(2021-8-28追記) この記事の改訂版を書いてみました。改訂版の方が易しい内容になっているので、プログラミング初心者の方はこちらを参考にしてみてください。 はじめに:「引数があるよりは、ない方が良い」? 先日、同僚の西見さん(@mah_lab)がこんな技術ブログを書いていました。 インスタンスメソッドとクラスメソッドはどのようにして使い分けるべきか?(Rubyの場合) 同じ内容を僕だったらどういうふうに書くかな~?と思って、ちょっと書き始めてみたんですが、わかりやすく実践的な説明をするのは意外と難しく、内容も西見さんのブログとほぼ同じになりそうだったので、途中で断念しました。 というわけで、インスタンスメソッドとクラスメソッドの使い分けが未だにあやふやだという方は、ぜひ西見さんのブログを読んでみてください! ・・・なんですが、1点だけ気になる点がありました。 それはインスタンスメソッ
"Gianism" というプラグインを利用すると、最近流行りのSNS連携を利用したログインを簡単に実装することができます。今回はFacebookとの連携を試してみます。 ##元記事 下記エントリの転載になります。 WordPressで会員制サイトを構築してみよう(GianismでSNSログイン) ##利用プラグイン Gianism バージョン 2.2.1 で試しています こちらの製作者さんは日本人で、プラグインの更新頻度も高いです。 ##Facebookの事前設定 ###Facebookアプリの作成 SNSログインを行うには、事前にFacebook Developersにてアプリの申請が必要になります。 まずDevelopersサイトにログインして、「Add a New App」を選択します。 今回はWebサイトへのログインなので、一番右の「Webサイト」を選択します。 サイト名を記述し、
類似画像検索手法について簡単にまとめました。 はじめに 画像検索には主に2種類の手法がある。 TBIR (Text Based Image Retrieval) 画像にテキストデータが紐付けられていて、テキストを元に検索する CBIR (Content Based Image Retrieval) 画像の特徴量を基盤として検索する ライブラリ Feature Extraction Library - FELib http://appsrv.cse.cuhk.edu.hk/~jkzhu/felib.html 下記の5つの特徴を持つ画像から特徴量を抽出できるライブラリである。 Color histogram, color moments. カラーヒストグラム・色統計) Edge histogram. 輪郭のヒストグラム Gabor wavelets transform. Wavelet tra
Editorは、人によって大きく違うと思うけど、大体こんな感じだと思います。 Rubyでは、Vim,Emacsなどのエディタ + Plugin + 開発支援なgem Javaでは、Eclipse,NetBeans,IntelliJなどのIDE Javaの人はIDEが無いと辛いと思うかもしれませんが、Vim Pluginや開発支援するgemを使えば、IDEと遜色なく使えるのではないかと思います。 例えば、エディタ上で以下のことはできます。 コード補完 ブレイクポイントを置いて、ステップ実行 カーソル上のクラスやメソッドに飛ぶ(gemやRuby本体のC言語も含む) 知りたいクラスやメソッドなどのドキュメントやソースの表示 保存時にコーディング規約違反の表示 homebrew mac標準のrubyでまずはhomebrewをインストールします。 $ ruby -e "$(curl -fsSL ht
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く