Kotlin 5

レス数が900を超えています。1000を超えると表示できなくなるよ。
2018/12/08(土) 20:29:41.41ID:oXOQORcd
JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう

※前スレ
https://mevius.5ch.net/test/read.cgi/tech/1531818027/
2019/05/28(火) 06:33:15.65ID:f4BtQ/HR
val text = ""

って

val text :String = ""

って書いた方がいい?
2019/05/28(火) 07:05:11.16ID:Bdaqy37y
>>802
やるメリットは特にない
むしろ本当に宣言通りStringかどうかチェックするぶんビルド遅い
2019/05/28(火) 08:10:42.72ID:sEeuOOEX
>>802
いらない。何をどう見ても明らかにStringだから意味ない。
2019/05/28(火) 23:54:42.49ID:g+jKUI0N
>>802
Javaのvarで似たような議論がある。
https://orablogs-jp.blogspot.com/2018/03/style-guidelines-for-local-variable.html
2019/05/29(水) 01:39:37.10ID:KhqOXHGU
Kotlinに、SwiftのExpressibleByStringLiteralみたいなのが無くて本当に良かったと思う
あれは呪いだ
2019/05/29(水) 02:17:57.59ID:Qb2i3AGM
>>802 は、IntelljIDEA か Android Studio 使ってないのかね?
警告消して緑色になるようがんばれ
おれは警告にどうしても従えない場合でも、アノテーション使って絶対緑色にする
2019/05/29(水) 04:33:25.97ID:XoYuC6Fl
Charは'a'なのね
2019/05/29(水) 06:05:24.96ID:ouhOLTM0
>>806
なにそれ?
2019/05/29(水) 07:50:04.16ID:KhqOXHGU
>>809
https://ideone.com/3YQTSZ

文字列リテラルが本当に文字列なのか分からなくなるやつ
2019/05/31(金) 14:21:13.30ID:Jjn+Dq6k
>>806
PHPだと1リクエストごとにFWの初期化処理を行っているのが遅い理由でしょ
特にLaravelは読み込むファイルも多いし重い

他の言語だとアプリケーションサーバ起動時に一回だけ初期化処理をするので1リクエストあたりの処理が少ない

PHPでもSwooleやReactPHPなどを使えば同じことはできるけど、まあ既存のFWを乗っけてもバグりやすいだろうね
2019/05/31(金) 18:46:44.28ID:R6sHUJ5K
なんの話だよ
2019/05/31(金) 22:32:24.72ID:VAUlN9pw
やべぇやつが来たなwww
2019/06/01(土) 07:53:39.61ID:6Ne8KtIA
普通に誤爆でしょ
815デフォルトの名無しさん
垢版 |
2019/06/01(土) 11:37:30.64ID:OCCxHMSa
android用途:元気
サーバーサイド用途:全く流行らず
kotlin/native: 瀕死
kotlin.js: 死亡

現状こんな認識なんだけど合ってる?
2019/06/01(土) 11:43:16.53ID:HBXiOctn
Xamarin程の糞はない
2019/06/01(土) 12:20:19.48ID:oJ6AvSx+
>>815
Kotlin nativeはなんかもう不死鳥とかみたく蘇ったりする予定なので書いておいてください
818デフォルトの名無しさん
垢版 |
2019/06/01(土) 14:59:33.17ID:7bqJsR1f
身内のGraalにトドメ刺されて終わりだろ。
2019/06/01(土) 15:47:15.77ID:v1/bDBif
/NativeがGraalにやられても/JVMがスイッチするから大丈夫
2019/06/01(土) 16:20:49.17ID:4wvh7Cn2
>>815
合ってる
821デフォルトの名無しさん
垢版 |
2019/06/01(土) 16:55:01.52ID:uuPo6pHP
nativeはまだ作成中みたいな感じなので瀕死とは違うと思うが
822デフォルトの名無しさん
垢版 |
2019/06/01(土) 17:46:40.68ID:xELmXxSQ
Kotlinを勉強し始めたんだけどさあ
これってレファレンスを見てエディタで打ち込む->kotlincでコンパイル=>javaで動かす・・・・ってのを繰り返さないとならんの?
Swiftに言う「swift asdf.swift」みたいなのに相当するコマンドはないのかしら
823デフォルトの名無しさん
垢版 |
2019/06/01(土) 17:49:07.58ID:FZbdo0L3
そうか。合ってるか。。

サーバーサイド kotlinが流行ってないのは何でなんだろ。
現状問題なく使えるように思うけど、ほとんど開発案件出てこないね。
2019/06/01(土) 17:50:33.82ID:v1/bDBif
>>822
IntelliJ(community版)を使おう
再生ボタン一つで済む
825デフォルトの名無しさん
垢版 |
2019/06/01(土) 17:51:43.68ID:FZbdo0L3
>>822
まずintellij(IDE)をインストールしないと始まらない
2019/06/01(土) 18:32:24.41ID:7x5on0RN
このスレ定期的にkotlinc使う奴が出てくるよな
どこぞの入門サイトに書いてあるんかね
どう考えてもintellij使う前提の言語なのに
2019/06/01(土) 18:32:52.15ID:7x5on0RN
>>823
サーバーサイドKotlinで生きていきたいけど、仕事なさすぎて難しいよなあ
2019/06/01(土) 19:41:31.36ID:4wvh7Cn2
>>822
Kotlinを書くのにエディタを使うのがそもそも間違ってる。
無料版でいいからIntelliJ使え。
2019/06/01(土) 20:59:16.14ID:f9ycqMAV
うちはサーバーサイドで使ってるわ
ほぼ俺しか書いてないが
2019/06/01(土) 22:10:50.15ID:GQlgchjf
YouTube に動画をアップしてる、KENTA でも、
サーバーサイドの、Elixir, Kotlin などを受注するのに苦労してる。
彼は、変わった言語の仕事に、こだわる

こういう仕事は、滅多に出回らないから、ツテから入るのかも。
KENTAは千以上、名刺交換してるとか

彼は、GUI は嫌いらしい。
画面の修正で、時間を食うのが、嫌いらしい

数ピクセル、位置が違うとか、
修正したら、違う人が、元に戻せと言ったりw

GUI は、技術を学ぶ、時間効率が悪いから、嫌いらしい。
だから、サーバーサイドの仕事を取る
2019/06/01(土) 22:33:39.21ID:v1/bDBif
歌詞かな
2019/06/01(土) 22:48:31.29ID:ZDO2fOJr
サーバーサイド普通に使ってるぞ
lombok駆使するよりいいと思う
2019/06/01(土) 23:07:41.16ID:jNRuoNdG
>>830
海外の方?
2019/06/01(土) 23:08:06.44ID:vdsZQvk5
ポエムだぞ
835デフォルトの名無しさん
垢版 |
2019/06/02(日) 01:28:53.78ID:/69WsxDT
>>830
「、」で区切り過ぎ。その文章の場合は全ての「、」を削除した方が読みやすい。
836デフォルトの名無しさん
垢版 |
2019/06/02(日) 01:33:22.19ID:/69WsxDT
>>822
IntelliJ 使った方が楽だが、kotlinc でコマンドラインでやるとしたら最後の実行は kotlin コマンドでできるよ。

kotlinc xxx.kt
kotlin XxxKt

みたいにする。
kotlin コマンドは環境変数セットしたりして最終的に java を動かす。
837デフォルトの名無しさん
垢版 |
2019/06/02(日) 10:05:23.69ID:80ueDuoq
で、サーバサイドkotlinのこれからについての認識なんやけど合ってる?

・実戦投入可能なレベルに達している

・goが選ばれるような案件では以下の点でgoに勝てないので流行らない
→粒度の細かいマイクロサービス:deploy容易性がgoに劣る、kotlinの抽象力が活き辛い
→aws lambdaとか:上記に加えてjvmが温まるまで遅い

・モノリシック案件のbetter javaとしては第一候補
→フルスタックFWが有望でspring bootが最有力
→必然的にSIerの仕事が多くなる

・SIerが最重要視するのは実績
→実績を積むには待つしかない
838デフォルトの名無しさん
垢版 |
2019/06/02(日) 10:08:10.88ID:80ueDuoq
kotlin/nativeは「hello world」を「hello world!」にするだけでビルドに7sかかるんやけど。。
こんなもんなん?何かやり方間違ってるのかな。
2019/06/02(日) 10:25:57.88ID:klo8W86L
>>837
受託の業界は知らんけど、WEB業界なら今までJavaやらScalaやら使ってたところはもう大体使えるところから使い始めてる。
ただそもそも日本のWEB業界ではJavaが不人気過ぎてどうしてもニッチの部類に留まってるわな。

生存戦略としてはとにかく仕事の多いRailsやらをやるか、仕事は少ないが応募者も少ないKotlinを極めるか、まあどちらでもありっちゃあり
どうせ5年後には違う技術が台頭してるし
2019/06/02(日) 11:16:42.46ID:uIkDYzKb
既存のJavaからKotlinはあっても、そもそも新規でJVM選択するかなっていう
2019/06/02(日) 12:06:59.02ID:TDNwqEN9
sunが震え声で
ハードの進化でJVMのパフォーマンスは向上していくから…
って言ってから何年経ったのか
2019/06/02(日) 12:13:33.66ID:UpSyXruc
PHPで作ってたけどパフォーマンスが出なくなって来たからJavaで作り直す、みたいなのはよく聞くな
同じ理由で昔はRailsからJavaってのもあったけど最近のRailsは速いからあまり聞かなくなった
2019/06/02(日) 14:27:04.47ID:Kbt/vpV3
Rails ができれば、コピーのCakePHP も出来る

違う言語だけど
844デフォルトの名無しさん
垢版 |
2019/06/02(日) 14:47:02.52ID:530n/55/
Rubyキチ、無視しろ。
2019/06/02(日) 14:52:37.88ID:LUUGWxBq
php8()
2019/06/02(日) 15:29:19.09ID:sHGNUntV
新規でサーバ側でkotlinで作ってもらったけど
少数派なのか。
まあ、何ができるかが大事だからいいけど、流行に左右されるのは厳しいね。
847デフォルトの名無しさん
垢版 |
2019/06/02(日) 16:54:37.31ID:/69WsxDT
>>841
20年ぐらい?
まあ確かにあのWindows95だの98だので動かしていた時よりは速くなったけどね。
848デフォルトの名無しさん
垢版 |
2019/06/02(日) 21:44:03.80ID:xSU5v8RX
結構Java嫌いな人多いんだね。自分もJavaは好きじゃないけど。

>>840
Javaが検討される規模のWEBサービス作る時にJVM以外の選択肢って例えば何かあるのかな?

>>841
Javaの出始めと比べたら劇的に進化してSunの言う通りになったと思うけどな。
Java離脱組もパフォーマンスじゃなくて開発効率やサービスの拡張性を気にしてる。

>>846
少数派なのはそうなんだけど、依頼側から見たサーバーサイドkotlinのデメリットは
・現状では開発者が少ない=人が集まらないことによる遅延、開発者単価
・実績がない=未知の何かが起こるかも
なのでローンチ出来てる時点でデメリットは乗り越えているし、
Android界隈では確固たる位置にいるからこの先メンテ人材が見つからない心配もない。(←ここが流行に左右されて困るポイント)
悪くない選択だったと思うんだけど
849デフォルトの名無しさん
垢版 |
2019/06/03(月) 23:56:34.84ID:JEDLjuFd
JVMの性能は実行時最適化が強みだから
ベンチマーク系は不利
巨大なプログラムで長時間の動作において有利なはず
にもかかわらずベンチマークでもそこそこ速いんだからすごいのでは
2019/06/04(火) 00:08:19.43ID:8w4/id00
いや実行時最適化は繰り返し実行される処理に対して効くからベンチマークには強いぞ
立ち上がりの遅さとか、ベンチマークに現れない体感的な部分がJVMは遅い
事実上サーバー専用だから仕方ないが
2019/06/04(火) 02:28:23.05ID:Xu6aOKJJ
JVMはガーベッジコレクションでスローダウンするから未だに使い物にならない。
一番大事な時に直撃で機会損失が億いくと違約金も凄まじかったぜ。
2019/06/04(火) 06:40:04.13ID:1zKcF7rp
果てしなく嘘くさいな
シビアなシステムでどれだけ使われてると思ってるんだ
2019/06/04(火) 07:41:14.05ID:zxBnyDUV
10年以上前からあるコンカレントGCすら知らないような会社なんだろう
2019/06/04(火) 08:08:31.64ID:LGhp/e10
業務用Javaに関しては新機能が使われずなおかつアプデなしで10年経過とか普通にあるからな
それはそれでもいいから対外的にJava語るなって話なんだが
2019/06/04(火) 08:20:13.77ID:1zKcF7rp
例のみずほのサグラダファミリアもJava1.5という噂を聞いたけどマジなんかな
856デフォルトの名無しさん
垢版 |
2019/06/04(火) 10:17:08.75ID:prB+PlYz
ネイティブでgc使わないようなコードも出せるようになればなんとかなりそうな気もするが、そうするとライブラリもそれ用のを使わないとダメか。
857デフォルトの名無しさん
垢版 |
2019/06/04(火) 11:48:04.89ID:+GlxYcps
graalvmでできるぞ
2019/06/04(火) 12:44:23.82ID:zxBnyDUV
それ回収しないやつじゃないですかね
2019/06/04(火) 18:10:17.62ID:/4mAZqwS
JVMが使い物にならないという人が何を使っているのかとても気になる
2019/06/04(火) 18:49:03.68ID:Rd1vYitp
JVM入りの指輪使ってます!
861デフォルトの名無しさん
垢版 |
2019/06/04(火) 19:32:40.19ID:+GlxYcps
jvmの引数でもGCのラグを解消できるし
最新のZGCというのも出てきた
2019/06/04(火) 23:57:50.92ID:FDlJBmR7
JVMというかspring fwの起動が糞遅いのは分かる
2.0になって少しましになったけど…
2019/06/05(水) 01:12:19.63ID:PtZsxspX
springってそんな遅いっけ?
2019/06/05(水) 10:00:02.20ID:zKfENgey
気のせいかわからんがKotlinでspringやると遅いような気がする
2019/06/05(水) 10:01:33.26ID:C+IWDk26
Ktor流行って欲しい
2019/06/05(水) 10:13:38.35ID:gaDZjJ4I
>>876
ktorはマイクロサービス向き
kotlin/jvmはモノリシック向き
kotlin nativeが流行らないと無理やと思うで
2019/06/05(水) 13:28:31.33ID:B3mDB84e
>>864
コンパイル時間は長いと思うけど、アプリ本体は変わらん。
というかそもそもspring本体はJavaだし。
2019/06/05(水) 19:11:23.87ID:i1hhoL96
>>866
Ktorをその並びで並べるのはちょっと違うと思う。
869デフォルトの名無しさん
垢版 |
2019/06/05(水) 21:56:16.86ID:Nwu/rjvu
>>868
kotlin/jvmはJava代替でSIerによるフルスタックFW&モノリシック開発が向いている
kotlin/nativeはGo代替を目指していてWeb系企業のマイクロサービスが向いている
kotlin/jvm+ktorではGOに勝てるユースケースが無いので
ktor流行にはkotlin/nativeの流行も必須というのが自分の主張。
まあ異論はあると思う。ちなみにkotlin/nativeは応援してるしktorも流行ってほしい
870デフォルトの名無しさん
垢版 |
2019/06/06(木) 00:14:12.91ID:crlHsY/g
>>822
vim + quickrunで動くよ!
kotlinc, javaなんてコマンドを打つことはしない。
2019/06/06(木) 05:38:57.73ID:AHPkvIjM
>>869
言ってることは分からなくもない。
ただ視野が狭すぎるというか、そんな可能性を狭めなくていいと思う。
2019/06/06(木) 06:33:47.56ID:DDFFQDhW
そもそもKtorってJVM、というかServletに依存してね
2019/06/06(木) 09:26:51.24ID:B66i5Eyn
依存はしてなくね
2019/06/06(木) 10:59:43.79ID:72rhxhib
次のリリースでkotlin/nativeのbuild時間が改善されそう
リリースいつなんだろ。。
2019/06/06(木) 12:47:51.63ID:rJJBtVPp
利根川さんにでも聞け
876デフォルトの名無しさん
垢版 |
2019/06/06(木) 20:06:45.07ID:UUcOWqLu
kotlin/nativeはGraal(AOT)に勝てるかどうかすら怪しいのに、夢見過ぎだろ。
2019/06/06(木) 20:44:18.25ID:tk55iQ4S
ktsって誰も使ってなさそう
2019/06/06(木) 21:14:00.21ID:DsfM5wVX
Gradleで使う
2019/06/07(金) 08:15:36.89ID:XGKtoEgu
>>876
AArch64の対応が進んではいるもののGraalがiOSに対応するのは当分先
Kotlin/Native側も資産(ライブラリ等)不足やパフォーマンスの課題があるけどな
2019/06/07(金) 08:44:09.41ID:XGKtoEgu
>>879の補足

Graal側はAArch64/Linux対応が完成してからiOS対応をやるかどうか検討するとのこと
https://github.com/oracle/graal/issues/373#issuecomment-454697157

まだAArch64/Linux整備中の段階
https://github.com/oracle/graal/commits?author=sanzinger&;since=2019-05-15&until=2019-06-07

iPhone/iPadのチップ : A10〜A12X : ARMv8ベース
ARMv8の64ビットモードがAArch64
2019/06/07(金) 16:14:27.25ID:5OmdT0Za
kotlin/nativeのメインターゲットはiOS開発なんだろうと思う。
2019/06/07(金) 16:40:27.70ID:xSr7j0ut
普通に考えりゃそうだわな
883デフォルトの名無しさん
垢版 |
2019/06/07(金) 16:53:00.43ID:q0RmewW9
Swiftネイティブでいいじゃん、他にはUnityもあるし。
入り込む余地ないでしょ。
2019/06/07(金) 19:12:00.19ID:uzdYHfME
釣り針は大きすぎちゃいかんのだぞ
2019/06/09(日) 13:55:10.20ID:pv0ZpPmn
kotlin3大いいところ
・android標準という安心感(直ぐには廃れない)
・モダンな書き方ができる(arrowもあるし)
あと1つは?
2019/06/09(日) 14:23:05.48ID:LrdSIDEQ
>>885
Listが基本immutableなことやnull安全はモダンに含まれるのかな?
標準という意味ではGradleの記述言語としてもサポートされているので、廃れにくいかなと思っている。
個人的にはDSLを3つ目として挙げたい。
887デフォルトの名無しさん
垢版 |
2019/06/09(日) 14:43:33.75ID:zgQq0a06
JVMで動く言語でJavaのライブラリそのまま使えるのが良い
これに関してはKotlinである必用はないのだが、その他の利点の上に更にこれがあるのが良い
2019/06/09(日) 16:29:58.10ID:SDScvKJ1
最新のjavaも随分進化したから、そこまでkotlinにこだわらねえ。
kotlinがjavaや.netみたく自前の最初からnull安全なクラスライブラリ備えてるなら別だけど。
2019/06/09(日) 16:35:14.81ID:yULR2w5s
逆にあえてJavaを使う理由が特に思い当たらんからとりあえずKotlin使うわ
2019/06/09(日) 19:10:48.79ID:TX+aAcRC
Javaに新機能が追加されてもざんねんなJava部分が消えるわけではないので
可能であるなら最初からKotlinでやりたいかな
2019/06/09(日) 22:02:36.62ID:LrdSIDEQ
>>888
自分も最初はラムダもOptionalもあるからとそう思っていたけど、immutable programmingで行こうと思った時に、
Listがimmutableであることを保証する方法がないことに気づいてKotlinへの移住を思い切った。
immutable programmingはそれほど実現しなかったと反省しているが、
Kotlin/JSやbuild.gradle.ktsとかも出来たので後悔はしていない。
2019/06/10(月) 10:30:03.83ID:5WqM3fpA
うちももう新規追加は全部Kotlinだわ
だってJavaで書くメリットがマジで何もないんだもん
2019/06/10(月) 10:36:29.16ID:rgxxUvbF
javaで仕事してるやつ転職できなくなるぞ
894デフォルトの名無しさん
垢版 |
2019/06/10(月) 11:17:01.74ID:g6tidy/F
coboちゃんが入れ替わっただけの蛇腹は逝ってヨシ
2019/06/10(月) 13:43:04.79ID:5WqM3fpA
>>893
Java経験あるならKotlinなんてすぐ書けるから別に気にしないよ。
社員で雇うならどの言語で書いてたかはあんまり関係ない。
2019/06/10(月) 23:11:05.39ID:f1GGY3g+
kotlin書いてる人は何の仕事してるの?
やっぱandroid?
2019/06/11(火) 05:51:34.27ID:qT8Bq+lF
サーバーサイド
7割SpringBoot3割sparkその他
2019/06/11(火) 05:52:20.89ID:qT8Bq+lF
2年くらい前まで都市伝説レベルだったサーバーサイドKotlinも最近は勉強会でよく見かけるようになったんだ
2019/06/11(火) 07:18:21.72ID:G5A56vfp
できればkotlinで作りたいって言われてサーバー側のプログラムを作ってもらった。
DBサーバは別で画面制御だけ。

自分でも勉強しようと思ってこのスレッドを見てるところ。
2019/06/11(火) 15:06:52.23ID:1jV87VfI
そっか。サーバサイドkotlin順調に普及してきてるんやね。ワイの周り以外では。
うらやましい!
2019/06/11(火) 17:51:05.94ID:PKI+0nSq
ほぼ0だったのがようやく1になったくらいで、まだまだマイナーだけどね
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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