2014年6月21日土曜日

Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld Systems (5th Virtual office hours)

==== W4A3 ====
インストラクターの好みでは、finalを結構使っている。
runでtry/finally{countDown}を使っている。TODOの外に追加している??
定数もどこかで定義した方が良いとは言っているが、TODOの外になる??
性能の関係でnon-fairで良い。falseにするのではなくて引数省略(overload??)。
mLatch.await()ではtryしていない。

==== W5A4 ====
PingPongCondとSema両方使っている。
Condは複数回連続でpingやpongを表示できるように拡張されている。
consoleとandroidで違はほとんどない。基本はprint()だけ。
doneについても実装は変えられる。
単にmLatchをcountdownだけでも良いが、講師はrunnableをUIに送ってそこでcoundownさせたとか。
そうするとすべてが完了してからcountdown出来るかと言っていた。
ping/pong threadから表示のrunnableを送っているので、その処理が終わってからcountdownさせると言う意味だと思う。
みんなそんなして来ないような気がするけど。。。

==== Etc. ====
前の週のAssingmentを使うのは現実の再利用の練習も兼ねている。
正しく動かせるようになるのが先。性能はその後の改善と考えている。
正式なバージョンのAssignmentをダウンロードして使うべき。
CourseのHPのリンクが正式版。
これも結局GitHubの最新版を指しているだけで、しかもAssignmentの実施期間中にも更新されている様子。。。

途中にサッカーのワールドカップの話などジョーク的な話も混ざっていた。
このVOHはMOOCでもinteractiveな要素を取り入れると言う先進的な取り組みらしい。
確かに自分が思っているのと同じような疑問に講師が答えてくれるのは面白い。
ただ、これだけ人数がいると何時やっても質問は出尽くすような気がするので、何処かでおこなったビデオを後で見ても自分も疑問に答えてくれている様に感じると思う。
なのでリアルタイム性はあまり重要ではないのかもしれない。

0 件のコメント:

コメントを投稿