React Native 作る時の雑なメモ
新しくReact Nativeのプロジェクトを作る時のメモ
- 前提 : React Nativeインストール済
作る
$ react-native init {プロジェクト名}
- Quick Startの
$ create-react-native-app AwesomeProject
で開くと、Expoアプリで開いてしまうので、あまり自分は使わない。
移動して
$ cd {プロジェクト名}
iOSのシミュレータで動かしてみる
$ react-native run-ios
(参考URL) facebook.github.io
Activitiy transitionの自分なりの雑まとめ
最初に読んだ方が良いもの
- 日本語で良い感じでまとまっていました。
ActivityTransitionのカスタマイズ - Qiita
Enter,Exit,Shared Elements遷移の3つがあって、どう実装するかくらいは掴んでおいた方が良い。
応用編のやつ(RecyclerViewからActivityへの遷移など)
- RecyclerViewからViewPagerへのトランジションの実例。デモやコードが豊富なのが良い。
Android Developers Blog: Continuous Shared Element Transitions: RecyclerView to ViewPager
- 上の実例より、もう少し細かく分けている内容。
shared-element-transitions/app/src/main/java/com/mikescamell/sharedelementtransitions/recycler_view/recycler_view_to_viewpager at master · mikescamell/shared-element-transitions · GitHub
- 今年のdroid kaigiのアプリでもトランジションしてましたね。
[#64] Shared element transition between speakers search and detail sc… by miga9 · Pull Request #522 · DroidKaigi/conference-app-2018 · GitHub
応用は今まさにやっているとこなので、まだ理解できてない。理解できたらちゃんとブログに書く。
プログラミングで大事なことは関数
ぽけ〜っと頭を休めて書きたくなったので、とりとめもなく書く。
僕がプログラミングそのもののことをちゃんと考えたのは、上杉周作さんの geek salonの講演を見たことが一番初めだと思う。話の内容としては、上杉さんがカーネギーメロン大学でプログラミングを教えていた経験から「プログラミング学習」について話す、という内容だった。
本当に残念ながら今はこの動画は無いようで、もう見れないようだ。確か5年前とかに見たのだけど、未だに覚えていることがあって、それは
「プログラミングが出来る・出来ないを分ける一番大事なことは"関数"だ。プログラムの全ては小さな関数の集まりである。」
ということで、当時、この言葉を聞いて「それだーーーーっ!!!!」ってなったことを覚えてる。今までふわふわとしていたプログラミングの知識が繋がった瞬間だったんだと思う。
で、今でも思うのだけども。プログラミングを最初から学ぶと、のっぺりと、この関数のあたりもそっと他の"型"とか"クラス"とかの知識とともに触れていく感じだろうけど、その感じが良くないと思う。もっともっと"全部、関数だ!"って中心に置いてやっても良いのでは?って思う。
でも、そんながっつり初心者の方に教えるような機会もそうそうないので、その時までこの気持ちは取っておこうと思う。
Learning React Native を読んだ (1-1) What Is React Native?
この本のChapter1あたりの自分なりの解釈を箇条書きしていく。
Learning React Native: Building Native Mobile Apps with JavaScript
- 作者: Bonnie Eisenman
- 出版社/メーカー: O'Reilly Media
- 発売日: 2017/10/23
- メディア: Kindle版
- この商品を含むブログを見る
- React Native は iOSとAndroidのネイティブのモバイルアプリケーションを作るためのJavaScriptのフレームワーク。
- Reactが基になっている。Reactはブラウザ向け、React Nativeはモバイルプラットフォーム向け、と捉えて良さそう。
- Reactが基になっているので、JSの知識を持っている人がネイティブのモバイルアプリケーションを書けるというのが一つの魅力。
- 更にいうと、React Nativeで一回書けばAndroid、iOS両アプリのビルドを出来る。
- React Nativeは JavaScriptとXMLを混ぜたような記法 - JSX で書かれる。
- では、React Nativeの内部はどうなっているかというと、React Native "bridge"がそれぞれのネイティブのAPIを叩いて描画している。なので、WebViewではなく、ネイティブのアプリケーションを描画出来る、という仕組み。
- JSからプラットフォームのAPIにアクセスするので、カメラのAPIやGPSなども利用可能。
- 有名どころでいうと、Facebook、Airbnb、Walmart、BaiduといったアプリがReact Nativeで作られている。
と書いてて思ったけど、公式に書いてあることばっかりだな、この辺は。。。
Learning React Native を読んだ (0)
Learning React Native というReact Nativeのオライリー本を読んだ。
Learning React Native: Building Native Mobile Apps with JavaScript
- 作者: Bonnie Eisenman
- 出版社/メーカー: O'Reilly Media
- 発売日: 2017/10/23
- メディア: Kindle版
- この商品を含むブログを見る
総評としては、React Nativeを初めて触る人向けの本としては良かったかな、という感じだった。ただ、React Native自体が物凄いスピードでアップデートされてるので、本の内容が既に古いところもチラホラとあった。(2週間に一度バージョンが上がっている。)
2ヶ月くらいかけてちびちびと読んだのだけども、折角読んだのに、前半の方とか忘れてきてて、勿体無い。なので、もう一度最初の方からおさらいしつつ、ブログに書いていこうと思う。
生きることはリスク
結局、全ては
結局、全てのことは「リスクを取るか、そうしないか」じゃん? と思ったので書く。
僕はそろそろ社会人5年目になるIT系のエンジニアだ。思えば、高専の2年頃からC言語を習っていたので、歴で言うと、10年くらいになるかもしれない。その時からエラー文が出るたびに発狂しそうになっていて、周りには僕よりスイスイとプログラミングをやってのける猛者たちがいて「あぁ自分にはプログラミングのセンスは無いし、向いてないのだろう」と自覚していた。
なのに、今こうして渋谷のITのおっきい会社でエンジニアをやっているのはなぜだ?と言うことが実は自分でもうまく落とし所が見つからなかったのだけど、結局のところ、__「あぁ、僕は究極的にリスクを取りたくなかっただけだったんだなぁ」というところに落ち着いた。
例えば、高専を卒業して名の知れたメーカーに行くことも出来たのだろうけど、それだと、スキルがその会社に依存してしまって他に出れなくなったら終わりやんと思っていた。そしてそもそも日本の会社でしか通用しない技術って日本全体がオワコンになってしまったら(高専の時に考えていた妄想なのでバカにしないでください)、終わりやん、それリスクやんとかも考えていた。
じゃあ、どういうスキルだったらロックされないで自由に生きれるの?って考えた時に、「インターネットさえあればどこでもやっていけて、差別化も図れるスキル = プログラミング」っていうところに導かれたのかなって思う。
リスク・リスク・リスク
しかし、社会人としてエンジニアをやっていて、優秀なエンジニアの方々を見ていて一つ残念なことに気づいてしまった。『そもそもプログラミング自体も流行り廃りが激しい世界だから、常に学んで変化に対応していくことでしかリスクを軽減出来ないやん!!』ってことだ。なんか、それに気づいてしまった結果、リスクを0に出来ないかとか考えている自分がちょっと恥ずかしくなった。
これはあくまで僕の一例だけど、多分なにやったってリスクはつきまとうんだと思う。量に差はあれども。だから、怖がってないで、受け入れて、楽しむか、楽しまないかでしかないんだと思う。僕は最近、それを楽しむことにした。
手づかみじゃがいもツナおやき
今日は手づかみじゃがいもツナおやきを作りました。
レンジでチンしておけば具材に火が通っているか心配しないで済むというのが、良かったな。
我が子、もうすぐで1歳になるけど、すくすく育っていて本当に何より。