PICxPIC, Incより2020年度分の寄付としてジャパンハートへ75万円を寄付しました。
PICxPIC, Incは子どもたちのために活動している団体を応援しております。
PICxPIC, Incより2020年度分の寄付としてジャパンハートへ75万円を寄付しました。
PICxPIC, Incは子どもたちのために活動している団体を応援しております。
Obbhjective-C + XIBとの気になった違い。
・クラスをimportする必要がない。まじか。
・AppDelegeteはそのままだと何もせず、そのままinfo.plistで指定されたStoryBoardを見に行く。どこからViewControllerが呼ばれたか謎チックだが、info.plistで指定されたStoryBoard→initial View Controllerのチェックが入っているViewController、という流れで呼ばれる。
・画面遷移は、
1、StoryBoardのsegueでボタンから直接飛び先へリンク
2、StoryBoardのページとページをリンクして、リンク線のidentiferに固有のID(名前)をつけてperformSegueでページ移動を処理する
3、最初っからコードで全部書く
とかいろいろある。
・画面遷移の戻るのは、戻り先のControllerにunwind関数を書いて、StoryBoardでExitにボタンをリンクして関数を選択すればOK。
・unwindのsegueリンク線のidentiferに固有のID(名前)をつければ帰る時になにか分岐や処理させることができる
ARCは、まぁ循環参照してない限りは普通のことをやってる分には特に意識しなくていいっぽい。
意味不明に効果音とかでタッチする度に謎にインスタンス生成したりしない限りは大丈夫でしょう。わかんね〜からとりあえずLeaksでInstruments起動して確かめればよいと思われる。多分。
・変数は型を明示せずかつ初期値を入れていないとエラーになる(下記、オプショナル型での宣言を除く )。型を明示していれば初期値はなくてもエラーにならない。なお、初期値を入れることが推奨されている。
https://swift.tecc0.com/?p=325
nilを変数に入れるためには型名の後に?をつけてオプショナル型にする。ほんで使うときはnil以外が入ってる状態で変数名の後に!をつけて使う。
https://qiita.com/maiki055/items/b24378a3707bd35a31a8
オプショナル型を使うときはアンラップせよ。
https://qiita.com/Saayaman/items/1e2a87b9e61e419eaa73
なんだかよく分からないけれど、UIViewControllerを継承したVIewControllerとかでinit()みたいなこと書くとエラーが出る。調べたけどなんだかよくわからんコード追加すればできたけどこれでいいのか・・・。
class ViewController: UIViewController {
var text: String = ""
var value: Int = 0
// 任意の引数を取る自作のイニシャライザ
init(text: String, value: Int) {
// 受け取った引数でプロパティを初期化
self.text = text
self.value = value
// クラスの持つ指定イニシャライザを呼び出す
super.init(nibName: nil, bundle: nil)
}
// 新しく init を定義した場合に必須
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
以下略
名前だけで中身のないメソッドが用意されてるクラスみたいなので、「このプロトコルに批准したらちゃんと約束のメソッドを用意してね」ってやつ。
@objc optical がついてるメソッドは用意してもしなくてもOK。
プロトコルを作ることは、まず、ない。使い方を覚えればOK。
変数に型としてプロトコルを指定することもできる。そうすると、そのプロトコルに批准してるクラスのインスタンスしか入れられない。
var country:KyotoProtocol = Japan()
自分で作った型。
インスタンス作らなくてもわかるような外側のことをする、クラスのメソッド。
わかるけどわからん。とりあえず他のクラスの能力を使えるようになるってことでいいんじゃね。
クラスにメソッドやらプロパティやらを追加できる。本質的なメリットがよくわからんけれど、デリゲートメソッドを別で書いたりして中身が分けれてキレイになるのは間違いない。
ここまでのことは全「絶対に挫折しないiPhoneアプリ超入門」に書いてある。分かりやすい本だ。
Swiftでは、他のファイル(test.swiftとか)に書いたメソッドを、importとか何にもせずにそのまま使うことが出来るっぽい。簡単に種類の違うメソッドを外部ファイル化できるってことやね。たぶんね。
PICxPIC, Incより2019年度分の寄付として以下の2団体へ計100万円を寄付しました。
・国境なき医師団
・ジャパンハート
PICxPIC, Incは子どもたちのために活動している団体を応援しております。
ここしばらくiPhoneアプリの制作からも離れて静観していたのですが、特にすることもなくなり暇になってきたので、やろうやろうと思って保留していたUnityとARについて勉強しようと思います。
とりあえずUnityとARをまとめて勉強できると思い、「ARKitとUnityではじめるARアプリ開発」という本を購入。
UnityもARもまったく分からないけれど、本を読みながら適当にサンプルを動かしてみた。
マジで本に言われたとおりにサンプルを動かしただけなんだけれど、何かを成し遂げた錯覚を覚える不思議。
このまま本を進めていこうと思ったんだけれど、ARkitどうこうの前にUnityのカメラとかの基本的な使い方がさっぱりわからず、そちらから手をつけないといかんなと思い、まずUnityの教科書から読むことにした。
まぁ使い方を覚えるだけなので1日くらいでサラッとやるつもりです。
とはいえ私はUnityを身に付けたいわけではなく、あくまでもARの技術を身に付けたいわけです。
しかし、2019年現在、AR開発のプラットフォームはARkitだったりARCoreだったり、Unity使ったり使わなかったり、知らんけどいろいろ選ぶのが大変そうです。
とりあえずUnityを経由させておけばどうなってもまぁなんとかなるだろう、という安直な考えで今回はUnity経由でやろうとしているわけです。
Objective-C+XIBしかやらずに平成の終わりまで過ごしてしまったので、UnityもC#もSwiftもさっぱりわかりませんがとにかくちょっとずつがんばろうと思います。
スティーブ・ジョブズによってiPhoneが発表されてからもう10年以上が経つ。
最初のiPhoneにはAppleが開発したアプリしかインストールできず、AppStoreという概念はなかった。
それからすぐにAppStoreがリリースされ、誰でも開発者登録をすれば世界中のiPhoneユーザーに自分の作ったアプリを使ってもらえるようになった。
私がアプリを作り出したのはAppStoreがリリースされてからおよそ2年後の2010年の秋ごろだった。
そこまで早く参入したわけでもなかったのだけれど、当時は今より圧倒的に情報が少なく、かつ開発手順も複雑だったので、「iPhoneアプリを作っている」という人はプログラマーの中でもかなり稀だった。
その黎明期にiPhoneアプリ開発というものに参加できたのは本当に運がよかったと思うし、そういった場をくれたAppleには感謝しかない。
あれから時間が経ち、リリースしたアプリが20本を超えたが、今はほとんど新規アプリをリリースしていない。
ここでちょっとiPhoneアプリのあれこれを振り返ってみようと思う。