Kotlin 2
レス数が900を超えています。1000を超えると表示できなくなるよ。
>>810
ありがとうございます。そうですね。プロパティ増やすたびにEnumの定数も定義する必要がありますが、
パフォーマンス的にはいいですよね。
で、今ちょっと見たことなかったんですけど、Javaのバイトコード見てみたんですけど最適化されてるのか??
メソッド呼び出しされてるのかと思ったら、定数値に置き換えられてました。
最適化のせいなら将来のコンパイラでどうなるかわかりませんけど、とりあえず、普通にプロパティ参照使って
置き換えてます。
ありがとうございました。 アンカ>>810じゃなくて>>811でした。すみません。 でもそれ結局今日も同じメニューになるよな
たまにはやよい軒行きたいわ、遠いけど すまん誤爆した
Xamarinのライセンス買ってくるわ やよい軒の鳥カツ定食なくなったらしいな
あれしか食わなかったのに waitとかマルチスレッド機能ぐらい用意しとけよー
結局java.lang.Objectから離れれられんじゃないか 逆に言えばJavaの機能で出来ることをわざわざKotlinで独自に作り直す必要ってあるかね クロスプラットフォーム押していくなら、Javaからある程度離れて開発できないとな。
Kotlin=JVMなら別にいいけど。 flutterがKotlinでできるようになったら流行りそうなのになー それが一番だけど、そうなるにはそうなるにはJetBrainsの対応待ってると時間かかりそうだから、
Google買収しないと。IDE全体抱えてもあれだからkotlin部門だけでも >>822
機能的に同じでも、より簡潔に書けるなら価値ある ゆくゆくはそうなっていくかもしれないけど、まずはJava完全互換を徹底して開発者を集めないとKotlin自体終わっちゃうし 日本のことりん本の電書、固定レイアウトなのか・・・ ことりん本に限らず図表の多い専門書は基本固定レイアウトが多い 超初心者で申し訳ありません。
Kotlinスタートブックを購入しました。
REPLを多用してるのでAndroid Studio3.01のREPLで進めたいのですが、
単純に、Kotlin REPLパネル内に、書籍のコード〜 じゃ無いようで、今一つ、Android StudioのREPLの使い方が分かりません。
Android Studio3.01のREPLで、「Kotlinスタートブック」をスターと部分だけでも紹介してる情報なありますでしょうか? あれこれして
書籍 P28の最初の一発目
class Rational(val numerator: Int, val denominator: Int)
val half = Rational(1,2)
half.denominator
と、打ち込んで 実行させたら、2って出来ました〜
Android Studio3.01のREPLを使って、読みすすめそうです。 解決したみたいだからいいけど、
技術書を写経するときはREPLよりもコードをファイルとして残しておいた方がいいと思うよ
読み進めた後にちょっと前に見たところを戻って書き換えたりとかしたくなることが多いと思う >>833
んなこと言うならテストとして書いたほうがいい。
テストの書き方も覚えるし ちょこちょこバージョンアップしてるみたいだけど、リリースノートってあるのかな? Swiftのバージョンアップは破壊的変更が多くてダルいらしいけどKotlinはどうなの? >>834
まあそれが理想だね
なんにせよ書いたものはちゃんと残しておいた方が良いわ >>835
Android studio使ってるならファイルをデバッグ実行してEvaluate Expressionするのが1番フィードバックが早くて使い勝手も良い >>843
ごくごく初期はなんか色々あったらしいけど、最近は既存のコードが動かなくなるような変更は記憶にないな。
そこらへんはJavaのカルチャーかも >>845
WantedのPython需要はやっぱAI関連なのかな >>822
少数でも信者が多ければ上位に食い込みやすいランキングに見える >>806
Androidアプリを完全にkotlinで実装するのはまだ苦労する >>851
何で苦労する?
いま、フルKotlinで問題がないから聞いておきたい あ、すまん。ちゃんと読んでなかった。
入門の文脈か ぶっちゃけ、PythonとKotlin覚えときゃ十分だよな
ソース見られてもいいようなちょっとした内部処理はPythonでやって、それ以外はKotlinでやればいいし REPLの使い方の説明ないんだよねあの本
ぶっちゃけ最初からいきなりファイル書いたほうがいいと思うわ REPL の :dump bytecode が未だにわからん。
分かるやつは居ないのか? githubで検索してmasterブランチのソース見たけど :dump bytecodeの対象は
ReplFromTerminal 経由で ReplInterpreterが直に持ってるReplClassLoaderで
ReplClassLoaderはaddClassされたものをdumpするみたい
それで addClass探したら HistoryActionsForNoRepeat で
ReplClassLoaderを新たに生成してaddClassしてるのしか見当たらなかった
読み間違いでなければ、addと列挙を異なるReplClassLoaderインスタンスでやってるので
dump bytecodeは常に何も出ないのでは HistoryActionsForNoRepeatで作られるReplClassLoaderは
topClassLoaderと合わせて3重にネストしてるように見える
ReplClassLoader (HistoryActionsForNoRepeatのメソッド内のclassLoader)
→親 URLClassLoader
→親 ReplClassLoader (状態によってはGenericReplEvaluatorStateのtopClassLoader)
→親 URLClassLoader
→親 ReplClassLoader (ReplInterpreterのclassLoader)
→親 URLClassLoader
makeReplClassLoaderは引数のbaseClassloaderがReplInterpreterだったら
newせず引数をキャストして返した方がいいような気が × ReplInterpreterだったら
○ ReplClassLoaderだったら >>856
わからないことがあったらコードを読む習慣がある奴と乞食するだけのお前
どんどん差は開いていくんだろうなぁ まー、わからないことがあればコード読むのが一番だけど、読まなくても質問の仕方ってもんがあるよな どなたかお分かりになる方はいらっしゃいませんか?
だよな、普通は >>866
医者ではなくて石屋ですが、お役に立てますか? この一言を添えるべきだったな。
「わからない人は書かないでください。」 前々から思ってたけどkotlinスレって加齢臭すごいよな マグナムドライをマグマグドライと呼ぶほど落ちぶれてはいない Graalって今年のJava11に間に合うのか?
Kotlin/Native(LLVM)なんかよりずっと期待できそうだが。 GraalとKotlin/Nativeって用途もコンセプトも被ってないと思うんだけど
LLVMの使い方も逆方向だし Graalがどうとかいう以前に、JVMがないプラットフォームがあるのを何とかして欲しい。
ライブラリも含めてコードをそのまま持ち込んでも動くならともかく、Graalで多言語をサポートしても、
各言語の基本仕様だけでは大したことは出来ない。 run sometime somewhereだから仕方ない Graal
世界大百科事典内のGraalの言及
【聖杯伝説】より
…12世紀末ヨーロッパで顕在化したキリスト教の色濃い伝説だが,起源には諸説あり,
ケルト説話を源とする考えが有力。聖杯Graal(英語はGrail)を扱った最初の作品は
フランスの詩人クレティアン・ド・トロアの《ペルスバルまたは聖杯物語》(1185ころ)。
主人公が漁夫王の城で目にしたふしぎな行列,血の滴る槍と光り輝く聖杯について,
心に抱いた質問を口に出さなかった失敗がすべての発端であった。…
https://kotobank.jp/word/Graal-1233958 JavaのコードをKotlinにIntteliJさん使って変換すると
fun hogehoge(value: String): Int? {
var value = value
みたいなコードでName shadowedってワーニングがでる
仕方ないのでvar_value = valueみたいに名前変えてんだけど、どうするのがベストかな?これ以外に良い方法あったら教えて >>887
Analyze>Inspect Code
結果窓で気に入らないインスペクションを選択しスパナアイコンから設定画面でdisableする Inspect Codeをどこをどういじったら変わるのか分からない
プロファイルってやつ?
名前の通りインテリすぎて使いこなせてない・・・orz def initialize (number)
@number = number
end
Ruby のクラス内の、インスタンスメソッドの引数を、インスタンス変数に代入するなど、
@ の有無で、判別できるなら良いけど、
関数の引数と、関数内の変数は、共にローカルスコープで、
完全に、変数名もスコープも一致しているから、明らかな間違い >>887
Inspectionを切れば出なくなるしなんなら無視してもいいけど、そのコードは明らかに書くべきでないからコードを直した方が良い。
引数が変数の名前を変えるべき。 受け取った値に何かしらの加工を加えて返却する関数だと推測するけど
それなら引数の方をrawValueにするとか、変数の方をnewValueにするとか
なんでもいいけどとりあえずそのコードは俺がコードレビューするなら絶対指摘する Javaで
a instanceof CharSequence[]
してた部分はKotlinではどう置き換えたらいいでしょうか?
a is Array<CharSequence>
だとcannot check for instance of erased typeでエラーがでて型チェックができません。 https://ideone.com/IAkBb8
あれ、マジですか。Android Studioの方で駄目です。
バージョンって
ext.kotlin_version = '1.2.21'
これかな ああ、aが実際にArray<CharSequence>のときはエラーにならないぽい
Array<*>にするしかないのかなあ if(a is Array<*>) {
b = a.filterIsInstance<CharSequence>().toTypedArray()
}
とかは? 途中で送っちゃった
JavaのコードからAnyでくる何かの配列を扱いたいときに確かこんな感じで書いた記憶が 勉強しようと思いリファレンス読みつつ Koans をやり始めた
最初は var, val や if, for とかかなと思ってたから面食らった Java訴訟で神託に負けたから、次バージョンからkotlinかな >>908
Kotolinにしても中身Javaじゃないの? レス数が900を超えています。1000を超えると表示できなくなるよ。