Nullyのぶろぐ

仙台から東京へ転勤したエンジニアのブログ

Nexus7を購入

Nexus7を買ってしまいました!

 

買ったついでですが、ちょー簡単なレポしてみたいと思います。

 ====

スペックについて

 

まずはNexus7のスペックから。

 

 

 

画面

7 インチ 1280 x 800 HD ディスプレイ(216 ppi

バックライト付き IPS ディスプレイ

傷に強いコーニング社製ガラス

1.2 MP 前面カメラ

 

 

サイズ

198.5x120x10.45 mm

 

 

重量

340g

 

 

ワイヤレス

Wi-Fi 802.11 b/g/n

Bluetooth

 

 

メモリ

16 GB の内部ストレージ(フォーマット後の実際の容量はこれより少なくなります)

1 GB RAM

 

 

USB

マイクロ USB

 

 

電池

4325 mAh(最長 8 時間使用可能)

 

 

OS

Android 4.1(Jelly Bean)

 

 

CPU

クアッドコア Tegra 3 プロセッサ

 

 

特長

マイク

NFCAndroid ビーム)

加速度計

GPS

磁力計

ジャイロスコープ

 

 

 

公式サイトより引用

 

お決まりの開封の儀

お決まりの時間ですね。

 

 

箱の裏面と表はこんなかんじでした。

 

 

 

オプション品の内容は、電源コンセントのみですが、いろいろバラけて入ってきたので、若干サイズがでかく感じました。

 

 

(写真撮影下手糞ですみませんorz)

 

で、コンセント部分にはきちんと正式名称が!w

 

セットアップ

セットアップは簡単で、3ステップくらいで終了します。

 

 

電源を入れるとまずは「ようこそ」とウェルカムなNexus7さん。

 

こちらこそようこそとお出迎え。

 

 

次に所有者を求められるので、まぁ適当に入れます。

 

あなたのおなまえなんてぇ~の~?♪

 

 

 

 

これでセットアップが完了!

 

アプリをインストール

 

PlayStoreはAndroid端末統一のようで、ちゃんと崩れとかなしに見れてました。

 

流石です。(こういうところを技術者としてもみならいたいなー。)

 

 

野球が好きなのでこれを入れて試合結果やテキスト速報を覧てます。

(シーズン終わって、楽天はあと一歩というところでBクラスで終わりましたが、来シーズンこそAクラス目指して!!)

簡単に使ってみて

端末としては今のところ他のタブレットより持ちやすいのではないかなー?とおもいます。

 

それとソフトウェアキーボードも打ちやすく、ちょうど人差し指の「腹」で押せるくらいでした。

 

勉強会などで持ち込むのもOKだと思いますが、QWERTYにしないと打ち込みが辛いので、IMEQWERTY対応しているものが良いかと。

 

それと、Nexus7はUSBホストを利用することで外部SDカードやUSBメモリを認識することができます。

 

私が購入したのはこちら。

 

 

買ってから気づいたんですが、USBホストで、こういうタイプは線がプラプラして邪魔になるはずです\(^o^)/

 

なので、SDカードタイプのホストが良いかもしれません。

 

 

microSDも読み取りが可能で、線もプラプラしないで、コンパクトなので持ち運びに便利だと思います。

 

またカバーも多様なカバーがありますが、私が購入したのはこちらです。

 

 

つべでこのカバーについての動画があったので見てみると、自分が探し求めていたものだったようなので、amazonにて即ポチ。

 

カバーで回転するタイプのがあるんですが、あの回転する軸があるだけでカバンに入らなくなるのと、若干重くなるんじゃなかろうか...という事から、回転もせず、ホントノーマルなカバーを購入した次第です。

 

買ってよかった!

 

終わりに

 

Nexus7、とてもいいです。

 

Google信者とかそういうの関係なしに、タブレットとしての携帯性は今のところ一番じゃないかなー?と個人的には思います。

 

アプリに関してはiPadほど優れたものは無いのかもしれませんが、使い方次第では自分なりの使いやすいアプリがあるかもしれません。

 

どっちが良いだのどっちが悪いだのは他人様で、自分の価値観などを元にタブレットの選定を行えば、自分にあったものが必ず見つかると思います。

 

でもNexus7最高\(^o^)/

CentOS上でApache2系を利用していたら再起動できなくなっていた

ついこの前なのですが、運営していたサイトのApacheが再起動を全く受け付けなくなりました。

「とりあえずな~」と思い再起動をかけてみると以下のようなエラーメッセージが。

Stopping httpd: [FAILED]

Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:80

(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80

no listening sockets available, shutting down

Unable to open logs

[FAILED]

要約してしまうと「すでに80番ポート使われてる」ってことですね。

で、じゃぁプロセス殺してしまおうぜ☆(ゝω・)vキャピってことで以下のコマンドを実行。

[crayon]ps aux | grep http | grep -v grep | grep -v Ss | awk '{print $2}' | xargs kill -9[/crayon]

これで起動できる( ^ω^)おっと思ってとりあえずpsでプロセスを再チェック!

[crayon]ps aux | grep httpd[/crayon]

apache 25769 1.6 0.5 599388 42308 ? S 14:49 0:01 /usr/sbin/httpd

apache 25775 2.0 0.3 588812 30860 ? S 14:49 0:01 /usr/sbin/httpd

apache 25778 1.1 0.4 590612 35620 ? S 14:49 0:01 /usr/sbin/httpd

apache 25781 1.9 0.6 603916 49776 ? S 14:49 0:01 /usr/sbin/httpd

apache 25906 0.9 0.4 590604 34776 ? S 14:50 0:00 /usr/sbin/httpd

apache 25911 0.7 0.3 590092 31896 ? S 14:50 0:00 /usr/sbin/httpd

apache 25914 6.6 0.7 614724 58276 ? S 14:50 0:02 /usr/sbin/httpd

apache 25917 1.4 0.4 588816 32872 ? S 14:50 0:00 /usr/sbin/httpd

apache 25987 4.3 0.2 588772 17436 ? S 14:50 0:00 /usr/sbin/httpd

apache 25990 7.0 0.2 588772 17436 ? S 14:50 0:00 /usr/sbin/httpd

apache 25991 7.0 0.2 588772 17440 ? S 14:50 0:00 /usr/sbin/httpd

( ゚д゚)

(つд⊂)ゴシゴシ

(;゚д゚)

(つд⊂)ゴシゴシ

_, ._

(;゚ Д゚)

まぁ何度killしても復活してくる。

なぜだーと理由がわからないまま、fuserでプロセスを全部ぬっころす(死後)

[crayon]/sbin/fuser -kn tcp 80[/crayon]

tcpポートの80番はapacheで使わせているので、そのポートを使っているプロセスをすべてKillBillしてくれる。

めでたく死んでいただけたようなので、再度通常起動!

これでやっとこHTTPがちゃんと見れるようになりました\(^o^)/

今思うとセマフォに残っていたからなんじゃ...!?と思いましたが、とりあえず良し...と( ´ー`)y-~~

ZF2のセッションクラスについて

あ、昨日はてなブログにブログ作ったNullydesu!!!
オナシャス!!!!

で、ZF2からセッションクラスがちょこっとだけ変わったので、簡単にですが、実際に使ったことを元にどうなってるかというのを書いてみたいと思います。
ちなみにZF2のバージョンは「2.0 Beta4」です。

Namespaceについて

ZF1だとZend_Session_Namespaceというクラスがあり、$_SESSION変数に指定した名前空間を作り、そこにあれこれそれを色々追加できます。

実際にどういうことかというと、「admin」、「manage」、「staff」という名前空間を作るとすると、

<?php
$adminSession = new Zend_Session_Namespace("admin");
$manageSession = new Zend_Session_Namespace("manage");
$staffSession = new Zend_Session_Namespace("staff");

という風に、指定してインスタンスを作ることで、

<?php
$adminSessoin$_SESSION["admin"]
$manageSession$_SESSION["manage"]
$staffSession$_SESSION["staff"]

という形で保存できる領域が明示的に分けることができます。
(あまりこういう使いかたはしないと思いますが。)

これが今までのセッションクラスのざっくばらんな処理内容。

じゃぁZF2からどうなったか?

ZF2からは、Zend_Session_Namespaceというクラスはなくなり、代わりに「Zend\Session\Container」クラスになりました。
セッションクラスの内包する物はこんなかんじになってます。

f:id:nully:20120713181013j:plain
Sessionディレクトリ以下にある他のディレクトリは名前を見てもらえればなんとなく分かるかなーと。
SaveHandlerとStorageは以前も似たようなものがあったので割愛します。

Configurationについて

ファイルは3つありますが、実際使うのは1つっぽいです。
Zend\Session\SessionConfigurationクラスはセッションの設定を制御してくれるクラスで、setOption関数やserializeHandlerを設定する関数などがあります。

Validatorについて

このクラスは使いドコロが限定されますが、セッションが動いている最中のリモートアドレスとユーザーエージェントをチェックしてくれるクラスっぽいです。
例えば、アクセスしてきた元アドレスとセッションに保存されているアドレスが異なっていたら画面を真っ白にしてあげるとか?

前置きはこれまで

前置きが長くなりましたが、実際の使い方です。
使い方はいたって簡単で、Zend_Session_Namespaceクラスのように呼び出して上げるだけです。

<?php
$session = new Zend\Session\Container("hogehoge");

「hogehoge」の部分は名前空間になります。

データを書き込む・読み込むのも以前同様に「->」で保存する変数名を指定します。

<?php
$session->name = "nully";
// echo $session->namel /* nully と表示される */

DIを利用した呼び出し方

今のフレームワークだと、DependencyInjectionという概念が徐々に取り入れられている感じがします。(ZF2からは少なくともこれが無いと始まらないくらいのレベルになっているっぽい)
ということでDIを利用したコードの呼び出しを。

<?php
"session_container" => function($sm) {
    $config = $sm->get("config");
    // セッションの設定などを行う
    $container = new \Zend\Session\Container("app_name");
    return $container;
}

こんなかんじでModule.phpだったり、module.config.phpに書き込んであげれば良いと思います。

変わったと書いたが...

さほど変わりなかった/(^o^)\

Zend Framework 2.0 Kochbuch

Zend Framework 2.0 Kochbuch

Zend Framework 2.0 Cookbook

Zend Framework 2.0 Cookbook

ZF2で予め登録されているイベント一覧

一覧とは書きましたが、自身はありません!!

ZF2から利用できるようになる(予定だけどほぼ実装されてるっぽい)イベントマネージャー。

簡単に説明してしまうと、JavaScriptにもあるように「ユーザーが××を△△したら○○を行う」という、一連の流れを簡単に登録・削除・処理ができるようになる機能です。

(間違っていたらごめんなさい><;)

このイベントマネージャーで利用できるイベントID(トリガーID)を個人的に見つけた分を覚書としてメモ!

続きを読む

ZendFramework2を使う際に参考にしたいサイトのまとめ

参考というほど参考って感じはしないけど、ZF2使おうかなー?と考えている人たち用にこのへん見てみるといいかも!なのをまとめてみました。

続きを読む