かなり雨が強まってきた
Kotlin
Nullableな変数で、Non-nullを要求する関数の引数にするときに hoge!! とか書くの、ごり押ししてる感じがあって好き。
まぁ、事前にnullチェックしておかないとIllegalArgumentExceptionで落ちる可能性あるんだけど。
Kotlinでのリスナーの書き方
よくよく考えたら、これラムダ式なんだな。
定番のoverride関数を使う場合はラムダ式で省略できるわけだ。
override関数が複数あったりとかやや複雑なことをする場合、ラムダ式では解決できないので、そういう場合にobject: 〜 みたいな書き方をするようだ。
謎は深いが少し分かってきた
Kotlin
override fun()な関数で、うっかり?を付け忘れてNullableにしなかった場合、ビルドは通るのにいざ動かした時nullが渡される時に謎のIllegalArgumentExceptionに悩まされる。
しかもAndroid StudioはUnknown Sourceとか出して場所がどこか教えてくれないので原因箇所を特定するのが大変すぎる。
でもまぁ、そこそこ動いては見える。
Kotlinにしたから、以前よりはヌルポで落ちにくくなったのではないか。知らんけど。
1ファイルKotlin化したら、つられて結局ほぼ全ファイルKotlin化せざるを得なくなり死にかけたが、何とかビルドが通り、起動するようにはなった。
やっぱりポコポコ落ちまくるけど順次バグ退治はしてゆく。
KotlinとJavaの相互の変数参照が簡単ではないので、どこかをKotlinに変換すると、他のいくつかもまた変えねばならぬ。
それを変えるとまた他も変えねばならず、結局全部変えなダメなんちゃうか的な問題
Kotlinのcompanion object {} で囲った値、特にcompanion object hoge{} みたいに名前付けなくても、クラス.Companion.変数 という方法で取得できるようだ。
KotlinからJavaの値を得る場合は簡単だったけど、KotlinからKotlinの値を得るには、遠くから参照される変数はcompanion object{}で囲ってあげることが前提となるようだ。
このアカウントは、notestockで公開設定になっていません。
return whenにしたいけど、あるところで複数行の処理がどうしても必要で1行で収まらないのをどうにかしないとreturn whenできないぞ…と思って色々工夫、
無名関数は上手く行かなかったけど、このたびラムダ式でなんとか解決を見た。
Javaで書いてる時はJava8じゃないと使えないと蹴られてたけどKotlinだと普通に使えて宜しい。
引数が必須のようなのでそこは工夫して何とかして上手く行ったようだ。善哉
Kotlin
whenの中で分岐してreturn hogeと書くより、return when… と書いて各分岐で値を用意する方がKotlinらしいと思い始めている。
@pakutoma なるほど、return@run という方法ですか。
そのうち試してみたいと思います。
もしかすると、when全体を run hoge@ {} で囲ってあげて、return@hoge としたら上手く抜けられるのではなかろうか。試してないけど
@pakutoma 無理でしたか。
まだKotlinに自動変換したもののビルドが通っていないので動作確認できていないのですが、ビルドが通るようになったら色々試してみたいと思っています。
Kotlin
switch文に相当するwhenで途中breakする手段がなさそう。
なんかいい方法はないのかな。
KotlinからJavaの変数へのアクセスはほんと謎が多い
完全にKotlin化するまでは謎に満ちあふれそうだ。
完全にKotlin化したら意味不明になりそうだが。
昨晩までAndroid StudioのKotlinで意味不明な動きしてたのがあらかた直ってて、なんか自然にプログラミングできるようになってる気がする。
Android Studioのバグだったのか。
[楽天 「DMM.com」の格安スマホ事業などを買収]
楽天は、インターネットサービスの「DMM.com」から、格安スマホ事業を買収することになりました。大手各社の値下げの動きが進む中で、格安スマホでは再編の動きが相次いでいます。
http://www3.nhk.or.jp/news/html/20190709/k10011987521000.html
iOSも今度出るiOS13からFeliCaが読み取れるようになるので、いろいろカードビューアーが出るのではないか
高性能なのはすぐには出てこないと思うけどさ
FeliCa、別会社に分離して、もっと本格的にやって欲しいよ。
今はあんまりやる気を感じない。あと現状だとコストダウンも難しいだろうし。
漫画村の運営者、遂に逮捕か。星野ロミっていうのか。
本来払うべき対価を、払わないのが当たり前みたいなバカを大量発生させた元凶の一つだよなー。
罪は非常に重い。厳罰に処して欲しい。
[京都 祇園 花見小路通の料亭から出火 消火続く]
京都の繁華街 祇園で8日午後9時すぎ、木造2階建ての料亭から出火し、現在も燃え続けています。消防によりますと、これまでのところけが人の情報はないということです。
http://www3.nhk.or.jp/news/html/20190708/k10011986961000.html
【緊急地震速報 第3報 2019年7月8日】
22時54分頃、神奈川県西部を震源とする地震がありました。地震の規模はM4.3程度、最大震度3程度と推定されています。この情報は気象庁の予報に基づく推定です。情報は誤差を含む場合があります。
#緊急地震速報
ちなみに日本郵便もかなり酷い
猫は携帯電話に電話すれば戻ってきてくれるけど、日本郵便はとっとと逃げて行く
不在票に書かれている電話番号は配達員の携帯電話ではない
デリバリープロバイダがあんまりだったからか? >> アマゾンが「置き配」開始 | 共同通信
https://this.kiji.is/520888427673814113
昨今の電子マネー事情とか体感したいので本業の傍らコンビニバイトでもしてみようかと思ってみたりみなかったりするが、やっぱコンビニはヤバい世界 情報収集もかなり覚悟がいる
このアカウントは、notestockで公開設定になっていません。
このアカウントは、notestockで公開設定になっていません。
7payの惨状はいい反面教師だよなー
開発費、つまり人件費ケチるとああなるぞと。
うちのお値段が高い?ならどうぞどうぞ、ブラック企業にでも中韓にでも頼んで下さい。7payの二の舞にならんよう祈っておきますわ(にっこり)
Android 4.4ユーザーもまだ僅かだが現存するけど、さすがにサポートは切る時期
5.0でも既に古い
Kotlin使ってても、気の利いた言語機能を使おうとすると、それJava8の機能やでそんなん使われへんわ的エラーで使えないことが稀によくあるので、なかなかつらい
あと検索タイムラインをどう実装するか、だ。
Tootdonはトゥートを自前鯖でパクって実装していたのでトラブルになった。
丼初期のアプリだから当時としてはそれ以外の選択肢はなかったろうし仕方はない。
今なら、どっかのインスタンスで連合タイムラインをひたすら保存して、それを検索する機能を載せられれば、同等以上の機能はできると思うのだが
Tootdonの代わり作りたいけど、何を収入源にするかが課題ではあるな。有料アプリだと厳しいだろうし。
音声読み上げとかどっかにオープンソースであるのか知らんけど、あれば似たような機能は作れるだろうし、ここでいろんなボイスライブラリーを別売にして収入源にするとかありえそう。
このアカウントは、notestockで公開設定になっていません。
このアカウントは、notestockで公開設定になっていません。
有能な人材を高く買うという発想
と書いて、ああそうか、セブンイレブンはそういう発想が微塵もない会社なんだろうなーと気づいたよ。
有能なフランチャイズがいたからここまで成長できたのだろうが、その有能を奴隷のように使ってきたツケが一気に来たな。
気づいたら倒産して元セブン店舗は中小コンビニチェーンに分散してたりしそう。
プログラマー(PG)とシステムエンジニア(SE)は異なる職種だ。
SEもプログラムは書くが、例えばテスト仕様書を書いてテストを進めたりできて初めてSEなのだ。
仕様書通りにプログラム書けるだけの奴安く集めたってろくなものはできぬい。
ソフトウェア開発
どこに任せたって対して変わらないだとか、
安ければ安いほどいいだとか、
中国韓国はこのくらいでできるんからお宅もこのくらいで作れだとか、
寝言言ってきた連中は7payの惨状を見て少しは反省してくんねーかなっと。