JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう
※前スレ
https://mevius.5ch.net/test/read.cgi/tech/1531818027/
探検
Kotlin 5
■ このスレッドは過去ログ倉庫に格納されています
2018/12/08(土) 20:29:41.41ID:oXOQORcd
652デフォルトの名無しさん
2019/04/26(金) 18:12:21.37ID:tgodpZ2Y ごった煮
653デフォルトの名無しさん
2019/04/26(金) 20:00:10.59ID:ErNxnYz2654デフォルトの名無しさん
2019/04/26(金) 20:32:30.11ID:MEdB7GvY655デフォルトの名無しさん
2019/04/26(金) 21:06:34.41ID:XuSZUgKR 個人の試行錯誤の実況でスレが消費されてくより過疎ってた方がマシ
656デフォルトの名無しさん
2019/04/27(土) 09:33:03.49ID:2kV59Ab3 スレの消費はどうでもいいんだけど、試行錯誤の記録はqiitaなりブログなり自分で管理できるところに残しておいた方が後々良いと思うんだよね
657デフォルトの名無しさん
2019/04/27(土) 09:47:43.31ID:X+HWf3Sy >>516
fragmentは再利用されるからlateinit var
fragmentは再利用されるからlateinit var
658デフォルトの名無しさん
2019/05/08(水) 08:51:45.05ID:7421dKds Google、Androidにおける「Kotlinファースト」強化を表明。Google I/O 2019
https://www.publickey1.jp/blog/19/googleandroidkotlingoogle_io_2019.html
https://www.publickey1.jp/blog/19/googleandroidkotlingoogle_io_2019.html
659デフォルトの名無しさん
2019/05/08(水) 09:08:00.50ID:1o0ZoV2Z660デフォルトの名無しさん
2019/05/08(水) 19:13:02.95ID:PdqlbBMH kotlin day17、object式
クラスAをインターフェースBによって僅かに修正したクラスCのインスタンスが必要となった時に、サブクラスCを宣言せずにそのインスタンスabを生成できる。
```kt
open class A(x: Int) {
public open val y: Int = x
}
interface B {...}
val ab: A = object : A(1), B {
override val y = 15
}
```
クラスAをインターフェースBによって僅かに修正したクラスCのインスタンスが必要となった時に、サブクラスCを宣言せずにそのインスタンスabを生成できる。
```kt
open class A(x: Int) {
public open val y: Int = x
}
interface B {...}
val ab: A = object : A(1), B {
override val y = 15
}
```
661デフォルトの名無しさん
2019/05/08(水) 21:35:17.96ID:1/kiWGBR 前スレでも書いたがKotlin/JSに続く、Kotlin/Dartトランスパイラをだな・・
まぁやれるとしたらJB側だからリソース的に無理なんだけどな
まぁやれるとしたらJB側だからリソース的に無理なんだけどな
662デフォルトの名無しさん
2019/05/09(木) 00:39:13.38ID:62rwCBNY >>661
Flutterが目当てなら、必ずしもDartを介することはないのでは?
Flutterが目当てなら、必ずしもDartを介することはないのでは?
663デフォルトの名無しさん
2019/05/09(木) 07:27:30.06ID:bwcjejUH どういう意味?
664デフォルトの名無しさん
2019/05/09(木) 07:28:01.24ID:bwcjejUH ああ、ごめん分かったよく読んでなかった
665デフォルトの名無しさん
2019/05/09(木) 07:49:34.83ID:p+Gqts9i >>662
少なくともDart Kernel binaryを生成出来ないとFlutterのホットリロードが使えない
Kernel binaryの仕様はDart自体より安定してない
https://flutter.dev/docs/development/tools/hot-reload
https://mrale.ph/dartvm/
Flutterのクロスプラットフォーム性や開発時の機能などの結構な割合を
Dart自体の機能により実現しているのでその辺の仕組みに乗っかれないと逆に厳しいと思うぞ
少なくともDart Kernel binaryを生成出来ないとFlutterのホットリロードが使えない
Kernel binaryの仕様はDart自体より安定してない
https://flutter.dev/docs/development/tools/hot-reload
https://mrale.ph/dartvm/
Flutterのクロスプラットフォーム性や開発時の機能などの結構な割合を
Dart自体の機能により実現しているのでその辺の仕組みに乗っかれないと逆に厳しいと思うぞ
666デフォルトの名無しさん
2019/05/09(木) 09:45:14.22ID:Gvcl+e3N flutterも最初素晴らしいと触ってたけど、dartの糞さに嫌気さしてさわるのやめたな。つか、flutterは致命的な問題もあるしな
667デフォルトの名無しさん
2019/05/09(木) 13:10:55.61ID:fgBYrKh8 kotlinのgraphqlライブラリ微妙だからscalaのsangria使えないかなー
sangriaどころかscala触ったことないけど
sangriaどころかscala触ったことないけど
668デフォルトの名無しさん
2019/05/09(木) 15:52:18.57ID:drrQ8Z5A >>666
どんな問題?
どんな問題?
669デフォルトの名無しさん
2019/05/09(木) 20:53:25.89ID:Gvcl+e3N モバイルアプリはメモリ不足によってプロセスキルされ、キル前の状態に戻すために復元の仕組みが用意されてるがflutterではどうすればいいの?問題。
例えばandroidならonSaveInstanceStateがあるが、flutterではどうすれば?
flutterは1つのActivity上でページ遷移してるが、ページ毎に状態保存、復元は?
https://github.com/flutter/flutter/issues/6827
例えばandroidならonSaveInstanceStateがあるが、flutterではどうすれば?
flutterは1つのActivity上でページ遷移してるが、ページ毎に状態保存、復元は?
https://github.com/flutter/flutter/issues/6827
670デフォルトの名無しさん
2019/05/09(木) 20:58:48.44ID:Gvcl+e3N モバイルアプリ開発したことあれば必ずプロセスキルの問題に出くわすと思うんだがflutterの開発チームはこれ放置してるという。普通flutterの設計段階でこの事考慮すべきだが全く考慮してなさそうというあほっぷり。
671デフォルトの名無しさん
2019/05/09(木) 23:07:11.65ID:p+GF1Adw 地方都市だけど最近Android本が本屋に数冊しかない
他言語は田舎のわりにはけっこう置いてるんだけど
Kotlin移行の影響なのかも
他言語は田舎のわりにはけっこう置いてるんだけど
Kotlin移行の影響なのかも
672デフォルトの名無しさん
2019/05/10(金) 00:21:35.88ID:JD2pFQw6 >>670
flutter詳しくは知らんが、もしそれが本当ならモバイル用途としてはたしかに致命的欠陥だな
後付けでflutterのフレームワークの中で強引に全部保存復帰するようにするから気にするな、みたいなこと
考えてるとしたらヤバイ
そういうことができないモバイルだからステートの保存と復帰はアプリに投げるように作ってあるのに・・
flutter詳しくは知らんが、もしそれが本当ならモバイル用途としてはたしかに致命的欠陥だな
後付けでflutterのフレームワークの中で強引に全部保存復帰するようにするから気にするな、みたいなこと
考えてるとしたらヤバイ
そういうことができないモバイルだからステートの保存と復帰はアプリに投げるように作ってあるのに・・
673デフォルトの名無しさん
2019/05/10(金) 03:07:44.06ID:+vHN15fT >>671
Amazon使いなさい。
Amazon使いなさい。
674デフォルトの名無しさん
2019/05/10(金) 10:49:17.54ID:pdzLc3IS Kotlin/Everywhere
https://blog.jetbrains.com/kotlin/2019/05/kotlin-is-everywhere-join-the-global-event-series/
・イベントは主に5月のGoogle I/Oと12月上旬のKotlinConfの間に行われる
・イベント予定は以下の地図に表示される(今後追加されていく)
https://events.withgoogle.com/kotlin-everywhere/
https://blog.jetbrains.com/kotlin/2019/05/kotlin-is-everywhere-join-the-global-event-series/
・イベントは主に5月のGoogle I/Oと12月上旬のKotlinConfの間に行われる
・イベント予定は以下の地図に表示される(今後追加されていく)
https://events.withgoogle.com/kotlin-everywhere/
675デフォルトの名無しさん
2019/05/10(金) 16:19:08.62ID:54LLglmL676デフォルトの名無しさん
2019/05/10(金) 19:41:51.78ID:iG629wI3 >>675
奈良市かな?
奈良市かな?
677デフォルトの名無しさん
2019/05/10(金) 21:37:10.49ID:shkkgOQu678デフォルトの名無しさん
2019/05/10(金) 21:56:19.96ID:54LLglmL >>677
Kindleも試したけど、俺、紙の本派なんだよねぇ。
書き込みできるのが紙の本がありがたい。
KindleのためにiPad Pro 12inchも買ったけどやっぱり紙が良いんだよねぇ。
俺って、変かなぁ。
Kindleも試したけど、俺、紙の本派なんだよねぇ。
書き込みできるのが紙の本がありがたい。
KindleのためにiPad Pro 12inchも買ったけどやっぱり紙が良いんだよねぇ。
俺って、変かなぁ。
679デフォルトの名無しさん
2019/05/10(金) 22:08:26.51ID:3MWdvG+0 紙の解像度にはまだまだ電子書籍は敵わない
紙の優位性はあるから書見台(ブックスタンド)とか使え、そしてやっぱイマイチだってしまい込むんだ
印刷したデータは死んだデータだってのは、まあ、その通りなんだけども
紙の優位性はあるから書見台(ブックスタンド)とか使え、そしてやっぱイマイチだってしまい込むんだ
印刷したデータは死んだデータだってのは、まあ、その通りなんだけども
680デフォルトの名無しさん
2019/05/10(金) 23:11:37.34ID:msYu7Wbl ktorでhttpsやろうとしてサンプル試してみたけどなんかダメだな
681デフォルトの名無しさん
2019/05/11(土) 01:07:57.25ID:i9FGZXUp682デフォルトの名無しさん
2019/05/11(土) 06:20:49.01ID:J+BhWrkd683デフォルトの名無しさん
2019/05/11(土) 07:17:10.19ID:g6fo75+g [改訂新版]Android SDKポケットリファレンス
これのKindle版って、サンプルコード見やすいですか?
[改訂新版]Swiftポケットリファレンス、こいつのKindle版掲載のサンプルコードは、文字の拡大縮小も可能で、Goodなんだけど。
Kindle Paper Whiteで閲覧します。iPad Pro 12inchもあるけど。
これのKindle版って、サンプルコード見やすいですか?
[改訂新版]Swiftポケットリファレンス、こいつのKindle版掲載のサンプルコードは、文字の拡大縮小も可能で、Goodなんだけど。
Kindle Paper Whiteで閲覧します。iPad Pro 12inchもあるけど。
684デフォルトの名無しさん
2019/05/11(土) 07:18:23.32ID:g6fo75+g ちなみに、お試し版をPaperwhiteで見てみたけど、お試し版は最初の数ページ、しかもサンプルコードが無いページしか、試し読みできませんでした。
685デフォルトの名無しさん
2019/05/11(土) 07:25:20.42ID:BxWOidMY kindleはコピペできないからPDF版のあるやつは、そっちを買うようにしてる。
686デフォルトの名無しさん
2019/05/13(月) 07:33:21.30ID:x9oQSWJz その本つてKotlin対応してなかった気がするけど
Javaでも良いの?
Javaでも良いの?
687デフォルトの名無しさん
2019/05/13(月) 09:37:44.97ID:Brt5xi0Z ここが過疎ってるような気がしてslack見てみたけどそっちも過疎ってるのかな。
slackの使い方間違えてるのかな。。
slackの使い方間違えてるのかな。。
688デフォルトの名無しさん
2019/05/13(月) 10:33:56.13ID:4rccaZT+ >>686
JaveでもOKっす。
JaveでもOKっす。
689デフォルトの名無しさん
2019/05/14(火) 02:33:08.66ID:3xJ0OqNt forEach は Iterable<T> と Iterator<T> にあるのに forEachIndexed は Iterable<T> にあっても Iterator<T> にないのは何故か?
690デフォルトの名無しさん
2019/05/14(火) 07:44:27.90ID:DWuOpB8T 昔ケンカしたから
691デフォルトの名無しさん
2019/05/14(火) 07:49:34.32ID:rV66FunX Iteratorは拡張関数が4つしかなくインターフェース変換を除くと実質2つ
なのでむしろforEachとwithIndexだけが特別扱いのようなもの
なのでむしろforEachとwithIndexだけが特別扱いのようなもの
692デフォルトの名無しさん
2019/05/14(火) 10:12:17.90ID:jvXWFm+P うんことりん
693デフォルトの名無しさん
2019/05/14(火) 12:25:52.36ID:zeev4Evh Ruby では、クラスに、each メソッドが定義されていれば、
include Enumerable で、map, each_line などの便利な機能を使える(Mix-in)
Enumerableのラッパーが、Enumerator で、
eachを定義していないクラス、例えば、String クラスに、Enumerable の機能を追加する
Enumerableは内部イテレータで、Enumeratorは外部イテレータ。
外部イテレータは、繰り返しの進行を制御できる
enum = "a\nb".to_enum( :each_line ) # Enumerator
enum.with_index do | line, idx | # 1行ずつ処理する
p [ idx, line ]
end
出力
[0, "a\n"]
[1, "b"]
with_index は、Enumeratorクラスのメソッドで、
map に、インデックスを渡すことも出来る
p enum.with_index.map { | line, idx | "#{ idx } : #{ line.swapcase }" }
#=> ["0 : A\n", "1 : B"]
include Enumerable で、map, each_line などの便利な機能を使える(Mix-in)
Enumerableのラッパーが、Enumerator で、
eachを定義していないクラス、例えば、String クラスに、Enumerable の機能を追加する
Enumerableは内部イテレータで、Enumeratorは外部イテレータ。
外部イテレータは、繰り返しの進行を制御できる
enum = "a\nb".to_enum( :each_line ) # Enumerator
enum.with_index do | line, idx | # 1行ずつ処理する
p [ idx, line ]
end
出力
[0, "a\n"]
[1, "b"]
with_index は、Enumeratorクラスのメソッドで、
map に、インデックスを渡すことも出来る
p enum.with_index.map { | line, idx | "#{ idx } : #{ line.swapcase }" }
#=> ["0 : A\n", "1 : B"]
694デフォルトの名無しさん
2019/05/14(火) 12:36:39.21ID:eEvxk7yL >>691
あー。そうか。
まあ Iterable は中に Iterator 返すやつ一つ作ってしまえば良いだけなので object で作ってそのまま forEachOndexed で使えば良いだけなのだがなんというか面倒。
あ、自分でそういう拡張関数作ればいいだけか。てか作っておいて欲しかっな。
あー。そうか。
まあ Iterable は中に Iterator 返すやつ一つ作ってしまえば良いだけなので object で作ってそのまま forEachOndexed で使えば良いだけなのだがなんというか面倒。
あ、自分でそういう拡張関数作ればいいだけか。てか作っておいて欲しかっな。
695デフォルトの名無しさん
2019/05/14(火) 12:45:32.34ID:BT1Jap6O >>689
イテレーターは列挙するものだからインデックスと直結しないのでは
n件のリストがあったとして、それをイテラブルとして回すときのインデックスはほぼ自明だけど
そいつを3から始めるイテレーターや逆順のイテレーター
3歩進んで2歩下がるイテレーターのインデックスというのは
ルールを決めてしまえばいいんだけど本質的な属性ではないと思う
イテレーターは列挙するものだからインデックスと直結しないのでは
n件のリストがあったとして、それをイテラブルとして回すときのインデックスはほぼ自明だけど
そいつを3から始めるイテレーターや逆順のイテレーター
3歩進んで2歩下がるイテレーターのインデックスというのは
ルールを決めてしまえばいいんだけど本質的な属性ではないと思う
696デフォルトの名無しさん
2019/05/14(火) 13:05:37.50ID:4HZJg8yK 拡張関数ってグローバルだよな
どこに書けばいいか迷ったあげく使うクラスと同じファイルに書いてしまう
どこに書けばいいか迷ったあげく使うクラスと同じファイルに書いてしまう
697デフォルトの名無しさん
2019/05/14(火) 16:08:52.35ID:o/ZzSQAi 拡張関数めっちゃ便利だけど、用法用量を守らないととても危険だよな
698デフォルトの名無しさん
2019/05/14(火) 17:29:04.99ID:IaXs534s 拡張関数の定義を interface の中にすれば、使用可能範囲をコントロールできる
699デフォルトの名無しさん
2019/05/14(火) 18:31:50.97ID:hlTwFz7+700デフォルトの名無しさん
2019/05/14(火) 19:29:46.17ID:o/ZzSQAi >>698
知らなかった
知らなかった
701デフォルトの名無しさん
2019/05/15(水) 12:44:33.69ID:laKGlnoI どのみち、IDEがないと読み難い言語だから、Extensionはさして気にならない。
プロパティアクセスのせいで、知らず知らずにシャドウしてしまう方がずっと気になる。
プロパティアクセスのせいで、知らず知らずにシャドウしてしまう方がずっと気になる。
702デフォルトの名無しさん
2019/05/16(木) 18:46:37.64ID:ctMRzncm ts2ktって放置されているっぽいけど、今でも使いものになるの?
703デフォルトの名無しさん
2019/05/16(木) 19:36:52.04ID:9YitK9mS >>699
Android以外はちゃんと動くんかな・・・・?
Android以外はちゃんと動くんかな・・・・?
704デフォルトの名無しさん
2019/05/17(金) 22:06:49.39ID:5qYZVYSF >>698
拡張した本人しか認識できないのもができるからな。
拡張した本人しか認識できないのもができるからな。
705デフォルトの名無しさん
2019/05/18(土) 09:09:23.16ID:cPFyVnxJ706デフォルトの名無しさん
2019/05/18(土) 12:51:09.41ID:JYN3Apin 社内の持ち回りの勉強会で、vimでKotlin開発する環境を気合いで整える、という発表をしたら大受けしたわ
もちろんネタとしてな。絶対idea使った方がいいぞ。
もちろんネタとしてな。絶対idea使った方がいいぞ。
707デフォルトの名無しさん
2019/05/18(土) 13:41:12.48ID:1MmHbsk/ 無駄なことに時間使ってんな
708デフォルトの名無しさん
2019/05/18(土) 16:19:18.33ID:IkSg3I69 やらないと後で「おまえやるって言ったよな」と責められるw
709デフォルトの名無しさん
2019/05/18(土) 22:59:21.42ID:rrFT3N/c kotlinでandroid開発の記事載ってる雑誌ないですか
ネットや書籍から情報得るしかない?
ネットや書籍から情報得るしかない?
710デフォルトの名無しさん
2019/05/19(日) 01:39:23.54ID:jp3Kdatt 本とかもう時代遅れ
711デフォルトの名無しさん
2019/05/19(日) 05:37:35.31ID:+tXYNnhs なぜ雑誌?本ならあるのだが。
712デフォルトの名無しさん
2019/05/19(日) 16:40:35.01ID:+tXYNnhs そもそも今ではプログラミングについての雑誌が少ないよね。
Software Design か日経ソフトウェアぐらいなんじゃないか?
ハードウェア寄りな Interface みたいなのもあるが。
Software Design か日経ソフトウェアぐらいなんじゃないか?
ハードウェア寄りな Interface みたいなのもあるが。
713デフォルトの名無しさん
2019/05/19(日) 18:23:21.54ID:fqpGXrMP >>710
そんなこたぁ無い
そんなこたぁ無い
714デフォルトの名無しさん
2019/05/19(日) 19:18:58.24ID:Ma/nTg+4 本はディスプレイ以外に開けるから便利だよね
715デフォルトの名無しさん
2019/05/19(日) 19:40:59.75ID:jp3Kdatt 掌田津耶乃でも読んでろカス
716デフォルトの名無しさん
2019/05/19(日) 20:36:47.66ID:fqpGXrMP つやのちゃん知ってるんだw
717デフォルトの名無しさん
2019/05/20(月) 00:21:44.28ID:pT4TPZWt 断片的なのはネットで調べればいいが、
体系的に全体をまんべんなく知りたいってときは、
やっぱり書籍が適してると思う。
体系的に全体をまんべんなく知りたいってときは、
やっぱり書籍が適してると思う。
718デフォルトの名無しさん
2019/05/20(月) 06:11:32.77ID:BYsItzt6 書籍もガッツリ読むなら紙の本がいいし、写経するなら電子書籍の方がいいし
選択肢が増えた分だけむしろ選ぶのが大変になってるな
選択肢が増えた分だけむしろ選ぶのが大変になってるな
719デフォルトの名無しさん
2019/05/20(月) 11:03:48.81ID:+QyKHsoF SoftwareDesignは最近はもう読んでない
バックナンバーも大量に棄てた
川上さんの連載のだけ残してる
バックナンバーも大量に棄てた
川上さんの連載のだけ残してる
720デフォルトの名無しさん
2019/05/20(月) 11:35:05.49ID:MLZoEYDf 雑誌のいいとこは判型が大きいことだなw
ただのブログよりは読者層を意識してる率が高くて、Web記事よりはまとまりと終わりがある可能性が高いという感じか
なにの情報を欲しいと思ってるのかに依存する気がするぞ
ただのブログよりは読者層を意識してる率が高くて、Web記事よりはまとまりと終わりがある可能性が高いという感じか
なにの情報を欲しいと思ってるのかに依存する気がするぞ
721デフォルトの名無しさん
2019/05/20(月) 11:43:30.49ID:3K6cHyBG 雑誌の良いところは、本よりも情報の鮮度が高いってとこだね。
722デフォルトの名無しさん
2019/05/20(月) 15:22:51.14ID:poyp5Kqc 日経ソフトウェアは、素人向け
SoftwareDesign ぐらいか。
WEB+DB は、システム環境・プログラマーが半々ぐらい
他は、日経Linux は、ラズパイが多い
フレームワークの巨匠と言えば、掌田津耶乃・山田祥寛
山田の講習会は、数万円とか。
掌田なら、十万円ぐらい行きそうw
SoftwareDesign ぐらいか。
WEB+DB は、システム環境・プログラマーが半々ぐらい
他は、日経Linux は、ラズパイが多い
フレームワークの巨匠と言えば、掌田津耶乃・山田祥寛
山田の講習会は、数万円とか。
掌田なら、十万円ぐらい行きそうw
723デフォルトの名無しさん
2019/05/20(月) 16:58:22.74ID:E7kxjeRz つやのって読む価値のない入門書しか出してないだろ
724デフォルトの名無しさん
2019/05/20(月) 20:22:34.07ID:Nm/yOzhN 最近の日経ソフトウェアはPython雑誌みたいになってる
Kotlinの記事なんて全く載らない
Kotlinの記事なんて全く載らない
725デフォルトの名無しさん
2019/05/20(月) 20:48:41.91ID:oKvxv21R そういやPython大ブームだね。
機械学習関係で火が着いた感じか。
機械学習関係で火が着いた感じか。
726デフォルトの名無しさん
2019/05/20(月) 21:27:41.17ID:QYS7YbVl 数年後に始まる小学校でのプログラミング授業もPython採用と予想。
727デフォルトの名無しさん
2019/05/20(月) 21:33:58.54ID:TjPZT1E7 授業は基本マイクラを使うぞ
728デフォルトの名無しさん
2019/05/20(月) 22:00:59.30ID:9o82qJOc kotlinのおすすめ無料学習教材は?
729デフォルトの名無しさん
2019/05/20(月) 22:10:44.54ID:0DZMUBSm 勧めるようなものは特にない
730デフォルトの名無しさん
2019/05/21(火) 08:28:21.83ID:2xcSjans なんか公式のチュートリアルみたいなのなかったっけ
731デフォルトの名無しさん
2019/05/21(火) 08:31:57.13ID:qls//8Wz おすすめかどうかを意識しろ
あるかどうかではなく、おすすめかどうかだ
検索すりゃこのご時世英語含めてたくさん出てくる
そんなの見りゃわかる
おすすめできるものかどうかがいちばん大事
あるかどうかではなく、おすすめかどうかだ
検索すりゃこのご時世英語含めてたくさん出てくる
そんなの見りゃわかる
おすすめできるものかどうかがいちばん大事
732デフォルトの名無しさん
2019/05/21(火) 10:08:36.16ID:x7pfOsc7 ただで教える側に求めすぎだろw
733デフォルトの名無しさん
2019/05/21(火) 10:10:30.25ID:YlTjoOUk734デフォルトの名無しさん
2019/05/21(火) 10:56:17.04ID:KjOgf3b2 kotlin使った事無くて勉強中なんですが
null安全は通信で届いたオブジェクトについてどう働きますか?
あるいはデシリアライズされたオブジェクトについて
そこでもnull安全ですか?
null安全は通信で届いたオブジェクトについてどう働きますか?
あるいはデシリアライズされたオブジェクトについて
そこでもnull安全ですか?
735デフォルトの名無しさん
2019/05/21(火) 11:04:08.23ID:x7pfOsc7 当然どんなオブジェクトであれKotlinで書かれている限りnull安全は機能するけど、君はそもそもnull安全を誤解してそうな予感がする
736デフォルトの名無しさん
2019/05/21(火) 11:11:41.76ID:KjOgf3b2 検索すると、null不可な変数にnullを代入できないこと、とあります。
そうすると通信で受信したオブジェクト等はどうなるのかなと。
この理解は間違っていますか?
そうすると通信で受信したオブジェクト等はどうなるのかなと。
この理解は間違っていますか?
737デフォルトの名無しさん
2019/05/21(火) 11:39:29.09ID:c7g0QxSl どこまで「使ったことない」かにもよるんだが
・nullかどうかの条件分岐をクリアした変数
・nullかどうかの条件分岐をまだやってない変数
の2つがあるだけだと思っていい
外部から取得したデータがあったとして、nullチェックをまだしていないならnullableだ
どこかで誰かが(静的文法解析上)nullではないという条件分岐を通したあとならそれはnonnull
どこかで誰かがその後にnullになるかもしれない処理を通したらnullableに戻る
・nullかどうかの条件分岐をクリアした変数
・nullかどうかの条件分岐をまだやってない変数
の2つがあるだけだと思っていい
外部から取得したデータがあったとして、nullチェックをまだしていないならnullableだ
どこかで誰かが(静的文法解析上)nullではないという条件分岐を通したあとならそれはnonnull
どこかで誰かがその後にnullになるかもしれない処理を通したらnullableに戻る
738デフォルトの名無しさん
2019/05/21(火) 12:29:35.90ID:ZAINLMmO739デフォルトの名無しさん
2019/05/21(火) 12:40:36.99ID:sr6+MIRN 当然nonnull出ない変数ににnullをぶち込んだらエラーになる
740デフォルトの名無しさん
2019/05/21(火) 13:55:21.57ID:2xcSjans >>736
nullを入れられない型なのにnullを入れようとしたらその時点でオブジェクトを生成できずにエラー
なので、json文字列を受け取ってオブジェクトを生成する部分で要件に合わせて適宜いい感じに処理する必要がある
nullを入れられない型なのにnullを入れようとしたらその時点でオブジェクトを生成できずにエラー
なので、json文字列を受け取ってオブジェクトを生成する部分で要件に合わせて適宜いい感じに処理する必要がある
741デフォルトの名無しさん
2019/05/21(火) 14:53:46.84ID:BVi2WQ22 >>736
試してみればわかると思うが、nillableな型にnull入れてObjectOutputStreamで書いた後でnullableでなくしてコンパイルしなおしてからObjectInputStreamで読もうとするとInvalidClassExceptionが出る。
試してみればわかると思うが、nillableな型にnull入れてObjectOutputStreamで書いた後でnullableでなくしてコンパイルしなおしてからObjectInputStreamで読もうとするとInvalidClassExceptionが出る。
742デフォルトの名無しさん
2019/05/21(火) 15:17:02.88ID:RVxsm+ja kotlin使ったことないって奴向けの説明ではないな
743デフォルトの名無しさん
2019/05/21(火) 16:06:22.73ID:BVi2WQ22 図解しないとダメか?w
744デフォルトの名無しさん
2019/05/21(火) 17:40:26.31ID:x7pfOsc7 そもそも聞かれてることに対する回答としてはピントがズレてる
自分の知識自慢したいイキリオタク感がすごい
自分の知識自慢したいイキリオタク感がすごい
745デフォルトの名無しさん
2019/05/21(火) 18:43:35.05ID:gj4VcULk746デフォルトの名無しさん
2019/05/21(火) 20:08:28.33ID:BVi2WQ22 >>744
ずれてないだろ。通信でオブジェクト送る話なんだから。
ずれてないだろ。通信でオブジェクト送る話なんだから。
747デフォルトの名無しさん
2019/05/21(火) 20:11:45.34ID:grT0tw0/ Javaのコードを呼び出すところは、全部そうだね。
Kotlinはnullableであることを「強制しない」。
AndroidとかjavaxのAnnotationでもついていない限り。
Kotlinはnullableであることを「強制しない」。
AndroidとかjavaxのAnnotationでもついていない限り。
748デフォルトの名無しさん
2019/05/21(火) 20:44:09.88ID:wTyF+2my749デフォルトの名無しさん
2019/05/21(火) 21:17:46.88ID:KjOgf3b2 null安全は@NotNullとどう違いますか?
750デフォルトの名無しさん
2019/05/21(火) 23:00:11.33ID:MtIoFqpw コンパイルエラーになるかぬるぽでばーんってなるかの違い
751デフォルトの名無しさん
2019/05/21(火) 23:15:32.28ID:dJ+4PuSm null安全は以下の機能を包括する言葉
・型システムでnull許容とnull不可を区別出来る
・null許容型の取扱いを容易にするモナド操作などを言語仕様や標準ライブラリに持つ
・型システムでnull許容とnull不可を区別出来る
・null許容型の取扱いを容易にするモナド操作などを言語仕様や標準ライブラリに持つ
752デフォルトの名無しさん
2019/05/22(水) 00:26:45.64ID:s0RuNCYO ∧_∧ / ̄ ̄
( ´∀`)< ド?
( ) \__
│ │ │
(__)___)
( ´∀`)< ド?
( ) \__
│ │ │
(__)___)
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【ネット民のツッコミ】立憲・野田代表の「事実上の撤回」発言がトレンド、「高市さんそんな事は言ってない」「流石に無理あるだろw」 [1ゲットロボ★]
- 【国際法を無視】日本での「中華人民共和国に台湾問題を論じる資格なし」との声に 中国外交部が厳しく反論… ★2 [BFU★]
- 【文春】元TOKIO・国分太一(51)「女性スタッフ2名への“わいせつ事案”」日テレ事情聴取の全貌が分かった! ★5 [Ailuropoda melanoleuca★]
- 【工作員】「X」のアカウント所在地公開機能が暴いた世論操作の実態 MAGA支持著名アカウントの多くが米国外から運営 日本にも波及 ★3 [ごまカンパチ★]
- 首相答弁「スパイ防止法、外国代理人登録法、ロビー活動公開法などについて速やかに法案を策定する」 [1ゲットロボ★]
- 東京23区の単身マンション家賃、最高値更新 福岡が初の名古屋超え [蚤の市★]
- まったりまったりおじゃる丸待機スレ🏡
- LOVE PHANTOMの没タイトルwwwwwwwwwwwwwwwwwwwwwwww
- やる気が出なかったらしなくていいのか?って話なんですけど
- 日本語話せない土人「簡単に作れんで」←絶滅させてやろうか
- もしかして幸せは訪れるものでも待っているものでもなくて
- お前らの生き霊にレイプされた
