Kotlin 3
■ このスレッドは過去ログ倉庫に格納されています
0002デフォルトの名無しさん
垢版 |
2018/03/19(月) 04:27:15.39ID:GqsfT9Tb
理由はわからないけど(容量オーバーか何かかな?)前スレがストップしてたので立てたよ。
0003デフォルトの名無しさん
垢版 |
2018/03/19(月) 04:32:31.34ID:GqsfT9Tb
あ、ごめん。こっちの専ブラが不調で前スレストップしたように見えてただけだ。すまん。
前スレ終わったらこっち使ってくれ。
0004デフォルトの名無しさん
垢版 |
2018/03/19(月) 15:39:20.13ID:pEbY2e08
ついでだからあと三つくらい立てておいてくれ。
0007デフォルトの名無しさん
垢版 |
2018/04/02(月) 13:26:24.62ID:IY8Jb2od
Kotlinは不滅
0008デフォルトの名無しさん
垢版 |
2018/04/02(月) 17:30:29.36ID:Ph0908Uj
そろそろJavaの呪縛から逃れて使いやすくしてくれよ
多次元配列作るぐらい簡単にしてくれ
toとか変な構文使うのやめてくれ
0009デフォルトの名無しさん
垢版 |
2018/04/02(月) 21:10:26.99ID:rkNCA64G
開発環境最新にしたら、activity(getActivity)とかfragment(getFragment)とかがnullableになってるんですが、
これって!!を付けて回らないといけないんですかね
0010デフォルトの名無しさん
垢版 |
2018/04/02(月) 21:19:24.43ID:1zn7zSub
>>9
getActivity()は、nullになることあるから、!!だと落ちることあるよ。
ただ、Kotlinでのactivityは、変数じゃないから、スマートキャストが効かないという罠があるんで、かっこわるいけど、
activity?.let { activity->
}
とかにしてる。
0011デフォルトの名無しさん
垢版 |
2018/04/02(月) 21:50:40.62ID:OOV7t+ws
前の前スレ
http://mevius.5ch.net/test/read.cgi/tech/1456505161/

公式サイト
https://kotlinlang.org/
公式ブログ
https://blog.jetbrains.com/kotlin
コードを貼れる所
http://rextester.com/l/kotlin_online_compiler

Google、KotlinをAndroidアプリ開発言語に選定
http://jp.techcrunch.com/2017/05/18/20170517google-makes-kotlin-a-first-class-language-for-writing-android-apps/

他に何か貼るものあります?

あと前スレの1000は宣言通りライセンスを買って下さいww
0012デフォルトの名無しさん
垢版 |
2018/04/02(月) 22:06:03.99ID:rkNCA64G
argumentsもnullableになってるんですが、
val value: Int by lazy { arguments.getInt(Key) }
は、
val value: Int by lazy { arguments?.getInt(Key) ?: -1 }
みたいな感じでしょうか
0014デフォルトの名無しさん
垢版 |
2018/04/02(月) 22:53:14.02ID:Pr6o1s5H
>>12
!!を付けて回ればとりあえず更新前の開発環境での動作と同じにはなる (nullの場合例外になる動作)

ちゃんと対処するならメソッドの役割りや仕様をどうしたいかによる
それ次第では value: Int? にする選択肢もある
0017デフォルトの名無しさん
垢版 |
2018/04/03(火) 08:39:04.35ID:TL+Cqj0B
1000 名前:デフォルトの名無しさん [sage] :2018/04/02(月) 11:00:15.69 ID:k9cTFSac
1000ならXamarinのライセンスを1000個買う
0019デフォルトの名無しさん
垢版 |
2018/04/03(火) 09:36:48.16ID:Lqpq4yV4
なんという愚かな宣言
0024デフォルトの名無しさん
垢版 |
2018/04/03(火) 16:43:12.37ID:uRQ9gZg0
小鳥んとSwift比べたら、断然小鳥んの方が書きやすいように思う
反論あれば言ってくれ
0026デフォルトの名無しさん
垢版 |
2018/04/03(火) 18:34:30.53ID:9lrj/vMM
言語自体には断然っていうほど違いはないんじゃね。
個人的にはスイーフトンはメモリのことなど意識する必要があるのがイケてないと思う。
0031デフォルトの名無しさん
垢版 |
2018/04/03(火) 21:04:24.12ID:0PMfvRfe
そういや Java 10 が出てて、それで kotlinc 動かしたら警告出なかったよ。
その他の動作まで全て意図した通りになるかどうかは知らないが。
0032デフォルトの名無しさん
垢版 |
2018/04/03(火) 21:08:49.35ID:bD+hWL4a
ハロワ書くまでにすら依存性に悩まなければならない。でもそれが、KotlinをはじめとするJVM言語なんだよね!
0033デフォルトの名無しさん
垢版 |
2018/04/03(火) 21:14:54.14ID:9lrj/vMM
いや俺の言いたいのはそういうことじゃなくて、、
まあいいや、めんどいからXamarinでもいじって来る
0034デフォルトの名無しさん
垢版 |
2018/04/03(火) 21:19:08.36ID:0PMfvRfe
そういや Kotlin ネイティブはガベコレをどうするつもりだろう?
特定のライブラリ使った場合のみ使われるようにするのかな?
0036デフォルトの名無しさん
垢版 |
2018/04/04(水) 00:56:40.14ID:Ssb/YhXn
>>35
使えないとは思ってない。特定のライブラリを経由するなら使えるようにするのかなって話だよ。
というのは用途によってはない方が良いだろうから。ありもなしも選択可能な方が良かろう。
0038デフォルトの名無しさん
垢版 |
2018/04/04(水) 01:12:46.64ID:Ssb/YhXn
>>37
自分で確保して自分で開放
0040デフォルトの名無しさん
垢版 |
2018/04/04(水) 01:50:39.35ID:Ssb/YhXn
>>39
知らん。ただネイティブ作るならライブラリも全部作ることになるだろうからどちらもできるようには作れるのでは?
0041デフォルトの名無しさん
垢版 |
2018/04/04(水) 07:28:37.61ID:Hvr9boJ9
例えばiOSだとネイティブの機能を使うのに参照カウンタの操作がどうしても必要になる場面はありそうだしな
そこらへんはどう実現するんだろ
0044デフォルトの名無しさん
垢版 |
2018/04/05(木) 11:16:56.30ID:ijREJbSY
>>25に同意だけどif-letとかちょいちょいKotlinにも欲しいのがある

//Kotlin
val view = this.view
if(view != null){
  //スマートキャストによりローカル変数viewはNotNull
  view.xxx()
}

//Swift
if let view = self.view {
  //if-let文によりローカル変数viewはNotNull
  view.xxx()
}
0045デフォルトの名無しさん
垢版 |
2018/04/05(木) 12:05:32.90ID:QMABEGAS
>>44
それ Kotlin の方が可読性高くないか?
0047デフォルトの名無しさん
垢版 |
2018/04/05(木) 12:45:12.79ID:QMABEGAS
慣れてない人が難なく読める方が可読性高いように思うが
0048デフォルトの名無しさん
垢版 |
2018/04/05(木) 13:25:25.88ID:eBDNZqoD
スマートキャストも慣れてないと分かりにくいだろ
え?どこで型変わったの?ってなる
0049デフォルトの名無しさん
垢版 |
2018/04/05(木) 13:56:32.70ID:X8omI5BP
好みの問題だろうけど、if let よりもエルビス先生使ってnullならreturnしてあげる方がブロック使わずに済むから好き
0052デフォルトの名無しさん
垢版 |
2018/04/05(木) 16:43:37.59ID:OPUn+1v1
>>48
まあそれはあるかも知れんけどね。

そういやこないだプロパティに対してスマートキャスト掛からなくて何故だか悩んだなあ。
変数のように見えても実はgetter呼んでるだけだから使えないと気づくまでに時間が掛かった。
0053デフォルトの名無しさん
垢版 |
2018/04/05(木) 18:36:31.28ID:O1QaKdYC
>>42
ビルド中なぜか失敗してbuild suspendedぐるぐる状態になることがある。その場合、invalidateしてもふっかつせず、buildフォルダやiml、.ideaを全消ししたら復活した
0054デフォルトの名無しさん
垢版 |
2018/04/05(木) 18:57:56.71ID:0rzPVZzj
IntelliJファミリーのIDEは時々お茶目な動きするからな
基本的にはウダウダ悩むよりも.ideaフォルダを消してしまうのが手っ取り早い
0055デフォルトの名無しさん
垢版 |
2018/04/05(木) 20:20:20.97ID:/L5N4re0
ことりんにぬるぽしてもガッ!されないとか聞いたのですがほんとうですか?
0056デフォルトの名無しさん
垢版 |
2018/04/05(木) 20:41:45.40ID:o4pi/oAy
君の言いたいことがよくわからない
0058デフォルトの名無しさん
垢版 |
2018/04/05(木) 22:03:42.80ID:n92OBaDH
>>55
ガッ!されないのは一番最悪じゃん
ヌルポしないプログラムを強制されるのが肝だからね
0064デフォルトの名無しさん
垢版 |
2018/04/08(日) 11:38:53.04ID:WafpiTuB
KotlinってAnnotation周りバグあんの?
このライブラリがKotlinに対応できない理由として
KotlinがTYPE_USEとAnnotatedTypeを正しく生成できないバグがある事を上げている

Kotlinのプロパティに使われた場合、取得を試みる事すら出来ないって

https://github.com/leangen/graphql-spqr/issues/72

2年も放置してるってJetBrainsはやる気あんの
0067デフォルトの名無しさん
垢版 |
2018/04/08(日) 23:25:42.76ID:H1AjLXag
>>63
正直1種類のハードに複数のJVMを実装する労力があるんだったら、
iOSなどJVMがないハードのJVM実装をやってほしい。
0068デフォルトの名無しさん
垢版 |
2018/04/10(火) 09:09:52.27ID:FWUcHiU9
やっぱりAndroid Studio3.1はバグってたぽいな
ttps://twitter.com/androidstudio/status/981914632892960768?s=19
0071デフォルトの名無しさん
垢版 |
2018/04/10(火) 10:00:47.33ID:k9sOatix
きっと考えずに感じているのだろう
0074デフォルトの名無しさん
垢版 |
2018/04/14(土) 22:08:57.89ID:cCkTqJd9
アノテーションの一部にバグあっても
殆ど使わない機能から放置で問題ないと思ってるのか
0075デフォルトの名無しさん
垢版 |
2018/04/15(日) 06:32:55.50ID:FkvW6Fij
JVMのリリースサイクルが半年になったけど、KotlinのターゲットJVMは
どれくらいの期間にリリースされた分がサポートされるようになるんだろうか。
対応している間に次のJVMに移行しないといけなくなりそう。

>>74
GoogleがAndroidの公式言語に採用した時点で、もうゴールしてもいいよねと思ったかも。
0077デフォルトの名無しさん
垢版 |
2018/04/15(日) 13:05:54.96ID:xSDE802f
代わりにScalaでも使うか
0078デフォルトの名無しさん
垢版 |
2018/04/16(月) 09:14:00.97ID:h6scVdPk
>>75
JVMそのものの後方互換性は中々失われないだろうから結構持つのでは?
古過ぎると金払ってもOracleがサボートしてくれなくなるだけで。
0080デフォルトの名無しさん
垢版 |
2018/04/16(月) 10:30:25.23ID:fq0UvUSv
Oracleはサポート止めたりしないでしょ。只、来年から
サポート料うん倍にするだけで。

2010年のEBSに続いて今回のDB。信用されなくなるわな
0081デフォルトの名無しさん
垢版 |
2018/04/16(月) 22:39:13.21ID:p9NCCgjB
OpenJDK 11はLTSにならないの?
.NET Coreに鞍替えするか
0085デフォルトの名無しさん
垢版 |
2018/04/17(火) 08:18:06.17ID:aRCmpaPT
AdoptOpenJDKって非営利組織がOracleJDKのLTS版のセキュリティフィックスをOpenJDKにバックポートするって言ってるらしい

金が無い人はこっち使えば良いって事?
0086デフォルトの名無しさん
垢版 |
2018/04/17(火) 09:34:35.51ID:62PxzEoZ
OpenJDKも数バージョンおきにLTSするようになる方向って話だけど、それとは違うのか
0087デフォルトの名無しさん
垢版 |
2018/04/17(火) 21:49:50.98ID:PLUhgBvu
サーバーサイドとAndroidで広義でのJava8環境使ってるけど
正直Java6相当だとしてもさほど困る気がしない

Javaプラグインとかだとセキュリティパッチが必須とはいえ
そもそも脆弱性の源泉みたいなもの使うこと自体を考え直すべきだし
0088デフォルトの名無しさん
垢版 |
2018/04/18(水) 15:04:30.79ID:/G3sIaot
kotlinはかなりいいが、androidStudioがまだ対応しきれてないな
Javaだとsuperクラスを指定してクラスを作れるのにできないし、
必要なコンストラクタも自動で記述してくれない
0089デフォルトの名無しさん
垢版 |
2018/04/19(木) 02:53:40.04ID:pMMi2n6U
俺は今のところ言語そのものを覚えようとしている段階なので vi で作って動かしてるよ。(GUIなしでLinuxでな)
0092デフォルトの名無しさん
垢版 |
2018/04/19(木) 08:40:10.40ID:pMMi2n6U
>>90
そう?起動が遅くて重くて全部英語でなおかつIDEそのものの使い方も調べないといけなくなって何とも言えないんだけど。
それと、開発効率は今のところ上がらなくて良い。学習中なので大規模なのを作る必要性もないしね。そのうちやるかも知れないが。

>>91
こちらとしてはこの方が新たに覚えることがほとんど言語のみになって楽なんだよ。動作も軽いしね。Linuxやviは何十年も前から仕事でも趣味でも使っててそちらで新たに覚えなきゃいけないことは特にないの。
0093デフォルトの名無しさん
垢版 |
2018/04/19(木) 08:53:26.81ID:oehSBWiO
ああおっさんか、それなら好きにすりゃいいよ。
新卒がそんな非効率なことやってたら優しく丁寧に指導するところだが。
0095デフォルトの名無しさん
垢版 |
2018/04/19(木) 10:01:19.16ID:sb7/L74v
intellJ使うと、Kotlinらしくないコードにワーニングがつくから、その言語の文化を学ぶのに適切なんだけどね。
Javaを直訳したようなコードでも、コンパイルはとおるから。
プログラミング言語を学ぶってのは、文化込みだと思うので、IDEを使うことを勧めるね。その辺をわかってくれない、Vimerとかemacsenとか多いけど。
0098デフォルトの名無しさん
垢版 |
2018/04/19(木) 11:26:59.14ID:g+DPpgPU
俺も最初はTryKotlinでやってたけど補完してくれないので効率悪くて、
AndroidStudioでやったほうが、重くても効率が良いとわかって移行した
まあ、言語そのものを触るのなんて3日で終わるだろうから、
最初からIDEにしといたほうが慣れていいと思うけどね
0099デフォルトの名無しさん
垢版 |
2018/04/19(木) 11:29:02.13ID:vIwvdP1E
IDEが誤解されてるというより、vimが誤解されてる気がするわ
設定したらIDEと変わらんし設定も簡単

と、どっちも使う人間は思う
■ このスレッドは過去ログ倉庫に格納されています

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