Kotlin 8
..
2:デフォルトの名無しさん
23/01/02 14:06:40.31 l4/Jezsd.net
公式サイト
URLリンク(kotlinlang.org)<)
コードを貼れる所
URLリンク(rextester.com)
オンラインコンパイラ
URLリンク(ideone.com)
3:デフォルトの名無しさん
23/01/02 14:06:54.93 l4/Jezsd.net
Kotlin/Native
KotlinコードのLLVMコンパイル
URLリンク(kotlinlang.org)
Kotlin/JS
KotlinコードからTypeScriptコードを生成
URLリンク(kotlinlang.org)
Kotlin Multiplatform
Kotlinによるクロスプラットフォーム開発
URLリンク(kotlinlang.org)
4:デフォルトの名無しさん
23/01/02 14:07:01.54 l4/Jezsd.net
Compose Multiplatform
Windows/macOS/Linux/Android/iOS/ブラウザに対応する宣言型UIフレームワーク
URLリンク(www.jetbrains.com)
5:デフォルトの名無しさん
23/01/02 14:09:02.17 oah2Ltv/.net
println("乙")
6:デフォルトの名無しさん
23/01/03 00:13:25.08 4RAsAekA.net
今年もよろしく
7:デフォルトの名無しさん
23/01/04 11:45:44.86 suU0/CSg.net
androidのフレームワークって難しいんですかね?
やさしいKotlin入門を読んでたら、Kotlinとフレームワークを一度に習得することは至難の業って書いてあった
8:デフォルトの名無しさん
23/01/04 18:14:25.02 XqZj7stm.net
>>7
UI操作だけならData binding使うから、別にC#使ったことあるなら普通に組める。
それ以外も基本的にはJSとかより簡単だと思うよ。
面倒なのはファイルアクセス系など、パーミッション必要な類。
9:デフォルトの名無しさん
23/01/04 19:07:19.87 sTAO5zEI.net
>>8
androidフレームワークと全く関係ない話してどうするの?
>>7
androidフレームワークは、ActivityとViewのライフサイクルの関係がややこしいくらい
AndroidX に関しては公式ドキュメントが常に最新で優秀だからそこ見れば解決する
Kotlin自体もスコープ関数や非同期処理が他言語と違うくらいかな
10:デフォルトの名無しさん
23/01/04 21:12:34.18 suU0/CSg.net
>>8
>>9
ありがとうございます
ボチボチやっていきます
Kotlin、なんかシンプルで直感的でいいですね
when の -> とか矢印にしか見えない w
11:デフォルトの名無しさん
23/01/05 06:36:42.12 I4Yidder.net
前スレ>>992
毎年乙です。
12:デフォルトの名無しさん
23/01/06 10:56:24.13 1cP91HbG.net
Kotlinはあまり浸透しないうちに下降局面に入ったよな
13:デフォルトの名無しさん
23/01/06 10:59:06.89 iJnEnzeO.net
paizaラーニング、1チャプター5分くらいで見られるから空き時間に見るのにすごくいいんだけど、Kotlin編チャプター17までしか無いんだよね
Javaは充実してるのに…
14:デフォルトの名無しさん
23/01/06 11:03:40.87 nfyM5Sx8.net
>>12
最近はwasmでGC無し言語が再び脚光を浴びてきちゃったからしょうがない
15:デフォルトの名無しさん
23/01/06 11:19:44.26 fSmSJWW8.net
kotlin nativeって一応defer があるのな
中身はfinally {[呼び出し関数]} をやってるだけだけど
16:デフォルトの名無しさん
23/01/06 16:03:09.90 y4qz6IDv.net
URLリンク(i.imgur.com)
URLリンク(i.imgur.com) 前スレ1000
これ、ねらったトリップを出せるってこと?
どうやるの?
17:デフォルトの名無しさん
23/01/06 17:39:53.39 YIB2cDqh.net
造りたい桁数によるけど
とりあえず逆変換というか
ブルートフォース観たいに(ブラウザじゃなくてローカルなプログラムで)沢山生成して
その中に希望のものがあればそれのキーを遣えば簡単に実現出来る
18:デフォルトの名無しさん
23/01/06 21:26:47.30 zBH1ifb8.net
Kotlin ってGo とTypeScript の中間って感じだね
Goはコンパイル最速で、
TypeScriptはJavaScript互換でフロント最強、
対してKotlinはコンパイルが速いわけでもなく、Java の遺産を使えるくらいしか取り柄がない、フロントもモバイル開発はともかく、デスクトップアプリやウェブサイトでTypeScript を差し置いて選択する理由が無い
よってモバイル開発を超えて普及する見込みなし
19:デフォルトの名無しさん
23/01/06 22:33:21.03 iJnEnzeO.net
プログラムは完成しても多機種の検証が個人的に無理かな?と思い始めた
エミュレータがあるけどかなり時間を取られそうだし、他人に頼むとお金がかかる…
適当にリリースしてバグが出たら、低評価を付けられてバージョンアップするモチベーションを完全に無くしてしまいそう…
趣味に毛が生えた程度の技術を身に付けたいなら、windowsフリーソフト開発とかの方がいいでしょうか?
20:デフォルトの名無しさん
23/01/06 22:55:57.13 ZCm/lfr8.net
KotlinってほんとC#にそっくりだな
URLリンク(ttu.github.io)
21:デフォルトの名無しさん
23/01/06 23:18:32.54 f1Ucnda3.net
>>19
特殊デバイス使うんじゃなければ機種なんて考えなくていいよ
対応SDKの一番古い奴と一番新しい奴で動けば大抵なんとかなる
androidstudioが警告してくれるし
そして技術っても広すぎるから
何か漠然とでもやりたいことが浮かんでるならそれをやれる環境を学べばいい
22:デフォルトの名無しさん
23/01/06 23:26:20.96 mnnpS3v5.net
使ってもらって低評価つけられるならまだ良いほうだよ
嫌いは好きに変換できるからね
使ってすらもらえない無関心を好きに変換させるほうが難しい
23:デフォルトの名無しさん
23/01/07 00:42:09.92 3z/XOEWR.net
>>21
>>22
そうですか
翻訳アプリを作りたいんですよね
自分が使いたいと思うような。
もう少し勉強を続けてみます
24:デフォルトの名無しさん
23/01/08 18:11:54.00 8x15uBZd.net
>>16
総当たりで探しただけでは?
「5ch トリップ 検索」でググるとそういうサイトがいくつか出てくるぞ。
25:デフォルトの名無しさん
23/01/11 10:38:48.37 8ImpuJOv.net
>>12
俺たちが使いまくって大流行させればいいじゃないか
26:デフォルトの名無しさん
23/01/11 14:25:07.46 RVo1l8pG.net
Kotlin が優れてるところの一つにGradle システムを使えることだと勝手に思ってる
27:デフォルトの名無しさん
23/01/13 02:57:26.37 l0qHKUJ3.net
>>16
トリッパー使ったんじゃない?
28:デフォルトの名無しさん
23/02/02 22:06:06.60 g13/zsV1.net
JetBrainsってIntelliJ捨ててFleetっていうVS Codeのパクリに移行するつもりなんだろうか。
Fleetと心中するJetBrainsに巻きこまれてKotlinが沈没する未来しか見えない…
29:デフォルトの名無しさん
23/02/02 22:17:40.84 a9iRKKaw.net
実際のコードでも、変数の型ってきちんと宣言する必要があるの?
特に数値が、byte型、short型、Int型、Long型、Float型、Double型とか面倒なんだけど…
JavaScriptでは変数の型なんて宣言したこと無い…
30:デフォルトの名無しさん
23/02/02 22:28:02.28 /CNhb/p1.net
>>28
FleetってJetbrainsのSpaceありきでしょ
ローカルコーディングなら今までどおりIntelliJ IDEAでいい
31:デフォルトの名無しさん
23/02/02 23:42:46.57 xIkgofbW.net
>>29
数値型は大抵は宣言せずに事足りる
intかfloatだけで十分
宣言するのは引数かNullableのときぐらい
32:デフォルトの名無しさん
23/02/03 00:46:37.22 fsmnaePn.net
>>31
ありがとうございます
またkotlinの勉強再開しようかな?
33:デフォルトの名無しさん
23/02/05 07:17:55.28 v4TpGVs8.net
>>30
オープンソースとはいえJetbrainsが「これからはFleetで行くからIntelliJの開発には参加しません」とか
言い出したらそうも言ってはいられない。
34:デフォルトの名無しさん
23/02/05 11:48:26.47 KddphXcC.net
>>33
?
35:デフォルトの名無しさん
23/02/05 14:33:05.09 5cc7+aVs.net
Fleet だろうがなんだろうが Kotlin が使えるならそれで良い。
IDE が IntelliJ IDEA でなければならないなんてことはない。
36:デフォルトの名無しさん
23/02/05 14:48:26.86 Lz3Wxqzh.net
>>33
どゆこと?リモート開発プラットフォームのspaceってそんなに普及してるの?
37:デフォルトの名無しさん
23/02/05 14:55:00.19 JGp0Ajcj.net
Google Playストアの評価が機種別になって、アプリのリリースがしやすくなったと見ていいんでしょうか?
昔の方式で星2つとかだとアップデートするモチベーションが無くなってしまうと思うのですが…
38:デフォルトの名無しさん
23/02/05 14:57:24.55 eX3gCsU+.net
>>37
なんの話か知らんけどスレ違いでは?
39:デフォルトの名無しさん
23/02/05 15:03:44.12 c43hBO2w.net
>>37
プログラマ板か泥板だな
ここはプログラム板だからスレチ
40:デフォルトの名無しさん
23/02/05 16:00:24.37 5cc7+aVs.net
Android のプログラミングについてならこの板にもスレがあるよ
スレリンク(tech板)
41:デフォルトの名無しさん
23/02/05 16:45:28.95 JGp0Ajcj.net
>>40
ありがとう
42:デフォルトの名無しさん
23/02/05 16:58:52.92 O5yWrFkB.net
モチベなくなるとかいう舐めたやつがム板にいるの草
まずモチベあげてこいや
43:デフォルトの名無しさん
23/02/05 17:27:18.81 LxIjuN9C.net
>>28
Fleetって有料ライセンスのみ販売予定じゃかったっけ?
無料ライセンスの予定もあるん?
44:デフォルトの名無しさん
23/02/05 18:20:15.79 UIX++ell.net
Kotlinでデスクトップアプリ作ろうと思ったら何が良いですか
45:デフォルトの名無しさん
23/02/05 18:26:40.59 g4sBqnE4.net
>>43
クソどうでもいいからこれ以上伸ばすなつまらん
46:デフォルトの名無しさん
23/02/05 19:33:13.77 jEfF1RGv.net
結局kotlinはこの程度の民度にしかならんね
オワリオワリ
47:デフォルトの名無しさん
23/02/05 19:34:33.45 zHd5o0IW.net
はい
48:デフォルトの名無しさん
23/02/06 06:57:46.08 JSEbBT7Z.net
>>36
後援企業のJetBrainsが苦しくなればKotlinとそのエコシステムの進化も停滞するだろうなという話。
>>35
実際の所IntelliJ以外でKotlin書いている人ってどれくらいいるんだろう。
49:デフォルトの名無しさん
23/02/06 07:27:11.36 X90rLmc5.net
>>48
fleetとintellijの話をしてるんだけど、jetbrainsが苦しいやらkotlinやらの話はしてない
spaceをより連携しやすく設計したのがfleetであって明確にintellijと差別化された商品だと思うんだが、なんでintellijが廃れる話になるのか
リモート開発プラットフォームのspaceが普及するならfleetは必須ツールになるとは思う
「後援企業のJetBrainsが苦しくなれば」はなんの話をしてるのか意味不明だから再度返答求む
こっちはわからないから聞いてるの
50:デフォルトの名無しさん
23/02/06 07:36:18.79 X90rLmc5.net
そもそもfleetは今のところ正式リリース後のライセンスは有料のみだから、spaceで開発しないなら使うことのない代物だろうに
51:デフォルトの名無しさん
23/02/06 07:43:38.58 sQrgNFA4.net
こいつ多分まういっていう荒らしだから相手にしなくてよし>>48
52:デフォルトの名無しさん
23/02/06 16:18:15.14 Pcm2g4vQ.net
>>49
下の方に Free のライセンスも書いてあるよ。検討中だから変わる可能性はあるが。
53:デフォルトの名無しさん
23/02/06 16:19:37.37 Pcm2g4vQ.net
下ってこのページの下ね。
URLリンク(www.jetbrains.com)
54:デフォルトの名無しさん
23/02/06 16:26:21.80 X90rLmc5.net
>>52
お、ええやん
55:デフォルトの名無しさん
23/02/06 22:36:04.89 JSEbBT7Z.net
>>49
いや、だから>>28でFleetとJetBrainsが心中する予測を元にしていると述べているので、
勝手に話を変えた挙げ句に意味不明とか言い出されても。
>>52
IntelliJはCommunity Editionは商用利用可だけど、FleetのFree版は商用不可。
無償版に人が流れて有償版が伸び悩むIntelliJから収益性の高そうなFleetに
ユーザーを移行させようとしても不思議じゃないように思う。
>>49はFleetはIntelliJの代替にはなり得ないという立場でいい?
56:デフォルトの名無しさん
23/02/06 22:55:57.47 X90rLmc5.net
kotlin1.8用のcompose compiler1.4がいつの間にか来てた
これでjava8と完全におさらばだ
57:デフォルトの名無しさん
23/02/07 19:50:20.15 HKR0nzX7.net
>>44
Kotlin Native微妙だし、普通にMAUIとか使った方がいいと思う。
C#なんてほぼKotlinみたいなもんだし。
58:デフォルトの名無しさん
23/02/07 19:53:23.74 GuvwFBq1.net
>>57
マウイ来んなやクソが
なんでわざわざ過疎スレにアンチして🕊しにくるのか理解できない
59:デフォルトの名無しさん
23/02/07 20:52:24.11 HKR0nzX7.net
>>58
何言ってんのかよくわからんが、普段はKotlinメインで使ってるけど、デスクトップ向けではないな、って話やろ。
態々、Kotlinで組むなら止める程度にはKotlin使ってるし。
60:デフォルトの名無しさん
23/02/07 21:03:25.88 AieqUWxb.net
Kotlinで作ることを前提にお題を求めてるのにC#で開発させようとするの草
61:デフォルトの名無しさん
23/02/07 21:13:17.87 MzyxuFjY.net
Compose for desktop はどうなんすか
62:デフォルトの名無しさん
23/02/07 21:16:53.83 GA6tm9zJ.net
URLリンク(taro.hatenablog.jp)
63:デフォルトの名無しさん
23/02/07 21:19:25.74 JG0DFLjy.net
>>61
宣言的UIはカスだからC#で開発したほうがいい
64:デフォルトの名無しさん
23/02/07 21:22:01.03 sxKwL+o5.net
>>44
JetBrainsはFleetエディタの開発にこれ使ってる
URLリンク(github.com)
サポートプラットフォーム
Kotlin/JVM on Linux(x86_64 and arm64)
Kotlin/JVM on Windows(x86_64)
Kotlin/JVM on macOS(x86_64 and arm64)
Kotlin/JVM on Android(x86_64 and arm64), starting with API version 24
Kotlin/JS + WebAssembly in browsers
Kotlin/Native on iOS(arm64 and x64)
Kotlin/Native on macOS (arm64 and x64)
ちゃんと自分の製品の開発に使っててえらい
65:デフォルトの名無しさん
23/02/07 21:26:24.81 MzyxuFjY.net
マイクロソフトのXamarinとは違うんですねえ
66:デフォルトの名無しさん
23/02/12 10:01:33.75 ergWQxlR.net
K2コンパイラ安定版もうそろそろ来るらしい
URLリンク(blog.jetbrains.com)
67:デフォルトの名無しさん
23/02/12 10:41:01.09 xxkzcwPc.net
今は1.8
1.9の次に2.0だから安定版はまだまだ後かと思うけど
68:デフォルトの名無しさん
23/02/12 13:27:40.86 HnI2C6C6.net
>>66
JVMとかJSのバックエンド部分は既にK2コンパイラに置き換え済みだぜ?Nativeはベース自体がK2コンパイラだし
URLリンク(blog.jetbrains.com)
逆にフロントエンドとしてのK2コンパイラってのがよくわからん
記事を見る限りIDEと密に連携する部分っぽいけど
69:デフォルトの名無しさん
23/04/19 23:19:08.07 4p0qLLoT.net
it.nameやit::name
のnameの部分を文字列結合して
アドレス参照って可能でしょうか
やっぱ全部手打ちのマンパワーですかね・・・
70:デフォルトの名無しさん
23/04/20 06:39:38.67 YgiO/wBC.net
>>69
正攻法としてはリフレクションを使うことになるんだろうけど、数が少ないなら手打ちの方が楽かな。
annotationで何とかできるのかもしれないけど、そこまでしたことがないので分からない。
メタプログラミング的には、gradleにソースコード書き換えのスクリプトを仕込むとか。
71:デフォルトの名無しさん
23/04/20 13:36:09.92 4kBjE/up.net
>>69
君が何をやりたいのかいまいちわからない
72:デフォルトの名無しさん
23/04/20 20:32:58.66 OnLj6Vmm.net
ありがとうございます
検索単語の検討つかなかったので助かります
73:デフォルトの名無しさん
23/05/26 06:46:38.30 aXYAncjI.net
Kotlin のコンパイラとか IDEA って一応オープンソースだけど、
コメント無さすぎじゃない?
意図的に削除してるわけではなく、こういう開発スタイルなだけ?
74:デフォルトの名無しさん
23/05/26 19:54:29.39 sy2y3XVh.net
IT先進国ではソースコードから意味が読み取れるようになってる
コメントを書かないといけないということはソースコードが糞ということ
75:デフォルトの名無しさん
23/05/26 20:37:52.00 mvbRRaiF.net
大昔ガチでそれ主張してる有名なプログラマがいた気がするな
76:デフォルトの名無しさん
23/05/27 03:04:22.51 hhb34/XN.net
それで結局キーワードが長くなり記号が減りまるで英文のようになるとすると、俺にとってそれはクソとなるのではないかと思う。
77:デフォルトの名無しさん
23/05/27 07:43:30.62 FognjnHm.net
そんなことにはなれへんで。往生しまっせ~
78:デフォルトの名無しさん
23/05/27 08:07:28.84 ap1zYrbm.net
コメントがなぜ必要かというと要はサマリーが欲しいからなんだよ
よみゃわかる、とかいわれてもいちいち全部読んでたら時間のムダ以外の何ものでもない
30分のYoutube動画のURLだけ提示して「見れば全部説明してある」とかいわれても困るわけ
動画の内容は何で、これを見ると何がわかるのか、要点はなにか、それ書けということ
読む人の時間を節約するために、効率を上げるために的確なコメントがあるってのがわからん
脳タリンの言いそうな言葉が、「コードですべて説明できている」
79:デフォルトの名無しさん
23/05/27 08:36:27.58 FognjnHm.net
そんなのはソースコードの外側に書けば良いこと
80:デフォルトの名無しさん
23/05/27 14:06:25.50 ObF3i/yO.net
ぶっちゃけ詳細な情報はAIで生成する時代が来る
プログラマーが書くのはクラスやファイルに対して1行ぐらいの概要で良くなる
81:デフォルトの名無しさん
23/05/28 14:52:33.49 fKPLYy9v.net
やがて人の欲しがりそうなことを予測して先に作ったり実行したりするようになる。
82:デフォルトの名無しさん
23/05/29 16:21:12.69 F8hmnix6.net
そして人間は栽培されるようになる。
83:デフォルトの名無しさん
23/05/29 16:24:50.25 BskQWRzX.net
youtubeのサマリーは概要欄や説明文のところに書いてある
84:デフォルトの名無しさん
23/06/28 14:51:16.64 qwzkqtvX.net
Int?をIntでオーバーライドできるようですが逆は多分不可能ですよね?
検索してもなかなか情報が無いので
85:デフォルトの名無しさん
23/06/29 11:46:45.40 IO1TL2jD.net
nullを表現できる型よりも出来ない型の方が表現できる状態が一つ少ないんだから override できて当然だと思うが。
86:デフォルトの名無しさん
23/06/30 06:11:35.03 KO9roK1Y.net
漠∞!!!!
及∞!!!!!
斗∞!!!!!!
語∞!!!!!!!
原∞!!!!!!!!
芋∞!!!!!!!!!
表∞!!!!!!!!!!
牛∞!!!!!!!!!!!
87:デフォルトの名無しさん
23/07/17 05:21:02.23 0PvTd+Ok.net
Kotlin 1.9.0
88:デフォルトの名無しさん
23/07/20 14:25:41.42 x8Idengv.net
以下の2つのfilterって全く同じ処理ですか?
速度はほぼ同じようですしサイズも同じですし
fun main(){
val l = (1..1000000).toList()
val s = System.currentTimeMillis()
val m = l.filter { it in 3..500000 }
val s2 = System.currentTimeMillis()
val n = l.filter { it >= 3 && it <= 500000 }
val s3 = System.currentTimeMillis()
println(s2-s)
println(s3-s2)
println(m.size)
println(n.size)
}
89:デフォルトの名無しさん
23/07/21 01:25:51.58 esLQ8StN.net
>>88
ほぼ同じになるのではないかな。 it in 3..500000 は IntRange(3, 500000).contains(it) って書いたのと同じだし。
contains() メソッドのソースを見るとこう書いてある。
override fun contains(value: Int): Boolean = first <= value && value <= last
ただ、最適化されなかった場合は IntRange クラスのインスタンスを毎回作ることになるのでその分だけメモリ確保(及び不要になった時の解放)を毎回することになってそれが無駄になる。なので最終的なコードが同じになるかどうかはコンパイラ次第になる。
90:デフォルトの名無しさん
23/07/21 01:44:23.23 esLQ8StN.net
そう言えば実行環境が JVM だと HotSpot とかの実行時最適化がされるのでコードが少々違っても大差ない速度になる可能性がある。
91:デフォルトの名無しさん
23/07/24 12:07:12.59 8gMzjgKK.net
負の値に対して mod() 使った時と % 使った時で結果が違う。
(-7) % 3 は結果が -1
(-7).mod(3) は結果が 2
ソースを追ってみたら Int.mod() は kotlin/libraries/stdlib/src/kotlin/util/FloorDivMod.kt にある拡張関数が使われていた。
数学のルールとしては余りは0以上でなければいけないことになっているので結果が 2 の方が正しい。
その代わりその場合は割り算の結果が -3 で出る必要があるが、それは Int.floorDiv() を使うと計算できるようになっていた。( / 記号を使うと -2 になる)。
これ Kotlin 1.5 からのようだが(多分リリースノート等に書かれていることだろうが)、今まで気が付かなかった。
92:デフォルトの名無しさん
23/07/24 12:23:30.67 dSKtSeZa.net
他の言語でも当たり前やん。
93:デフォルトの名無しさん
23/07/27 13:43:57.78 gIycSMlB.net
IntelliJ IDEA がAIに繋がるようになったそうだな。
やはりそのうち「アレやっといて」とか言うだけで全部やってくれるようになるんだろうな。
94:デフォルトの名無しさん
23/07/28 06:28:10.00 fwyKXBPr.net
AI化で、JSONとクラスの変換やORMの自動生成とかを一言だけでやってくれるようになると助かる。
95:デフォルトの名無しさん
23/07/28 22:14:31.76 0RAcqx90.net
AIが書いてくれた部分は色分けしてほしいな
96:デフォルトの名無しさん
23/08/03 21:22:22.37 JmIQL7Xi.net
Int?をIntでオーバーライドできるって書いてあるけどオーバーロードじゃないの
全然意味が変わってくると思うんだが
97:デフォルトの名無しさん
23/08/03 21:57:38.76 l7e2epMI.net
文脈によるとしか…
98:デフォルトの名無しさん
23/08/04 15:33:07.93 XIAkXQCa.net
Coroutinesを勉強しようと思ってるんですが
error: unresolved reference: kotlinx
他エラー多数
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.0'
}
このような依存関係を追加すれば動きそうですが
kotlinc c001.kt
kotlin C001Kt
などとやって動かす方法は無いのでしょうか
Coroutinesはandroid専用なのですか?
c001.kt
import kotlinx.coroutines.*
fun main() = runBlocking {
launch {
delay(1000L)
println("World!")
}
println("Hello")
}
99:デフォルトの名無しさん
23/08/04 18:48:39.15 oQLXycol.net
それはAndroidのメインスレッドを考慮したライブラリでしょ
通常版を普通に入れればいいんじゃない
URLリンク(github.com)
100:デフォルトの名無しさん
23/08/04 19:17:16.93 FKUenUop.net
英語読めない人は色々と向いてないよ
101:デフォルトの名無しさん
23/08/04 21:07:52.11 LzfYm8xL.net
>>98
chatGPTにその質問をまるままコピペして質問してみたよ
URLリンク(i.imgur.com)
chatGPTの答えで意味通じてる?
Kotlinはよく知らないからわからないけど、JavaScriptではすごく貢献してくれている
102:デフォルトの名無しさん
23/08/04 22:08:16.75 hYKWZiai.net
>>101
残念だけど98が知らなけばいけない一番重要な情報が抜けてるから>>99を見なきゃ駄目だな
103:デフォルトの名無しさん
23/08/05 01:08:23.15 NvWXSifX.net
>>102
そうなんだ
chatGPTは人間とのチャットみたいに、ここから掘り下げて質問できることが特徴だから、まず>>98をコピペしてchatGPTが答えたら、そこから疑問点を次々と納得できるまで入力してみるといいよ
104:デフォルトの名無しさん
23/08/05 04:09:23.74 UibUwgvW.net
>>103
いま>>98を質問してみると、kotlinx-coroutines-coreを使う方法出てくるからだれかが質問して少し賢くなったのかな
でも実行のやりかたがgradle使う方法とkotlinc使う方法がごっちゃになっててダメダメ
gradleを使って上記を実行する方法を教えてくださいと質問すると、gradleラッパーを作らないと実行できない方法を回答してきてダメダメ
gradleラッパーを作る方法教えてくださいと質問してようやく実行のための手順を全部教えて貰える感じ
初心者がここまで追加の問いをできるとは思えんが
105:98
23/08/07 15:30:19.77 bKCC1GJD.net
kotlinc -classpath /home/hoge/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlinx/kotlinx-coroutines-core-jvm/1.6.4/2c997cd1c0ef33f3e751d3831929aeff1390cb30/kotlinx-coroutines-core-jvm-1.6.4.jar c001.kt -include-runtime -d c001.jar
コンパイルは出来ましたが
Exception in thread "main" java.lang.NoClassDefFoundError: kotlinx/coroutines/GlobalScope
at C001Kt.main(c001.kt:4)
at C001Kt.main(c001.kt)
Caused by: java.lang.ClassNotFoundException: kotlinx.coroutines.GlobalScope
...
chatgptに聞いたりググったりして
gradle init --dsl kotlin
2 enter 4 enter ...
などとしてみてapp/build.gradle.ktsのdependenciesに
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3")
を書いて./gradlew runしてみましたが
> Task :app:compileKotlin
w: file:///hoge/kt/c001/app/src/main/kotlin/c001/App.kt:4:5 This is a delicate API and its use requires care. Make sure you fully read and understand documentation of the declaration that is marked as a delicate API.
そもそもkotlinx.coroutines.*とkotlin.coroutines.*があるようですが
コンソールアプリで使えるのは後者なのでしょうか
もしそうだとすると上のサンプルコード自体コンソールでは使えないかもしれません
色々試してみていますがまだうまく動かせていません
初心者すぎてすいません
106:デフォルトの名無しさん
23/08/07 15:42:07.47 0QKbZCOV.net
chatgptに聞くだけじゃなくて公式ドキュメントも読めよな
107:デフォルトの名無しさん
23/08/07 15:45:07.87 HxjEfC0+.net
>>105
まず、>>99は試したの?
99の手順通りにやって、どこでうまくいってないかを書いてくれ。
108:デフォルトの名無しさん
23/08/07 15:47:09.42 GkxhoiSP.net
>>105
chatGTPの答え
URLリンク(i.imgur.com)
109:デフォルトの名無しさん
23/08/07 16:58:45.75 7+qP6XW5.net
>>108
この流れでいまだにkotlinx-coroutines-android
だしてくるのはなんなの
混乱させたいの?
110:デフォルトの名無しさん
23/08/07 20:31:42.18 8OjWeX4X.net
公式サイト程度の簡単英語すら読めないってヤバイよ
111:デフォルトの名無しさん
23/08/07 23:12:11.67 dolrRGoi.net
この頃は自動翻訳しても結構読める日本語になるので、面倒な時は翻訳している。
ブラウザに自動翻訳のボタン付いてて楽だし。
112:デフォルトの名無しさん
23/08/08 04:42:08.20 7gEoIqTk.net
多分>>105のkotlinc使ってコンパイル成功したやつで実行出来るとおもうんだけど、
コンパイル時に使ったjarの場所を実行時にも指定する必要があるはず
113:デフォルトの名無しさん
23/08/08 04:55:31.62 7gEoIqTk.net
gradle使う場合(ここでは7.2使用)はgradle init --dsl kotlinして、質問にはこんな感じに答えて
2: application
4: Kotlin
1: no - only one application project
それで作ったプロジェクトでApp.ktを>>98のc001.ktのコードに置き換えて、
app/build.gradle.ktsのdependenciesにimplementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0")を追加して、
./gradlew runで実行できたよ
./gradlew buildするとAppTest.ktがApp.ktと合ってないのでエラーになるからappHasAGreeting()の中身を空にしとくといい
114:98
23/08/09 14:27:04.56 9U6EOwhw.net
113さんの方法で実行できました。バージョンは最初1.5.0でコンパイルしましたが最新の1.7.3でも動きました
これで勉強できます。ありがとう!
115:デフォルトの名無しさん
23/08/17 14:46:06.81 OpFORHD6.net
androidアプリでデータ保存するとしたら今はroomになると思うのですが
room + koin + coroutine
room + coroutine flow
room + livedata
room + rxjava3
など色々な技術がありますがこれが最新ってのはどれなんでしょうか?オススメの組み合わせはありますか?
116:デフォルトの名無しさん
23/08/17 20:28:07.81 BGu5pbVD.net
room hilt coroutine flow viewModel, Jetpack compose
117:デフォルトの名無しさん
23/08/18 00:47:46.24 vBC0Q9CB.net
>>115
これ前に久々にアプリ作る時に自分で調べたらめっちゃ大変だったけど、>>116みたいな人神だわ。
118:デフォルトの名無しさん
23/09/02 10:58:57.91 EZqgn//v.net
以下のbyはどういう文法なのでしょうか
val navBackStackEntry by navController.currentBackStackEntryAsState()
クラスとプロパティの委譲のbyとはまた別物ですよね?
119:デフォルトの名無しさん
23/09/02 12:33:55.85 LowIWjqn.net
プロパティ移譲じゃない?
120:118
23/09/02 14:26:35.12 EZqgn//v.net
>>119
ありがとうございます
前後の文脈も示すべきでした
URLリンク(developer.android.com)
ここにあるコードの抜粋
val navController = rememberNavController()
Scaffold(
bottomBar = {
BottomNavigation {
val navBackStackEntry by navController.currentBackStackEntryAsState()
val currentDestination = navBackStackEntry?.destination
...
この使われかたはプロパティじゃないと思うのですがどうでしょうか
121:デフォルトの名無しさん
23/09/02 17:54:56.94 JCftPCiU.net
これかな
Local delegated properties
URLリンク(github.com)
ローカル移譲プロパティ?
122:118
23/09/04 10:07:53.25 FcZAE9nJ.net
>>121 ありがとうございます
検索してもインターネットには情報が少ないですね
エラーメッセージを頼りにちいさいサンプルを書いてみましたが、
error: unresolved reference: test
このエラーが消せませんでした
委譲ならtestが呼べると思ったのですが
import kotlin.reflect.KProperty
public interface A{
fun test() : Unit
operator fun getValue(b : Nothing?, c:KProperty<*>) : String
}
public val impl = object : A{
override fun test() = println("hello world")
override fun getValue(b: Nothing?, c: KProperty<*>) = "str"
}
fun main(){
val da by impl
da.test()
}
123:デフォルトの名無しさん
23/09/04 10:58:04.18 3ylJB9rm.net
>>122
移譲の形式でval da by implとした場合、da.test()はdaのgetValue(....)した結果をレシーバとしてtest()メソッドを呼ぶという意味になるよね?つまり"str".test()という意味になってエラーになるだろう
移譲でないval da = implとすればda.test()は呼べるはず
124:118
23/09/04 14:21:13.43 FcZAE9nJ.net
>>123
ありがとうございます。一人では絶対にわからなかったと思います
getValueにはそういう意味があるのですね
以下のように書き換えてhello worldが表示できました
import kotlin.reflect.KProperty
public interface A{
fun test() : Unit
operator fun getValue(b : Nothing?, c:KProperty<*>) : A
}
public val impl = object : A{
override fun test() = println("hello world")
override fun getValue(b: Nothing?, c: KProperty<*>) = this
}
fun main(){
val da by impl
da.test()
}
125:デフォルトの名無しさん
23/09/16 09:51:42.96 8u+hT5wA.net
「Kotlin」が人気言語ランキングトップ20に返り咲き--9月のTIOBE指標
URLリンク(japan.zdnet.com)
126:デフォルトの名無しさん
23/09/16 10:43:09.92 YSu5R3en.net
javaのが上なのか
Kotlinに移行した開発者は増えてると思うんだがそこまででもないのか?
最近検索にひっかかるドキュメントはjavaよりKotlinのほうが多い印象
127:デフォルトの名無しさん
23/09/16 11:40:23.57 8u+hT5wA.net
Android 向けアプリの開発では結構使われているのではないかな。知らんけど。
Java の場合は20年以上前から色々な事に使われてきてプログラマも多いし本も多いから上なのは当然の事。
というかそもそも Kotlin は JavaVM で動くやつが最初に出て Java のライブラリ使って動くことが前提なのでまだまだ Java なしではいられない状態。
128:デフォルトの名無しさん
23/09/16 18:54:40.30 YSu5R3en.net
androidはbuild.gradleもGroovyからKotlin(build.gradle.kts)に置き換えられるようになったし
かなりKotlin推しって感じ
俺はjavaから乗り換えた。Kotlinは書いていて割と楽しい方だと思う
そして名前がかわいいという最強のメリット
129:デフォルトの名無しさん
23/09/17 10:21:48.92 VwpwudFm.net
var書いて変数名の後にコロン書いてまた変数型
の一手間を惜しまない人にはオススメ
130:デフォルトの名無しさん
23/09/17 15:07:05.62 +bXFaSn8.net
型の指定は省略出来ることが多いが、それで可読性が下ることもあるかな。
131:デフォルトの名無しさん
23/09/17 18:59:31.43 Tq9Zm9TM.net
確かにできるだけ型注釈はほしいな
Haskellなんかは型を明示してないとわけわからなくなったり
型注釈によってプログラムの動作が変わるまである
型注釈でプログラムの動作(全解探索か最初の解探索か)が変わるコードを始めてみたときは感動した
132:デフォルトの名無しさん
23/09/17 21:30:35.28 SFlUWSkF.net
varとvalの使い分けに価値があるんだから手間とは感じないなあ
コーディング量トータルで見たら誤差すぎる
JavaScript系でletとconst書くのが面倒とか聞いたことないし
133:デフォルトの名無しさん
23/09/17 23:41:10.25 70jB6wMR.net
まだ使い始めて4ヶ月ぐらいだけど
徹底してnullセーフティを追求する言語仕様のよさがやっとわかりはじめた
基本!!は使っちゃダメなのだよね?
134:デフォルトの名無しさん
23/09/18 01:35:25.07 iIjoZZgL.net
自分で新たに作る Kotlin プログラムでは !! を使うように書く必要性がないのでは?
135:デフォルトの名無しさん
23/09/18 07:37:13.91 z3xniIT9.net
importと利用できる名前が
リンク出来ないのが個人的に見づらい
Pythonみたく
import numpy as np
np.array()
が見やすく名前の衝突もなくいいなぁ
136:デフォルトの名無しさん
23/09/18 08:02:25.49 4OJ2QsEy.net
>>135
できるみたいだけど
URLリンク(codelabsjp.net)
>【Kotlin練習問題】importの名前を変更する
>クラスや関数をimportする際、import文の後にas 新しい名前と書き加えることで
>別の名前を指定することができます。別のライブラリからの似たような名前の
>クラスや関数を複数個使いたい時など、混乱を避けるのに便利です。
137:デフォルトの名無しさん
23/09/18 09:09:48.94 UmWRU5gb.net
asは知らなかったなー便利だな
Kotlinすぐバージョンがあがるから、知らない機能がたくさんある
先日もこんなちょっとクスっとする機能を知った
fun main(){
println(1_000_000) //3桁ごとにアンダーバーで区切った数値が使える
println(3_000L) //Long型
}
138:デフォルトの名無しさん
23/09/18 15:41:07.62 FUExQ+S6.net
クスッとするってそれもうJavaにすら導入されてるよ
しかも12年前のバージョンだ
139:デフォルトの名無しさん
23/09/18 15:48:04.25 QNU3UdJL.net
12年前と書いたのはアンダースコアのほうね
100Lみたいな書き方ならJavaが生まれる前の古典
140:デフォルトの名無しさん
23/09/18 23:47:47.23 hS5hyepz.net
それはすまなかった
android-studioが重くてKotlinとおさらばしなければいけなくなったのだが
その前にJavaFXでGUIアプリでも作ってみようと思う
141:デフォルトの名無しさん
23/09/19 15:36:41.44 5iDBL4Hm.net
コマンドラインでコンパイルしたり他のIDE使うとかすれば重いのはなんとかなる
ゲーミングPCみたいに無茶苦茶速いPCにしても良い
142:デフォルトの名無しさん
23/09/23 18:07:42.08 3Tx8ryDK.net
ちょいと宣伝。
更新が止まってたリファレンスの和訳を引き取って、ツアーを一通り和訳しました。
URLリンク(karino2.github.io)
個人的に教えるのに使うために和訳したので需要があるかはわからんけど、一応お知らせ。
143:デフォルトの名無しさん
23/09/24 17:59:53.84 ehyIQvP9.net
>>142
乙乙乙
144:デフォルトの名無しさん
23/09/24 18:53:57.58 PIc2zoKD.net
>>142
翻訳すごいな
いつかはKotlinに。
145:デフォルトの名無しさん
23/09/24 21:05:16.52 tu4YalfX.net
本家が結構アップデートされてるので既存の和訳を更新したり新しく足されたのは和訳したりもしてるよ。
意外と自分の知らない新機能が入ってたりして勉強になるw
当たり前だけど本家のリファレンスはよく書けてるね。
他の言語の知識が相当あるのを前提にしてるので、教えるのに使うなら副読本とか作らないとダメそうだが…
146:デフォルトの名無しさん
23/09/24 21:05:35.89 tu4YalfX.net
本家が結構アップデートされてるので既存の和訳を更新したり新しく足されたのは和訳したりもしてるよ。
意外と自分の知らない新機能が入ってたりして勉強になるw
当たり前だけど本家のリファレンスはよく書けてるね。
他の言語の知識が相当あるのを前提にしてるので、教えるのに使うなら副読本とか作らないとダメそうだが…
147:デフォルトの名無しさん
23/09/24 21:06:06.17 tu4YalfX.net
本家が結構アップデートされてるので既存の和訳を更新したり新しく足されたのは和訳したりもしてるよ。
意外と自分の知らない新機能が入ってたりして勉強になるw
当たり前だけど本家のリファレンスはよく書けてるね。
他の言語の知識が相当あるのを前提にしてるので、教えるのに使うなら副読本とか作らないとダメそうだが…
148:デフォルトの名無しさん
23/09/24 21:50:16.16 tu4YalfX.net
なんかchmateがずっとくるくる回ってるので放っておいたらめっちゃ投稿された…
149:デフォルトの名無しさん
23/10/11 04:32:12.92 LeR6F9Qp.net
Android Studioでラムダ式の波括弧の色を変えたらコードが読みやすくなるね
150:デフォルトの名無しさん
23/10/14 22:54:21.57 BgrcFKKf.net
ちょっと上がったかな
URLリンク(www.tiobe.com)
151:デフォルトの名無しさん
23/11/05 05:28:11.53 w6RhJs5K.net
Kotlin 1.9.20
152:デフォルトの名無しさん
23/12/02 20:34:40.84 Jdc4wkyf.net
>>150
11月データに更新されてたけど、
Kotlinが先月18位から今月15位に上がってんね
Androidアプリ用途だけじゃなくてサーバー用途のJava-to-Kotlinの置き換えが進んでるってことなのかな
2,3ヶ月後にはGo-langの順位を抜きそう
153:デフォルトの名無しさん
23/12/03 07:08:24.26 iaiv32Fc.net
O'Reilly の Kotlin Cookbook の日本語版が出て欲しいところ。
154:デフォルトの名無しさん
23/12/03 10:56:52.01 UXi8gB9u.net
今更だけどアセンブリ言語がこんな高くなるのは
どういうポイント付けしてるんだろ
155:デフォルトの名無しさん
23/12/03 11:11:11.12 e6sHofp7.net
Qiitaのアドヴェントカレンダー、Kotlin過疎すぎだろ…
156:デフォルトの名無しさん
23/12/03 12:46:07.18 JMjzgwiz.net
>>155
まあ、SpringBootに関する記事がなにかしら上がるっしょ
157:デフォルトの名無しさん
23/12/03 12:56:44.34 iaiv32Fc.net
そういやC言語ってまだ大人気なんだな。Python が人気なのはわかるが。
MATLAB という言語は知らなかった。
158:デフォルトの名無しさん
23/12/03 13:05:55.65 BMiemEr+.net
>>152,154
2,3ヶ月後に逆転したら謎だらけ
kotlin programming
約 46,300,000 件 (0.30 秒)
go language programming
約 1,040,000,000 件 (0.44 秒)
159:デフォルトの名無しさん
23/12/03 13:29:43.60 A1a7X3PS.net
こんなことになってるのか
rust language programming
約 21,600,000 件 (0.42 秒)
URLリンク(i.imgur.com)
160:デフォルトの名無しさん
23/12/03 13:39:08.82 JMjzgwiz.net
>>157
MATLABは工業系で計測機器の動作管理によく使うからね
今後も順位をキープしてずっと居座り続けるだろうよ
161:デフォルトの名無しさん
23/12/03 13:53:20.34 fJ8e7xGk.net
>>156
kotlinで新しくサーバーやるならSpringBootよりktorだろうけど、kotlinでSpringBootやる人しか見ないの笑う、まあいいんだけどさ
162:デフォルトの名無しさん
23/12/03 22:30:56.68 uTXBFEuO.net
>>161
どこらへんが笑いどころなのか、よくわからないので教えてほしい。
163:デフォルトの名無しさん
23/12/04 12:44:41.19 wG5v1KKN.net
今時SpringBootなんて書いてるやつはいないだろう
164:デフォルトの名無しさん
23/12/23 21:26:36.61 y6TAhSjY.net
spring boot、どのあたりがダメだった?
165:デフォルトの名無しさん
23/12/24 10:46:02.28 TccaxxKr.net
SpringBootはアノテーションつけてなんやかんやできるの便利だと思う
166:デフォルトの名無しさん
24/01/01 03:21:32.14 gRe115Q6.net
あけましておめでとうございます
ことりんもよろしくおねがいします
167:デフォルトの名無しさん
24/01/01 03:59:33.09 ayAmvFgl.net
200gくらいでPSPやGBAを遊ぶのに最適な機種は何ですか?
元がブラウン管のゲーム機は、RGB30の画面比率で満足しています
Powkiddy X55は293gでちょっと個人的に重いです
重くてあまりゲームをやらなくなると思います
Switch liteがそうだったので
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
97日前に更新/67 KB
担当:undef