2021年4月の投稿

アップデート4

4回目のアップデートリリースです。今回はしんどかったです。精神的にはVer.1.0リリースの時が一番プレッシャーがあり、その後のアップデートもきつかったはずですが、それらの記憶が薄らぐほどなんか今回はきつかったです。今回の内容は、CoreAnimationを使わないTimerを使ったトランジションをサブスレッド化することで、実用上メインスレッドと非同期の描画(厳密には違いますが)をさせることと、コレクションビューを使ったサムネイル画像による一覧表示の追加ですが、プログラミング的には今までで一番濃い内容になった分疲れました。今回のアップデートでいわゆる画像を閲覧するためのローダー・ビュアーと呼ばれるアプリに必要な要素をほぼ一通り備えたものになりました。見た目も機能も”製品”らしいものになってきたと思います。

 思えば十数年前、独学でCocoaAPIを勉強し始めた時、作ろうとしていたのが自分の欲しい機能を備えた画像閲覧アプリでした。今ようやく当時目指していたレベルのものに辿り着いたような気がします。当時はコレクションビューもGrand Central Dispatchもなく、スレッドもビューコントロールも自分でコーディングしていました。そこそこ動くものを組み上げるところまでいってはいたのですが、結局完成に至らず頓挫してしまったのは、CocoaAPIのファイル操作系のAPIがプアで(ちょうどNSImageクラスがCoreGraphicsの代わりにならないように)、ファイル操作をするアプリを作るためにはCarbon Core APIに踏み込む必要があったためでした。ヘッダファイルだけで凄まじい物量のものをプリントアウトして、なんとか読み解こうと努力したのですが、純粋にC言語の世界なことに加え、ほとんど何の情報もないCarbon Coreは、C言語の経験がなくCocoa(Objective-C)からプログラミングの世界に入った初心者には、あの巨大なCのライブラリは荷が重すぎました。同様にC言語のライブラリであるCoreGraphicsも然りで、ファイル操作とグラフィックという画像閲覧アプリにとって要とも言える部分が、大規模なCのライブラリを使わないと実用的なものが作れないというのが、当時のCocoaAPIの実情だったのです。
あれから十年以上の歳月が経ち、今ではそのCarbon Core自体がDeprecated(API配布の終了)になっています。私がこのアプリ制作を決意して再びMacOSのAPIを学び始めた時、一番驚いたのがCarbon CoreがDeprecatedになっていることでした。時の流れを感じずにはいられません。

 さて、残るはアンドゥ・リドゥとFinderとの同期機能が実装できれば、アプリとしての基礎機能はほぼ出来上がりますが、それをVer.1.5としてリリースするか、後回しにしてVer2.0に進めるか、今考えています。

コメントする

※ 匿名希望の場合は空欄で構いません。


コメントを追加する キャンセル

シンクロナイズド睡眠ng

仔猫の頃は、不思議なほど寝相がシンクロしていることがよくありました。

コメントする

※ 匿名希望の場合は空欄で構いません。


コメントを追加する キャンセル

祝!満一歳

ジジとチャチャが4月14日で満一歳を迎えました。何ヶ月も前から節目の一年を迎えるのを指折り数えておきながら忙しくてブログの記事が起こせませんですたが。
賞味期限が切れてしまうので、仔猫の頃からの写真を(次の記事で)まとめてアップします。

コメントする

※ 匿名希望の場合は空欄で構いません。


コメントを追加する キャンセル

▼ 記事の選択 ▼

最近の投稿