JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう
https://kotlinlang.org
※前スレ
http://mevius.5ch.net/test/read.cgi/tech/1521401186/
探検
Kotlin 4
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん
2018/07/17(火) 18:00:27.88ID:PDZGrLP2876デフォルトの名無しさん
2018/11/04(日) 14:54:43.50ID:eEexL0w4 >>870
大人の
大人の
877デフォルトの名無しさん
2018/11/04(日) 14:58:25.67ID:hIyIwIUL >>875
nativeでは kotlin.native.ref.WeakReference
jvmでは java.lang.ref.WeakReference が有る
jsには無いからcommonにも無い
nativeでは kotlin.native.ref.WeakReference
jvmでは java.lang.ref.WeakReference が有る
jsには無いからcommonにも無い
878デフォルトの名無しさん
2018/11/04(日) 19:14:10.57ID:0dNetsrH javaや.netにあるのは知ってるから質問けど
そっか、所詮、最大公約数になるから他の言語に引きずられまくりでjsとかにねぇからkotlinで標準で用意されてねぇのか。
そっか、所詮、最大公約数になるから他の言語に引きずられまくりでjsとかにねぇからkotlinで標準で用意されてねぇのか。
879デフォルトの名無しさん
2018/11/04(日) 20:08:53.22ID:yQqM28AX いやKotlinに無い理由はJavaにあるからだよ
建前はともかく、実態はAltJavaとしてしか使われてないしJBもそれを前提に開発してるのが実情
建前はともかく、実態はAltJavaとしてしか使われてないしJBもそれを前提に開発してるのが実情
880デフォルトの名無しさん
2018/11/04(日) 22:06:08.12ID:MOVpxqlB 現状だとメモリ管理は対応プラットフォームの機能に寄生するみたいな感じになってるのは気になるね
iOS向けだとiOSのARCを利用するし、Cなら手動で開放してる
Kotlin/Native として統一的なメモリ管理機構を作らないと、プラットフォームを超えたコードの共有化とかはかなり限定的なものになりそう
しかし統一的なメモリ管理機構を言語で用意すると、プラットフォーム側で用意してるメモリ管理機構と重複部分ができて無駄だなとも思う
Xamarinとかはそんな感じだし
iOS向けだとiOSのARCを利用するし、Cなら手動で開放してる
Kotlin/Native として統一的なメモリ管理機構を作らないと、プラットフォームを超えたコードの共有化とかはかなり限定的なものになりそう
しかし統一的なメモリ管理機構を言語で用意すると、プラットフォーム側で用意してるメモリ管理機構と重複部分ができて無駄だなとも思う
Xamarinとかはそんな感じだし
881デフォルトの名無しさん
2018/11/04(日) 22:31:08.12ID:hIyIwIUL ARCはOS関係無くね、Swiftと同じく普通にコンパイラとランタイムによる実装でしょ
現時点でcommon書くときメモリに関して支障は感じないけど
メモリ管理機構ってJVM上やJS上でどういうのを想定してる?
現時点でcommon書くときメモリに関して支障は感じないけど
メモリ管理機構ってJVM上やJS上でどういうのを想定してる?
882デフォルトの名無しさん
2018/11/04(日) 23:19:36.30ID:MOVpxqlB JS はランタイム側でGCやってくれるし、JVMもGCやってくれるので、
アプリケーション側の kotlin コードでメモリ開放する必要ないし、循環参照とかも意識する必要ないでしょう
Kotlin iOS では、Swift や Obj-C と同じランタイム側にあるARCを使っているのではないのかな?
この場合アプリケーション側の kotlin コードでは、循環参照とかを意識しなくてはいけないのでは?
Cライブラリを使ってLinux上で直接動くような Kotlin Native コードの場合には、
malloc や free に相当するもので手動でメモリ確保開放とかやる必要があったりしますよね?
https://kotlinlang.org/docs/reference/native/c_interop.html
アプリケーション側の kotlin コードでメモリ開放する必要ないし、循環参照とかも意識する必要ないでしょう
Kotlin iOS では、Swift や Obj-C と同じランタイム側にあるARCを使っているのではないのかな?
この場合アプリケーション側の kotlin コードでは、循環参照とかを意識しなくてはいけないのでは?
Cライブラリを使ってLinux上で直接動くような Kotlin Native コードの場合には、
malloc や free に相当するもので手動でメモリ確保開放とかやる必要があったりしますよね?
https://kotlinlang.org/docs/reference/native/c_interop.html
883デフォルトの名無しさん
2018/11/05(月) 00:00:51.88ID:L+6WacOy んなわけあるかい
LLVMで普通に直接動く実行コードを生成してるだけで、iOSのオブジェクトモデルとは別物だ
iOSに循環参照を自動的に見つけて解放してくれるって事実上の独自GCやぞ
そんなもん勝手に組み込めるんならみんなとっくにやっとる
LLVMで普通に直接動く実行コードを生成してるだけで、iOSのオブジェクトモデルとは別物だ
iOSに循環参照を自動的に見つけて解放してくれるって事実上の独自GCやぞ
そんなもん勝手に組み込めるんならみんなとっくにやっとる
884デフォルトの名無しさん
2018/11/05(月) 00:53:31.72ID:gUcvv7gK var x = Foo()
Bar(x)
x = Boo()
以上のような Kotlin コードをコンパイルしたときに、Boo()の結果を x に代入するまえに x に入っていた Foo() への参照をどう処理するかってこと
Bar(x)の結果、だれかが x に入っていた Foo オブジェクトへの参照を保持している可能性がある
JVMやJSだと単に x を上書きするコードにコンパイルすればいいよね
iOS向けにコンパイルするときには release(x) みたいなのを含んだ LLVM コードに変換される?
もしくは、Kotlin が独自の ARC みたいなの持っていて、それに応じた処置がおこなわれるの?
Linux 向けの Kotlin / Native でコンパイルはこのままできるのかな?
Bar(x)
x = Boo()
以上のような Kotlin コードをコンパイルしたときに、Boo()の結果を x に代入するまえに x に入っていた Foo() への参照をどう処理するかってこと
Bar(x)の結果、だれかが x に入っていた Foo オブジェクトへの参照を保持している可能性がある
JVMやJSだと単に x を上書きするコードにコンパイルすればいいよね
iOS向けにコンパイルするときには release(x) みたいなのを含んだ LLVM コードに変換される?
もしくは、Kotlin が独自の ARC みたいなの持っていて、それに応じた処置がおこなわれるの?
Linux 向けの Kotlin / Native でコンパイルはこのままできるのかな?
885デフォルトの名無しさん
2018/11/05(月) 01:36:44.15ID:2KUKl2mx886デフォルトの名無しさん
2018/11/05(月) 02:10:02.43ID:gUcvv7gK >>885
そうすると、 Kotlin / Native で普通に確保したオブジェクトの解放はどういう方式で行われているのかな?
リファレンスカウンタ? GCでは無いよね?
リファレンスカウンタだとすれば、Kotlin/JVMでは問題無いオブジェクト同士が参照しあう構造は、避けないとダメだよね
そうすると、 Kotlin / Native で普通に確保したオブジェクトの解放はどういう方式で行われているのかな?
リファレンスカウンタ? GCでは無いよね?
リファレンスカウンタだとすれば、Kotlin/JVMでは問題無いオブジェクト同士が参照しあう構造は、避けないとダメだよね
887デフォルトの名無しさん
2018/11/05(月) 06:27:49.62ID:DuzbnuJe ここで不毛な言い争いするくらいなら実際にコード書いて試せばいいのでは。。
888デフォルトの名無しさん
2018/11/05(月) 07:27:17.05ID:2KUKl2mx >>886
>>873-874 と
https://github.com/JetBrains/kotlin-native/blob/master/FAQ.md
> Q: What is Kotlin/Native memory management model?
> A: Kotlin/Native provides an automated memory management scheme, similar to what Java or Swift provides. The current implementation includes an automated reference counter with a cycle collector to collect cyclical garbage.
>>873-874 と
https://github.com/JetBrains/kotlin-native/blob/master/FAQ.md
> Q: What is Kotlin/Native memory management model?
> A: Kotlin/Native provides an automated memory management scheme, similar to what Java or Swift provides. The current implementation includes an automated reference counter with a cycle collector to collect cyclical garbage.
889デフォルトの名無しさん
2018/11/05(月) 07:52:42.52ID:gUcvv7gK >>888
ありがとう。参考になった
ありがとう。参考になった
890デフォルトの名無しさん
2018/11/06(火) 11:37:39.99ID:13CfGTjW Kotlin 1.3 には Kotlin Native がバンドルされているみたいに書いてあるWebページがあるが、されてないよね?
bin ディレクトリ以下はいつも通りのスクリプトやバッチファイルがあるだけで kotlin-native はないんだけど。
何かオプションで変わるのか?
bin ディレクトリ以下はいつも通りのスクリプトやバッチファイルがあるだけで kotlin-native はないんだけど。
何かオプションで変わるのか?
891デフォルトの名無しさん
2018/11/06(火) 19:55:52.84ID:MUP1fE6Q >>890
ということはNativeがバンドルされているみたいに書いてある可能性があるな
ということはNativeがバンドルされているみたいに書いてある可能性があるな
892デフォルトの名無しさん
2018/11/06(火) 23:53:17.85ID:BD76rR44 どうやら KotlinConf 2018 の基調講演では1.3 に native バンドルすると発表していたようだ。
https://www.publickey1.jp/blog/18/kotlinnativekotlin_13winmaciosandroidwebassemblykotlinconf_2018.html
それでこういう記事になったのかも知れない。
https://www.publickey1.jp/blog/18/kotlin_13javavmkotlinnative.html
で、実際バンドルされているのかいないのか?
https://www.publickey1.jp/blog/18/kotlinnativekotlin_13winmaciosandroidwebassemblykotlinconf_2018.html
それでこういう記事になったのかも知れない。
https://www.publickey1.jp/blog/18/kotlin_13javavmkotlinnative.html
で、実際バンドルされているのかいないのか?
893デフォルトの名無しさん
2018/11/07(水) 04:08:57.36ID:uTkGbVYN 古いIntelliJ(1.3) + Kotlin1.3プラグイン: 表示されず
最新IntelliJ(2.5) 素の状態(1.2.51) : 表示されず
最新IntelliJ(2.5) + Kotlin1.3プラグイン: 新規プロジェクトでKotlin/Nativeが表示された
IntelliJ側も一定以上のバージョンが必要みたい
Gradleプラグインは混ぜる意味無いし、
GitHubのリポジトリ直リリースの方も別のリポジトリと混ぜたりしないだろうから
バンドル云々は関係無いと思う
最新IntelliJ(2.5) 素の状態(1.2.51) : 表示されず
最新IntelliJ(2.5) + Kotlin1.3プラグイン: 新規プロジェクトでKotlin/Nativeが表示された
IntelliJ側も一定以上のバージョンが必要みたい
Gradleプラグインは混ぜる意味無いし、
GitHubのリポジトリ直リリースの方も別のリポジトリと混ぜたりしないだろうから
バンドル云々は関係無いと思う
894デフォルトの名無しさん
2018/11/14(水) 11:15:27.33ID:m5bayMOd Native使ってみたいけどNativeの恩恵にあずかれそうなアプリねーな
895デフォルトの名無しさん
2018/11/14(水) 12:44:13.09ID:ouXx+ttu 開発環境をインストール出来ない会社のPCで威力を発揮
896デフォルトの名無しさん
2018/11/14(水) 13:13:51.91ID:bryEJhFF >>895
そらならKotlinだろうがnativeだろうがインストールできないのでは?
そらならKotlinだろうがnativeだろうがインストールできないのでは?
897デフォルトの名無しさん
2018/11/14(水) 13:14:35.60ID:bryEJhFF タイプミスった
スマホのタイプミスは変になるなあ
とほほ
スマホのタイプミスは変になるなあ
とほほ
>>897
フリック入力には早く慣れたい、今30文字/分レベル
フリック入力には早く慣れたい、今30文字/分レベル
899デフォルトの名無しさん
2018/11/15(木) 10:16:23.76ID:9CKUsg3j ATOKのフラワータッチでブラインド余裕だわ
900デフォルトの名無しさん
2018/11/15(木) 19:41:57.59ID:/p28cUOS AWSのJDKってKotlinでも使えるの?
901デフォルトの名無しさん
2018/11/15(木) 21:01:05.69ID:GB4CWMFp どうやったらKotlinを使えなくできると思うのか、逆に聞きたい
902デフォルトの名無しさん
2018/11/15(木) 21:59:02.19ID:Zxq7WOdf kotlinを何だと思ってるんだ?
903デフォルトの名無しさん
2018/11/15(木) 22:05:51.83ID:7h5p3DlT >>897
そんな些細なミスでいちいち訂正と言い訳しなくていいよ
そんな些細なミスでいちいち訂正と言い訳しなくていいよ
904デフォルトの名無しさん
2018/11/15(木) 22:34:05.06ID:cJq6eeYE >>900
Kotlinで書いたコードが動くまでの仕組みの基礎中の基礎を調べた方が良いよ
Kotlinで書いたコードが動くまでの仕組みの基礎中の基礎を調べた方が良いよ
905デフォルトの名無しさん
2018/11/15(木) 22:41:22.51ID:LMGGLgEy つまりkotlinは一回javaに変換してからコンパイルしてるってこと?
906デフォルトの名無しさん
2018/11/15(木) 23:18:48.42ID:TNWk/8K+ いいえ
直接Javaクラスファイルが作られます
直接Javaクラスファイルが作られます
907デフォルトの名無しさん
2018/11/15(木) 23:34:43.61ID:thmm/mkW JVMはバイトコードを読むもの
Kotlinソースコードはバイトコードを吐く
Javaソースコードもバイトコードを吐く
他のJVM言語(Groovy、Scala、JRuby、Jython等)もバイトコードを吐く
ドゥユゥアンダースタン?
Kotlinソースコードはバイトコードを吐く
Javaソースコードもバイトコードを吐く
他のJVM言語(Groovy、Scala、JRuby、Jython等)もバイトコードを吐く
ドゥユゥアンダースタン?
908デフォルトの名無しさん
2018/11/16(金) 02:51:53.33ID:RZeahJQu >>905
概念的にはそうなんだけど実際にはそういう人間にとってわかりやすい中間的な状態はすっ飛ばして内部でいきなりバイトコード作っている。
概念的にはそうなんだけど実際にはそういう人間にとってわかりやすい中間的な状態はすっ飛ばして内部でいきなりバイトコード作っている。
909デフォルトの名無しさん
2018/11/16(金) 06:20:06.46ID:7Oyx3zj5 >>905
Javaで書かれたコードはClassファイルに変換される
Kotlinで書かれたコードもClassファイルに変換される
つまり、OpenJDK (JVM)から見たら、実行する時点でそのコードがもともとJavaで書かれていたのかKotlinで書かれていたのかの区別はできない。
Javaで書かれたコードはClassファイルに変換される
Kotlinで書かれたコードもClassファイルに変換される
つまり、OpenJDK (JVM)から見たら、実行する時点でそのコードがもともとJavaで書かれていたのかKotlinで書かれていたのかの区別はできない。
910デフォルトの名無しさん
2018/11/16(金) 07:42:39.93ID:SxJuNQsd なるほど ありがとうございます
JDKっていうのはコンパイラだけじゃなくてインタプリタも含まれてるのか
JDKっていうのはコンパイラだけじゃなくてインタプリタも含まれてるのか
911デフォルトの名無しさん
2018/11/16(金) 09:09:35.65ID:j42pfltv ?
912デフォルトの名無しさん
2018/11/16(金) 12:09:05.80ID:cFUtGW68 そもそもAWSのJDKっても普通のOpenJDKに対して長期的にバグフィックスとセキュリティ修正をするってだけだからな。
913デフォルトの名無しさん
2018/11/16(金) 12:35:30.76ID:f+AE9bwu >>912
それだけでもありがたい。
それだけでもありがたい。
914デフォルトの名無しさん
2018/11/16(金) 12:51:50.09ID:InCl5VjB Kotlin使っといてJavaのLTS期間がどうとかアホかよ
Kotlinって常に最新バージョンしかサポートされてなくて、
新しいバージョンリリースされた瞬間にサポート切れなんだけど、そこ理解してる?
Kotlinって常に最新バージョンしかサポートされてなくて、
新しいバージョンリリースされた瞬間にサポート切れなんだけど、そこ理解してる?
915デフォルトの名無しさん
2018/11/16(金) 13:21:45.24ID:ffAbnTNN >>910
JDKってか、JVMにバイトコードのインタープリタとJITコンパイラ(実行時によく使用されるメソッドとかをバイトコードから機械語にコンパイルする)が含まれてる
JDKってか、JVMにバイトコードのインタープリタとJITコンパイラ(実行時によく使用されるメソッドとかをバイトコードから機械語にコンパイルする)が含まれてる
916デフォルトの名無しさん
2018/11/16(金) 13:25:37.10ID:cFUtGW68 >>913
あ、すまん、文脈としては「だからAWSのJDKでだけ動かないなんてことはない」と言いたかった。
あ、すまん、文脈としては「だからAWSのJDKでだけ動かないなんてことはない」と言いたかった。
917デフォルトの名無しさん
2018/11/16(金) 13:26:14.79ID:cFUtGW68 >>914
それとJDKのサポート期間と、なんの関係もないじゃん。いったい何と戦ってるのか。
それとJDKのサポート期間と、なんの関係もないじゃん。いったい何と戦ってるのか。
918デフォルトの名無しさん
2018/11/16(金) 13:32:19.68ID:InCl5VjB >>917
どのみち放置運用するようなものには全く使えないんだから、半年毎にJDKを更新するくらい大した問題じゃないでしょ
どのみち放置運用するようなものには全く使えないんだから、半年毎にJDKを更新するくらい大した問題じゃないでしょ
919デフォルトの名無しさん
2018/11/16(金) 13:48:45.91ID:wIRSNKmo Xamarinみたいな糞でやるからそうなる
920デフォルトの名無しさん
2018/11/16(金) 14:10:05.60ID:cFUtGW68921デフォルトの名無しさん
2018/11/16(金) 18:19:57.19ID:7Oyx3zj5 >>918
それが大した問題だからここ何ヶ月も世界中で大騒ぎしてたわけで。。
まあアプリ本体とJDKをDockerかなんかでまとめてコンテナ化とかしてりゃ何の苦労もないけどな、
現実に本番環境でそこまで出来てるところはまだ少数派だろう。
それが大した問題だからここ何ヶ月も世界中で大騒ぎしてたわけで。。
まあアプリ本体とJDKをDockerかなんかでまとめてコンテナ化とかしてりゃ何の苦労もないけどな、
現実に本番環境でそこまで出来てるところはまだ少数派だろう。
922デフォルトの名無しさん
2018/11/16(金) 19:42:48.03ID:4Z/2Zn+l うわー。Pleiades インストールしたら IntelliJ IDEA が日本語に!
慣れてないと違和感あるなこれw
慣れてないと違和感あるなこれw
923デフォルトの名無しさん
2018/11/17(土) 07:34:08.71ID:KWZ5EwMD eclipseで開発してるやつおる?
最近 eclipse の Kotolin のプラグイン更新されてるみたいだけど、やっぱり IntelliJ の方が断然快適なんだろうか
eclipse ずっと使ってきたから、今から開発環境変えるのも苦労しそう
最近 eclipse の Kotolin のプラグイン更新されてるみたいだけど、やっぱり IntelliJ の方が断然快適なんだろうか
eclipse ずっと使ってきたから、今から開発環境変えるのも苦労しそう
924デフォルトの名無しさん
2018/11/17(土) 08:00:43.63ID:SiZmC7/H むしろそういったIME使わずに作ってる人いない?
どうも自分で制御出来ない感じが慣れなくって
どうも自分で制御出来ない感じが慣れなくって
925デフォルトの名無しさん
2018/11/17(土) 08:05:44.83ID:vtnmvVoJ 日本人のITリテラシーは土人並みやで
926デフォルトの名無しさん
2018/11/17(土) 08:33:58.05ID:WPCLsCCD >>923-924
おぢさん達、気持ちはわかるけどその程度のことくらい頑張らないと仕事なくなるよ
おぢさん達、気持ちはわかるけどその程度のことくらい頑張らないと仕事なくなるよ
927デフォルトの名無しさん
2018/11/17(土) 10:32:10.09ID:Lyuticwx928デフォルトの名無しさん
2018/11/17(土) 11:38:32.70ID:tnhZ/1Ed eclipse使っててよくストレス溜めずにいられるよな
929デフォルトの名無しさん
2018/11/17(土) 11:46:54.76ID:8wpf7s1e930デフォルトの名無しさん
2018/11/17(土) 11:52:52.29ID:B4GISbTr 自演乙
931デフォルトの名無しさん
2018/11/17(土) 12:03:25.62ID:Lyuticwx932デフォルトの名無しさん
2018/11/17(土) 12:22:39.88ID:W3t77A42 自分も趣味のプロジェクトはテストだけ日本語で書いてる
933デフォルトの名無しさん
2018/11/17(土) 13:01:34.66ID:By/5vlbY934デフォルトの名無しさん
2018/11/17(土) 13:47:53.54ID:rc62Vrp5 Kotlin使うなら開発元のJetBrainsを支援する意味でもIntelliJの有償版を使うべき
最近はJavaがゴタゴタしてるし、JBが強いスマホ分野ではIDE離れの動きが出てきてるし、開発環境市場はVSCodeが席巻してる
このままだと会社無くなってKotlinも終わっちゃうよ
最近はJavaがゴタゴタしてるし、JBが強いスマホ分野ではIDE離れの動きが出てきてるし、開発環境市場はVSCodeが席巻してる
このままだと会社無くなってKotlinも終わっちゃうよ
935デフォルトの名無しさん
2018/11/17(土) 13:48:05.80ID:KWZ5EwMD SWT使うから、eclipseのWindowBuilderないとちょっときついのよね
IntelliJ は魅力的だしとりあえずインストールしてみたけど、IDE2つ起動しないといけなくなりそう
IntelliJ は魅力的だしとりあえずインストールしてみたけど、IDE2つ起動しないといけなくなりそう
936デフォルトの名無しさん
2018/11/17(土) 21:54:40.24ID:ftBRdYwQ >>923
プラグインが0.7.2くらいの時に使ったことがあったが、Javaのプログラミングの時にまでエラーが出るようになって、
たまらずアンインストールした。
その後どうなったか知らないが、まだアルファ版のままみたし、もともとのContributorはほとんど関与していなくて、
現在のContributorは実質ほぼ一人だけみたいだから、IntelliJのサポートレベルには
遠く及ばないんじゃなかろうか。
https://github.com/JetBrains/kotlin-eclipse/graphs/contributors
プラグインが0.7.2くらいの時に使ったことがあったが、Javaのプログラミングの時にまでエラーが出るようになって、
たまらずアンインストールした。
その後どうなったか知らないが、まだアルファ版のままみたし、もともとのContributorはほとんど関与していなくて、
現在のContributorは実質ほぼ一人だけみたいだから、IntelliJのサポートレベルには
遠く及ばないんじゃなかろうか。
https://github.com/JetBrains/kotlin-eclipse/graphs/contributors
937デフォルトの名無しさん
2018/11/18(日) 00:00:27.08ID:GJ109gfR >>934
支援させてやるから、俺にも買ってくれよ
支援させてやるから、俺にも買ってくれよ
938デフォルトの名無しさん
2018/11/18(日) 19:31:38.08ID:2vqoBI/V939デフォルトの名無しさん
2018/11/22(木) 21:37:26.67ID:WC7mf3YT kotlin勉強してみたけど、なんていうんだろこれまでだと泥臭い書き方になるものが
すっきりかけるようになっていいな
JavaよりC#のほうがいいと思ってたがC#もdelegateを導入したあたりから複雑化して
いまとなってはkotlinのほうがなんか直感的にわかる
すっきりかけるようになっていいな
JavaよりC#のほうがいいと思ってたがC#もdelegateを導入したあたりから複雑化して
いまとなってはkotlinのほうがなんか直感的にわかる
940デフォルトの名無しさん
2018/11/22(木) 21:53:40.76ID:BxA30JEc 本当に使ってるの?
C#のdelegateは最初のバージョンからあるし、KotlinってC#をリスペクトしてて
盲目的にC#にあるものは全部取り入れてるからC#より複雑だぞ
C#のdelegateは最初のバージョンからあるし、KotlinってC#をリスペクトしてて
盲目的にC#にあるものは全部取り入れてるからC#より複雑だぞ
941デフォルトの名無しさん
2018/11/22(木) 23:32:14.84ID:36KvwJdV C#よりいい点はレシーバ付きラムダ式と拡張関数の書き方かな
ジェネリクスは…
reifiedはがんばってる気がするけど
ジェネリクスは…
reifiedはがんばってる気がするけど
942デフォルトの名無しさん
2018/11/23(金) 00:02:58.62ID:jI4KYN6E あんま使ってないんだと思うしスレチだが
最近のC#はdelegate負の遺産として使わないぞ
最近のC#はdelegate負の遺産として使わないぞ
943デフォルトの名無しさん
2018/11/23(金) 01:25:32.06ID:fYjwDIpD この流れはチャンスだ
使った事ないけどデリゲートって何ですか?
デリケートなら知ってます
使った事ないけどデリゲートって何ですか?
デリケートなら知ってます
944デフォルトの名無しさん
2018/11/23(金) 12:09:30.81ID:uLRLCLS/ easy scalaとしてkotlin開発始めたんだからC#関係ないぞw
てかC#もscalaの記法パクってるの多いからな
てかC#もscalaの記法パクってるの多いからな
945デフォルトの名無しさん
2018/11/23(金) 12:13:14.21ID:2OhrHiHK エヴァしか知らないとアニメ表現が全部エヴァのパクリに見える現象がここにも
946デフォルトの名無しさん
2018/11/23(金) 14:30:09.94ID:88YT2KBI 作ろうとしていたのは静的型付けのgroovyで、静的型付け言語の先輩のC#やScalaの記法を参考にしただけなんですけどね
947デフォルトの名無しさん
2018/11/23(金) 14:53:48.45ID:mswwi/pb 他の言語やった後に C# やると
event や delegate キーワードはなんじゃこれって思うよね
event や delegate キーワードはなんじゃこれって思うよね
948デフォルトの名無しさん
2018/11/23(金) 17:00:12.01ID:ZfEOkgRs >>945
Cのパクリ言語の多さには驚かされます。
Cのパクリ言語の多さには驚かされます。
949デフォルトの名無しさん
2018/11/23(金) 19:26:48.74ID:R6GgleAv B..orz
950デフォルトの名無しさん
2018/11/23(金) 20:30:04.34ID:sjUJivrs B→Cは本人達による改良だぞ
951デフォルトの名無しさん
2018/11/23(金) 22:54:35.99ID:8BniVbk+ >>943
最後の一文から知りたいのでなくて、ネタをやりたかったのだろうとは思うが、一応説明すると、
基底クラスを継承する代わりに、継承したい基底クラスのインスタンスを指定すると、
あたかも継承したかのように振る舞う機能。
基底クラスのメソッド呼び出しは、上記で指定したインスタンスに委譲(delegate)され、
そのインスタンスのメソッドが呼ばれる。
Effective Javaによると継承は一般的に間違いを起こしやすとしてdelegateするよう勧めている。
overrideするメソッドがたくさんあるけど具象クラスがないインターフェースを実装する時に
ヘルパークラスから生成したインスタンスに委譲すると便利。
最後の一文から知りたいのでなくて、ネタをやりたかったのだろうとは思うが、一応説明すると、
基底クラスを継承する代わりに、継承したい基底クラスのインスタンスを指定すると、
あたかも継承したかのように振る舞う機能。
基底クラスのメソッド呼び出しは、上記で指定したインスタンスに委譲(delegate)され、
そのインスタンスのメソッドが呼ばれる。
Effective Javaによると継承は一般的に間違いを起こしやすとしてdelegateするよう勧めている。
overrideするメソッドがたくさんあるけど具象クラスがないインターフェースを実装する時に
ヘルパークラスから生成したインスタンスに委譲すると便利。
952デフォルトの名無しさん
2018/11/29(木) 16:05:57.68ID:nHLSJTBx KotlinでWindowsとかのデスクトップアプリ作ろうと思ったら、やっぱTornadoFXとかになるの?
ネイティブで作れたら嬉しいんだけど
ネイティブで作れたら嬉しいんだけど
953デフォルトの名無しさん
2018/11/29(木) 16:56:34.05ID:ExWFlvb4 そもそもWindowsのデスクトップアプリを作るなら、C#かC++だろ
なんでわざわざKotlinで作るんだ
なんでわざわざKotlinで作るんだ
954デフォルトの名無しさん
2018/11/29(木) 17:09:39.01ID:xQKvJzEq Kotlinが好きなのかKotlinしか知らないからやろ
955デフォルトの名無しさん
2018/11/29(木) 17:24:12.38ID:OofVoAKX windows「とかの」
まぁクロスプラット狙ってるならそれでもいいんじやねぇの
まぁクロスプラット狙ってるならそれでもいいんじやねぇの
956デフォルトの名無しさん
2018/11/29(木) 17:26:42.57ID:tIHf4qpT Javaでクロスプラットフォームなクライアントアプリを作ろうとしたが、クリップボードひとつまともに機能しかった悲しい思い出が甦る
957デフォルトの名無しさん
2018/11/29(木) 18:27:18.48ID:93l6OrKk TornadeFXとかあかんやろ(見もせずに言ってます)
ティアが嵩むほどシステムの信頼性は下がる(見もせずに言ってます)
Java JavaFX Kotlin あかんやろ、Java標準からも外されるくらいクソなJavaFX、あかんやろ(見もせずに言ってます)
ティアが嵩むほどシステムの信頼性は下がる(見もせずに言ってます)
Java JavaFX Kotlin あかんやろ、Java標準からも外されるくらいクソなJavaFX、あかんやろ(見もせずに言ってます)
958デフォルトの名無しさん
2018/11/29(木) 19:16:53.65ID:8tueZiBH とりあえずAndroid用アプリでも作っときなさい。
今はその方が使ってくれる人は多そうだしな。
GUIも問題なし。
そうでなければGUIなしの主にサーバ用プログラム作るかかな。
GUIはクライアント側に任せる。クライアント側は何でも良い。
今はその方が使ってくれる人は多そうだしな。
GUIも問題なし。
そうでなければGUIなしの主にサーバ用プログラム作るかかな。
GUIはクライアント側に任せる。クライアント側は何でも良い。
959デフォルトの名無しさん
2018/11/29(木) 19:33:01.28ID:iATAGwWK 一つのことにこだわって新しいことの習得がおっくうになるのは老化してる証拠
960デフォルトの名無しさん
2018/11/29(木) 19:36:46.41ID:L2YcYUgx JavaのAWTがつかえるんじゃないの
961デフォルトの名無しさん
2018/11/29(木) 19:43:58.47ID:8tueZiBH そうだな。ボケ防止にもなるから新しいことやった方が良い。
ただしボケ防止の場合は完璧な状態になる必要はない。
学習を続けるという脳を使い続ける行為が重要なのであって、完璧になってゴールしてしまったらそこで学習が終わってしまうからだ。
ただしボケ防止の場合は完璧な状態になる必要はない。
学習を続けるという脳を使い続ける行為が重要なのであって、完璧になってゴールしてしまったらそこで学習が終わってしまうからだ。
962デフォルトの名無しさん
2018/11/29(木) 22:30:52.83ID:BEC3KPap >>959
尊師のお言葉にもあるけど、経験値が増えるにつれて、わざわざ自分で使い込んでみなくてもある程度わかるようになってしまうんだよな
Kotlinなんてまさにそうで、Javaに十分精通してる人なら「ああ、記述をライトにしたAltJavaね。機会があれば使おう。」で終わり
尊師のお言葉にもあるけど、経験値が増えるにつれて、わざわざ自分で使い込んでみなくてもある程度わかるようになってしまうんだよな
Kotlinなんてまさにそうで、Javaに十分精通してる人なら「ああ、記述をライトにしたAltJavaね。機会があれば使おう。」で終わり
963デフォルトの名無しさん
2018/11/29(木) 22:49:53.88ID:anCZlMXk Javaで出来ることをKotlinで書くだけだから普通に出来るでしょ
まあそもそもデスクトップアプリをJavaで作ること自体あんまりおすすめしないけど
まあそもそもデスクトップアプリをJavaで作ること自体あんまりおすすめしないけど
964デフォルトの名無しさん
2018/11/30(金) 02:32:19.54ID:KY1rTXDt まあそのうちnativeできるし、何かできるんじゃなかろうか。
965デフォルトの名無しさん
2018/11/30(金) 07:59:18.39ID:pFci1ptA >>962
確かに老い先短くなると、学習する期間で縮む余命の方が、残りの余命の間に得られる利益を上回るよね。
確かに老い先短くなると、学習する期間で縮む余命の方が、残りの余命の間に得られる利益を上回るよね。
966デフォルトの名無しさん
2018/11/30(金) 08:47:06.15ID:JSlOh1Qz >>965
余命の問題だけじゃないけどな
・この程度なら必要になったときにググれば十分だ
・類似技術を習得済みだから最悪でも今持ってるスキルの範囲でカバー可能
経験を積めば大抵こうなるから、わざわざ使い込んで試す利益は限りなく低くなる
余命の問題だけじゃないけどな
・この程度なら必要になったときにググれば十分だ
・類似技術を習得済みだから最悪でも今持ってるスキルの範囲でカバー可能
経験を積めば大抵こうなるから、わざわざ使い込んで試す利益は限りなく低くなる
967デフォルトの名無しさん
2018/11/30(金) 12:25:01.05ID:J79R14WK 少なくとも触らないで理解した気になってる奴は成長しない
968デフォルトの名無しさん
2018/11/30(金) 12:56:15.42ID:vx8Iixcx Kotlinに慣れてくるとJavaに戻る気は失せてくる。
型推論とか色々とコンパイラが面倒見てくれるから楽だ。
型推論とか色々とコンパイラが面倒見てくれるから楽だ。
969デフォルトの名無しさん
2018/11/30(金) 13:50:09.33ID:SLlZ3057 C#も型推論とかあるし、Kotlinが出来るなら、
学習コストは少ないだろ
学習コストは少ないだろ
970デフォルトの名無しさん
2018/11/30(金) 14:01:04.03ID:LHvn0OZF 最新のJava使えるなら型推論あるし、javaでもそこまでいらいらしなくったな。
971デフォルトの名無しさん
2018/11/30(金) 15:21:36.33ID:GKWVzoy/ つうかどの言語も似たような感じになってる
972デフォルトの名無しさん
2018/11/30(金) 21:50:01.48ID:vx8Iixcx ٩( ᐛ )و
973デフォルトの名無しさん
2018/12/03(月) 11:14:21.81ID:m1M1hiPd Kotlinは言語としてとてもよくできている、しかし現実的な用途がピーキーだ
おすすめできる人
・現在Javaでプログラミングしている人
おすすめできない人
・まだJavaでプログラミングしていない人
「いまからJava勉強してアプリとかサービスとか作ろうと思うんです」という初心者の人がいたらアホかやめとけと言うと思う
それはKotlinにも当てはまる
「いまさらJavaで作らなくてもいいぞ」という進言はJavaの文法の小難しさというより周辺の環境を考慮しての物言いなはずである
KotlinはJavaの環境のJava文法部分を変更するもので、たとえばJavaでのゲームGUIのつくりにくさや外部ライブラリの面妖さを変更してはくれない
「いやあちょうどJavaでプログラミングしようかと思ってたとこなんですよ」という人がたまたまいたならもう全力でおすすめできるのだが
おすすめできる人
・現在Javaでプログラミングしている人
おすすめできない人
・まだJavaでプログラミングしていない人
「いまからJava勉強してアプリとかサービスとか作ろうと思うんです」という初心者の人がいたらアホかやめとけと言うと思う
それはKotlinにも当てはまる
「いまさらJavaで作らなくてもいいぞ」という進言はJavaの文法の小難しさというより周辺の環境を考慮しての物言いなはずである
KotlinはJavaの環境のJava文法部分を変更するもので、たとえばJavaでのゲームGUIのつくりにくさや外部ライブラリの面妖さを変更してはくれない
「いやあちょうどJavaでプログラミングしようかと思ってたとこなんですよ」という人がたまたまいたならもう全力でおすすめできるのだが
974デフォルトの名無しさん
2018/12/03(月) 12:14:09.57ID:7ySpxLkd ピーキー?
975デフォルトの名無しさん
2018/12/03(月) 12:18:13.71ID:sXa35AcC Javaの文法が小難しいとか小学生かよ
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否★4 [夜のけいちゃん★]
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す ★4 [蚤の市★]
- 中国側が首相答弁の撤回要求、日本側拒否★5 [夜のけいちゃん★]
- 「厚かましい挑発的発言だ」中国国連大使が高市首相発言に強く反発 日本の常任理事国入りに明確に反対 [ぐれ★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★6 [ぐれ★]
- 解体ごみ約2.3トンを山に不法投棄か トルコ国籍解体工を逮捕 埼玉 [どどん★]
- 【悲報】ファブル「━━━書かれた文面を読むだけの岸田と違って、高市は決断力や行動力があり、自分で責任を取れる。 [257926174]
- 【悲報】高市早苗さん、たった一人で日本を崩壊へ導く [714769305]
- 【悲報】「やったー!こだわりまくった洋館仕立ての家を建てたぞ!」➡「「離婚したんで住まずに売ります……」 [158478931]
- 【悲報】高市総理モノマネにとろサーモン久保田がブチギレ。「しょーもない。高市さんは頑張ろうとしてるやろ」😮 [518915984]
- 精神する時の🏡
- 【画像】日本のリン肥料、7割が中国だった!レアじゃないアースを禁輸されただけて餓死へ [347751896]
