Kotlin 6
■ このスレッドは過去ログ倉庫に格納されています
JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう ※前スレ Kotlin 5 https://mevius.5ch.net/test/read.cgi/tech/1544268581/ >>165 LinkedHashSetかTreeSetにように順序付けがあるならいいけど 単にSetとして考えるなら順序不定だから2つのSetの関連付けが出来ない 仕様の前提から考え直したほうが良い 一応順序があるなら m = setK.zip(setV).associate{it} で出来る 今コード書いていて疑問に思ったんだけど、String#sliceとString#substringって何が違うの? あー。しかしちょっと違うね。CharSequence と String の違いか。 String#slice -> String もあるよ 挙動に差があるようだけど実用上意味があるかは微妙だな https://ideone.com/lIfuV9 fun ck(nm:String, f:()->String){ try { println("${nm} = ${f()}") } catch(t:Throwable){ println("${nm} throw ${t}") } } fun ck(r:IntRange){ ck("su(${r})"){ "0123456789".substring(r) } ck("sl(${r})"){ "0123456789".slice(r) } } ck(1..3) ck(3..1) ck(-2..-4) ck(1..-1) ck(-1..1) ck(8..12) ck(-4..-2) この並存状態と微妙な差はJavaScriptの現状に倣ったんじゃないかな いずれにしてもそれぞれの意図が明確にドキュメント化されていないみたいなので実装の差を活用する気にはなれないけど >>172 どうでもいいけどすごく読みにくいコードを書きそうな人だね コードが読みにくいというか命名が15年前のセンスだと思う >>176 書き捨てなのと5chの制限回避で文字数・行数圧縮してるんすよ・・・ 2文字以下で現代的(?)なのがあるならすまん >>172 ちょっとわかった。ありがとう。 >>173 なんとなくそうかなと思っていたけど、やっぱりJavaScriptとの互換性のためにsliceを導入したのかな。 >>177 中高生... こういうところもKotlinがとっつきにくいと言われる一因だよな まあ実際には知らなくても困ることはあまりないんだけど firebase firestoreを使っていて月額固定のflameプランを契約しているんですが、 一日の上限の読み取り回数である25万回を超えても普通に使えてるんですが何なんですかね サポートに聞いてみたら? 勝手に追加課金されることはないだろうけど、確かめるに越したこたはない てか読み取り回数すぐ増え過ぎじゃないですか realtimedatabaseより遥かに高い これからはfirestoreに移行するもんだと思って使ってみてるのに クエリー使わないならrealtimedatabase使ったほうがいいし googleの新しいカモ要員っしょ 開発力あるなら柔軟性のあるGAEとかを直接叩くほうがいいと思う オフライン機能ついたデータ同期する場合はfirestore楽なんだけど。 それを自前で実装?ご冗談を たぶんfirebaseで何ができるのか良く分かってない人なんだよ これもしかして25万回超えなかった日の分が 超えた日の分に補填されてるんですかね アプリの更新がなかなかすぐにアップされなくなったり 初心者向けの本を買ったんだが、この方が簡単ですとか言いながらガラケー時代の画面を作らせるとんでもない本をつかまされた… >>195 ぐぐると出てくる >>196 ガラケー?今さら実行可能な環境がないように思うが。 Androidだけどガラホで画面が狭いだけではなく? >>197 FF作れないと怒る初心者の方はいまだにいますよ あーそれ系か。 昔(2000年頃)、DirextXで3Dシューティングを作るための勉強本が出たんだけど、 物凄く丁寧で最初は数学の復習が書いてあった。 (高校数学の法線ベクトルの考えたかとか) で、読んでも意味がわからん勉強ができない俺を馬鹿にしてるのか金返せと 本屋に怒鳴り込んできた20代の子が居たんだよ。 だからかは知らないが、本に載ってるゲームは結構簡単なレベルのものが多くなったなあ。 >>200 尼でもコメントに理解出来ないって書いて評価下げる香具師が多いな まあ、著者や編集者の力不足で教えるの下手くそな本はあるにはあるよ 名プログラマーであるからといって、そのシステムの開発者であるからといって、他人(初学者)に教える文章を書くのがうまいとは限らない ただ、思ったようなアプリの作り方が載ってないってのはあんまり作者の責任ではないな 造り方が既にそこら中に転がってて後追いで造っても面白くないやろ 創り方は自分で考えろ 後追いいいじゃないか 先人が1ヶ月悩んだ結果を15分で乗り越えて経験積めるんだぞ 残り29日23時間45分はそれをもとにしたさらに別なことに使えるんだ 梃子の効果すごいだろ(間違い) 今からプログラミングを学ぶとしたらjavaよりkotlinのほうがいいよね? 内部DSLで無茶するよりコード生成の方が最終的には小回り効いて好きだな >>219 DSLは汎用ライブラリのために丁寧に設計する時用かな。 スキルによるだろうけどDSLのライブラリを使いたいとは思うけど、作りたいとは思わななかった。 もうAndroid Javaの仕事はないぞ Kotlinがわからないやつに仕事はないぞ Kotlinでマウントするのはさすがに無理筋 こんなもんJavaわかれば誰にでもできる JavaができるならいずれはKotlinもできるようになるだろうがすぐにではない。 すぐにできたとしても最初の内は Kotlin らしくない Kotlin の良さを生かし切れていない「セミコロンなし Java」みたいな、何年後かに自分で読み直すと修正したくてしたくてたまらなくなるようなプログラムになるであろう。 実は俺、N88BASIC(86)も使えるんだ(キリッ アセンブラは価値があるかもだな。 どちらかというと何を作れるか、 もっと言うなら何を作ったことがあるかが大事かと。 Kotlinって結局のところJVM言語のひとつなんじゃない javaはkotlinに変換できるのに kotlinはjavaに変換できないのか? >>231 できると思うよ。 kotlin→jvmコード→逆コンパイル 逆コンパイルしたやつってかなり非効率なコードしてそう あ、すまん、回答ありがと 実際にjavaにしたいわけじゃない 将来的にkotlinだけの巨大なスパゲッティを見たときに正しく読めるかな?と不安になってね Kotlin使ってもなおスパゲッティになるようならJavaに変換したらもっと凄いスパゲッティになるのではないか? Javaで書くと冗長な感じになる表現を小さくまとめられる事が多いしKotlinはそういうのも目標にして作られた言語だからな。 だからJava→Kotlin変換をするとだいたいは量が増えて複雑怪奇なソースになると思う。 作るのはまだjavaでいいだろうけどkotlinをネイティブで読めるようにはなりたい Java読むよりKotlin読む方がすんなり入ってくる >>240 完成品はね でも製作途中で何処かがおかしいんですとか相談に来られても見れない javaをkotlinに変換すると大体20%ぐらい減る 開発中の任意のタイミングでKotlinの方が分かりやすいと思うけど 今まで買ったjavaの本、全部kotlinにならないかなぁ… 逆引きのkotlin版ってないの? java見ながらkotlinにして書いてると つまずいたときにjavaでいいやってなる 変換はなんとなくわかるけど、省略するとこがいまいちわからん どうやら自分は省略すればいいとこを無理に変換しようとしてるぽい そしてまたjavaを書く 書きやすい方からでいいよ 言語の慣れもあるけどプログラム経験の方が重要 プログラムイディオムや関数型の理解などが進めば 言語の切り替えもスムーズになる 速習 Kotlin: Javaより簡単!新Android開発言語を今すぐマスター 速習シリーズ Kindle版 山田祥寛 (著) まあまあ、良かった。Delegate、移譲の部分が消化不良だが、byっていうキーワードでメソッドcallの時にReceiverを取り替えられるって事がわかった。 by Delegate()でa.someMethodっていうメソッド呼び出しをDelegateオブジェクトのsomeMethod呼び出しへと変換できるらしい。 someMethod呼び出しの中でNotificationを行うとかの応用ができる。 lazyとかっていうオブジェクトがよく解らんかった。動かしながら理解しないとだめだな。本を読んだだけではピンと来ない。 KotlinはSwiftに似てると思ってたが、言語仕様はSwiftに比べてコンパクトだった。 ただ、Kotlin関連用語がかなり違和感。vs Swift constructer - initializer lambda - closure object - instance val, var - let, var fun - func interface ISome<T: U> - protocol ISome { associatedtype = T where T: U} >>251 Genericsの汎用型、型パラメータの書き方はKotlinの方が好みだな。 e.g. interface ISome<T: U> {…} 他言語プログラマのためのKotlin基礎 Kindle版 Independent Laboratory (著) その他()の形式およびエディションを表示する Kindle版 ¥0 Kindle Unlimited では、このタイトルや100万冊以上の本をお 漏れのフレームワーク本の著者の評価では、 掌田津耶乃がトップで、山田祥寛は2番目 山田は100名まで、1人4万円の講座もやってた 英語の本でいいのある? 逆引き的な辞書的なサンプル集的なやつ あ、kotlinの英語の本です 技術英語なんて日本語の本と書いてあることはだいたい同じだから >>256 漏れなんて言い方久しぶりに見たよ(藁) >>256 >掌田 この人の本、めったに当たりが無い。 Rubyの本は良かったな。特に、CGIの部分。Rails出現以前の本だった。 この本でhttpdがCGIをどう扱ってるか理解した。 httpのputリクエストのrequest headerをRubyアプリは、stdinから取り込むと知ったのだ。 それまでコマンドライン引数でrequest headerを受け取るのか? はたまた、環境変数で受け取るのか不思議だったのだ。 >>262 言語は関係ない。とにかく標準入力から読めば良いのだ。 つのだは糞 ネットで調べればすぐわかるような入門的なことしか書かない >>253 この本、Win10環境で、Kotlinソースをコンパイルする方法が、巻末にあって良い!おまけにsource code download serviceもいい感じ。 Macbook Proをお布施代として払うのはこれからは遠慮したいし。 もう一冊の本、>他言語プログラマのためのKotlin基礎 Kindle版 こいつは、InteliJ IDEAだかなんだかのinstall方法からの説明で、思いやられる。 おれは、Vim + quickrun.vimで動かしたいのだ。おまけに、書籍掲載のソースのdownloadサービスも無し。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる