Kotlin 8
JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう
※前スレ
Kotlin 7
https://mevius.5ch.net/test/read.cgi/tech/1588748438/ そういやC言語ってまだ大人気なんだな。Python が人気なのはわかるが。
MATLAB という言語は知らなかった。 >>152,154
2,3ヶ月後に逆転したら謎だらけ
kotlin programming
約 46,300,000 件 (0.30 秒)
go language programming
約 1,040,000,000 件 (0.44 秒) こんなことになってるのか
rust language programming
約 21,600,000 件 (0.42 秒)
https://i.imgur.com/TNA5Ee4.png >>157
MATLABは工業系で計測機器の動作管理によく使うからね
今後も順位をキープしてずっと居座り続けるだろうよ >>156
kotlinで新しくサーバーやるならSpringBootよりktorだろうけど、kotlinでSpringBootやる人しか見ないの笑う、まあいいんだけどさ >>161
どこらへんが笑いどころなのか、よくわからないので教えてほしい。 今時SpringBootなんて書いてるやつはいないだろう SpringBootはアノテーションつけてなんやかんやできるの便利だと思う あけましておめでとうございます
ことりんもよろしくおねがいします 200gくらいでPSPやGBAを遊ぶのに最適な機種は何ですか?
元がブラウン管のゲーム機は、RGB30の画面比率で満足しています
Powkiddy X55は293gでちょっと個人的に重いです
重くてあまりゲームをやらなくなると思います
Switch liteがそうだったので へー。Linux で動いてる携帯ゲーム機なんてあったんだ。知らなかった。 Amazonで「ポータブルゲーム機 linux」で検索すると沢山出てくるな。こんなにあったとは。 Spring bootはアノテーションのつけ方が今一つ
どうせなら main 文とか import 文とか全部省略できるようにやってくれればいいのに
あと使っているうちに動かなくなるところとか
結局、tymeleef、html,JavaScript と共存することになるので
コードが複雑になる mainはわかるけどimport省略って、いったい……?
アノテーション使わずに、パッケージ名やクラス名、メソッド名でどうにかするとか? Spring Bootの役割を完全に誤解しているな
LombokやBetter Javaではなくエンタープライズアプリの開発フレームワークや アノテーションといえば製品によるだろうけど自作アノテーションでコンパイル時にコード生成させる方法を学んで組み込んだら格段に開発効率が上がった経験あるわ そのコード生成がされるまではJavaのコードとして一時的に不正になるのか、生成前でもJavaとしてコンパイルが通るソースとして成立するのかには隔たりがある
前者はLombokやKotlinのようにコーディング量が劇的に減って便利だとしてもIDEなどのツールにサポートされるまでは使えるツールが制限され普及の障壁になる
Spring Bootがimport分やmainの記載を省くような文法変更を加える大げさな仕組みだった場合はここまでの普及はなかった kapt使い慣れると、ちょっとしたことがコード生成でできるようになるから、めちゃくちゃ便利になるよね。 kotlin.collections.MutableMap のドキュメントを見てもソースを見ても computeIfAbsent() メソッドはないのになぜか使えるね。 kotlinx.coroutines1.8.0きたああ! これでKotlinが5位になっていたことに、たった今気付いた。
将来性の高いプログラミング言語とは?タイプ別ランキングTop10
https://www.sejuku.net/blog/124758 >>181,182
ここ注目
IEEE調べ2023版Jobs:
Groovy > F# >>> Ada > Rust
redmonkはChatGPT後のSO激減の扱いを考えすぎちゃって更新止まったか
https://redmonk.com/rstephens/2023/12/14/language-rankings-update/ たぶん、Groovy の本は日本で、ここ10年で1冊も出ていない
文法は、Ruby と似ているから、
Ruby on Rails をやれば、おおよそ分かる GroovyなんてJavaのビルド構成触るときにしか書いたことないや
それもいまKotlin Scriptに書き直されてもう使うこと無くなりそうだけど 最も年収の高いプログラミング言語は? CAMELORSがランキングを発表
https://codezine.jp/article/detail/19210
1位 Go
2位 Kotlin
3位 Python トップ10の中にRustが入っていないな。まだそんなに年収得られるほど稼げる用途で使われてないのかな? 「Kotlin」を用いたデスクトップアプリ開発の解説書が発売
書籍『入門!実践! Kotlin Compose Multiplatformでデスクトップアプリ開発!』
https://forest.watch.impress.co.jp/docs/bookwatch/news/1584816.html そういやkotlinってロゴもマスコットも影薄いよな… かといってGoみたいにキモいマスコットで有名になっても困る >>193
golang マスコットで画像検索すると見つかる
gopherという名前だそうだ go マスコット でも見つかった
>Go言語のマスコットキャラクター「Gopher」を愛でる
俺には無理 日本じゃ販売されてないオライリーの本だとテンみたいな動物が描かれてるな うーん、やっぱりインパクトが薄すぎるな
特段かわいくもないしカッコよくもないし、さりとてキモくもない
せめてキモカワイイくらいでないとインパクトが薄い Any 型のインスタンスを MutableList<Any> 型にキャストしようとするとチェックしていないという警告が出る。
かといって if (it is MutableList<Any>) ... みたいにチェックする部分を書いても List が持つ型の Any のチェックはできないとエラーになる。
これ Java で Object のキャストする時も同じだと思うけど、List, Map, Set の類の保持する値の型に関してはチェックできないからもうどうにもならんのかな?言語仕様の問題? Anyにキャストしたいと思ったことがない
その状況がまずおかしいのでは?? >>204
何をしようとしていたかというと、まず MutableMap<String, Any> のインスタンスを作っておいて、それのキーによって値が Int だったり String だったり MutableList<String> だったり MutableList<Int> だったりするようにしたかった。
m["A"] なら Int, m["B"] なら MutableList<String>, m["C"] なら MutableList<Int> みたいな感じ。
まあ、何か他の方法がないわけじゃないんだろうけどね。(自分で専用のクラス作れば一発で解消するんだろうけどねw)。 文字通り未検査なんだから仕方ないね
型不明のコレクションにキャストしてから各要素をmapでキャストするかまるごと警告抑制でいいのでは composeで何個かアプリ作ってて思ったけど、確かに綺麗かつ書き換えしやすく書けるけど、今までに比べて難しすぎる。
初学者が書けるとは思えないんだが。 初学者はFigmaみたいなデザインツールサービスで設計してComposeでコーディングの流れなら多少はマシなんじゃないか?
ReactやらSwiftUIやら時代の流れで宣言的UIが主流になったからこの形式に慣れるしかないんだ シンプルにModifierとかテーマとかが分かりづらそう。
もちろん、知ってる人は今までより楽なんだけどなぁ。 シンプルなビルドツールのAmperがスタンドアローンで動くようになったみたい
そろそろGradleやめてAmperにしてもいいかも
ttps://blog.jetbrains.com/amper/2024/05/amper-update-may-2024/ 今年のKotlin Confはよかった
AWSの話もあってサーバーサイドとしても宣伝されてた
ttps://youtu.be/Ar73Axsz2YA 時間ができたから興味本位で個人用泥アプリをそこまで苦労なくKMPに移行させてみた
iOS開発環境はないからとりあえずJVMのデスクトップアプリとして動かして満足
主に書き換えたところ
build.gradleのマルチプラットフォーム化
xml→Composeに完全書き換え(これは既にほぼ移植完了してた)
SharedPreferencesをDataStoreに移行
commonMainに共通コードを移動 >>216
結構簡単そうだな。
compose重い印象あるけど、JVMの動作やリソースの食い具合は>>216的に満足いくレベルだった? >>218
スムーズで満足だったよ
大量のアイテムのリスト表示もカクつくことなく、Androidで動かした場合と遜色もなくデスクトップアプリとして動いてくれた
メモリ使用量はだいたい100~150MBのリソースを食ってたから気になる人はいるかも >>219
回答ありがとう。
アプリに寄るのは理解しているけど、ベースでのメモリの食いもそんなないんだね。
MAUIも個人的に好みじゃないし、今度作るときはCompose使ってみようかな。 Modifier.composedをModifier.Nodeに書き換えたらむっちゃ爆速になったので報告
参考になったサイト
Modifier.Node を使いましょう (Part 4: @Composable 関数の実装を Modifier.Node に書き換える) ttps://qiita.com/_SUR4J_/items/d48372b5793c4a0fa65f