だいぶ前から色々と書こうと思ってたことを書かずに終わってたので,一気に書き込むことにしました.秋になったので紅葉を友人と見に行ったりとか,居住地域の周辺に色々と商業施設が出来たなどの報告.
1.商業施設
1.1.AEON MALL KUSATSU Open
滋賀県草津市に新たにオープンしました.割と大きいショッピングモールでイオンによく入っているカルディコーヒーが私の中のほとんどの目的なので,その他はそれほどいいショップが入っている訳でもなく,駅や自宅からの距離の割には少し物足りない.若い女性向きのショップが多いので,野郎には退屈なようで.あとは草津から消失していた映画館が出現.でも,遠いので,京都まで行った方が楽な気がする.大きさの割に面白くなーい.というのが感想.
大きな地図で見る
1.2.FOLEO OTSU
滋賀県大津市の外れにできた大型のショッピングモール.東海道新幹線のすぐ横に位置するため,子供がはしゃぐ.そんな場所があるらしい.実際にこのショッピングモールには行ったことが無いのでレビューができない.
1.3.A-SQUARE
草津駅前に位置する大型のショッピングセンター.ホームセンターも同敷地内に位置するのでかなりの規模になる.ココは上記の2つより前から存在していたが,今秋に一部リニューアルした.住居からも近く,実用的な店舗が入っているので実際に利用する機会が多い.多く利用するショップとして,Appleの専門店kitcutがある.このショップは大津から移転してきており,その折に前ショップは閉店している.次に滋賀県初のマツモトキヨシが開店した.幼少の頃から馴染み親しんできたストアなのでなぜか懐かしさを感じてしまう.発は松戸.隣街だが,近隣なので良し.
いつもと違う環境で短期間の作業をすると,考え方や習慣を変えてみようと思ったりします.
インターンシップでの活動を終えてから2週間が経ち,自分が得た経験をもとに今後、すぐに活かせる仕事術や生活習慣を見直そうと思いました.そんな中で,最近ナイス30sの皆さんが活用しているという「ダンドリル」というものが人気らしいです.仕事や作業を効率よくするには「ゴール設定」「計画」「実行,進捗管理」「評価,仕組み化」が大事な要素のようです.ゴールが見えずに走っている自分はこわい状態です.そんな自分の作業効率を変えるため,今週から一日単位のゴール設定,実行と進捗管理から始めることにしました.インターンシップで重要だと感じ取ったことを思い出しながら,実行することで今後の活動への取り組みをより良くしようというこの考えかたをするようになっただけでも,今回のインターンシップは良い経験になりました.このように,思っていることや実行しようとしていることを記述するだけでも結構違ってきます.目に見えて確認できるので意識することが出来ます.習慣化させることっていうのは重要なんですね.
これまでに改善したこと
•一日単位での作業計画,進捗管理,評価
•仕事術の学習
•とその適応
これから改善すること
•一週間単位での作業計画
•長期間での作業計画(長期でのゴール設定ができてから)
•グループでのゴール設定、計画、実行と進捗管理、評価と仕組み化の適応
これらのベースを組み立てつつ,新しい活動を加えていきたいと思います.
•iPhone開発(アプリケーション考案)
•健康管理(早朝運動 秋季再開)
•読書(小説:リラックス用)読む物が見つかったのでw
継続させるための環境作りは大変なんですね.
未だに解除されないiPhoneのNDA.これによりおおっぴらなiPhoneのセミナーやブログでの書き込みが少ない状態.そのような限られた環境の中,アイディアを出しておもしろいアプリケーションは作れない物かと試行錯誤していると,iPhoneをメインとするモノではなく,iPhoneはあくまでコントローラとして使えないかという考えが出てきます.ココで,注目すべきはマルチタッチという技術.一つの画面に置いて複数の指の接触を感知できるApple Inc.が売りにしている技術の一つです.この機能を持ったデバイスを持ったPCは一般的には流通していないでしょう.しかし,ネットワークでPCと通信できるiPhoneではこのマルチタッチのユーザイベントをPCのマウスイベントとして流用できるのではないかと考えました.これを考えたのは7月の半ば頃でした.
しかし,世界というものは広く,様々な人やスゴい人物だって色々いる訳です.時同じくして同じアイディアのフレームワークが存在することに気づき,ショックと世の中の広さを実感しました.まぁ,Wiiっぽく使えたらなぁ.と思っていたので,あるとは思いましたが,これほどまでにしっかりしたものが作られるとは.と思っちゃいました.
•MultiTouch.Framework
どうやら,ドイツの大学のグループが開発しているようで.こんなにキチンとしたところで作られると,サービスのアイディアで勝負るしかないな.と思ったりしました.
ついにSDKもfinalを迎え,iPhoneも発売されました.安定収入が無い学生の私には,月額は支払いきれないので,個人的な購入は断念という形になるでしょう.もし,タッチのみの利用を考えるのならiPod touchで我慢するしか無いですね.iPhoneを買った方でiPod touchを所持している方にはぜひとも安価で譲ってほしい物です.
さて,HelloWorldプログラムを作成し,iPhoneアプリの構造を勉強し,開発の「いろは」の「い」を完了しました.この「い」はまず,知っておくべきObjective-CとInterfaceBuilderとの関係、MVCモデル開発を知ることです.Mはモデル,Vはビュー,Cはコントローラを表します.
•モデルとは,ソースコードなどの実装部分を指します.ココでは実際の計算や処理手順などを書き込む部分です.
•ビューは,ユーザが目に見えるインターフェースの部分を指します.InterfaceBuilderを使い,GUIの設計を行ないます.
•コントローラは,上記2つのモデル,ビューを結びつける役割を果たします.
モデルとビューの入出力をそれぞれ関連づける作業をCocoaAPIのBind,「CocoaBinding」と呼びます.CocoaBindingについては他にも多くの記事が存在しますので,そちらを検索,参照してください.
CocoaBindingを理解した上で,タッチパネルに表示されたボタンをタッチすることで画面上にHelloWorldを表示するプログラムを作成しました.
1.Xcodeの新規プロジェクト内のView-Based Applicationから始めます
2.~VewController.hに以下を入力します
@interface testViewController : UIViewController {
IBOutlet UILabel *helloworldLabel;
}
- (IBAction)acceptButton;
@property (nonatomic, retain) UILabel *outputLabel;
@end
3.InterfaceBuilderで~ViewController.xibを編集します
4.ViewにUILabelをはりつけ,File's Owner のoutletから2で記述したhelloworldLabelとUILabelを関連づけます
5.4と同様にUIButtonをViewにはりつけ,UIButtonのEventとFile's Owner のactionから2で記述したacceptButtonと関連付けをします
6.Xcodeに戻り,~ViewController.mに以下を入力します.
@implementation testViewController
@synthesize outputLabel;
- (IBAction)acceptButton {
[outputLabel setText:@"helloworld"];
}
@end
以上をコンパイル,実行することでシミュレータ上で動作する簡単なHelloworldプログラムが完成する訳です.
次はタッチした位置の座標を表示するプログラムのまとめをしようと思います.
リファレンスをいくつか読み始めて,求めていた内容と読んでいたリファレンスの内容が違うのでいくつか,読む順番を変えつつ,実装も視野に入れた進め方をしています.現段階ではベータ5が出てから,いくつかのAPIが変わったのを確認しているので,既にある日本語のリファレンスレビューを参考にした上で,本家リファレンスを読み進めていく事にしました.とりあえず,備忘録程度にまとめて更新していけたらと思います.
これまでに内容が読み取れたリファレンス類
• Core Location
:基本的にデバイスの位置情報を取得するメソッド,プロパティが用意されていますが,プロパティに標高、高度などを格納するものがあったため,このCLLocationクラスはGPSセンサを利用するためのクラスではないかと思います.今のところwifiの電波強度で取得できる位置情報は主に水平位置しか取得できないと聞いています.altitudeの解釈が間違ってなければ,高度を利用するセンサはGPSがメジャーなので,iPhone2.0はGPS搭載は確実ではないかと.実装想定にGPSの利用は考えていないので,このクラスを調べるのはこれで終了.
•UIKit Function Reference
:このリファレンスに関してはイメージ変換や画面,画像サイズの取得を主に取り扱っているようです.後々にUIの設計や自動生成で利用する機会はあると思いますが,今回は優先順位を下げて読み飛ばしをする事にします.
•UIAcelerometer Class Reference
:iPhone及び,iPod touchに搭載されている加速度センサを利用するクラスであるようです.直接,このクラスオブジェクトは作成できませんが,インターバルを設定することは出来るようです.イベントが発生するたびに作成されたアプリケーションのメインスレッドに通知されるそうです.このリファレンスは,今後利用すると思うので,このまま読み進める対象としていきます.
前回,記述したリファレンス類
• System
• System Configuration
• Foundation
• CFNetwork
以上のリファレンスは膨大な量なので,とりあえず後回し.
とりあえず,UIKitとネットワーク関係をこのまま読み進めようと思います.
その他の中心的な部分は必要時に探していくという形をとっていきます.
これまで読んできたけど,自分の英語に自信が持てた部分と,単語力が足らない自分を見つけました.
少し前に,話題になった100ドルPCことOLPC XO. OLPCとは,もともと世界の子供達にPCを与え,革命的な教育をしようという壮大なプロジェクトで100ドルコストのラップトップを研究、開発を行なう非営利団体です.One Laptop Per Childの頭文字をとってOLPCですね.今回,開発中であるXO-2.0はiPhoneのようにキーボードをなくし,タッチパネルによって入力を行なうそうです.しかも,ディスプレイはダブルのタッチディスプレイを搭載予定.消費電力は現行モデルで2~4Wであるが,新モデルの目標数値は1Wにするそうだ.コストも100ドルから75ドルを目標にしているそうです.100ドルでさえ,べらぼうな低価格なのに75ドルは驚きです.提供は2010になるそうですが,残念な事に一般リリースは今回も無いようです.現行モデルの期間限定で一般リリースがあったそうですが,2.0もありませんかね.
一般的な意見から,キーボードのディスプレイ化はキーボードを叩いたときの感触が伝わらないので,普及しないんじゃないかということが多いんですけど,個人的にはとてもスマートにソフトウェアを扱えますし,ソフトウェアに最適なUIを配置できる事が大きなメリットじゃないかと思うので,感触云々は「慣れ」で何とかなるんじゃないですかね.問題点は確かに感触から伝わらなければ,どこを押しているかわかりづらいところですかね.iPod touchのUIは画面が小さいので,押されたキーボードを大きく表示する事によってユーザの目に入るようになってますが,デュアルタッチディスプレイにすると,ディスプレイが大きくなり,確認が難しくなりますね.ただ,使った訳ではないので,押した感覚の認識っているものなのかっていう疑問があります.確かにホームポジションを知るには必要ですが,うーん.どうなんでしょうね.こればかりは使ってみないとわからないでしょう.UIなんてそんなもんです.使ってみないとわからないんですよ.
現在,iPhone SDK のHello World を書きながらUIKitの勉強を行なっています.今後,iPhoneもとい,日本ではiPod touchを利用したものを開発するための勉強備忘録というかメモをここに書き残していこうかなと.
さて,2月ぐらいからiPhoneSDKの開発でいろんなブログでは様々なレビューがなされていますが、HMDTの木下さんが書かれているMPDTではHelloWorldをベースに詳しくメソッドの説明がされているので,Objective-Cがすんなり読める方はこちらを参考にされると理解しやすいのではないでしょうか.基本的なUIKitを利用したアプリは既にレビューされている文章を参考に勉強していき,専門的な部分のフレームワークはADCのDev Center にあるReference Library (英文)を読んで利用していきます.
基本的にNetwork関連を進めていくので,主に取り上げる物としては
• CFNetwork
• Core Location
と中心となりうるSystemの部分の
• System
• System Configuration
• Foundation
の部分を読んでいく事になると思います.
ここ最近は英語を使う生活からだいぶ離れていたので,英単語がわからなくなっている状態です.本格的にEnglish Reference を読む事になるので,今後は基本的なところから勉強し直す事になるでしょう.そんなこんなで,すこしサボっていたiKnowを再開しています.
Macworld Expo@サンフランシスコ開催中ですね.現地時間において火曜日の午後にapple.comでスティーブジョブスのkeynoteが公開されます.現地に行けない悔しさと後少しで公開という状況でワクワクしない訳ありません.
噂によると小型MacBookが出るとか,MacBookTouchがでるとかそんなことがささやかれています.今のLeopardのGUIだと,タッチ操作をメインにしたものは出る事はなさそう.タッチ操作をメインにするにはiPhoneのような感じにしなければ,操作は逆に難しくなるのでは?とりあえず,次のOSのための伏線としたハードが出るのかも.まさか,NintendoDSのようなツーディスプレイ型!?んで片方がタッチ式?
薄型MacBookの線は濃厚そうだ.名称の方はMacBookAirとかいう意見が多い.さぁ,あとすこしで全ての謎が解ける.