- 1 名前:デフォルトの名無しさん [2018/03/19(月) 04:26:26.03 ID:GqsfT9Tb.net]
- JetBrainsが開発した期待の新言語Kotlinについて語りましょう
https://kotlinlang.org 前スレ Kotlin 2 https://mevius.5ch.net/test/read.cgi/tech/1509462463/
- 2 名前:デフォルトの名無しさん [2018/03/19(月) 04:27:15.39 ID:GqsfT9Tb.net]
- 理由はわからないけど(容量オーバーか何かかな?)前スレがストップしてたので立てたよ。
- 3 名前:デフォルトの名無しさん mailto:sage [2018/03/19(月) 04:32:31.34 ID:GqsfT9Tb.net]
- あ、ごめん。こっちの専ブラが不調で前スレストップしたように見えてただけだ。すまん。
前スレ終わったらこっち使ってくれ。
- 4 名前:デフォルトの名無しさん [2018/03/19(月) 15:39:20.13 ID:pEbY2e08.net]
- ついでだからあと三つくらい立てておいてくれ。
- 5 名前:デフォルトの名無しさん mailto:sage [2018/03/19(月) 15:45:21.38 ID:VG+i3OW5.net]
- >>1はうっかりさんだなあ。
罰としてxamrinライセンス購入だぞ☆
- 6 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 08:25:53.70 ID:qfW3tNPH.net]
- オラっとクルクル
- 7 名前:デフォルトの名無しさん [2018/04/02(月) 13:26:24.62 ID:IY8Jb2od.net]
- Kotlinは不滅
- 8 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 17:30:29.36 ID:Ph0908Uj.net]
- そろそろJavaの呪縛から逃れて使いやすくしてくれよ
多次元配列作るぐらい簡単にしてくれ toとか変な構文使うのやめてくれ
- 9 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 21:10:26.99 ID:rkNCA64G.net]
- 開発環境最新にしたら、activity(getActivity)とかfragment(getFragment)とかがnullableになってるんですが、
これって!!を付けて回らないといけないんですかね
- 10 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 21:19:24.43 ID:1zn7zSub.net]
- >>9
getActivity()は、nullになることあるから、!!だと落ちることあるよ。 ただ、Kotlinでのactivityは、変数
- 11 名前:じゃないから、スマートキャストが効かないという罠があるんで、かっこわるいけど、
activity?.let { activity-> } とかにしてる。 [] - [ここ壊れてます]
- 12 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 21:50:40.62 ID:OOV7t+ws.net]
- 前の前スレ
mevius.5ch.net/test/read.cgi/tech/1456505161/ 公式サイト https://kotlinlang.org/ 公式ブログ https://blog.jetbrains.com/kotlin コードを貼れる所 rextester.com/l/kotlin_online_compiler Google、KotlinをAndroidアプリ開発言語に選定 jp.techcrunch.com/2017/05/18/20170517google-makes-kotlin-a-first-class-language-for-writing-android-apps/ 他に何か貼るものあります? あと前スレの1000は宣言通りライセンスを買って下さいww
- 13 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 22:06:03.99 ID:rkNCA64G.net]
- argumentsもnullableになってるんですが、
val value: Int by lazy { arguments.getInt(Key) } は、 val value: Int by lazy { arguments?.getInt(Key) ?: -1 } みたいな感じでしょうか
- 14 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 22:37:35.05 ID:Pr6o1s5H.net]
- Oracle「Javaの互換性テストを無視する実装は許さない」
www.itmedia.co.jp/enterprise/articles/1008/16/news011_2.html Google「Androidの互換性テストを無視する実装は許さない」 https://gigazine.net/news/20180327-google-block-uncertified-device/
- 15 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 22:53:14.02 ID:Pr6o1s5H.net]
- >>12
!!を付けて回ればとりあえず更新前の開発環境での動作と同じにはなる (nullの場合例外になる動作) ちゃんと対処するならメソッドの役割りや仕様をどうしたいかによる それ次第では value: Int? にする選択肢もある
- 16 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 23:01:11.47 ID:rkNCA64G.net]
- めんどくせー
- 17 名前:デフォルトの名無しさん mailto:sage [2018/04/02(月) 23:06:07.85 ID:rkNCA64G.net]
- Kotlinめんどくせー
- 18 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 08:39:04.35 ID:TL+Cqj0B.net]
- 1000 名前:デフォルトの名無しさん [sage] :2018/04/02(月) 11:00:15.69 ID:k9cTFSac
1000ならXamarinのライセンスを1000個買う
- 19 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 09:36:32.18 ID:PCgATcak.net]
- オラクルってオラついてんなぁ
- 20 名前:デフォルトの名無しさん [2018/04/03(火) 09:36:48.16 ID:Lqpq4yV4.net]
- なんという愚かな宣言
- 21 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 10:11:18.76 ID:hXHQ48AK.net]
- オラなんだかクラクラしてきたぞ
- 22 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 10:11:52.44 ID:hXHQ48AK.net]
- クルクルだわ、、、ざまりんのライセンス買って来る
- 23 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 10:45:34.33 ID:PCgATcak.net]
- どんまい
- 24 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 12:26:46.93 ID:TORpZXhc.net]
- k9cTFSac は領収書upな
>1000ならXamarinのライセンスを1000個買う
- 25 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 16:43:12.37 ID:uRQ9gZg0.net]
- 小鳥んとSwift比べたら、断然小鳥んの方が書きやすいように思う
反論あれば言ってくれ
- 26 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 17:04:24.03 ID:AQIroF1J.net]
- どっちもどっち
- 27 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 18:34:30.53 ID:9lrj/vMM.net]
- 言語自体には断然っていうほど違いはないんじゃね。
個人的にはスイーフトンはメモリのことなど意識する必要があるのがイケてないと思う。
- 28 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 19:04:02.27 ID:ug4XFV5T.net]
- メモリを意識しないプログラマって、、
- 29 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 19:24:24.09 ID:bD+hWL4a.net]
- うすいふとん
- 30 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 20:54:46.49 ID:TORpZXhc.net]
- 只の大名プログラマ
- 31 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 20:58:38.50 ID:9fBBQ8bl.net]
- ガベコレは甘え
- 32 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 21:04:24.12 ID:0P
]
- [ここ壊れてます]
- 33 名前:MfvRfe.net mailto: そういや Java 10 が出てて、それで kotlinc 動かしたら警告出なかったよ。
その他の動作まで全て意図した通りになるかどうかは知らないが。 [] - [ここ壊れてます]
- 34 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 21:08:49.35 ID:bD+hWL4a.net]
- ハロワ書くまでにすら依存性に悩まなければならない。でもそれが、KotlinをはじめとするJVM言語なんだよね!
- 35 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 21:14:54.14 ID:9lrj/vMM.net]
- いや俺の言いたいのはそういうことじゃなくて、、
まあいいや、めんどいからXamarinでもいじって来る
- 36 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 21:19:08.36 ID:0PMfvRfe.net]
- そういや Kotlin ネイティブはガベコレをどうするつもりだろう?
特定のライブラリ使った場合のみ使われるようにするのかな?
- 37 名前:デフォルトの名無しさん mailto:sage [2018/04/03(火) 21:56:35.11 ID:lqJEQzfT.net]
- なぜネイティブだとガベコレ使えないと思ったのか
- 38 名前:デフォルトの名無しさん mailto:sage [2018/04/04(水) 00:56:40.14 ID:Ssb/YhXn.net]
- >>35
使えないとは思ってない。特定のライブラリを経由するなら使えるようにするのかなって話だよ。 というのは用途によってはない方が良いだろうから。ありもなしも選択可能な方が良かろう。
- 39 名前:デフォルトの名無しさん mailto:sage [2018/04/04(水) 01:11:38.82 ID:TYVvVSdZ.net]
- ガベコレ使わないでどうやってメモリ開放すんの?
- 40 名前:デフォルトの名無しさん [2018/04/04(水) 01:12:46.64 ID:Ssb/YhXn.net]
- >>37
自分で確保して自分で開放
- 41 名前:デフォルトの名無しさん mailto:sage [2018/04/04(水) 01:40:57.61 ID:TYVvVSdZ.net]
- Kotlinで出来るの?
- 42 名前:デフォルトの名無しさん mailto:sage [2018/04/04(水) 01:50:39.35 ID:Ssb/YhXn.net]
- >>39
知らん。ただネイティブ作るならライブラリも全部作ることになるだろうからどちらもできるようには作れるのでは?
- 43 名前:デフォルトの名無しさん mailto:sage [2018/04/04(水) 07:28:37.61 ID:Hvr9boJ9.net]
- 例えばiOSだとネイティブの機能を使うのに参照カウンタの操作がどうしても必要になる場面はありそうだしな
そこらへんはどう実現するんだろ
- 44 名前:デフォルトの名無しさん mailto:sage [2018/04/04(水) 23:27:54.77 ID:XfUZpDwn.net]
- Android Studio 3.1糞じゃね
3.0落としなおしたわ
- 45 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 02:54:06.10 ID:CnWKlu9c.net]
- どした?
- 46 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 11:16:56.30 ID:ijREJbSY.net]
- >>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() }
- 47 名前:デフォルトの名無しさん [2018/04/05(木) 12:05:32.90 ID:QMABEGAS.net]
- >>44
それ Kotlin の方が可読性高くないか?
- 48 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 12:30:39.34 ID:ijREJbSY.net]
- それは多分慣れによる感覚だと思う
- 49 名前:デフォルトの名無しさん [2018/04/05(木) 12:45:12.79 ID:QMABEGAS.net]
- 慣れてない人が難なく読める方が可読性高いように思うが
- 50 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 13:25:25.88 ID:eBDNZqoD.net]
- スマートキャストも慣れてないと分かりにくいだろ
え?どこで型変わったの?ってなる
- 51 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 13:56:32.70 ID:X8omI5BP.net]
- 好みの問題だろうけど、if let よりもエルビス先生使ってnullならreturnしてあげる方がブロック使わずに済むから好き
- 52 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 14:00:26.50 ID:4/KLEP7M.net]
- if let もまぁ、悪くない
- 53 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 14:41:15.64 ID:WysB+nKW.net]
- せっかくkotlin使うなら
view?.xxx() じゃいかんのけ
- 54 名前:デフォルトの名無しさん [2018/04/05(木) 16:43:37.59 ID:OPUn+1v1.net]
- >>48
まあそれはあるかも知れんけどね。 そういやこないだプロパティに対してスマートキャスト掛からなくて何故だか悩んだなあ。 変数のように見えても実はgetter呼んで
- 55 名前:驍セけだから使えないと気づくまでに時間が掛かった。 []
- [ここ壊れてます]
- 56 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 18:36:31.28 ID:O1QaKdYC.net]
- >>42
ビルド中なぜか失敗してbuild suspendedぐるぐる状態になることがある。その場合、invalidateしてもふっかつせず、buildフォルダやiml、.ideaを全消ししたら復活した
- 57 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 18:57:56.71 ID:0rzPVZzj.net]
- IntelliJファミリーのIDEは時々お茶目な動きするからな
基本的にはウダウダ悩むよりも.ideaフォルダを消してしまうのが手っ取り早い
- 58 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 20:20:20.97 ID:/L5N4re0.net]
- ことりんにぬるぽしてもガッ!されないとか聞いたのですがほんとうですか?
- 59 名前:デフォルトの名無しさん [2018/04/05(木) 20:41:45.40 ID:o4pi/oAy.net]
- 君の言いたいことがよくわからない
- 60 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 20:50:48.59 ID:jKyTTvXT.net]
- ことりんたんはそもそもぬるぽさせてくれないから
- 61 名前:デフォルトの名無しさん mailto:sage [2018/04/05(木) 22:03:42.80 ID:n92OBaDH.net]
- >>55
ガッ!されないのは一番最悪じゃん ヌルポしないプログラムを強制されるのが肝だからね
- 62 名前:デフォルトの名無しさん mailto:sage [2018/04/07(土) 03:05:56.74 ID:KR5vaEuN.net]
- こっとりん
- 63 名前:デフォルトの名無しさん mailto:sage [2018/04/07(土) 03:37:11.16 ID:SrnxjvJ5.net]
- try{
・・・ }catch{}
- 64 名前:デフォルトの名無しさん mailto:sage [2018/04/07(土) 22:33:35.28 ID:mDl6Ajx7.net]
- JVM最強って何?ってここで聞けばKotlinか
- 65 名前:デフォルトの名無しさん mailto:sage [2018/04/08(日) 08:49:46.55 ID:iYd8ya2H.net]
- ScalaかKotlinだろうね
- 66 名前:デフォルトの名無しさん mailto:sage [2018/04/08(日) 08:52:00.69 ID:D3gITJpj.net]
- IBM J9 VM でしょう
- 67 名前:デフォルトの名無しさん [2018/04/08(日) 11:38:53.04 ID:WafpiTuB.net]
- KotlinってAnnotation周りバグあんの?
このライブラリがKotlinに対応できない理由として KotlinがTYPE_USEとAnnotatedTypeを正しく生成できないバグがある事を上げている Kotlinのプロパティに使われた場合、取得を試みる事すら出来ないって https://github.com/leangen/graphql-spqr/issues/72 2年も放置してるってJetBrainsはやる気あんの
- 68 名前:デフォルトの名無しさん mailto:sage [2018/04/08(日) 14:11:45.21 ID:V+CLr0J7.net]
- やる気はそこそこある
- 69 名前:デフォルトの名無しさん mailto:sage [2018/04/08(日) 14:52:39.35 ID:vRCA8+Ww.net]
- >>64
ねぇねぇ今日は何処へ逝こうかな〜
- 70 名前:デフォルトの名無しさん mailto:sage [2018/04/08(日) 23:25:42.76 ID:H1AjLXag.net]
- >>63
正直1種類のハードに複数のJVMを実装する労力があるんだったら、 iOSなどJVMがないハードのJVM実装をやってほしい。
- 71 名前:デフォルトの名無しさん mailto:sage [2018/04/10(火) 09:09:52.27 ID:FWUcHiU9.net]
- やっぱりAndroid Studio3.1はバグってたぽいな
ttps://twitter.com/androidstudio/status/981914632892960768?s=19
- 72 名前:デフォルトの名無しさん mailto:sage [2018/04/10(火) 09:28:36.42 ID:QszwCQ/m.net]
- >>68
3.2のリリースで修正するのかな。
- 73 名前:デフォルトの名無しさん mailto:sage [2018/04/10(火) 09:57:02.12 ID:wPoJQnkn.net]
- >>69
英語読めないにも程があるだろw
- 74 名前:デフォルトの名無しさん [2018/04/10(火) 10:00:47.33 ID:k9sOatix.net]
- きっと考えずに感じているのだろう
- 75 名前:デフォルトの名無しさん mailto:sage [2018/04/10(火) 11:22:17.33 ID:E5ZirCDm.net]
- チンコってこと?
- 76 名前:デフォルトの名無しさん mailto:sage [2018/04/10(火) 14:32:03.26 ID:XebqkUb1.net]
- フランクフルト食べたくなってきたな
- 77 名前:デフォルトの名無しさん [2018/04/14(土) 22:08:57.89 ID:cCkTqJd9.net]
- アノテーションの一部にバグあっても
殆ど使わない機能から放置で問題ないと思ってるのか
- 78 名前:デフォルトの名無しさん mailto:sage [2018/04/15(日) 06:32:55.50 ID:FkvW6Fij.net]
- JVMのリリースサイクルが半年になったけど、Kotlinのタ
- 79 名前:ーゲットJVMは
どれくらいの期間にリリースされた分がサポートされるようになるんだろうか。 対応している間に次のJVMに移行しないといけなくなりそう。 >>74 GoogleがAndroidの公式言語に採用した時点で、もうゴールしてもいいよねと思ったかも。 [] - [ここ壊れてます]
- 80 名前:デフォルトの名無しさん mailto:sage [2018/04/15(日) 11:30:32.41 ID:M6/04EqY.net]
- >>75
それな。 jetbrainsは収益構図を描けてるのか甚だ疑問。 kotlinの進化を続けられるのか…
- 81 名前:デフォルトの名無しさん [2018/04/15(日) 13:05:54.96 ID:xSDE802f.net]
- 代わりにScalaでも使うか
- 82 名前:デフォルトの名無しさん [2018/04/16(月) 09:14:00.97 ID:h6scVdPk.net]
- >>75
JVMそのものの後方互換性は中々失われないだろうから結構持つのでは? 古過ぎると金払ってもOracleがサボートしてくれなくなるだけで。
- 83 名前:デフォルトの名無しさん mailto:sage [2018/04/16(月) 09:16:08.05 ID:2NsZPU4A.net]
- >>76
Jetbrainsがまず自分で使うでしょ
- 84 名前:デフォルトの名無しさん mailto:sage [2018/04/16(月) 10:30:25.23 ID:fq0UvUSv.net]
- Oracleはサポート止めたりしないでしょ。只、来年から
サポート料うん倍にするだけで。 2010年のEBSに続いて今回のDB。信用されなくなるわな
- 85 名前:デフォルトの名無しさん [2018/04/16(月) 22:39:13.21 ID:p9NCCgjB.net]
- OpenJDK 11はLTSにならないの?
.NET Coreに鞍替えするか
- 86 名前:デフォルトの名無しさん mailto:sage [2018/04/17(火) 00:05:53.38 ID:PLUhgBvu.net]
- 最新のJDKを追ってる人はどういう用途で使ってるんだろう
- 87 名前:デフォルトの名無しさん mailto:sage [2018/04/17(火) 02:03:15.43 ID:zXGef27d.net]
- WebLogicとかじゃね?
バージョン指定がとても細かい
- 88 名前:デフォルトの名無しさん mailto:sage [2018/04/17(火) 07:38:46.72 ID:7FAWj+l4.net]
- バージョン指定が細かいとJDK使うメリットが7割くらい失われる気がする
- 89 名前:デフォルトの名無しさん [2018/04/17(火) 08:18:06.17 ID:aRCmpaPT.net]
- AdoptOpenJDKって非営利組織がOracleJDKのLTS版のセキュリティフィックスをOpenJDKにバックポートするって言ってるらしい
金が無い人はこっち使えば良いって事?
- 90 名前:デフォルトの名無しさん mailto:sage [2018/04/17(火) 09:34:35.51 ID:62PxzEoZ.net]
- OpenJDKも数バージョンおきにLTSするようになる方向って話だけど、それとは違うのか
- 91 名前:デフォルトの名無しさん mailto:sage [2018/04/17(火) 21:49:50.98 ID:PLUhgBvu.net]
- サーバーサイドとAndroidで広義でのJava8環境使ってるけど
正直Java6相当だとしてもさほど困る気がしない Javaプラグインとかだとセキュリティパッチが必須とはいえ そもそも脆弱性の源泉みたいなもの使うこと自体を考え直すべきだし
- 92 名前:デフォルトの名無しさん mailto:sage [2018/04/18(水) 15:04:30.79 ID:/G3sIaot.net]
- kotlinはかなりいいが、androidStudioがまだ対応しきれてないな
Javaだとsuperクラスを指定してクラスを作れるのにできないし、 必要なコンストラクタも自動で記述してくれない
- 93 名前:デフォルトの名無しさん [2018/04/19(木) 02:53:40.04 ID:pMMi2n6U.net]
- 俺は今のところ言語そのものを覚えようとしている段階なので vi で作って動かしてるよ。(GUIなしでLinuxでな)
- 94 名前:デフォルトの名無しさん mailto:sage [2018/04/19(木) 07:23:47.68 ID:kIK3R/E/.net]
- 学習するにしても補完のきくIDEの方が効率よくないか
- 95 名前:デフォルトの名無しさん mailto:sage [2018/04/19(木) 08:03:30.60 ID:iqFLHzMR.net]
- 覚えなくていいことを覚える自己満なんだからほっといてやれよ
- 96 名前:デフォルトの名無しさん [2018/04/19(木) 08:40:10.40 ID:pMMi2n6U.net]
- >>90
そう?起動が遅くて重くて全部英語でなおかつIDEそのものの使い方も調べないといけなくなって何とも言えないんだけど。 それと、開発効率は今のところ上がらなくて良い。学習中なので大規模なのを作る必要性もないしね。そのうちやるかも知れないが。 >>91 こちらとしてはこの方が新たに覚えることがほとんど言語のみになって楽なんだよ。動作も軽いしね。Linuxやviは何十年も前から仕事でも趣味でも使っててそちらで新たに覚えなきゃいけないことは特にないの。
- 97 名前:デフォルトの名無しさん mailto:sage [2018/04/19(木) 08:53:26.81 ID:oehSBWiO.net]
- ああおっさんか、それなら好きにすりゃいいよ。
新卒がそんな非効率なことやってたら優しく丁寧に指導するところだが。
- 98 名前:デフォルトの名無しさん mailto:sage [2018/04/19(木) 09:23:28.03 ID:D3umLQ7k.net]
- vimでも設定すれば補完できるだろ
- 99 名前:デフォルトの名無しさん mailto:sage [2018/04/19(木) 10:01:19.16 ID:sb7/L74v.net]
- intellJ使うと、Kotlinらしくないコードにワーニングがつくから、その言語の文化を学ぶのに適切なんだけどね。
Javaを直訳したようなコードでも、コンパイルはとおるから。 プログラミング言語を学ぶってのは、文化込みだと思うので、IDEを使うことを勧めるね。その辺をわかってくれない、Vimerとかemacsenとか多いけど。
- 100 名前:デフォルトの名無しさん mailto:sage [2018/04/19(木) 10:06:09.68 ID:D3umLQ7k.net]
- またJetBrainsの回し者か
- 101 名前:デフォルトの名無しさん mailto:sage [2018/04/19(木) 10:53:56.62 ID:0BZGhqme.net]
- そもそも言語作ってるのがJBなんだから回し者も何もないような
|

|