Kotlin 6

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2019/06/22(土) 15:59:57.23ID:zj+KJbMh
JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう

※前スレ
Kotlin 5
https://mevius.5ch.net/test/read.cgi/tech/1544268581/
2019/09/01(日) 11:51:21.62ID:KATDlG57
>>206
開発は本の方が勉強しやすいね。
2019/09/01(日) 14:35:22.29ID:9BbodNVn
後追いいいじゃないか
先人が1ヶ月悩んだ結果を15分で乗り越えて経験積めるんだぞ
残り29日23時間45分はそれをもとにしたさらに別なことに使えるんだ
梃子の効果すごいだろ(間違い)
2019/09/01(日) 17:45:48.09ID:ugxLNVG7
>>202
香具氏とか15年ぶりぐらいに見た
2019/09/01(日) 17:55:48.27ID:AgLO+mY6
ぬるぽ
2019/09/02(月) 06:40:57.18ID:M41ulF/8
ガッ!
212デフォルトの名無しさん
垢版 |
2019/09/02(月) 12:54:07.77ID:/e661u5A
香具師の木
2019/09/02(月) 16:49:42.23ID:rC6R2Kxv
かぐ・・香具師
2019/09/02(月) 22:15:36.95ID:bAKekKnt
振り返れば香具師がいる
2019/09/03(火) 13:18:29.16ID:uD7mrZbr
パーサーコンビネーターって無いんかな
216デフォルトの名無しさん
垢版 |
2019/09/03(火) 14:26:04.23ID:6Dqkf6EJ
今からプログラミングを学ぶとしたらjavaよりkotlinのほうがいいよね?
217デフォルトの名無しさん
垢版 |
2019/09/03(火) 14:34:14.84ID:fMS/rXUz
まあそうだろうな
2019/09/03(火) 14:39:57.01ID:SNzApyUr
これマジ?
2019/09/03(火) 15:39:56.36ID:Z/DGFcDe
内部DSLで無茶するよりコード生成の方が最終的には小回り効いて好きだな
2019/09/04(水) 19:59:15.19ID:juCQidKM
>>219
DSLは汎用ライブラリのために丁寧に設計する時用かな。
スキルによるだろうけどDSLのライブラリを使いたいとは思うけど、作りたいとは思わななかった。
2019/09/06(金) 18:04:10.08ID:ntx8q56D
もうAndroid Javaの仕事はないぞ
Kotlinがわからないやつに仕事はないぞ
2019/09/06(金) 20:10:18.09ID:+qwVl2yS
Kotlinでマウントするのはさすがに無理筋
こんなもんJavaわかれば誰にでもできる
223デフォルトの名無しさん
垢版 |
2019/09/06(金) 20:29:16.58ID:cFgJ4jGo
JavaができるならいずれはKotlinもできるようになるだろうがすぐにではない。
すぐにできたとしても最初の内は Kotlin らしくない Kotlin の良さを生かし切れていない「セミコロンなし Java」みたいな、何年後かに自分で読み直すと修正したくてしたくてたまらなくなるようなプログラムになるであろう。
2019/09/06(金) 20:56:07.38ID:f+pPgM/V
つーか何を使えるかじゃマウントとれないわ
225デフォルトの名無しさん
垢版 |
2019/09/06(金) 21:01:33.69ID:cFgJ4jGo
実は俺、N88BASIC(86)も使えるんだ(キリッ
2019/09/06(金) 21:48:01.99ID:hgPplejZ
実は俺R3000のアセンブラ使えるんだ…
2019/09/07(土) 00:23:23.27ID:C+Vj3AQn
アセンブラは価値があるかもだな。
どちらかというと何を作れるか、
もっと言うなら何を作ったことがあるかが大事かと。
2019/09/07(土) 07:50:58.59ID:o13lKSsS
Kotlinって結局のところJVM言語のひとつなんじゃない
2019/09/07(土) 08:37:16.28ID:C+iY+EtG
そうだけど、それがなにか
2019/09/07(土) 12:06:44.46ID:beTJlJpp
コットリーン!!!
2019/09/07(土) 13:16:09.14ID:6re/woh0
javaはkotlinに変換できるのに
kotlinはjavaに変換できないのか?
2019/09/07(土) 13:21:40.70ID:C+iY+EtG
する必要がないから
2019/09/07(土) 13:32:09.09ID:Z+q8qP+s
>>231
できると思うよ。
kotlin→jvmコード→逆コンパイル
2019/09/07(土) 14:16:30.85ID:C+iY+EtG
逆コンパイルしたやつってかなり非効率なコードしてそう
2019/09/07(土) 14:20:04.10ID:6re/woh0
あ、すまん、回答ありがと
実際にjavaにしたいわけじゃない
将来的にkotlinだけの巨大なスパゲッティを見たときに正しく読めるかな?と不安になってね
236デフォルトの名無しさん
垢版 |
2019/09/08(日) 14:12:59.11ID:vQDbHeJD
Kotlin使ってもなおスパゲッティになるようならJavaに変換したらもっと凄いスパゲッティになるのではないか?
237デフォルトの名無しさん
垢版 |
2019/09/08(日) 14:21:36.92ID:vQDbHeJD
Javaで書くと冗長な感じになる表現を小さくまとめられる事が多いしKotlinはそういうのも目標にして作られた言語だからな。
だからJava→Kotlin変換をするとだいたいは量が増えて複雑怪奇なソースになると思う。
238デフォルトの名無しさん
垢版 |
2019/09/08(日) 14:22:16.25ID:vQDbHeJD
逆だ。Kotlin→Java変換ね。
2019/09/08(日) 14:42:39.98ID:g2jzsvZp
作るのはまだjavaでいいだろうけどkotlinをネイティブで読めるようにはなりたい
2019/09/08(日) 14:45:06.45ID:laN+P70G
Java読むよりKotlin読む方がすんなり入ってくる
2019/09/08(日) 16:18:39.78ID:g2jzsvZp
>>240
完成品はね
でも製作途中で何処かがおかしいんですとか相談に来られても見れない
2019/09/08(日) 20:13:33.90ID:/L5LYKIY
javaをkotlinに変換すると大体20%ぐらい減る
2019/09/08(日) 20:48:04.68ID:h749KvV3
開発中の任意のタイミングでKotlinの方が分かりやすいと思うけど
244デフォルトの名無しさん
垢版 |
2019/09/09(月) 23:58:48.28ID:66UIYaje
今まで買ったjavaの本、全部kotlinにならないかなぁ…
逆引きのkotlin版ってないの?
2019/09/10(火) 02:20:28.10ID:haS0qyWJ
作ってけれ
2019/09/10(火) 07:03:13.64ID:x/dcDmPS
java見ながらkotlinにして書いてると
つまずいたときにjavaでいいやってなる
変換はなんとなくわかるけど、省略するとこがいまいちわからん
どうやら自分は省略すればいいとこを無理に変換しようとしてるぽい
そしてまたjavaを書く
2019/09/10(火) 07:46:08.16ID:EO8p3gy7
書きやすい方からでいいよ

言語の慣れもあるけどプログラム経験の方が重要
プログラムイディオムや関数型の理解などが進めば
言語の切り替えもスムーズになる
2019/09/10(火) 09:54:29.30ID:hogKSn/2
向いてないから死ね
249デフォルトの名無しさん
垢版 |
2019/09/10(火) 12:42:23.43ID:rIrXed8C
むきむき
250デフォルトの名無しさん
垢版 |
2019/09/11(水) 21:52:55.09ID:+fGXXck4
速習 Kotlin: Javaより簡単!新Android開発言語を今すぐマスター 速習シリーズ Kindle版
山田祥寛 (著)

まあまあ、良かった。Delegate、移譲の部分が消化不良だが、byっていうキーワードでメソッドcallの時にReceiverを取り替えられるって事がわかった。
by Delegate()でa.someMethodっていうメソッド呼び出しをDelegateオブジェクトのsomeMethod呼び出しへと変換できるらしい。
someMethod呼び出しの中でNotificationを行うとかの応用ができる。

lazyとかっていうオブジェクトがよく解らんかった。動かしながら理解しないとだめだな。本を読んだだけではピンと来ない。
251デフォルトの名無しさん
垢版 |
2019/09/11(水) 21:57:51.62ID:+fGXXck4
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}
252デフォルトの名無しさん
垢版 |
2019/09/11(水) 21:59:48.92ID:+fGXXck4
>>251
Genericsの汎用型、型パラメータの書き方はKotlinの方が好みだな。
e.g.
interface ISome<T: U> {…}
253デフォルトの名無しさん
垢版 |
2019/09/11(水) 22:04:19.76ID:+fGXXck4
他言語プログラマのためのKotlin基礎 Kindle版
Independent Laboratory (著)
その他()の形式およびエディションを表示する
Kindle版
¥0
Kindle Unlimited では、このタイトルや100万冊以上の本をお
254デフォルトの名無しさん
垢版 |
2019/09/11(水) 22:05:44.19ID:+fGXXck4
>>253
次はこれ読んで見る。
2019/09/11(水) 22:18:33.59ID:4pyg+RzE
山田しょうかんってひとは良い印象がある
2019/09/12(木) 07:23:50.51ID:W3DZId8k
漏れのフレームワーク本の著者の評価では、
掌田津耶乃がトップで、山田祥寛は2番目

山田は100名まで、1人4万円の講座もやってた
2019/09/12(木) 08:06:27.87ID:lapELpAL
英語の本でいいのある?
逆引き的な辞書的なサンプル集的なやつ
2019/09/12(木) 08:34:44.36ID:Cr8f/Gnu
スレチ
2019/09/12(木) 08:36:35.68ID:DXT4s2Ch
コピペグラマはおとなしくJavaにしとき
2019/09/12(木) 08:38:14.19ID:lapELpAL
あ、kotlinの英語の本です
技術英語なんて日本語の本と書いてあることはだいたい同じだから
2019/09/12(木) 09:14:06.31ID:o/qdyccE
>>256
漏れなんて言い方久しぶりに見たよ(藁)
262デフォルトの名無しさん
垢版 |
2019/09/12(木) 09:27:48.98ID:sCqf+kbI
>>256
>掌田
この人の本、めったに当たりが無い。
Rubyの本は良かったな。特に、CGIの部分。Rails出現以前の本だった。
この本でhttpdがCGIをどう扱ってるか理解した。
httpのputリクエストのrequest headerをRubyアプリは、stdinから取り込むと知ったのだ。

それまでコマンドライン引数でrequest headerを受け取るのか?
はたまた、環境変数で受け取るのか不思議だったのだ。
263デフォルトの名無しさん
垢版 |
2019/09/12(木) 09:37:40.30ID:mRFzyQxg
more
264デフォルトの名無しさん
垢版 |
2019/09/12(木) 09:39:32.11ID:mRFzyQxg
>>262
言語は関係ない。とにかく標準入力から読めば良いのだ。
2019/09/12(木) 09:54:54.56ID:xaz6/6gJ
つのだは糞
ネットで調べればすぐわかるような入門的なことしか書かない
266デフォルトの名無しさん
垢版 |
2019/09/12(木) 20:03:11.63ID:sCqf+kbI
>>253
この本、Win10環境で、Kotlinソースをコンパイルする方法が、巻末にあって良い!おまけにsource code download serviceもいい感じ。

Macbook Proをお布施代として払うのはこれからは遠慮したいし。
もう一冊の本、>他言語プログラマのためのKotlin基礎 Kindle版
こいつは、InteliJ IDEAだかなんだかのinstall方法からの説明で、思いやられる。

おれは、Vim + quickrun.vimで動かしたいのだ。おまけに、書籍掲載のソースのdownloadサービスも無し。
267デフォルトの名無しさん
垢版 |
2019/09/12(木) 20:25:58.64ID:sCqf+kbI
>>266
他言語…本は、すぐ読めた。山田本には無いpackage文の説明があっていい感じ。
package sample.pkg
class Person(val name: String) {…}
って書ける様になるらしい。

それから、
kotlin-prior-learning-book.pdf
へのlinkがあって、これもこれから読んでみる。
268デフォルトの名無しさん
垢版 |
2019/09/12(木) 20:36:51.69ID:sCqf+kbI
>>267
package文でクラス、メソッドをexportして
import文でクラス、メソッドをimportする訳だ。
import sample.pkg.Person
とか
import sample.pkg.*
とか、
import sample.pkg.launch as launch
でlaunch関数の呼び出しをsample.pkg.launchではなくlaunch一発記述OK.
269デフォルトの名無しさん
垢版 |
2019/09/19(木) 21:23:28.48ID:Q9xACwLf
var f = syori()
while (f != null){
 syori2()
 f = syori()
}

これ↑かっこいい書き方ない?
2019/09/19(木) 21:36:59.32ID:hGl0DjU/
while (syori() != null){
 syori2()
}
271デフォルトの名無しさん
垢版 |
2019/09/19(木) 22:16:26.03ID:Q9xACwLf
>>270
それそれ
さん
2019/09/19(木) 23:02:26.25ID:lHaCaaPO
generateSequence(::syori).forEach { syori2() }
2019/09/21(土) 14:27:28.60ID:+0XYo8lQ
作ればわかる!のkotlin対応版いいね
androidをkotlinで始める人で、とにかくサンプルを書き写したい!って人にお勧め
書け!ってとこを色分けで指示してあるからどこに書けばいいのかも分かりやすい
3.5環境のkotlinXのチェック入った状態でウクレレ前までやったけどimportを自分で書こうとしなければ変なエラーもなく普通に実行できた
中身が分かったか?と言われたらこれからだw
頑張る
274デフォルトの名無しさん
垢版 |
2019/09/21(土) 14:55:08.61ID:Ydb2EKuB
>>273
>作ればわかる

作ればわかる! Androidプログラミング Kotlin対応 10の実践サンプルで学ぶAndroidアプリ開発入門 単行本(ソフトカバー) – 2019/6/19
2019/09/21(土) 15:14:04.38ID:+0XYo8lQ
>>274
それ
今はAndroidアプリ開発の教科書 kotlin対応 基礎&応用力をしっかり育成 ってのやってる
実は最初にこっち買った
今なら読める
276デフォルトの名無しさん
垢版 |
2019/09/22(日) 00:45:59.55ID:8WvCpGjB
val adapter = mSpinner.adapter //Spinner
for (i in 0 until adapter.count) {
 if (adapter.getItem(i) == ”ここ”) {
  mSpinner.setSelection(i)
  break
 }
}
これ↑もっとかっこよく書ける?
277デフォルトの名無しさん
垢版 |
2019/09/22(日) 07:05:45.40ID:T60Ukkg+
>>275
>Androidアプリ開発の教科書

基礎&応用力をしっかり育成!Androidアプリ開発の教科書 Kotlin対応 なんちゃって開発者にならないための実践ハンズオン

これ良さそうですね。消費増税前に買っちゃおうかな。
2019/09/22(日) 07:57:26.70ID:Lf1jgTon
>>277
今年から趣味で休日プログラマー始めた初心者なんだけどSQLサンプルあるから最初にこれ買った
Android studioに慣れてなかったから初心者にはちょっと難しいかな
だから少し慣れた人にお勧め
こういうサンプル書いてある本は実際に動いて満足感得られるし紙上で矢印とかペン入れできるし理解を得るには良いですよね
サンプル載ってる本は他にもjavaも含めて5冊くらい買っちゃった
2019/09/22(日) 08:50:40.04ID:/w4tjdNw
この一連の自己レス臭い本の宣伝は何なんだ
こんな所でやっても効果無いだろ・・・
280デフォルトの名無しさん
垢版 |
2019/09/22(日) 09:31:14.71ID:T60Ukkg+
>>278
解る。

Visual Studio本、多量に買った。▶仕事でGUIアプリ作った。

Xcode本、10冊位買った。▶仕事でアプリ作ったが、職場で採用。

Android Studio本、1冊買った。Yahoo黒帯とか言うやつ▶趣味で始めたが、時間が取れない。◀イマココ
281デフォルトの名無しさん
垢版 |
2019/09/22(日) 10:20:57.94ID:Hc6O2uDq
>>276
searchのところは、ArrayAdapter#getPosition(T)がある。
2019/09/23(月) 13:11:46.19ID:g+evEEch
javaの逆引きだいたいkotlinに直した
2019/09/25(水) 09:07:52.84ID:pkvL+Jrl
>>273だけど
もう一度最初からやってみたらビジネスカードのところで躓いた
どうやらandroidXになる前に作ってたぽい
PreperenceManagerがXになって廃止になったとかなんとか、
一応他の方法で回避できたけど全くの初心者はここで立ち止まると思う
284デフォルトの名無しさん
垢版 |
2019/09/25(水) 09:28:46.36ID:pkvL+Jrl
>>283
あらら、ダメだ
血圧アプリのRealmの書き方もandroidXに対応してないな
ん〜悩む
2019/09/25(水) 13:10:41.63ID:WDVOBhzi
スレチだボケ
2019/09/25(水) 13:19:48.08ID:TKCpLHdM
kotlinのsynchronizedってdeprecatedなんすかね
2019/09/25(水) 18:43:43.29ID:ezuOeX2e
サクッと調べた限りはそんなこと書いてないな
2019/09/26(木) 08:50:49.34ID:eMNKcSXH
>>287
CommonとNativeでdeprecatedって意味か

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/synchronized.html
2019/09/27(金) 00:43:53.70ID:4sT2Ig8J
Kotlinの文字列中に変数かけるやつ
依存関係が逆転してる感じですごい嫌だなーとおもってたら
C#まで真似しやがった
世も末
2019/09/27(金) 05:17:59.01ID:JbCMTE4l
あんなの単なるStringBuilderの構文糖衣じゃん
あと変数でなく式な

"aa${10+1}bb"

StringBuilder("aa").append(10+1).append("bb").toString()
2019/09/27(金) 07:29:08.44ID:rzcsvF8H
依存関係が逆転???
2019/09/27(金) 07:45:12.85ID:boczQ2su
どういうことなの…
2019/09/27(金) 08:06:25.68ID:5FaPwfxq
むしろ素直だと思ってる
2019/09/27(金) 08:07:07.40ID:yKrr7IDu
""に値を設定するんでなく""から外を参照する形になって文字列が文字列じゃなくなった
書いてある文脈中でしか使えない。フォーマットと違ってどっかよそに貼り付けてもそれだけじゃ動かんくなる
変数の名前同じにしとけとかねーよ

最初から式ならまだしも""の中が実質文字列じゃないとか勘弁
2019/09/27(金) 08:40:34.43ID:UchHMfCe
sh の "〜" が遥か昔から中の変数等を展開してくれる仕様
代わりに '〜' を使うと変数等の展開をしない
2019/09/27(金) 14:52:54.16ID:3totJIv/
大体の言語には埋め込みと.format呼ぶ2つのやり方があるんだから、簡単に文字列結合したいときと固定フォーマットを定義したいときで使い分けたらいいんじゃないかな?
2019/09/27(金) 17:44:05.63ID:5yEB7nBc
言いたいことは分かるけど、新しいものを受け入れられなくなるってのはこういうことなんだな、と思った
298デフォルトの名無しさん
垢版 |
2019/09/27(金) 17:47:07.30ID:/3CUbuCi
俺はシェルみたいな埋め込みができて素晴らしいと思ったけどね。
楽だし。
2019/09/27(金) 19:04:48.74ID:f2vxlf0q
Ruby の文字列・ヒアドキュメント内の式展開だろ。
"abc = #{ 式 }"

Rubyを真似て、Python, JavaScript(JS), Elixir でも採用された。
JS(ES2015)で言う、テンプレートリテラル
300299
垢版 |
2019/09/27(金) 19:13:15.44ID:f2vxlf0q
ERB(埋め込みRuby)と同じ

最初は、HTML の文字列をつなげて、HTMLを作っていたのが、
発想を逆転させて、HTMLの中に、<% 〜 %> で、Rubyの式を書けるようにした

<p>
Name: <%=h name %>
</p>

h は、HTMLエスケープをする関数
301デフォルトの名無しさん
垢版 |
2019/09/29(日) 16:07:58.39ID:YU+7wDew
名前がアニオタっぽくて嫌
302デフォルトの名無しさん
垢版 |
2019/09/29(日) 17:21:17.15ID:2aSU+D40
琴輪
2019/10/01(火) 13:30:15.16ID:uExhZ2M/
kotlin nativeが成熟するのはいつなんだろ。。。
2019/10/01(火) 13:48:25.74ID:EybpXLwx
try kotlinとかの上に出てくるネコのシルエットって何ですか?
ネコちゃんの名前が知りたい
2019/10/01(火) 14:14:20.72ID:zC4XWk/X
>>304
ギットの猫?
Monalisa モナリサです
306デフォルトの名無しさん
垢版 |
2019/10/01(火) 16:05:31.80ID:PlApYvsP
∧_∧  / ̄ ̄ ̄ ̄ ̄
( ´∀`)<  ・・・
(    )  \_____
| | |
(__)_)
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況