@blog.justoneplanet.info

日々勉強

gitignoreのテンプレート

■CakePHPのプロジェクト

色々付け足して以下のようになった。

.gitignore

# Windows
Thumbs.db

# MAC
.DS_Store

# Eclipse
/.cache
.project
/.settings
.buildpath

# Netbeans
nbproject/*

# CakePHP tmp files
/app/tmp/*
!/app/tmp/

/app/tmp/cache/*
!/app/tmp/cache/
!/app/tmp/cache/empty

/app/tmp/cache/models/*
!/app/tmp/cache/models/
!/app/tmp/cache/models/empty

/app/tmp/cache/persistent/*
!/app/tmp/cache/persistent/
!/app/tmp/cache/persistent/empty

/app/tmp/cache/views/*
!/app/tmp/cache/views/
!/app/tmp/cache/views/empty

/app/tmp/logs/*
!/app/tmp/logs/
!/app/tmp/logs/empty

/app/tmp/sessions/*
!/app/tmp/sessions/
!/app/tmp/sessions/empty

/app/tmp/tests/*
!/app/tmp/tests/
!/app/tmp/tests/empty

■XcodeでiPhoneアプリ開発

.gitignore

build/*
*.pbxuser

# MAC
.DS_Store

.gitattribute

*.pbxproj -crlf -diff -merge

-crlf -diffはバイナリファイルとして扱う指定である。

This will mean…

  • all files with a .foo extension will not have carriage return/line feed translations done, won’t be diffed
  • merges will result in conflicts leaving the original file untouched.

マージしようとするとオリジナルファイルが外されるとのこと。

■eclipseでandroidアプリ開発

.gitignore

bin/*
dist/*
gen/*

システム設計と開発の基本

■設計

チャンクダウン

  1. 何を作るのか
  2. 必要な機能を列挙
  3. 必要な画面を列挙
  4. 画面や機能のグループ化
  5. グループ化したものをコントローラとして定義
  6. コントローラで行うべき処理内容を列挙
  7. 列挙した処理内容からアクション(名)を定義
  8. データソースの設計
機能の列挙

何をどうするのか箇条書きで軽く書き出す。

画面の列挙
画面名 内容 構成画面
ランキング画面 人気の高い順に上から表示する 1画面のみ
ログイン画面 ログイン処理を行う 1画面のみ
画面や機能のグループ化
グループ 画面名(複数場面の場合)
閲覧系 ランキング画面
認証系 ログイン画面
コントローラの定義
コントローラ名 処理内容 担当画面
IndexController 登録されている情報を閲覧する処理 ランキング画面
AuthController ログイン・ログアウトなどのユーザ権限の管理 ログイン画面
コントローラで行うべき処理内容を列挙

箇条書きや上述の表に書き込んでも良いかもしれない。

列挙した処理内容からアクション(名)を定義
コントローラ 担当処理 アクション名
IndexController
  • 閲覧回数の多い順に一覧を表示する
  • 指定されたページにリダイレクトする
  • popularAction
  • redirectAction
AuthController
  • ログイン画面を表示する
  • ユーザ認証をする
  • ログアウト処理をする
  • loginAction
  • authAction
  • logoutAction

■開発

  1. 画面レイアウトの作成
  2. モデルの処理をコーディング
  3. 全体にかかわる内容の定義
  4. 個々のコントローラやアクションをコーディング

モデル

  • コントローラのリクエストをデータソースから取得して渡す
  • コントローラから渡されたデータをデータソースに登録・更新する
  • データソースの状態をチェックしてコントローラに渡す

レンタルサーバーを選ぶポイントとは?

ということでポイントをまとめてみました。意外とイッパイあるんですねー。表には空欄が2つありますが移転時の比較用に用意しました。

下記の表をエクセル形式でダウンロードする

新規サーバー選び
OSの種類とバージョン OSの種類    
OSのバージョン    
ライセンス付与形態    
OSのサポート期間    
サーバーハードウェアスペック CPU、メモリー、ディスク容量    
RAID、データバックアップオプション    
リモートコンソール    
ウェブ
HTTPサーバーの種類とバージョン HTTPサーバーの種類    
HTTPサーバーのバージョン    
CGI利用の可否 利用可能なスクリプト言語とバージョン    
CGIの設置場所の制限    
suEXECへの対応(Apache)    
PHP、Perl、Rubyなどのパス    
PHPはモジュール版か、CGI版か    
CPANでの、どのバージョンか    
.htaccessによる制御の可否 .htaccessが利用できるか    
.htaccessの必要な機能が新サーバーで利用できるか    
パスワードファイル「.htpasswd」へのパスはどこか    
.htpasswdにユーザーを追加できるか .htpasswd用のパスワード生成ツールは用意されているか    
データベースの種類とバージョン データベースの種類    
データベースのバージョン    
データベース容量の制限    
作成可能なデータベース数、テーブル数、レコード数    
データベース用管理ツールの有無    
新旧両サーバーの文字コード    
アクセス解析は利用可能か アクセス解析ツールの提供の有無    
HTTPサーバーの生アクセスログ取得の可否と保存期間    
トラブルシューティングのための、HTTPエラーログの閲覧    
Jcode.pmやjcode.pl、nkfは使えるか Jcode.pmやjcode.pl、nkfは使えるか    
SSLサーバー証明書の利用の可否 SSLサーバー証明書利用の可否    
共用SSLか、独自ドメイン名SSLか    
構築可能なSSLサイトの数(グローバルIPアドレスの数)    
旧サーバーからの証明書の持ち出し    
新サーバーへの証明書持ち込み    
証明書の受け渡し方法    
証明書が無効になる場合    
メール
作成可能なメールアドレス数 運用中のメールアドレスをすべて移行できるだけの数が使えるか    
代表メールアドレスは利用可能か、その上限数はいくつか    
メール関連の用語は確認しよう    
既存アドレスはすべて利用可能か メールアドレスでの、1文字ユーザー名は利用可能か    
「.」や「-」などの記号が利用可能か、先頭や末尾にも利用可能か    
予約済みで使用できないメールアドレスはあるか    
メールの容量制限 メール1通あたりのサイズ制限    
メールアドレス1つあたりの容量制限    
メーリングリストやメルマガの発行は可能か 個数×メンバー数    
送信回数やメールでの転送量の制限    
対応するメールプロトコル 対応するセキュアーなメールプロトコル    
モバイル環境から読み書きするか    
迷惑メール送信の対策はとられているか 迷惑メール送信の対策はとられているか    
送信ドメイン認証に対応しているか    
旧サーバーに保存されているメールをどうするか 旧サーバー上に保存されているメールを新サーバーに移行可能か    
旧サーバー上に保存しているメールの扱いの周知徹底    
メールサーバーの移行 旧メールサーバーが止まるまでの措置    
ネットワーク・DNS・ドメイン名
回線タイプを選ぶ 10Mbps / 100Mbps    
共有回線/専有回線    
帯域保証は必要か    
転送量制限と課金タイプ 課金タイプはどうなっているか    
転送量制限の有無と超過時の料金    
引越しを機にレジストラを変更する 移管するドメイン名はJPかgTLDか    
現在利用中のレジストラに連絡    
新しいレジストラに移管を申請    
DNSの設定変更 現在設定されているホスト名一覧を控える    
旧DNSサーバーのTTLを事前に短縮    
Nsレコードの最終的な変更者は誰か    
社内に別のDNSサーバーがないか    
管理
管理者権限付与の有無 管理者権限付与の有無    
管理者権限は何のために必要か    
サーバー管理ツールの種類 提供される管理ツールの種類    
サーバー移転支援機能はあるか    
管理ツールのライセンス数と料金    
管理ツールの権限分割は可能か 管理ツールは権限分割が可能か    
ウェブマスター用のFTPアカウントが発行できるか 複数のFTPアカウント発行(サイト管理者機能の追加)    
パッチはいつ、誰が適用するか パッチの適用は誰が行うか    
共用の場合アナウンスの有無、タイミング、方法    
PHPやPerl、Rubyなどのアップデートはいつ行われるか 共通モジュールのアップデートタイミング    
契約・サポート
新規サーバーの契約 支払い方法    
最短契約期間    
旧サーバーの解約手続き 申請書到着後の解約日は何日か    
解約の事前通知期間は何日前か    
解約時に残っているデータの扱い 解約時に残っているデータの扱い    
サポート体制のチェック サポート窓口へのコンタクト方法    
障害情報ページの有無    
緊急時の連絡方法やサポート範囲    
24時間サポートの要/不要    

GoogleAnalyticsで携帯のアクセス数はカウント(計上)できるのか?

■結論

出来る。

これがAnalyticsのキャプチャー画面。data.png

■方法

Analyticsでは通常http://www.google-analytics.com/__utm.gifのファイルに(クライアント情報を記録した)クエリをつけたリクエストをJavaScriptで行っている。このimgをベタでHTMLファイルに記述すればJavaScriptが実行できない携帯端末でもgifファイルをリクエストし、Analyticsに計上される。

■ソース

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try{
    //this is your id
    var pageTracker = _gat._getTracker("UA-123756-7");
    pageTracker._trackPageview();
}
catch(err){}
</script>
<noscript>
<img src="http://www.google-analytics.com/__utm.gif?utmul=noscript" width="1" height="1" />
</noscript>

■注意

自己責任でお試しください。

アイデア提供元(codeなにがし

pingサーバー一覧(Blog-SEO対策必須)全43個所

  • http://rpc.pingomatic.com/
  • http://rpc.technorati.jp/rpc/ping
  • http://rpc.reader.livedoor.com/ping
  • http://ping.rss.drecom.jp/
  • http://ping.ask.jp/xmlrpc.m
  • http://api.my.yahoo.co.jp/rss/ping?u=ブログのRSSURL
  • http://ping.fc2.com
  • http://ping.namaan.net/rpc/
  • http://www.blogpeople.net/servlet/weblogUpdates
  • http://bulkfeeds.net/rpc
  • http://blog.goo.ne.jp/XMLRPC
  • http://ping.cocolog-nifty.com/xmlrpc
  • http://ping.blogmura.jp/rpc/
  • http://ping.amagle.com/
  • http://ping.gpost.info/xmlrpc
  • http://blogstyle.jp/xmlrpc/
  • http://jugem.jp/?mode=NEWENTRY
  • http://www.blogoole.com/ping/
  • http://www.blogoon.net/ping/
  • http://blogdb.jp/xmlrpc
  • http://coreblog.org/ping/
  • http://blog.with2.net/ping.php/
  • http://blog-search.net/up.php
  • http://ping.bloggers.jp/rpc/
  • http://ping.myblog.jp
  • http://ping.exblog.jp/xmlrpc
  • http://api.my.yahoo.com/RPC2
  • http://ping.blo.gs/
  • http://ping.rootblog.com/rpc.php
  • http://rpc.technorati.com/rpc/ping
  • http://rpc.weblogs.com/RPC2
  • http://rpc.blogrolling.com/pinger/
  • http://rpc.atblogs.com/
  • http://rpc.bloghackers.net/newsoku
  • http://rpc.weblogs.com/
  • http://serennz.cool.ne.jp/sblog/rep
  • http://tb.threetree.jp/
  • http://bitacoras.net/ping/
  • http://ping.weblogs.se/
  • http://xmlrpc.blogg.de/
  • http://ping.weblogalot.com/rpc.php
  • http://serennz.cool.ne.jp/sblog/rep.cgi
  • http://www.weblogues.com/RPC/

重複チェックしましたが間違ってたらゴメンナサイ。。。