Saturdayはじめての設計をやり抜くための本だいぶ昔に買ったんですが、やっとこさ読みました。設計はプロジェクトによって範囲、粒度など様々なので、絶対的なやり方はないのでしょう。この本は一般的な設計の流れとポイントについて触れられている。プログラムをある程度、経験して設計もやってみようという頃に読みたかった内容。良いコードを書くためのシンプルで実践的なテクニック買って、読みました。口蔵さんが貸してくれるんだったんだけど、会社辞めてしまったので。読みやすいコード=良いプログラムの書き方。内容は、リファクタリングに似ていますが、200ページ程度でまとまっていて、読みやすい。短い時間で意図を伝えることの出来るプログラムが優れているというのがテーマ。付け方、コメント、if文、for文の書き方、関数の分割基準などについて書かれている。基本的なことなんだけれど、出来ていない人も多いと思う。いうのは、プログラミング言語の本では触れられない内容。プログラマのたしなみとして、みんなに特に若い人に読んでもらいたい良書なので、手元に置いておきます。印象深かったのが、ヨーダ記法。「スターウォーズ」のヨーダから命名されているというのが面白かった。{はコンパイルエラーになるので安全なのだけれど、不自然で読みにくいし、いまのコンパイラは警告を出してくれるので、もうやめちまおうぜ!という意見。人間には、左が「調査対象」、右が「比較対象」という形が読みやすい。conditions)と名付けられてるのだって。スパムも「モンティパイソン」だし、コンピュータ用語って遊びがあって楽しいね。must.といいます。京セラ、KDDI、日本航空の稲盛和夫さんの本です。著書がすべて評価が高く、以前から興味がありました。・魂を磨いていくことが、この世を生きる意味である。・心に描いたものは必ず実現する。宗教的だなあと読み進めていくと、仏門に入られているとのこと。あと、中村天風が師匠なんですね。余談だけれど、昔、速読の練習をしていたときのテキストが中村天風に関する内容で、3倍速、5倍速、10倍速。聞きまくっていました。これは、よほどの強い思いがないと、それは行動として現れない。いうことと理解すると、納得できました。当たり前のことを当たり前にやることがどれだけ大事で大変なことか。いくつか、ことばをメモしました。・人間の能力は無限だ・額に汗して自分で稼いだお金だけが、ほんとうの”利益”なのだ・どれほど小さなものであろうと、われわれはみんな必然性があってこの宇宙に存在している。どのように小さな、とるに足らない生命といえども、また、無生物であろうとも、宇宙が「価値がある」と認めているからこそ、存在している。�だれにも負けない努力をする人よりも多く研鑽する。それをひたむきに継続すること。不平不満をいうひまがあったら、一センチでも前へ進み、向上するように努める。�謙虚にして驕らず「謙は益を受く」という中国古典の一節のとおり、謙虚な心が幸福を呼び、魂を浄化させることにもつながっていく。�反省ある日々を送る日々の自分の行動や心のありようを点検して、自分のことだけを考えていないか、卑怯な振る舞いはないかなど、自省持戒して、改めるよう努める。�生きていることに感謝する生きているだけで幸せだと考えて、どんな小さなことにも感謝する心を育てる。�善行、利他行を積む「積善の家に余慶あり」。善を行い、他を利する、思いやりある言動を心がける。そのような善行を積んだ人にはよい報いがある。�感性的な悩みをしないいつまでも不平をいったり、してもしかたのない心配にとらわれたり、くよくよと悩んでいてはいけない。そのためにも、そのためにも、後悔をしないようなくらい、全身全霊を傾けて取り組むことが大切である。・天台宗には「忘己利他」という言葉があります。自分のことを忘れて、人さまのために尽くすという仏の教えのことです。「たいへんでしょうが、しかたありません。「災難にあったら、落ち込むのではなくて喜ばなくてはいかんのです。災難によって、いままで魂についていた業が消えていくのです。稲盛さんも人間を肯定します。2013年8月号から表題の特集を読みました。モバイルアプリ開発についていろいろ書かれていました。・アプリのオフライン化webシステムをアプリケーションの代替とする場合があった。webブラウザーから利用するので、osを意識することがなく、モバイルでなくても利用できるが、オフラインでは利用できない。開発するには楽チンなのだが、いつでもどこでもスムーズに利用したいという顧客ニーズが多いらしい。そこで、webに配置していたコンテンツをアプリ側に配置し、データのアップロードやアップデートなど必要なときのみ通信するという事例を紹介していた。モバイルアプリらしくていいと思うよ。しないと単なるwebアプリだもんね。messagingデータ更新をサーバから端末へ通知するしくみ。端末からデータ更新を問い合わせしないので、バッテリー消費を抑えられるというわけ。これ、baasじゃないですか。無償で使えるそうです。chrome向けもある。iOSはどうするんだ?・ワンソースマルチプラットフォーム1つのソースでAndroidとiOSアプリができちゃう開発フレームワーク。PhoneGap昔からありますね。最新バージョンは2.6。WebViewでホームページをラッピング。動作が遅いのが問題になり、結局、ネイティブにしたという話はよくある。いつの間にか日本語ページが充実してました。Mobileこれも昔からありますね。最新バージョンは3.1。昔からandroidに対応するのに固有処理が必要と聞いていたのだけれど、本書にも書いてありましたね。PhoneGapと違い、ネイティブアプリになるので、xcodeがどうしても出来ない人にはいいのかもしれない。Caede有償のフレームワークで、業務アプリに特化しているらしい。他にも調べてみたらACORNというのが出てきた。HTNL5で開発とあり、PhoneGapに近そうな印象。monacaもどんどんバージョンアップしている。service)androidは端末数が多すぎてテストが大変。その解決策として、テストフレームワークが登場。Cloudでは、制御サーバにandroid端末が用意されていて、webブラウザを介してそれらを遠隔操作できる。遠隔操作なので、ハードウェア関係の動作確認や実際の操作感などは分からない。工数が17%減とのこと。androidはつらいね。