JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう
※前スレ
https://mevius.5ch.net/test/read.cgi/tech/1531818027/
探検
Kotlin 5
レス数が1000を超えています。これ以上書き込みはできません。
2018/12/08(土) 20:29:41.41ID:oXOQORcd
2018/12/08(土) 20:32:31.24ID:oXOQORcd
公式サイト
https://kotlinlang.org/
公式ブログ
https://blog.jetbrains.com/kotlin
コードを貼れる所
http://rextester.com/l/kotlin_online_compiler
オンラインコンパイラ
https://ideone.com/
Google、KotlinをAndroidアプリ開発言語に選定
http://jp.techcrunch.com/2017/05/18/20170517google-makes-kotlin-a-first-class-language-for-writing-android-apps/
Library support for Kotlin coroutines
https://github.com/Kotlin/kotlinx.coroutines
https://kotlinlang.org/
公式ブログ
https://blog.jetbrains.com/kotlin
コードを貼れる所
http://rextester.com/l/kotlin_online_compiler
オンラインコンパイラ
https://ideone.com/
Google、KotlinをAndroidアプリ開発言語に選定
http://jp.techcrunch.com/2017/05/18/20170517google-makes-kotlin-a-first-class-language-for-writing-android-apps/
Library support for Kotlin coroutines
https://github.com/Kotlin/kotlinx.coroutines
3デフォルトの名無しさん
2018/12/09(日) 14:57:10.33ID:rgDJoSoN O2
2018/12/11(火) 17:55:58.71ID:ZdF1Nxsw
c#でasnc/awaitを学んだから、そのノリでhogeAsync : Defered<Int>とか量産してたがこれclassic wayで駄目なんだ。
コルーチンムズいぞ。
コルーチンムズいぞ。
2018/12/11(火) 18:12:47.19ID:ZdF1Nxsw
今までクラス設計するとき、
class Hoge {
fun action1(): Deferred<Int> {
return GlobalScope.async() {}
}
fun cation2(): Deferred<String> {}
}
GlobalScopeなのはいずれどうにかしようととりあえず脇に置いといて、こう設計してたがダメっぽいな?
誰か詳しい人いないの?
class Hoge {
fun action1(): Deferred<Int> {
return GlobalScope.async() {}
}
fun cation2(): Deferred<String> {}
}
GlobalScopeなのはいずれどうにかしようととりあえず脇に置いといて、こう設計してたがダメっぽいな?
誰か詳しい人いないの?
2018/12/11(火) 20:17:24.17ID:6hR55q3c
class Hoge {
suspend fun action1(): Int = coroutineScope {
delay(2000)
return@coroutineScope 1
}
suspend fun cation2(): String = coroutineScope {
delay(3000)
return@coroutineScope "hoge"
}
}
suspend fun action1(): Int = coroutineScope {
delay(2000)
return@coroutineScope 1
}
suspend fun cation2(): String = coroutineScope {
delay(3000)
return@coroutineScope "hoge"
}
}
2018/12/11(火) 21:33:56.96ID:m02gDU95
C#のasync = suspend って思っとけば大体おk
2018/12/11(火) 21:59:01.90ID:ZdF1Nxsw
async = suspendみたいのはだいたい分かるんだけど、>>6みたく、suspend関数を大量に用意するのがkotlinスタイルらしいんだけど、
じゃ、クラス設計するとき、誰がコルーチンビルダーでコルーチン作るの?って悩んでて。
例えば、「ライブラリ」として分割するケースを考えてみるとして、まず、REST APIを内部でたたいて結果を返すライブラリを作るとき、
class WebService {
suspend fun action1()
suspend fun action2()
}
みたく、全部suspend関数として外部にpublicなAPIとして公開するの??
じゃ、クラス設計するとき、誰がコルーチンビルダーでコルーチン作るの?って悩んでて。
例えば、「ライブラリ」として分割するケースを考えてみるとして、まず、REST APIを内部でたたいて結果を返すライブラリを作るとき、
class WebService {
suspend fun action1()
suspend fun action2()
}
みたく、全部suspend関数として外部にpublicなAPIとして公開するの??
2018/12/11(火) 22:05:51.76ID:ZdF1Nxsw
で、例えば、更に上のライブラリを内部で使って、キャッシュ機能だとかを提供するライブラリを作るとき、
(androidアプリの開発で見るRepositoryパターン)みたいなライブラリを作るときも
class Repository {
suspend fun action1() { webServcie.action1()など}
suspend fun action2()
}
で、やっぱsuspend関数を公開して、このライブラリを使ってつくるアプリで、
launch() {
repo.action1()
}
でここでコルーチンビルダーを使う??みたいな感じ?
(androidアプリの開発で見るRepositoryパターン)みたいなライブラリを作るときも
class Repository {
suspend fun action1() { webServcie.action1()など}
suspend fun action2()
}
で、やっぱsuspend関数を公開して、このライブラリを使ってつくるアプリで、
launch() {
repo.action1()
}
でここでコルーチンビルダーを使う??みたいな感じ?
2018/12/11(火) 22:13:49.36ID:ZdF1Nxsw
ちなみに>>6のcoroutineScope関数調べると、これ新しいスコープ作って呼び出し元からキャンセルできなくなるらしいから、キャンセルできるように
するには
class Hoge {
suspend fun action1(): Int {
delay(2000)
return 1
}
suspend fun cation2(): String {
delay(3000)
return "hoge"
}
}
でいいってことだよね?
するには
class Hoge {
suspend fun action1(): Int {
delay(2000)
return 1
}
suspend fun cation2(): String {
delay(3000)
return "hoge"
}
}
でいいってことだよね?
2018/12/11(火) 23:19:00.56ID:ZdF1Nxsw
https://youtu.be/9HUFo4WyDPI?t=2178
見てたら、例でcoroutineScope使ってたな。
英語何言ってるか全然わからねぇけどw
Structured Concurrency云々。
>>6は相当なプロフェッショナルと見た。
見てたら、例でcoroutineScope使ってたな。
英語何言ってるか全然わからねぇけどw
Structured Concurrency云々。
>>6は相当なプロフェッショナルと見た。
2018/12/12(水) 12:16:15.38ID:ehb+zc+O
つkotlinx
2018/12/12(水) 13:12:24.30ID:XfY7kHOC
Crystalのスレどこ?
2018/12/12(水) 21:24:09.19ID:jSpBUsB/
非suspendも可能な場合に、suspend版と非suspend版を内部的に両方生成するオプションが欲しい
Kotlin/JS使ってるとJavaScriptのasyncより書きやすい(await相当がデフォだから)けど
それでももう一手欲しいところ
Kotlin/JS使ってるとJavaScriptのasyncより書きやすい(await相当がデフォだから)けど
それでももう一手欲しいところ
15デフォルトの名無しさん
2018/12/18(火) 21:12:59.14ID:h6+jV75s kotlinてJavaがなくてもwindowsとMacで動くの?
2018/12/18(火) 21:34:52.63ID:yrNJ9cJf
いけるいける
17デフォルトの名無しさん
2018/12/18(火) 22:25:09.54ID:92SsvGE7 Kotlin Native なら、な。
2018/12/19(水) 09:00:14.59ID:PF0aHy1W
Kotlin/NativeならKotlinコンパイラもLLVMだけが必要でJavaいらないの?
2018/12/19(水) 09:45:25.24ID:ab3sNZA3
そうだよ
かわりに愛情と寛容と忍耐と妥協が必要
かわりに愛情と寛容と忍耐と妥協が必要
20デフォルトの名無しさん
2018/12/19(水) 09:49:46.24ID:WO8V2g+e >>18
ああ。要らなかったよ。やってみな。
ああ。要らなかったよ。やってみな。
2018/12/19(水) 21:31:55.75ID:/PJ/xgrD
いやコンパイラ自体には必要でしょ
初期実装は全部Javaで、今でもかなり残ってる
自社製品のIntelliJがJVM前提だし統合もあるからNativeでのセルフホスティングは目指してないと思うよ
初期実装は全部Javaで、今でもかなり残ってる
自社製品のIntelliJがJVM前提だし統合もあるからNativeでのセルフホスティングは目指してないと思うよ
2018/12/20(木) 00:01:10.39ID:hst6D+g/
やっとマジレスが出てくれて若干安心した
23デフォルトの名無しさん
2018/12/20(木) 02:22:55.67ID:6pIAvd2J やがてコンパイラ自体も Kotlin native でコンパイルできるようになって完全に Java 不要になると思う。
2018/12/20(木) 17:35:04.19ID:FuA72n5Z
やっと林檎ユーザーに
泥は処理遅くて草
とか言われなくて済むんだね!
泥は処理遅くて草
とか言われなくて済むんだね!
2018/12/20(木) 19:18:48.12ID:Jom6rq0W
コンパイラをKotlin native でコンパイルできるようになるのは比較的早くできるだろうけど
IntellijみたいなGUIの総合開発環境をマルチプラットフォームで動かすのをJavaなしでやるのは大変だろう。
IntellijみたいなGUIの総合開発環境をマルチプラットフォームで動かすのをJavaなしでやるのは大変だろう。
26デフォルトの名無しさん
2018/12/21(金) 09:15:12.67ID:mfb3XB1u GUIの部分が大変かもな
2018/12/21(金) 12:11:36.66ID:gjfGeuPx
やるメリットもないだろうからやらんだろうな
2018/12/21(金) 13:38:51.46ID:I/9gCApZ
ただでさえVSCodeに追われてヤバいのに余計なことしてる余裕ないだろ
2018/12/21(金) 13:49:31.79ID:QUmSfmQB
なんだかんだでJVMは長生きすると信じてる
2018/12/21(金) 15:27:32.04ID:Tphe8pyQ
長生きじゃなく、ただの延命処置だろ
31デフォルトの名無しさん
2018/12/21(金) 15:30:24.56ID:mfb3XB1u あ、そーだ。GUIはJavaScriptで書いてブラウザで実行させれば良い。
そのJavaScriptはKotlinのソースからコンパイルして作ったやつにすれば完璧。
そのJavaScriptはKotlinのソースからコンパイルして作ったやつにすれば完璧。
2018/12/21(金) 22:14:57.05ID:8Iu4hnmd
2018/12/21(金) 22:59:54.90ID:/MQTzm2r
項目多いな
34デフォルトの名無しさん
2018/12/22(土) 02:37:32.92ID:JnEveBkB2018/12/25(火) 06:47:43.66ID:1ThGctmt
メリーコトリン
36デフォルトの名無しさん
2018/12/25(火) 11:17:10.24ID:yeWprDEr つまんね
37デフォルトの名無しさん
2018/12/25(火) 19:25:24.16ID:KSMuafeJ 爆笑
2018/12/26(水) 22:47:51.52ID:5ub5SAQR
2018/12/27(木) 08:12:45.83ID:DJ5Bt1eh
kotlinのコルーチンビルダーに渡す中断関数がレシーバー付きなのを止めてほしい。
public fun CoroutineScope.launch(
context: CoroutineContext = EmptyCoroutineContext,
start: CoroutineStart = CoroutineStart.DEFAULT,
block: suspend CoroutineScope.() -> Unit
blockパラメータにレシーバつけるんじゃねぇよ。というもの、なんでコルーチンビルダーに渡すルートの中断関数だけCorotineScopeにアクセスできるんだよ。
ルート以外の中断関数からはアセクスできないのに。この非対称性というか特別扱いやめて。
public fun CoroutineScope.launch(
context: CoroutineContext = EmptyCoroutineContext,
start: CoroutineStart = CoroutineStart.DEFAULT,
block: suspend CoroutineScope.() -> Unit
blockパラメータにレシーバつけるんじゃねぇよ。というもの、なんでコルーチンビルダーに渡すルートの中断関数だけCorotineScopeにアクセスできるんだよ。
ルート以外の中断関数からはアセクスできないのに。この非対称性というか特別扱いやめて。
2018/12/27(木) 08:17:42.92ID:DJ5Bt1eh
例えば、自分で定義した中断関数
suspend fun hoge() {
}
内ではCoroutineScopeにアクセスできない。CoroutineScopeではなくCoroutineContextにはcoroutineContext関数経由でアセクスできるが。
こういう一貫性のなさはやめてほしい。なんか意味があるのかもしれんが。
suspend fun hoge() {
}
内ではCoroutineScopeにアクセスできない。CoroutineScopeではなくCoroutineContextにはcoroutineContext関数経由でアセクスできるが。
こういう一貫性のなさはやめてほしい。なんか意味があるのかもしれんが。
2018/12/27(木) 10:06:52.89ID:g57/YEyR
ここじゃなくて公式に言ってこいよ
2018/12/27(木) 23:27:31.48ID:r4GKgwJE
>>32のアンケートに自由記載の欄があるから、そこで言うことは可能。
2018/12/27(木) 23:47:52.20ID:hAo/rJSd
44デフォルトの名無しさん
2019/01/02(水) 20:28:59.08ID:MMKJrJD0 あけましておめでとうございます
ことりんもよろしくお願いします
ことりんもよろしくお願いします
2019/01/02(水) 22:49:08.10ID:sDzpRBwn
え?
2019/01/03(木) 09:15:47.36ID:h/ELqUHS
山田さーん、>>44に座布団1枚持ってきて。
2019/01/03(木) 10:25:22.96ID:GKSM08/3
座り小便した奴を持って来ました
2019/01/07(月) 18:42:28.96ID:4PQEcpA5
supervisorScopeって上司っぽさがあるな
2019/01/12(土) 11:30:26.17ID:ygc4MJ1X
お前の勤務成績は丸見えだから
2019/01/12(土) 12:51:17.46ID:IzmxBuIw
そもそもcoroutinrScopeを他に渡して何をするつもりなんだろう
用途が思いつかない
用途が思いつかない
51デフォルトの名無しさん
2019/01/14(月) 19:40:36.89ID:OowwBnZ2 「基本からしっかり身につくAndroidアプリ開発入門 Android Studio 3対応」
よく書いてあるようにサンプルが動かないんすけど、
あまりにも初心者過ぎてどこを直せばいいのかわからないっす。
Chapter 4のCalculatorで、正しいコードがわかる方いませんか?
val button = findViewById<Button>(R.id.calculate)
button.setOnClickListener {
var isValid = true
val priceEditText = findViewById<EditText>(R.id.price)
val priceText = priceEditText.text.toString()
if (priceText.isEmpty()) {
priceEditText.error = getString(R.string.price_error)
isValid = false
}
val discountEditText = findViewById<EditText>(R.id.discount)
val discountText = discountEditText.text.toString()
if (discountText.isEmpty()) {
discountEditText.error = getString(R.string.discount_error)
isValid = false
}
よく書いてあるようにサンプルが動かないんすけど、
あまりにも初心者過ぎてどこを直せばいいのかわからないっす。
Chapter 4のCalculatorで、正しいコードがわかる方いませんか?
val button = findViewById<Button>(R.id.calculate)
button.setOnClickListener {
var isValid = true
val priceEditText = findViewById<EditText>(R.id.price)
val priceText = priceEditText.text.toString()
if (priceText.isEmpty()) {
priceEditText.error = getString(R.string.price_error)
isValid = false
}
val discountEditText = findViewById<EditText>(R.id.discount)
val discountText = discountEditText.text.toString()
if (discountText.isEmpty()) {
discountEditText.error = getString(R.string.discount_error)
isValid = false
}
2019/01/14(月) 19:40:58.45ID:OowwBnZ2
>>51の続き
if (isValid) {
val price = priceText.toInt()
val discount = discountText.toInt()
val intent = Intent(this, ResultActivity::class.java)
intent.putExtra("price", price)
intent.putExtra("discount", discount)
startActivity(intent)
}
}
if (isValid) {
val price = priceText.toInt()
val discount = discountText.toInt()
val intent = Intent(this, ResultActivity::class.java)
intent.putExtra("price", price)
intent.putExtra("discount", discount)
startActivity(intent)
}
}
2019/01/14(月) 19:42:40.59ID:OowwBnZ2
>>51 遷移先のコードもエラーになります。
val extras = intent.extras ?: return
val price = extras.getInt("price", 0)
val discount = extras.getInt("discount", 0)
val expression = findViewById<TextView>(R.id.expression_label)
expression.text = getString(R.string.expression, price, discount)
val discountedPrice = price * (100 - discount) / 100
val discounted = findViewById<TextView>(R.id.result_label)
discounted.text = getString(R.string.result, discountedPrice)
val extras = intent.extras ?: return
val price = extras.getInt("price", 0)
val discount = extras.getInt("discount", 0)
val expression = findViewById<TextView>(R.id.expression_label)
expression.text = getString(R.string.expression, price, discount)
val discountedPrice = price * (100 - discount) / 100
val discounted = findViewById<TextView>(R.id.result_label)
discounted.text = getString(R.string.result, discountedPrice)
2019/01/14(月) 19:51:40.91ID:mSU16be8
まず大事なこととして
・正確に伝える
・切り分けをしていく
コンパイルエラーなのか実行時エラーなのか想定と違う動作なのか
エラーであればどのような内容か
想定と違うのであれば想定と実際の両方を具体的に
実行可能な場合はログ出力を追加するなどして問題の箇所を絞り込む
技術者は答えより答えの出し方を知る方が大切
・正確に伝える
・切り分けをしていく
コンパイルエラーなのか実行時エラーなのか想定と違う動作なのか
エラーであればどのような内容か
想定と違うのであれば想定と実際の両方を具体的に
実行可能な場合はログ出力を追加するなどして問題の箇所を絞り込む
技術者は答えより答えの出し方を知る方が大切
2019/01/14(月) 19:54:33.86ID:OowwBnZ2
>>54
コンパイルエラーです
コンパイルエラーです
2019/01/14(月) 20:14:29.56ID:pDL52XEr
AndroidStudio使っててどこがコンパイルエラーかわからないとかあんの?
2019/01/14(月) 21:06:42.85ID:eurbvKP4
まあぶっちゃけると「エラーが出て動かない」以上のことがさっぱりわからんことはあるにはある
IDEが表示するエラーが理解できるくらいならそもそも入門書など読まんw
IDEが表示するエラーが理解できるくらいならそもそも入門書など読まんw
2019/01/14(月) 21:23:28.22ID:fiLCWGOz
>>55
なぜエラーメッセージを読まないのか。せめて貼り付けろ
なぜエラーメッセージを読まないのか。せめて貼り付けろ
59デフォルトの名無しさん
2019/01/15(火) 00:32:52.94ID:pIHkTAGg Rなんとかは定義したの?
2019/01/15(火) 01:25:57.81ID:tO821mqa
2019/01/15(火) 01:38:02.87ID:VjJwW0bc
>>59
あー文字定義してないのはいかにもありそうだな
あー文字定義してないのはいかにもありそうだな
62デフォルトの名無しさん
2019/01/15(火) 11:17:38.84ID:uh3dx1w7 >>59
Rって、解説書でも唐突に出てくるんすけど、何を定義すればいいの?
Rって、解説書でも唐突に出てくるんすけど、何を定義すればいいの?
2019/01/15(火) 13:47:19.17ID:1CaYwh4e
まずエラーメッセージを貼れ
2019/01/15(火) 14:15:39.24ID:pzxobvn7
2019/01/15(火) 15:05:34.53ID:uh3dx1w7
>>64 dくす
エラーメッセージはたくさんありすぎて貼れないから貼ってない
とりあえず自宅に戻ってからまた再現させる
てゆーか、この程度のコードでバグる奴がなんで解説書を出版社から出せるんだよ
まともな解説書ってないのかよ
尼見るともう一冊のほうもサンプルが動かんと書かれていて読む本がない
エラーメッセージはたくさんありすぎて貼れないから貼ってない
とりあえず自宅に戻ってからまた再現させる
てゆーか、この程度のコードでバグる奴がなんで解説書を出版社から出せるんだよ
まともな解説書ってないのかよ
尼見るともう一冊のほうもサンプルが動かんと書かれていて読む本がない
2019/01/15(火) 16:58:26.54ID:1CaYwh4e
サンプルコードがビルドできたからって何なんだ
そんなの目的にしても意味ない。必要な知識が吸収できればいいわけで。
サンプルコードをそのままビルドするアプローチじゃなく、
一旦空のプロジェクトを新規作成してそこに追加して動作確認するアプローチの方が
勉強になると思うけどなあ
そんなの目的にしても意味ない。必要な知識が吸収できればいいわけで。
サンプルコードをそのままビルドするアプローチじゃなく、
一旦空のプロジェクトを新規作成してそこに追加して動作確認するアプローチの方が
勉強になると思うけどなあ
2019/01/15(火) 17:03:39.16ID:1CaYwh4e
新規作成しただけの状態なら確実にビルドが通るわけで
どこまでサンプルコードに近づいたら
エラーが出るのか問題も切り分けやすい
こういうのはもうAndroid関係ないし向いてないからしね
どこまでサンプルコードに近づいたら
エラーが出るのか問題も切り分けやすい
こういうのはもうAndroid関係ないし向いてないからしね
2019/01/15(火) 17:21:56.05ID:3lh9jTue
Androidアプリは「初心者の人に書籍通じて独学で覚えさせるのめんどくさいプログラミング技術ランキング」のベスト3常連だからな
なにせファイル1個やコマンド1発で収まらない
なにせファイル1個やコマンド1発で収まらない
2019/01/15(火) 18:24:55.36ID:yTRP/eqO
エラーの見方も分からないレベルでいきなりAndroid本は飛ばしすぎだな
2019/01/15(火) 23:41:09.53ID:620Eb35B
途中コメントアウトしてなんとか動いた
スマン、今日は時間切れ
最後、isEmpty()なんて使えないよ、と言われてたような・・・
続きはまた明日
スマン、今日は時間切れ
最後、isEmpty()なんて使えないよ、と言われてたような・・・
続きはまた明日
2019/01/16(水) 11:02:30.64ID:aTgtPKRZ
2019/01/16(水) 11:03:16.52ID:aTgtPKRZ
>>64 だった
ごめん
ごめん
73デフォルトの名無しさん
2019/01/16(水) 11:34:03.94ID:vTKVQdGX 馬鹿には無理
2019/01/16(水) 13:16:59.84ID:NBiSBr9E
入門者は10年ROMってろ
2019/01/16(水) 15:02:59.73ID:c12bWRnm
76デフォルトの名無しさん
2019/01/16(水) 15:05:34.92ID:ECRqnYoc _,,-'' ̄ ̄`-.、 / \
/ \ ,/ \
,/ \ / ― ― ヽ
/ ― ― ヽ lヽ - 、 ! , _ |
lヽ - 、 ! , _ | |r――-、_⊥ ,――'-、 |,-,
|r――-、_⊥ ,――'-、 |,-, |::::::::::::::::/ |ヽ:::::::::::::::|-|'イ!|
|::::::::::::::::/ |ヽ:::::::::::::::|-|'イ!| ト、__,,/: |: `、__,,/ ,|ソ/
ト、__,,/: |: `、__,,/ ,|ソ/ .| 、_ j| _,、 ,|-'
.| 、_ j| _,、 ,|-' | /lll||||||||||l`、 ,|
| /lll||||||||||l`、 ,| `i ,|||' ̄= ̄`|||、 / ト、
`i ,|||' ̄= ̄`|||、 / ト、 「|ヽ|ll||||||||||||||||| /i |::::\
「|ヽ|ll||||||||||||||||| /i |::::\ ::::::\`!!||||||||||||!!' |::::::::\
/:::::\`!!||||||||||||!!' |::::::::::::::::::::::`ー-、.._ i |::::::::::::::\
/::::::::::::::`ー-、.._ i |::::::::::/:::::::::::::::::::::::::::::`ー-、. |::::::::::
/:::::::::::::::::::::::::::::::::::`ー-、. |::::::::::
ロムッテロ兄弟
ハントシー・ロムッテロ ハンツキー・ロムッテロ
1952〜 アメリカ 1955〜 アメリカ
/ \ ,/ \
,/ \ / ― ― ヽ
/ ― ― ヽ lヽ - 、 ! , _ |
lヽ - 、 ! , _ | |r――-、_⊥ ,――'-、 |,-,
|r――-、_⊥ ,――'-、 |,-, |::::::::::::::::/ |ヽ:::::::::::::::|-|'イ!|
|::::::::::::::::/ |ヽ:::::::::::::::|-|'イ!| ト、__,,/: |: `、__,,/ ,|ソ/
ト、__,,/: |: `、__,,/ ,|ソ/ .| 、_ j| _,、 ,|-'
.| 、_ j| _,、 ,|-' | /lll||||||||||l`、 ,|
| /lll||||||||||l`、 ,| `i ,|||' ̄= ̄`|||、 / ト、
`i ,|||' ̄= ̄`|||、 / ト、 「|ヽ|ll||||||||||||||||| /i |::::\
「|ヽ|ll||||||||||||||||| /i |::::\ ::::::\`!!||||||||||||!!' |::::::::\
/:::::\`!!||||||||||||!!' |::::::::::::::::::::::`ー-、.._ i |::::::::::::::\
/::::::::::::::`ー-、.._ i |::::::::::/:::::::::::::::::::::::::::::`ー-、. |::::::::::
/:::::::::::::::::::::::::::::::::::`ー-、. |::::::::::
ロムッテロ兄弟
ハントシー・ロムッテロ ハンツキー・ロムッテロ
1952〜 アメリカ 1955〜 アメリカ
2019/01/16(水) 19:02:46.27ID:czS9PHe8
こりゃまた懐しいものを
2019/01/16(水) 22:02:17.64ID:l4CxponB
できたー!
エラーログは結局見なかった。
モマエらの煽りも十分ヒントなので自力でできた。
要はIDEの使い方がよくわかってなかったってことらしい。
アプリの開発は初体験だったので、IDEがこんなにモッサリしていて
ゆっくり打たないと反応しない、ということがわからなかった。
最初、赤字がエラーを起こしている場所すらもわからなかった。
本の通り入力されているのにエラーになるとか💩すぎる。
エラーログは結局見なかった。
モマエらの煽りも十分ヒントなので自力でできた。
要はIDEの使い方がよくわかってなかったってことらしい。
アプリの開発は初体験だったので、IDEがこんなにモッサリしていて
ゆっくり打たないと反応しない、ということがわからなかった。
最初、赤字がエラーを起こしている場所すらもわからなかった。
本の通り入力されているのにエラーになるとか💩すぎる。
2019/01/16(水) 22:54:20.38ID:5qHX4ghP
お前が見栄張ってログ貼らないからだよ
2019/01/16(水) 23:11:21.71ID:s3+L+6VD
なんでエラー見ないんだよ…
見ましょ
見ましょ
2019/01/17(木) 00:03:32.50ID:gD7DqiQf
Android Studioは割と複雑なIDEだから馴れるまで大変かも、微バグも結構放置されてる
でもどんなときも根性があれば全て解決する
でもどんなときも根性があれば全て解決する
2019/01/17(木) 01:00:34.53ID:/w6CmWBz
Googleが開発環境作るのヘタクソなのはいつものこと
ベースのIntelliJ自体は優秀な子だから嫌いにならないで
ベースのIntelliJ自体は優秀な子だから嫌いにならないで
2019/01/17(木) 01:08:32.19ID:F/bGJF7O
入門書のコードもちょっと辛い感じだが
kotlinスレで聞いてきたりレスの感じからすると記載を読み飛ばしてるだけな気がするな…
kotlinスレで聞いてきたりレスの感じからすると記載を読み飛ばしてるだけな気がするな…
2019/01/17(木) 01:34:50.82ID:D8uuaLO+
エラーメッセージを読まないような奴が本の解説を読んでるはずがない
8564
2019/01/17(木) 02:05:52.76ID:X/RlN8Mj >>78
>できたー
できてない
>モマエらの煽り
いまは心底馬鹿にしている
結局原因は理解せず対処法を学ぶ気もなくて今後似たようなことがあって詰まっても本を罵るだけなのだろう
お前はなにか変わった?
>できたー
できてない
>モマエらの煽り
いまは心底馬鹿にしている
結局原因は理解せず対処法を学ぶ気もなくて今後似たようなことがあって詰まっても本を罵るだけなのだろう
お前はなにか変わった?
2019/01/17(木) 07:00:04.64ID:FUK6mZ5G
>>できたー
>できてない
ワロタ
相手の態度が気に入らないのはわかるが。
>できてない
ワロタ
相手の態度が気に入らないのはわかるが。
2019/01/17(木) 08:54:40.63ID:T+GiVQOD
例えサンプルが間違っていても自分で間違いを見つけ修正するくらいの気概がないと、動きが速くカオスなAndroid開発環境に立ち向かうことはできないだろう
2019/01/17(木) 11:08:41.33ID:wwbjNcTV
そうはいうてもインストールが正しくやれたか、ライブラリは合っているかを確認したいんだから動くコードじゃないとアカンやろ
2019/01/17(木) 12:07:23.58ID:JNIrfwpM
エラーを見るのは基本中の基本だとこれだけ言われながら頑なにエラーを見ない理由が分からないw
それはそうと、Android StudioがもっさりするレベルのPCで開発するの辛そう
それはそうと、Android StudioがもっさりするレベルのPCで開発するの辛そう
90デフォルトの名無しさん
2019/01/17(木) 12:21:24.77ID:K+CX1G8n 君の所ではシャキシャキ動くの?
いいね。
いいね。
2019/01/17(木) 12:29:42.70ID:JNIrfwpM
真面目なアドバイスだけど、アプリ開発というかプログラミングをするならそれなりのPCを用意した方がいいよ。
本格的に開発するなら各種ツールを同時に起動しながらやることになるから、IDE単体でもっさりするレベルのマシンだとかなり辛いと思う。
本格的に開発するなら各種ツールを同時に起動しながらやることになるから、IDE単体でもっさりするレベルのマシンだとかなり辛いと思う。
92デフォルトの名無しさん
2019/01/17(木) 12:40:50.40ID:K+CX1G8n ゲーミングPCみたいに開発用PC売ればいいのにな
2019/01/17(木) 13:35:52.11ID:h1O5LGNC
iMac Proやろ
2019/01/17(木) 14:23:55.46ID:JNIrfwpM
ゲーミングPCからグラボを省けばプログラミングに良いマシンになるだろう
要はCPUとメモリとSSDだし
要はCPUとメモリとSSDだし
2019/01/17(木) 15:50:04.22ID:UNKQSAY8
ビジネス用PCでよくね
96デフォルトの名無しさん
2019/01/17(木) 16:11:06.65ID:8rj4oJ0j2019/01/17(木) 16:50:50.76ID:JNIrfwpM
>>95
お前のIDうんこじゃん
お前のIDうんこじゃん
2019/01/17(木) 18:38:16.95ID:BQPkrRK7
AVD使うならグラボはあった方がいい
ローエンドで十分だけど
ローエンドで十分だけど
100デフォルトの名無しさん
2019/01/17(木) 21:05:29.75ID:9dtdj8/p IDEまでは分かるけどスレタイから離れすぎw
101デフォルトの名無しさん
2019/01/18(金) 10:55:00.39ID:biJOt7cE 初心者用の本ってマジでろくなのないな
自分が読んだ本だと言語の仕様解説して、次の章でいきなりじゃんけんアプリ作りましょうだもんな
文字出すだけとかもちょっと地道なサンプルこなしてからにしてくれよ
自分が読んだ本だと言語の仕様解説して、次の章でいきなりじゃんけんアプリ作りましょうだもんな
文字出すだけとかもちょっと地道なサンプルこなしてからにしてくれよ
102デフォルトの名無しさん
2019/01/18(金) 13:23:27.72ID:Gw7rawdB そういう本を書いて売れるのなら書くけど
103デフォルトの名無しさん
2019/01/18(金) 13:36:11.74ID:EPNqXegi 初心者はプログラミングすんな
104デフォルトの名無しさん
2019/01/18(金) 15:38:04.17ID:dETdnGdx >>101
君が書け。紙の本にする必要はない。AmazonでKindle用の電子書籍で出すなら多分すぐ出せる。
君が書け。紙の本にする必要はない。AmazonでKindle用の電子書籍で出すなら多分すぐ出せる。
105デフォルトの名無しさん
2019/01/18(金) 15:39:03.82ID:dETdnGdx >>103
それでは誰も使わなくなって終わるではないかw
それでは誰も使わなくなって終わるではないかw
106デフォルトの名無しさん
2019/01/18(金) 16:34:36.03ID:QNzHnga9 本を読んでからアプリを作るんじゃなくて、アプリを作ってから本を読むんだ
107デフォルトの名無しさん
2019/01/18(金) 17:57:35.76ID:EPNqXegi 本を読んで勉強するという姿勢が気に入らない
お前の目的は言語学者になることか
アプリが作りたいならまず作れ
それで行き詰まったら初めて必要な知識を調べる
お前の目的は言語学者になることか
アプリが作りたいならまず作れ
それで行き詰まったら初めて必要な知識を調べる
108デフォルトの名無しさん
2019/01/18(金) 18:10:19.30ID:DtJxFJYk109デフォルトの名無しさん
2019/01/18(金) 19:01:23.89ID:Jv0pMDsL >>108
だからエラーを貼れよ
だからエラーを貼れよ
110デフォルトの名無しさん
2019/01/18(金) 19:10:06.53ID:Jv0pMDsL あとAndroid Studio のことはこっちのスレ来い
Android Studio Part3
https://mevius.5ch.net/test/read.cgi/tech/1547473943/
Android Studio Part3
https://mevius.5ch.net/test/read.cgi/tech/1547473943/
111デフォルトの名無しさん
2019/01/18(金) 19:18:36.09ID:9pECFNv0112デフォルトの名無しさん
2019/01/18(金) 20:40:32.07ID:EPNqXegi Android Studio3.0とか原始時代のツールだろ
113デフォルトの名無しさん
2019/01/20(日) 17:15:03.83ID:km2ubjIi 1ヶ月以上たってまだ100レス程度ってkotlinで開発してる人はんと少ないんだな
114デフォルトの名無しさん
2019/01/20(日) 17:53:32.56ID:7J7VHbME >>113
お前が書き込むんだよ
お前が書き込むんだよ
115デフォルトの名無しさん
2019/01/20(日) 19:22:48.93ID:6E5SSl+w 仕方ないなあ。じゃあこのスレ向きの話題でもふるか。
flatter for xamarinだってよ
https://adtmag.com/articles/2019/01/08/flutter-for-xamarin.aspx?m=1
flatter for xamarinだってよ
https://adtmag.com/articles/2019/01/08/flutter-for-xamarin.aspx?m=1
116デフォルトの名無しさん
2019/01/21(月) 08:55:03.29ID:cyd5L15X >>115
カオスだな。
カオスだな。
117デフォルトの名無しさん
2019/01/21(月) 13:17:33.75ID:jDpmEG8W flutter for xamsrin for kotlin nativeが待たれる
118デフォルトの名無しさん
2019/01/22(火) 02:09:57.73ID:gn5FLTFP なにこれ。flutter sdkをc#に変換するのか。すげぇな。つか、xamarinの名前冠するなよ。負のイメージしかねぇ。
119デフォルトの名無しさん
2019/01/22(火) 02:22:18.20ID:Ygwng9tV ザマリンてなんか医薬品みたいだよね
「風邪にはザマリン!! お近くの薬局でお求めください!」みたいな
「風邪にはザマリン!! お近くの薬局でお求めください!」みたいな
120デフォルトの名無しさん
2019/01/22(火) 05:45:08.82ID:+WHDBYOc ていうかふらったーの1番のネックはDart言語なのに、それを多言語に変換されてもって感じだな
方向が逆だ
方向が逆だ
121デフォルトの名無しさん
2019/01/22(火) 08:19:51.51ID:gn5FLTFP え?だから他言語のC#に変換してDartとおさらばできるってことだろ。
122デフォルトの名無しさん
2019/01/22(火) 09:06:02.79ID:8X9EpfV1 Xamarin程の糞はない
123デフォルトの名無しさん
2019/01/22(火) 12:58:57.64ID:oFmOrikq ざまりんは座間市のマスコットキャラクターです
124デフォルトの名無しさん
2019/01/22(火) 19:17:28.51ID:HZ2hjuw/ ざまりん!ことりん!天気予報〜♪
125デフォルトの名無しさん
2019/01/22(火) 23:00:57.36ID:vhFDea91 僕の名前はXamarin! 僕の名前はKotlin! 二人合わせて...?
126デフォルトの名無しさん
2019/01/23(水) 04:35:21.49ID:VDPZgNNi 聳え立つ糞
127デフォルトの名無しさん
2019/01/23(水) 11:21:53.63ID:KXFSPWv5 C#erだがXamarinはノーカンで
128デフォルトの名無しさん
2019/01/23(水) 12:30:44.99ID:6pYQH9bm kotlin界隈にもちょまどみたいなアイドル欲しいなぁ
129デフォルトの名無しさん
2019/01/23(水) 12:46:10.71ID:s7nkbb3U きも
130デフォルトの名無しさん
2019/01/23(水) 16:31:27.63ID:rdYi3jIq おまえがVtuberになってアイドルになればいいじゃないか
131デフォルトの名無しさん
2019/01/23(水) 17:25:35.59ID:zR45o/Hn koilin入門書には、作者が分かっていないのかjavaの文法が混じって分かりにくい
ごちゃ混ぜで混乱必至
結局kotlinlang.orgしか信用ならん
ごちゃ混ぜで混乱必至
結局kotlinlang.orgしか信用ならん
132デフォルトの名無しさん
2019/01/23(水) 20:24:53.45ID:Uzogy9i5 Kotlin class destroyerって使ったことある人居る?
133デフォルトの名無しさん
2019/01/23(水) 21:45:50.98ID:Pa8D4EMx >>132
検索してフイタwww 日本語の読めるやつには居ないだろうなwwwww
検索してフイタwww 日本語の読めるやつには居ないだろうなwwwww
134デフォルトの名無しさん
2019/01/24(木) 02:16:31.75ID:HZcP4zux Котлин
135デフォルトの名無しさん
2019/01/24(木) 06:26:15.14ID:SamtYSKx >>131
例えば?
例えば?
136デフォルトの名無しさん
2019/01/24(木) 07:53:39.37ID:nbtsb27b これから本を出す人は、SwiftとKotlinを同時に学べるような本を書いてほしいな
137デフォルトの名無しさん
2019/01/24(木) 09:17:38.10ID:fuJ4iKDY >>136
なんで?
なんで?
138デフォルトの名無しさん
2019/01/24(木) 09:40:30.41ID:iE4PKA0k SwiftとKotlinは書き方が似すぎてて紛らわしいから、
どちらかの書き方が染み付くまでは同時にやらないほうがいいと思う
どちらかの書き方が染み付くまでは同時にやらないほうがいいと思う
139デフォルトの名無しさん
2019/01/25(金) 00:52:03.47ID:oyKZWLKP Go->Node(TypeScript)->Rust->Scala->Kotlin
去年の年末から色んな言語に入門してHelloCRUDしまくってたけど
やっと本命見つけたわ。これは流行るで。ほんま。
去年の年末から色んな言語に入門してHelloCRUDしまくってたけど
やっと本命見つけたわ。これは流行るで。ほんま。
140デフォルトの名無しさん
2019/01/25(金) 06:46:14.56ID:SWXByf/r >>139
フレームワークはSpring? Ktor?
フレームワークはSpring? Ktor?
141デフォルトの名無しさん
2019/01/25(金) 07:20:23.97ID:PIdTSIvJ Sparkも良くできてるから選択肢に加えてあげて
日本だと空気だけど海外の事例だとめっちゃ使われてる
日本だと空気だけど海外の事例だとめっちゃ使われてる
142デフォルトの名無しさん
2019/01/25(金) 09:23:10.32ID:cY+a6SZr Sparkは名前変えろ
Apache Sparkと紛らわしいから絶対に流行らん
Apache Sparkと紛らわしいから絶対に流行らん
143デフォルトの名無しさん
2019/01/25(金) 09:40:00.17ID:84FUhWJo ことりん☆
144デフォルトの名無しさん
2019/01/25(金) 13:25:04.49ID:ra6+4Hwa >>138
紛らわしいけど、両方同時に学べる人に書籍が必要とは思えない。
紛らわしいけど、両方同時に学べる人に書籍が必要とは思えない。
145デフォルトの名無しさん
2019/01/25(金) 15:30:25.59ID:PIdTSIvJ146デフォルトの名無しさん
2019/01/25(金) 15:52:10.81ID:aoOWMbCl ググラビリティwww
147デフォルトの名無しさん
2019/01/25(金) 16:10:17.86ID:cY+a6SZr ITにいて Apache Spark 知らないとかアホ丸出しだから作者が Spark なんて名前を付けている時点で不安になるのが当然で、普通は避ける
それなのに Spark 使ってる奴はそいつも Apache Spark を知らない可能性が高く、同様にアホ丸出し
それなのに Spark 使ってる奴はそいつも Apache Spark を知らない可能性が高く、同様にアホ丸出し
148デフォルトの名無しさん
2019/01/25(金) 16:59:39.24ID:2xvx7HDE >>147
作者が知らないも何もApache Sparkの方が後発だし、その頃にはSpark Frameworkは今さら改名できないくらい広く使われてたぞ
作者が知らないも何もApache Sparkの方が後発だし、その頃にはSpark Frameworkは今さら改名できないくらい広く使われてたぞ
149デフォルトの名無しさん
2019/01/25(金) 18:04:32.01ID:fUiZiF+t >>147はアホを丸出しにしてみたかったのかも知れない。
150デフォルトの名無しさん
2019/01/25(金) 19:52:16.96ID:h/3l4eZA 君とSpark
151デフォルトの名無しさん
2019/01/25(金) 20:15:44.23ID:PIdTSIvJ >>147
これは恥ずかしい
これは恥ずかしい
152デフォルトの名無しさん
2019/01/25(金) 21:28:25.32ID:NpmoGBI+ android studioで、それぞれ以下の行を追加
actibity_main.xml
android:id="@+id/back"
MainActivity.kt
import android.graphics.Color
import android.widget.LinearLayout
val background = findViewById<LinearLayout>(R.id.back) as LinearLayout
background.setBackgroundColor(Color.parseColor("#FF0000"))
で、画面が赤くなると思うんだけど、アプリが起動直後に停止してしまう。
background.setBackgroundColor(Color.parseColor("#FF0000"))
の行をコメントにすると普通に起動する
本当はラジオボタンで選んでバックグラウンドを変える処理だけど、抜き出してやってみてもうまくいかない
actibity_main.xml
android:id="@+id/back"
MainActivity.kt
import android.graphics.Color
import android.widget.LinearLayout
val background = findViewById<LinearLayout>(R.id.back) as LinearLayout
background.setBackgroundColor(Color.parseColor("#FF0000"))
で、画面が赤くなると思うんだけど、アプリが起動直後に停止してしまう。
background.setBackgroundColor(Color.parseColor("#FF0000"))
の行をコメントにすると普通に起動する
本当はラジオボタンで選んでバックグラウンドを変える処理だけど、抜き出してやってみてもうまくいかない
153デフォルトの名無しさん
2019/01/25(金) 21:40:17.98ID:9WShTN4K 流行るわけないとか言ってるあたり、マジで最近出てきたフレームワークだと思ってたんだろうな
Javaのマイクロフレームワークとしてはほぼデファクトなのに
Javaのマイクロフレームワークとしてはほぼデファクトなのに
154デフォルトの名無しさん
2019/01/25(金) 21:41:18.91ID:9WShTN4K >>152
エラーメッセージに答えが書いてあると思うよ
エラーメッセージに答えが書いてあると思うよ
155デフォルトの名無しさん
2019/01/25(金) 21:58:54.35ID:NpmoGBI+ >154
コンパイルは普通に通り、ワーニングも出ない
ただ、アプリは起動直後に停止してしまう。
デバッグ用のスマホが悪いかと、別の機種つないでみても同じく起動直後に停止して
MyApplicationが停止しました
と表示される
コンパイルは普通に通り、ワーニングも出ない
ただ、アプリは起動直後に停止してしまう。
デバッグ用のスマホが悪いかと、別の機種つないでみても同じく起動直後に停止して
MyApplicationが停止しました
と表示される
156デフォルトの名無しさん
2019/01/25(金) 22:30:34.06ID:T4sCfJsj なんでAndroidスレで聞かないわけ?
エラーメッセージ読めないのと一緒なの?
エラーメッセージ読めないのと一緒なの?
157デフォルトの名無しさん
2019/01/25(金) 22:30:36.78ID:pxW0IIRd 所謂おまじないはともかくとして
入門書や入門サイトが最初に教えるべきは println と throw RuntimeException() だと思う
最初に転び方だわ
入門書や入門サイトが最初に教えるべきは println と throw RuntimeException() だと思う
最初に転び方だわ
158デフォルトの名無しさん
2019/01/25(金) 22:48:55.25ID:NpmoGBI+ ありがとございます
すこしスレチみたいなので、こっちでもう少し調べてみます。
すこしスレチみたいなので、こっちでもう少し調べてみます。
159デフォルトの名無しさん
2019/01/25(金) 23:56:18.60ID:k0QCMDX+ >>158
ちょっと暇だから相手してやるよ
ほんとに LinearLayout 使ってる?最近の環境で新規アプリ作ったら ConstraintLayout だと思うんだけど
たぶんここが
val background = findViewById<LinearLayout>(R.id.back) as LinearLayout
こうだ
val background = findViewById<ConstraintLayout>(R.id.back)
ちょっと暇だから相手してやるよ
ほんとに LinearLayout 使ってる?最近の環境で新規アプリ作ったら ConstraintLayout だと思うんだけど
たぶんここが
val background = findViewById<LinearLayout>(R.id.back) as LinearLayout
こうだ
val background = findViewById<ConstraintLayout>(R.id.back)
160デフォルトの名無しさん
2019/01/25(金) 23:57:28.33ID:k0QCMDX+ ちょっと面白いと思ったのは、ConstraintLayout に対して
val background = findViewById<LinearLayout>(R.id.back) as LinearLayout
background.setBackgroundColor(Color.parseColor("#FF0000"))
これだと val background = 〜の行で ClassCastException で落ちるのに、
background.setBackgroundColor をコメントアウトすると落ちずに普通に動いちゃうのね
これは background が使われないなら background へキャストして代入する処理自体を kotlin が無効化しちゃうのかな
val background = findViewById<LinearLayout>(R.id.back) as LinearLayout
background.setBackgroundColor(Color.parseColor("#FF0000"))
これだと val background = 〜の行で ClassCastException で落ちるのに、
background.setBackgroundColor をコメントアウトすると落ちずに普通に動いちゃうのね
これは background が使われないなら background へキャストして代入する処理自体を kotlin が無効化しちゃうのかな
161デフォルトの名無しさん
2019/01/27(日) 18:18:09.78ID:jDwbvKDS いろいろな意見を参考にやってみました
原因
コンパイルエラーは出なかったけどIDが変なところをさしていて、カラー情報を書き込んだ瞬間に落ちていました。
対処1
actibity_main.xmに
android:id="@+id/back"を消して
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/back"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</LinearLayout>
を追加
対処2
MainActivity.ktの
<LinearLayout>の代わりに
<android.support.constraint.ConstraintLayout>
2通りの方法でうまくいきました
import android.support.constraint.ConstraintLayout
をimportすると、
>159の<ConstraintLayout>だけでOKでした
ありがとうございました
原因
コンパイルエラーは出なかったけどIDが変なところをさしていて、カラー情報を書き込んだ瞬間に落ちていました。
対処1
actibity_main.xmに
android:id="@+id/back"を消して
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/back"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</LinearLayout>
を追加
対処2
MainActivity.ktの
<LinearLayout>の代わりに
<android.support.constraint.ConstraintLayout>
2通りの方法でうまくいきました
import android.support.constraint.ConstraintLayout
をimportすると、
>159の<ConstraintLayout>だけでOKでした
ありがとうございました
162デフォルトの名無しさん
2019/01/27(日) 19:32:56.92ID:dhHHmXdZ163デフォルトの名無しさん
2019/01/27(日) 21:32:10.99ID:jv36ci7O >>140
Ktorやで
Ktorやで
164デフォルトの名無しさん
2019/01/28(月) 00:27:33.91ID:A5w6Cdea 圭太
165デフォルトの名無しさん
2019/01/28(月) 09:34:18.83ID:j8L/fU4R Ktorええよな、今作ってるAPIサーバーで使ってる。
Webアプリにはあんまり向かなそうだけど
Webアプリにはあんまり向かなそうだけど
166デフォルトの名無しさん
2019/01/28(月) 10:43:40.13ID:c8FVptT0 幸太
167デフォルトの名無しさん
2019/01/28(月) 10:51:26.03ID:qhu0cqfw 古都鈴
168デフォルトの名無しさん
2019/01/28(月) 18:09:48.33ID:YkAtt80R 昔、古都ひかるってAV女優が好きだったの思い出した
169デフォルトの名無しさん
2019/01/28(月) 18:25:17.41ID:ncjyAVYK ググったけどお前微妙な趣味してるな
170デフォルトの名無しさん
2019/01/28(月) 18:43:54.94ID:qhu0cqfw >>168
ワイも好きでした
ワイも好きでした
171デフォルトの名無しさん
2019/01/28(月) 18:44:53.31ID:SEDlCRnu >>165
Webアプリしようと思ってKtor勉強中なのだが、向いてないのか...
Webアプリしようと思ってKtor勉強中なのだが、向いてないのか...
172デフォルトの名無しさん
2019/01/28(月) 18:45:00.57ID:MtItNdsU 今から考えればそうだが
昔はあんなのでもレベル高かった気がする
あの頃のやつだと河井さくらとかいう人が文字通り面白かったし水野栞も良かった
今は顔面偏差値すごい底上げされてて嬉しい
昔はあんなのでもレベル高かった気がする
あの頃のやつだと河井さくらとかいう人が文字通り面白かったし水野栞も良かった
今は顔面偏差値すごい底上げされてて嬉しい
173デフォルトの名無しさん
2019/01/28(月) 18:54:36.48ID:qhu0cqfw 今でも通用すると思うで
174デフォルトの名無しさん
2019/01/28(月) 19:24:55.14ID:j8L/fU4R175デフォルトの名無しさん
2019/01/28(月) 19:28:08.60ID:ncjyAVYK >>171
Ktorはいわゆるマイクロフレームワークに分類されるフレームワークだから、ガチガチのWebアプリを作るのはめんどいよ
まあ認証やらセッション管理やらDBやらのことだから最初に一度作ってしまえば後は別に面倒なことはないけど
Ktorはいわゆるマイクロフレームワークに分類されるフレームワークだから、ガチガチのWebアプリを作るのはめんどいよ
まあ認証やらセッション管理やらDBやらのことだから最初に一度作ってしまえば後は別に面倒なことはないけど
176デフォルトの名無しさん
2019/01/29(火) 08:13:36.09ID:Yq72SlCs >>165
いいよね。SpringBootと棲み分けできそうやし。
ところでどんな構成(アーキテクチャ)で使ってる?
ワイはもうKtorならRepository無いほうがええような気がしてきてるんやが。
いいよね。SpringBootと棲み分けできそうやし。
ところでどんな構成(アーキテクチャ)で使ってる?
ワイはもうKtorならRepository無いほうがええような気がしてきてるんやが。
177デフォルトの名無しさん
2019/01/29(火) 08:36:23.24ID:Yq72SlCs https://ideone.com/Xghedx
ExposedではUserTable2に便利メソッドが生えるのでRepository分けても委譲とentity変換ばっかりになりそうだったから
それならModelクラスと同じ場所に置いて、DB変更時にミスりにくい方がいいかと思った。
こんな構成で作ってみてるんだけど、どう思う?
ExposedではUserTable2に便利メソッドが生えるのでRepository分けても委譲とentity変換ばっかりになりそうだったから
それならModelクラスと同じ場所に置いて、DB変更時にミスりにくい方がいいかと思った。
こんな構成で作ってみてるんだけど、どう思う?
178デフォルトの名無しさん
2019/01/29(火) 12:07:29.18ID:Ghu5z8kR >>177
その割り切った作りはいいと思う。特にチームが大きく無いならメリットの方が多いんじゃないかな。
俺はAPIサーバーと連動するプログラムも同時開発してて、共有できるものは共有してさせるためにクリーンアーキテクチャにしてるからrepositoryも含めてクラスはやたら多くなってるけども。
その割り切った作りはいいと思う。特にチームが大きく無いならメリットの方が多いんじゃないかな。
俺はAPIサーバーと連動するプログラムも同時開発してて、共有できるものは共有してさせるためにクリーンアーキテクチャにしてるからrepositoryも含めてクラスはやたら多くなってるけども。
179デフォルトの名無しさん
2019/01/29(火) 23:38:56.61ID:rUlqj1XI >177
Ktorみていて、データベース接続部分がないような気がしていたけど、やっぱりExposedを使うのか.
Ktorみていて、データベース接続部分がないような気がしていたけど、やっぱりExposedを使うのか.
180デフォルトの名無しさん
2019/01/30(水) 08:07:46.80ID:5baYxL1g181デフォルトの名無しさん
2019/01/30(水) 17:18:23.70ID:JsLx868V182デフォルトの名無しさん
2019/02/01(金) 00:51:36.05ID:HFNNmxMu >>145
ググラビティすき
ググラビティすき
183デフォルトの名無しさん
2019/02/01(金) 06:19:43.90ID:oyUXC//m ぐぐらびりてぃって日本だけかと思ってたら海外でも普通に使われてるのな
google(検索する)って動詞とセットで辞書に載っててわろたわw
google(検索する)って動詞とセットで辞書に載っててわろたわw
184デフォルトの名無しさん
2019/02/01(金) 12:52:22.08ID:5o/o/nGk 動詞か。とすると過去形が googled か。
185デフォルトの名無しさん
2019/02/01(金) 13:06:37.22ID:ad6+KOec むしろ日本よりも英語圏での方がよく使われてる気がする
海外のフォーラムとかで普通に見る
海外のフォーラムとかで普通に見る
186デフォルトの名無しさん
2019/02/01(金) 18:28:47.94ID:Oa2LgpWH んじゃヤフーでググれもあながち間違いじゃない?
ソニーのファミコン的な
ソニーのファミコン的な
187デフォルトの名無しさん
2019/02/01(金) 21:35:19.79ID:5o/o/nGk Infoseek と Exite もよろしく
188デフォルトの名無しさん
2019/02/02(土) 07:20:45.10ID:vIqKCsXY ビンガビリティ
強そう
強そう
189デフォルトの名無しさん
2019/02/02(土) 12:34:49.40ID:ecMf0cvm Anko使ってる?
190デフォルトの名無しさん
2019/02/02(土) 20:52:18.84ID:rNm5OL0i Unko?
191デフォルトの名無しさん
2019/02/02(土) 21:18:44.79ID:60g8Sasz 大体レイアウトとロジックが混在してるのは良くないねってことで
レイアウトはxnlファイルに分離するようにしたんだと思うんだけど
何でAnkoってまたレイアウトとロジックを混在させるようなことしてんの
時代に逆行してるだけでは
レイアウトはxnlファイルに分離するようにしたんだと思うんだけど
何でAnkoってまたレイアウトとロジックを混在させるようなことしてんの
時代に逆行してるだけでは
192デフォルトの名無しさん
2019/02/02(土) 21:38:35.91ID:mZCa7M9L >>191
アーキテクチャ上重要なのはビューとロジックの分離
一方で、レイアウトとロジックの分離というのはビューに閉じた話であり、
マークアップエンジニア(笑)とフロントエンドエンジニア(笑)の分業をしやすくするだけのものでしかない
フロントエンドエンジニアが十分有能でマークアップエンジニア(笑)の仕事も自分でこなせるなら分ける必要は全く無い
アーキテクチャ上重要なのはビューとロジックの分離
一方で、レイアウトとロジックの分離というのはビューに閉じた話であり、
マークアップエンジニア(笑)とフロントエンドエンジニア(笑)の分業をしやすくするだけのものでしかない
フロントエンドエンジニアが十分有能でマークアップエンジニア(笑)の仕事も自分でこなせるなら分ける必要は全く無い
193デフォルトの名無しさん
2019/02/02(土) 21:43:01.16ID:hUtwc62g 流行りのキーワード並べてドヤ顔
194デフォルトの名無しさん
2019/02/03(日) 07:45:41.73ID:gLy6KBGU レイアウトの中にロジックがダラダラ書かれたら見通し悪くてUnkoだけどそこは経験とコード規約とレビューで制御できる
適正なメソッド分割は主に人間の仕事であってライブラリーの責務ではない
XMLの欠点とDSLの利点はGitHubのWikiで説明されてる
設計開発にイチイチXML使うのは微妙じゃね?DSLとかいいよな!ってのは時流でもある
だから少なくとも時代に逆行しているだけということはない
適正なメソッド分割は主に人間の仕事であってライブラリーの責務ではない
XMLの欠点とDSLの利点はGitHubのWikiで説明されてる
設計開発にイチイチXML使うのは微妙じゃね?DSLとかいいよな!ってのは時流でもある
だから少なくとも時代に逆行しているだけということはない
195デフォルトの名無しさん
2019/02/03(日) 10:09:31.17ID:nQr97LtT いーや、Ankoは糞
196デフォルトの名無しさん
2019/02/03(日) 12:29:21.29ID:Wt38prvY anko味のunko
197デフォルトの名無しさん
2019/02/03(日) 12:36:56.63ID:FHrrfvzD unko味のankoとanko味のunko
198デフォルトの名無しさん
2019/02/03(日) 15:59:31.11ID:sWvJHh2u あんこ餅食いたくなってきたからスーパー行ってくる
199デフォルトの名無しさん
2019/02/03(日) 18:35:49.59ID:FHrrfvzD Anko程の糞はない
200デフォルトの名無しさん
2019/02/03(日) 21:27:31.59ID:WjHZzJrh 気になってるんやがkotlin nativeが完成したらgoは駆逐できるんやろか。
それともシングルバイナリやら並列化でgoのメリット残るんやろか。
それともシングルバイナリやら並列化でgoのメリット残るんやろか。
201デフォルトの名無しさん
2019/02/03(日) 21:58:54.28ID:OYz8YI9S202デフォルトの名無しさん
2019/02/03(日) 22:10:09.65ID:WjHZzJrh マジかあ。Scala状態は残念やのー。
俺にキラーアプリ作れるような力があればなぁ。。
俺にキラーアプリ作れるような力があればなぁ。。
203デフォルトの名無しさん
2019/02/03(日) 22:19:22.36ID:WjHZzJrh githubでkotlin-native使ってるプロジェクト探してみたけど、確かにあんまり盛り上がってる感じではないね。
今作ってるクソアプリが一段落ついたら何か作ってみよう。
今作ってるクソアプリが一段落ついたら何か作ってみよう。
204デフォルトの名無しさん
2019/02/03(日) 22:43:39.24ID:0oNu2+nX アプリよりFWだよな
205デフォルトの名無しさん
2019/02/03(日) 22:49:54.08ID:OYz8YI9S 「オーケーグーグル、エロくて楽しいアプリ作って」でエロくて楽しいkotlin nativeアプリのソースが生成されるAIを作れば流行る
206デフォルトの名無しさん
2019/02/03(日) 23:03:35.29ID:hpvKsGCb Kotlin/Native自体は現在進行中のSubstrate VMが出来上がるとやや辛い立ち位置になる
でもKotlin全体としては間接的にエコシステムが大きく強化されるし
Kotlin/Nativeから「Kotlin with Substrate VM」への移行は
性質的に割と容易なものになる期待もあるから使っても大丈夫だと思う
補足だけど Substrate VM はOracle主導のオープンソースプロジェクトGraalの一部で
JavaバイトコードをAOTするもの、
これによりjavaパッケージが使えるKotlin/JVMのままネイティブ化出来るようになる
Linux向けは出来ていてWindowsやiOSなどはまだこれから
でもKotlin全体としては間接的にエコシステムが大きく強化されるし
Kotlin/Nativeから「Kotlin with Substrate VM」への移行は
性質的に割と容易なものになる期待もあるから使っても大丈夫だと思う
補足だけど Substrate VM はOracle主導のオープンソースプロジェクトGraalの一部で
JavaバイトコードをAOTするもの、
これによりjavaパッケージが使えるKotlin/JVMのままネイティブ化出来るようになる
Linux向けは出来ていてWindowsやiOSなどはまだこれから
207デフォルトの名無しさん
2019/02/03(日) 23:43:07.23ID:hpvKsGCb ちなみにAndroid Runtimeも同様にAOTしている
こっちはJDKをGoogleが好きなように取捨選択してるのでJava互換性テストは通らない
Android Runtimeの技術を利用してJava(Kotlin/JVM含む)からiOS用のネイティブを生成してるのが
RoboVMやMulti-OS Engine
Substrate VMはこれら(Kotlin/Native含む)に対して
後追いだけどOpenJDKフルサポートのAOT、ということになる
出来上がるまでまだかなりの時間が掛かりそうだけど
こっちはJDKをGoogleが好きなように取捨選択してるのでJava互換性テストは通らない
Android Runtimeの技術を利用してJava(Kotlin/JVM含む)からiOS用のネイティブを生成してるのが
RoboVMやMulti-OS Engine
Substrate VMはこれら(Kotlin/Native含む)に対して
後追いだけどOpenJDKフルサポートのAOT、ということになる
出来上がるまでまだかなりの時間が掛かりそうだけど
208デフォルトの名無しさん
2019/02/04(月) 00:38:33.17ID:udiwpstp 結局Java版Xamarinを作ろうとしてるだけだな
目的不在で技術だけが独り歩きしてる感すごい
目的不在で技術だけが独り歩きしてる感すごい
209デフォルトの名無しさん
2019/02/04(月) 06:16:54.78ID:jDY9Ysuj >>200
無理だね。というかそもそもGoの得意分野とKotlin(native)の得意分野がかぶってないから現時点であまり競合してない
無理だね。というかそもそもGoの得意分野とKotlin(native)の得意分野がかぶってないから現時点であまり競合してない
210デフォルトの名無しさん
2019/02/04(月) 08:21:30.46ID:+iZnVKUh >>209
そうなんか。kotlin nativeの得意分野って何なんや?
そうなんか。kotlin nativeの得意分野って何なんや?
211デフォルトの名無しさん
2019/02/04(月) 10:20:12.21ID:RwYNgFWa >>208
Graalの主目的はHotSpotのJITコンパイラ(C2)の刷新
20年以上前に設計され、修正が積み上げられたC++コードなので
保守し辛く新技術の導入も困難とのこと
JITコンパイラ(Graal本体)はインタプリタやAOTとも関連が深く、
それらも考慮したエコシステムとしてサブプロジェクトを内包してる
Truffle / Sulong / Substrate VM
Graalの主目的はHotSpotのJITコンパイラ(C2)の刷新
20年以上前に設計され、修正が積み上げられたC++コードなので
保守し辛く新技術の導入も困難とのこと
JITコンパイラ(Graal本体)はインタプリタやAOTとも関連が深く、
それらも考慮したエコシステムとしてサブプロジェクトを内包してる
Truffle / Sulong / Substrate VM
212デフォルトの名無しさん
2019/02/04(月) 10:38:08.20ID:RwYNgFWa >>210
Kotlinの対応プラットフォームを広げるものだから
強いて言うならKotlin/JVMと同じく通常アプリでは
Goは並列処理や低レイテンシGC(リアルタイム用途)など
システム寄りが得意
Kotlinの対応プラットフォームを広げるものだから
強いて言うならKotlin/JVMと同じく通常アプリでは
Goは並列処理や低レイテンシGC(リアルタイム用途)など
システム寄りが得意
213デフォルトの名無しさん
2019/02/04(月) 12:40:41.74ID:Mgc+6WQD Kotlin nativeは悪く言えば現状では得意分野などはっきり言って存在しないし、良く言えばこれから何に使ってもいいとも言える
Goの代わりに使うことももちろん可能
Goの代わりに使うことももちろん可能
214デフォルトの名無しさん
2019/02/04(月) 20:20:46.75ID:nyJZm1CJ Ktor以上に急上昇してるJavalinってFWお前ら使ってる?
215デフォルトの名無しさん
2019/02/04(月) 22:34:50.26ID:QEUSQVw8 使ってないし知らない
216デフォルトの名無しさん
2019/02/05(火) 06:33:03.96ID:ZLbI9faD >>214
使ったら竜騎士とかにクラスチェンジできるかな
使ったら竜騎士とかにクラスチェンジできるかな
217デフォルトの名無しさん
2019/02/05(火) 06:59:09.94ID:+mMHH6yh マジで聞いたことすらなかった
悪くなさそうだけど、英語も含めて情報が少なすぎて趣味以外には使えないかな
悪くなさそうだけど、英語も含めて情報が少なすぎて趣味以外には使えないかな
218デフォルトの名無しさん
2019/02/05(火) 07:02:18.31ID:+mMHH6yh 軽く調べた感じだからよく分かってないんだけど、これ例えばSparkと比べて何が良いの?
219デフォルトの名無しさん
2019/02/05(火) 09:02:22.82ID:855O/xU5 Kotlin を今のプロジェクトに使いたいけど、eclipse とか言う糞IDE使ってて相性悪すぎて笑えない
SWT とか JFace とかでUI作ってるから、eclipse を外すのは無理だし
SWT とか JFace とかでUI作ってるから、eclipse を外すのは無理だし
220デフォルトの名無しさん
2019/02/05(火) 09:40:26.01ID:NCwCR2JI ググると槍投げ画像が沢山出てくるな・・・
221デフォルトの名無しさん
2019/02/05(火) 10:08:44.38ID:Fs+UH34C222デフォルトの名無しさん
2019/02/05(火) 10:17:58.97ID:LEHFEUGy >>216
宇宙刑事っぽさもあるし、使うと風呂釜が綺麗になって身体が芯からあたたまりそうな感じもする
宇宙刑事っぽさもあるし、使うと風呂釜が綺麗になって身体が芯からあたたまりそうな感じもする
223デフォルトの名無しさん
2019/02/05(火) 10:32:30.10ID:+mMHH6yh >>219
UI作るときとことりん書く時でIDE使い分ければいいんでないの?
UI作るときとことりん書く時でIDE使い分ければいいんでないの?
224デフォルトの名無しさん
2019/02/05(火) 10:32:56.86ID:+mMHH6yh225デフォルトの名無しさん
2019/02/05(火) 11:21:10.88ID:jB1piIf6 >>216
ガリで
ガリで
226デフォルトの名無しさん
2019/02/05(火) 11:27:24.21ID:NCwCR2JI 宇宙刑事 Javalin
227デフォルトの名無しさん
2019/02/05(火) 12:13:00.65ID:nvQ1xa5u やっぱJavanだろ
228デフォルトの名無しさん
2019/02/05(火) 12:24:17.71ID:ryDpasJz Javalinの半分はやさしさで出来ています。
229デフォルトの名無しさん
2019/02/05(火) 12:42:55.22ID:NCwCR2JI リン付ければなんでも可愛らしくなると思いやがってそうはいかねえぞべらんめえ ←江戸っ子
230デフォルトの名無しさん
2019/02/05(火) 15:01:18.53ID:PldLlsCY > ←江戸っ子
ウザっ
ウザっ
231デフォルトの名無しさん
2019/02/05(火) 15:25:14.63ID:NCwCR2JI うざりん
232デフォルトの名無しさん
2019/02/06(水) 19:35:52.56ID:59jOjkSQ 上でシステム系にはGoみたいに書かれてるんだけど、kotlin/nativeはGoより遅いのかな。
現状ではそうなのかも知れないけど、最終的にはGoと同等の速度が出せるポテンシャル(仕組み)だと
思ってるんだけどそうでもないの?
現状ではそうなのかも知れないけど、最終的にはGoと同等の速度が出せるポテンシャル(仕組み)だと
思ってるんだけどそうでもないの?
233デフォルトの名無しさん
2019/02/06(水) 19:49:42.95ID:nvZvChxt goに勝つのは流石に無理じゃ?
234デフォルトの名無しさん
2019/02/06(水) 20:35:25.96ID:gjOdQxAx Goに比べたら遥かに複雑怪奇な言語だから最適化は不利だろう
JVMの挙動をエミュレーションするための無駄な処理は少なからず必要だろうし
JVMの挙動をエミュレーションするための無駄な処理は少なからず必要だろうし
235デフォルトの名無しさん
2019/02/07(木) 00:37:31.07ID:UFwIxg8c 1 c
2 go
5 jvm
10 script系
3くらいいける?
2 go
5 jvm
10 script系
3くらいいける?
236デフォルトの名無しさん
2019/02/07(木) 05:59:54.51ID:Ftq4Fy0N237デフォルトの名無しさん
2019/02/07(木) 07:33:55.52ID:ygKhuk/7238デフォルトの名無しさん
2019/02/07(木) 08:43:07.10ID:qMU5zT+q なんでRustはあんなに速いん?言語の抽象度は同じくらいやろ?
239デフォルトの名無しさん
2019/02/07(木) 10:01:05.59ID:ygKhuk/7240デフォルトの名無しさん
2019/02/07(木) 10:55:21.09ID:esduY2Xd Goはフットプリントも小さいからな。
C++だと、iostreamを静的リンクしただけでもそこそこ大きくなるのに。
C++だと、iostreamを静的リンクしただけでもそこそこ大きくなるのに。
241デフォルトの名無しさん
2019/02/07(木) 12:43:04.54ID:nkNDSe3E 上で1..10の速さ書いたんやけどあれは実測じゃなくて速さランクのイメージや。
go<kotlin native<<jvm<<壁<<script言語
こうなるなら納得なんやけど、現実には
kotlin native ≒ jvmなの?
最適化されたらgoに迫ると思い込んでるんやけどそんな甘くないんかな。
go<kotlin native<<jvm<<壁<<script言語
こうなるなら納得なんやけど、現実には
kotlin native ≒ jvmなの?
最適化されたらgoに迫ると思い込んでるんやけどそんな甘くないんかな。
242デフォルトの名無しさん
2019/02/07(木) 13:44:29.30ID:Ftq4Fy0N 最適化できたらそらそうだけど、その最適化がどこまで出来るかどうかはお天道様にしか分からない
243デフォルトの名無しさん
2019/02/07(木) 14:46:10.65ID:nkNDSe3E それもそうやね。大人しく半年か1年くらい待ってみるわ
244デフォルトの名無しさん
2019/02/07(木) 14:47:12.25ID:ygKhuk/7 コンパイラの頑張り次第で Go ≒ Kotlin/Native まで行ける可能性はある
ベンチマークでは C ≒ Rust << Go ≒ JVM
Rust vs Go https://benchmarksgame-team.pages.debian.net/benchmarksgame/faster/rust-go.html
Go vs Java https://benchmarksgame-team.pages.debian.net/benchmarksgame/faster/go.html
しかしGCの性質の違い、JVM起動時間、JIT、並列処理サポートなどにより
各ユースケースに対する適性は速度だけでは決まらない
ベンチマークでは C ≒ Rust << Go ≒ JVM
Rust vs Go https://benchmarksgame-team.pages.debian.net/benchmarksgame/faster/rust-go.html
Go vs Java https://benchmarksgame-team.pages.debian.net/benchmarksgame/faster/go.html
しかしGCの性質の違い、JVM起動時間、JIT、並列処理サポートなどにより
各ユースケースに対する適性は速度だけでは決まらない
245デフォルトの名無しさん
2019/02/08(金) 16:17:29.13ID:nPWMA0BU 3桁ごとにカンマ打つには、
val str= "123456"
println( str.format("%,d"))
想定では、123,456のはずが123456になる
使い方間違ってるかな?
val str= "123456"
println( str.format("%,d"))
想定では、123,456のはずが123456になる
使い方間違ってるかな?
246デフォルトの名無しさん
2019/02/08(金) 17:15:55.53ID:3DPCoowD 逆じゃね?
247デフォルトの名無しさん
2019/02/08(金) 18:09:56.46ID:nPWMA0BU 逆+Intでないとダメみたい
BigDecimal放り込んだら勝手に12,345.6789みたいになればと思ったんだけど、自分で作るの面倒で信用ならん
BigDecimal放り込んだら勝手に12,345.6789みたいになればと思ったんだけど、自分で作るの面倒で信用ならん
248デフォルトの名無しさん
2019/02/08(金) 18:45:11.42ID:MkVUfclC jvmならNumberFormatでいいんじゃないの
import java.math.BigDecimal
import java.text.NumberFormat
val BigDecimal.fmtStr: String
get() = NumberFormat.getNumberInstance().format(this)
fun main(args: Array<String>) {
val a = BigDecimal(12345.6789)
println("${a.fmtStr}")
}
import java.math.BigDecimal
import java.text.NumberFormat
val BigDecimal.fmtStr: String
get() = NumberFormat.getNumberInstance().format(this)
fun main(args: Array<String>) {
val a = BigDecimal(12345.6789)
println("${a.fmtStr}")
}
249デフォルトの名無しさん
2019/02/08(金) 19:35:10.36ID:MkVUfclC ごめんよく見たら丸められてたから訂正
https://ideone.com/AvbxFT
https://ideone.com/AvbxFT
250デフォルトの名無しさん
2019/02/08(金) 19:59:36.92ID:nPWMA0BU >249
"."探して、整数と小数点以下に分けて整数部分にカンマ打ってから合体させようとしこしこ作ってたら別のアイデア出てた
ありがと
"."探して、整数と小数点以下に分けて整数部分にカンマ打ってから合体させようとしこしこ作ってたら別のアイデア出てた
ありがと
251デフォルトの名無しさん
2019/02/09(土) 06:09:56.82ID:6/bHpQ6m locale によってはカンマが3桁区切りではないかも知れないし記号がカンマではないかも知れないので
こうやって自分でやっちゃった方が良いのでは?
println(java.text.DecimalFormat("#,##0.000").format(java.math.BigDecimal("1234567890.1235"))) // 1,234,567,890.124
こうやって自分でやっちゃった方が良いのでは?
println(java.text.DecimalFormat("#,##0.000").format(java.math.BigDecimal("1234567890.1235"))) // 1,234,567,890.124
252デフォルトの名無しさん
2019/02/09(土) 07:35:37.20ID:fJwH+mSX >>251
ロケールに従わず常にカンマにしたいという意図ならそれだとそぐわないと思う
DecimalFormatに与えたカンマはカンマという文字ではなくグループ区切り子なのでロケールに応じた文字で出力されるよ
ロケールに従わず常にカンマにしたいという意図ならそれだとそぐわないと思う
DecimalFormatに与えたカンマはカンマという文字ではなくグループ区切り子なのでロケールに応じた文字で出力されるよ
253デフォルトの名無しさん
2019/02/10(日) 17:34:05.13ID:BbTEeZaP 日本, アメリカ, イギリス 他
1 = 1.000 < 10 < 1,000 = 1000
ドイツ, イタリア 他
1 = 1,000 < 10 < 1.000 = 1000
ロシア, フランス 他
1 = 1,000 < 10 < 1 000 = 1000
オーストラリア, カナダ 他
1 = 1.000 < 10 < 1 000 = 1000
国際単位系(SI)
1 = 1,000 = 1.000 < 10 < 1 000 = 1000
空白を小数区切りに使う国が無いことと、ポイントとカンマの各国のばらつきから
読み取り間違いを避けるための妥協案のようなもの
1 = 1.000 < 10 < 1,000 = 1000
ドイツ, イタリア 他
1 = 1,000 < 10 < 1.000 = 1000
ロシア, フランス 他
1 = 1,000 < 10 < 1 000 = 1000
オーストラリア, カナダ 他
1 = 1.000 < 10 < 1 000 = 1000
国際単位系(SI)
1 = 1,000 = 1.000 < 10 < 1 000 = 1000
空白を小数区切りに使う国が無いことと、ポイントとカンマの各国のばらつきから
読み取り間違いを避けるための妥協案のようなもの
254デフォルトの名無しさん
2019/02/10(日) 17:41:28.40ID:BbTEeZaP おまけ
Ruby, Java, Kotlin 他
1 = 1.000 < 10 < 1_000 = 1000
C++
1 = 1.000 < 10 < 1'000 = 1000
アンダースコアをユーザー定義リテラル用に使っていたため
Ruby, Java, Kotlin 他
1 = 1.000 < 10 < 1_000 = 1000
C++
1 = 1.000 < 10 < 1'000 = 1000
アンダースコアをユーザー定義リテラル用に使っていたため
255デフォルトの名無しさん
2019/02/10(日) 18:10:30.74ID:6jFJUgix そうか。じゃあグループセパレータを自分でカンマにセットしとかないと確実にカンマにはならないってことだな。
256デフォルトの名無しさん
2019/02/12(火) 05:43:38.35ID:xDY2FToe Java全然書いたことないんだけどJavaのこと調べてたらこの言語に辿り着いた
Android公式言語とのことだけど、Androidアプリ開発以外の用途でJavaでやることもKotlinで出来るの?
もうJavaじゃなくてKotlin学んだほうがいい?
PythonとCしか書けない
Android公式言語とのことだけど、Androidアプリ開発以外の用途でJavaでやることもKotlinで出来るの?
もうJavaじゃなくてKotlin学んだほうがいい?
PythonとCしか書けない
257デフォルトの名無しさん
2019/02/12(火) 05:56:17.28ID:SvKCMiwA おわこん
258デフォルトの名無しさん
2019/02/12(火) 06:15:00.09ID:PanSk5rI >>256
> JavaでやることもKotlinで出来るの?
できる。
> もうJavaじゃなくてKotlin学んだほうがいい?
JavaをやってからKotlinを学んだほうがいいけど、PythonとCができるなら、Kotlinから始めるのもありかも。
> JavaでやることもKotlinで出来るの?
できる。
> もうJavaじゃなくてKotlin学んだほうがいい?
JavaをやってからKotlinを学んだほうがいいけど、PythonとCができるなら、Kotlinから始めるのもありかも。
259デフォルトの名無しさん
2019/02/12(火) 08:01:07.40ID:zazJl4ej >>256
APIリファレンス読むためにJavaのメソッド定義の構文を知っておくくらいで
Kotlinをメインに学んで良いと思うよ
成果物はJavaクラスファイル(※)なので出来ることは同じ
やろうと思えば1プロジェクトで混在しても普通にお互い呼べる
※Kotlin/JS, Kotin/Nativeとかの別形式もある
APIリファレンス読むためにJavaのメソッド定義の構文を知っておくくらいで
Kotlinをメインに学んで良いと思うよ
成果物はJavaクラスファイル(※)なので出来ることは同じ
やろうと思えば1プロジェクトで混在しても普通にお互い呼べる
※Kotlin/JS, Kotin/Nativeとかの別形式もある
260デフォルトの名無しさん
2019/02/12(火) 11:22:53.23ID:8lolhehX Scalaってどこいったん?
261デフォルトの名無しさん
2019/02/12(火) 14:31:00.63ID:8DpMAebM Scalaは衰退しました
262デフォルトの名無しさん
2019/02/12(火) 15:06:09.44ID:ncKC6kPX 使われてるところでは安定して使われてるみたい
拡大は止まったと思うけど
拡大は止まったと思うけど
263デフォルトの名無しさん
2019/02/12(火) 20:08:57.00ID:hkCwi0n8 scala組がkotlinに合流してくれたら覇権言語狙えるんやないか。
ということは、kotlinに必要なのはお洒落感?
ということは、kotlinに必要なのはお洒落感?
264デフォルトの名無しさん
2019/02/12(火) 20:28:23.96ID:VerJGrBE Scalaやってた意識高い系はみんなとっくにRustへ移行した
265デフォルトの名無しさん
2019/02/12(火) 21:03:35.46ID:pT/fbk4d >>256
それをJavaで作る必要があって、Javaで作ることを誰かに強制されているなら、それはJavaで作る
それをJavaで作る必要があって、Javaで作ることを誰にも強制されてないなら、それはKotlinで作る
それをJavaで作る必要がないなら、JavaでもKotlinでも作らない。他の言語を使う。めんどくさいじゃん
それをJavaで作る必要があって、Javaで作ることを誰かに強制されているなら、それはJavaで作る
それをJavaで作る必要があって、Javaで作ることを誰にも強制されてないなら、それはKotlinで作る
それをJavaで作る必要がないなら、JavaでもKotlinでも作らない。他の言語を使う。めんどくさいじゃん
266デフォルトの名無しさん
2019/02/13(水) 09:04:09.69ID:KRdNZL9E ちょっと前はScala民がやたらKotlinを叩いてたけど、それももう見なくなったな
267デフォルトの名無しさん
2019/02/13(水) 13:18:45.36ID:ikkFeMPB 現在はKotlin教とGo教の戦い?
268デフォルトの名無しさん
2019/02/13(水) 14:52:01.31ID:e0d6KWci 言語に自己肯定感を求める人は無難無個性言語Kotlinや低脳言語Goでは欲求が満たされないことを知りRustへ行った
269デフォルトの名無しさん
2019/02/13(水) 18:00:16.64ID:41RZIXro >>267
両方とも同時期に流行り始めたけど、用途的にあんまり競合してない希ガス
両方とも同時期に流行り始めたけど、用途的にあんまり競合してない希ガス
270デフォルトの名無しさん
2019/02/13(水) 19:36:21.84ID:n4QfG8LN おれもどうせならオシャレな言語がいいんだがスマホのアプリ作りたいならkotlinしかないよね?
271デフォルトの名無しさん
2019/02/13(水) 20:05:24.56ID:o4GE+skC つDart
272デフォルトの名無しさん
2019/02/13(水) 20:07:39.49ID:kPXKdc0M dartがオシャレ…?
273デフォルトの名無しさん
2019/02/13(水) 20:43:21.05ID:KRdNZL9E flutter普及への最大の障害がDartだよな
274デフォルトの名無しさん
2019/02/13(水) 22:02:27.55ID:O2gl0nE8 >>270
あなたの言うスマホアプリがゲームだけであるなら、Unityを使うことができる
これはWindowsマシンでAndroidゲームもiPhoneゲームも作ることができる(iPhoneの実機はあったほうがいいけど)
あなたの言うスマホアプリがiPhoneアプリであるなら開発マシンはMacでiPhoneは必須、個人なら言語は公式のSwift(就職する気なら今からObjective-Cに手を出して時間不足で爆死しよう)
Windowsマシンでも作成だけはできるがユーザーの「よくわからないけど動きません」に対して「よくわからないので直せません」と答えるしかなくなる(所詮エミュ)
あなたの言うスマホアプリがAndroidアプリである場合のみ、Windows(別にLinuxでもMacでもいいけど)でKotlinを使うことで作ることができる
ゲームを作ることももちろんできるが、基本的に全部自力での実装になるので序盤から山が高いし若干面倒くさい(後々勉強にはなるが)
手間と面倒だけ考えるならUnityとC#でやったほうがサンプルも解説も書籍もライブラリも山ほどあるし楽は楽、詰まってもだいたい先人が解いてるのでイージー。タイムイズマネー
もちろん他の言語で作ることもできて、たとえばもしあなたにC++の知識があるならC++でゴリゴリ作ることもできるんだけど、そんな人はこんなこと聞かないよね
えっXamarin?ごめーん忘れてた。「もしあなたがいっぱしのWindowsアプリケーション開発者であるなら」その知識とXamarinとC#と.NETを使うことでAndroid/iPhoneアプリ開発ができるよ
あなたの言うスマホアプリがゲームだけであるなら、Unityを使うことができる
これはWindowsマシンでAndroidゲームもiPhoneゲームも作ることができる(iPhoneの実機はあったほうがいいけど)
あなたの言うスマホアプリがiPhoneアプリであるなら開発マシンはMacでiPhoneは必須、個人なら言語は公式のSwift(就職する気なら今からObjective-Cに手を出して時間不足で爆死しよう)
Windowsマシンでも作成だけはできるがユーザーの「よくわからないけど動きません」に対して「よくわからないので直せません」と答えるしかなくなる(所詮エミュ)
あなたの言うスマホアプリがAndroidアプリである場合のみ、Windows(別にLinuxでもMacでもいいけど)でKotlinを使うことで作ることができる
ゲームを作ることももちろんできるが、基本的に全部自力での実装になるので序盤から山が高いし若干面倒くさい(後々勉強にはなるが)
手間と面倒だけ考えるならUnityとC#でやったほうがサンプルも解説も書籍もライブラリも山ほどあるし楽は楽、詰まってもだいたい先人が解いてるのでイージー。タイムイズマネー
もちろん他の言語で作ることもできて、たとえばもしあなたにC++の知識があるならC++でゴリゴリ作ることもできるんだけど、そんな人はこんなこと聞かないよね
えっXamarin?ごめーん忘れてた。「もしあなたがいっぱしのWindowsアプリケーション開発者であるなら」その知識とXamarinとC#と.NETを使うことでAndroid/iPhoneアプリ開発ができるよ
275デフォルトの名無しさん
2019/02/13(水) 23:07:05.67ID:eA/7rWxO276デフォルトの名無しさん
2019/02/14(木) 06:44:05.14ID:l2sDxPpK >>275
Goもこちょりんもどちらも使うけど、一口にWEBサーバーと言っても得意なジャンルが違うな、少なくとも現時点では。
今後GoにSpringみたいなフルスタックのフレームワークが出てきたら思いっきり競合するかもね。
Goもこちょりんもどちらも使うけど、一口にWEBサーバーと言っても得意なジャンルが違うな、少なくとも現時点では。
今後GoにSpringみたいなフルスタックのフレームワークが出てきたら思いっきり競合するかもね。
277デフォルトの名無しさん
2019/02/14(木) 09:29:59.23ID:9tQDIG7c 合体させて Gotlin
278デフォルトの名無しさん
2019/02/14(木) 11:59:45.42ID:PQjGjDTM 実際、Goの運用性とKotlinの生産性が合わさればわりと最強だと思う
Kotlin nativeみたいにKotlinのエコシステムを再現する方向だとどうしてもJVMをエミュレーションするような感じになって歪みが出る
逆にGoの文法をKotlinに寄せるほうが筋がいい
Kotlin nativeみたいにKotlinのエコシステムを再現する方向だとどうしてもJVMをエミュレーションするような感じになって歪みが出る
逆にGoの文法をKotlinに寄せるほうが筋がいい
279デフォルトの名無しさん
2019/02/14(木) 13:00:16.45ID:DBAMfZpK 歪みってどういうの?
280デフォルトの名無しさん
2019/02/14(木) 15:39:16.51ID:cVDEqZjL >>279
逆に聞くが、仮に完全にゼロベースで Kotlin native を開発してたとして、今と同じ言語仕様になったと思う?
特定の処理系を前提にして作られて普及した言語が他へ移植されて成功した例はない
逆に聞くが、仮に完全にゼロベースで Kotlin native を開発してたとして、今と同じ言語仕様になったと思う?
特定の処理系を前提にして作られて普及した言語が他へ移植されて成功した例はない
281デフォルトの名無しさん
2019/02/14(木) 17:06:41.26ID:DBAMfZpK 具体的な支障は無いってことでいいの?
282デフォルトの名無しさん
2019/02/14(木) 19:02:02.86ID:HgCh9LDM 横からだけどjvmの負の特性も引き継ぎやすいってことかと思った。
起動が遅いとか、メモリ食うとか。
起動が遅いとか、メモリ食うとか。
283デフォルトの名無しさん
2019/02/14(木) 21:20:40.39ID:FnxMJF+D 起動が遅い事は遅いが昔からすれば今時のPCは速いね。
Windows95や98の頃なんかどうしてくれようというほど遅かったからなあ。
昔はみんな忍耐力強かったよなあ。
Windows95や98の頃なんかどうしてくれようというほど遅かったからなあ。
昔はみんな忍耐力強かったよなあ。
284デフォルトの名無しさん
2019/02/15(金) 05:29:24.84ID:Ytmv+Yd8 >>280
確かにJVMのジェネリクス型消去がなかったら、reifiedみたいな複雑怪奇な仕様はなかったろうな。
移植については大抵は非公式移植事例だから、楽観はできないけど、まだ決めつけるには速いかと。
Scala.NET...うっ、頭が...
確かにJVMのジェネリクス型消去がなかったら、reifiedみたいな複雑怪奇な仕様はなかったろうな。
移植については大抵は非公式移植事例だから、楽観はできないけど、まだ決めつけるには速いかと。
Scala.NET...うっ、頭が...
285デフォルトの名無しさん
2019/02/15(金) 08:15:53.64ID:EWf/hEPb 新しいところでいうと、inline classなんか普通にユーザー定義の値型があれば全く必要ないな
unsigned integerもだいぶ無理矢理感が酷い
Kotlin native特有の話だと、C interopのための構造体のマッピングとか超無理矢理で最高にエイリアン感ある
unsigned integerもだいぶ無理矢理感が酷い
Kotlin native特有の話だと、C interopのための構造体のマッピングとか超無理矢理で最高にエイリアン感ある
286デフォルトの名無しさん
2019/02/15(金) 09:58:26.61ID:KLsspNaS iPhoneにおけるSwiftの立ち位置=AndroidにおけるKotlinの立ち位置
287デフォルトの名無しさん
2019/02/15(金) 10:48:24.63ID:szDoWtiX あ、はい
288デフォルトの名無しさん
2019/02/15(金) 10:54:34.88ID:tar5L0r6 inline class = ユーザー定義の値型 = C#のstruct
そして最適化が十分ならそれらが必要無いことをRustとGoが証明してる
ヒープかスタックかは自動で判断される
そして最適化が十分ならそれらが必要無いことをRustとGoが証明してる
ヒープかスタックかは自動で判断される
289デフォルトの名無しさん
2019/02/15(金) 10:56:38.52ID:PR4djPv7 特定のVM前提で設計されて他へ移植されて成功した言語の例としてはAndroidのJava/KotlinやUnityのC#、Node.jsのJSあたりが該当すると言えなくもないけど、
それらは言語の移植ではなくVMごと移植だからなあ
基本的にVM言語の他への移植は成功しないよ
それらは言語の移植ではなくVMごと移植だからなあ
基本的にVM言語の他への移植は成功しないよ
290デフォルトの名無しさん
2019/02/15(金) 11:07:58.47ID:tar5L0r6 AndroidやC#のいくつかのターゲットはAOTで
それらも「VMごと」に含むなら
LLVMを使うC++(Clang)も同じ扱いになる
それらも「VMごと」に含むなら
LLVMを使うC++(Clang)も同じ扱いになる
291デフォルトの名無しさん
2019/02/15(金) 15:42:23.69ID:FI28dGgE 最近、kotlin触ってるけど、C#より学習コストが高いです
それで、C#erがkotlinに切り替える際に、意識すべき点って何かありますか?
それで、C#erがkotlinに切り替える際に、意識すべき点って何かありますか?
292デフォルトの名無しさん
2019/02/15(金) 16:15:05.26ID:PR4djPv7 >>291
Javaの制限を理解すること
JVMは.NETのCLRに比べて機能的にはずっとショボくて、その制限に由来する奇妙な仕様がKotlinには数多く存在する
Javaに慣れてないとそのあたりは直感的に理解しづらい
Javaの制限を理解すること
JVMは.NETのCLRに比べて機能的にはずっとショボくて、その制限に由来する奇妙な仕様がKotlinには数多く存在する
Javaに慣れてないとそのあたりは直感的に理解しづらい
293デフォルトの名無しさん
2019/02/15(金) 17:24:02.62ID:Hx3jejna >>292さんの言ってる「Javaの制限」て例えばどんなこと?
294デフォルトの名無しさん
2019/02/15(金) 17:29:59.00ID:tar5L0r6 >>291
プログラム言語全般に言えることだけど
各構文を概要程度でも良いので、まずは一通り知ること
C#知ってて引っ掛かりそうな箇所として思いついたのは
・最後のパラメータがラムダの場合は丸括弧の後に書ける
他に引数が無い場合は丸括弧も省略出来る
(GroovyやSwiftのTrailing Closureと同じ)
・レシーバ付きラムダ
・inlineラムダ
・returnはfunから抜けるもので、ラムダから抜けるものではない
・IterableとSequenceは遅延評価
・コンパイルでジェネリクス情報は消える
・suspendは同期(await)が基本動作
プログラム言語全般に言えることだけど
各構文を概要程度でも良いので、まずは一通り知ること
C#知ってて引っ掛かりそうな箇所として思いついたのは
・最後のパラメータがラムダの場合は丸括弧の後に書ける
他に引数が無い場合は丸括弧も省略出来る
(GroovyやSwiftのTrailing Closureと同じ)
・レシーバ付きラムダ
・inlineラムダ
・returnはfunから抜けるもので、ラムダから抜けるものではない
・IterableとSequenceは遅延評価
・コンパイルでジェネリクス情報は消える
・suspendは同期(await)が基本動作
295デフォルトの名無しさん
2019/02/15(金) 17:31:30.02ID:tar5L0r6296デフォルトの名無しさん
2019/02/15(金) 22:07:22.01ID:KHCIiBIM kotlin勉強中なんだけど、結局のところjetbrainsがscala推さずにkotlin出したのは何でなの?
商業的に旨みがあるから?それともbetter javaとしてのscalaに見切りをつけたから?それとも?
商業的に旨みがあるから?それともbetter javaとしてのscalaに見切りをつけたから?それとも?
297デフォルトの名無しさん
2019/02/15(金) 22:33:17.97ID:tar5L0r6 コンセプトの違い
298デフォルトの名無しさん
2019/02/15(金) 23:10:54.49ID:9S5XTVoX >>296
自分でScalaやってみればすぐにわかるよ
まともな感性があれば、あんなものが普及するわけがないことは明らかだった
JetBrainsもIDEを作る会社として自由にできる言語が一つは欲しかったというのはもちろんあっただろうけどね
自分でScalaやってみればすぐにわかるよ
まともな感性があれば、あんなものが普及するわけがないことは明らかだった
JetBrainsもIDEを作る会社として自由にできる言語が一つは欲しかったというのはもちろんあっただろうけどね
299デフォルトの名無しさん
2019/02/15(金) 23:25:58.35ID:KHCIiBIM >>296
なるほど。Scalaのこれ以上の普及は難しいという判断があった(だろう)ってことなら納得。
なるほど。Scalaのこれ以上の普及は難しいという判断があった(だろう)ってことなら納得。
300デフォルトの名無しさん
2019/02/15(金) 23:41:27.98ID:KHCIiBIM まちがえた。上は >>298
雑念を捨ててkotlin邁進してきます
雑念を捨ててkotlin邁進してきます
301デフォルトの名無しさん
2019/02/16(土) 15:17:06.30ID:lTjIe/CZ Scalaは言語マニアのオナニー言語だよなあ
302デフォルトの名無しさん
2019/02/16(土) 17:00:29.98ID:odkD9xpX なんだかんだでscalaは採用企業多いけどね
kotlinもtwitterとかpaypalみたいな大手で使ってくれると宣伝になるんだけど
kotlinもtwitterとかpaypalみたいな大手で使ってくれると宣伝になるんだけど
303デフォルトの名無しさん
2019/02/16(土) 17:31:16.36ID:W7DuQqzW 日本のYahooがKotlin採用したくらいではさざなみさえ立たないか
304デフォルトの名無しさん
2019/02/17(日) 08:06:13.22ID:8BWCGdz7 Scalaの方が出たのが早かったし意識高い系(笑)が挙って使ったから
でもそれを維持出来る新人たちが居ないのが現状
Scalaは端的に複雑で難解な部分が多い
2018年後半以降Scalaの記事殆ど見かけないやろ?
コップ本(笑)
でもそれを維持出来る新人たちが居ないのが現状
Scalaは端的に複雑で難解な部分が多い
2018年後半以降Scalaの記事殆ど見かけないやろ?
コップ本(笑)
305デフォルトの名無しさん
2019/02/17(日) 11:12:07.88ID:IdBTBZJc Androidの公式言語がScalaになる世界線もあり得たと思うけど、そうならなかったってことはつまりそういうこと
306デフォルトの名無しさん
2019/02/17(日) 11:17:52.27ID:IdBTBZJc 一年くらいScalaで仕事してたしまあ慣れればどうってことはないと思うけど、ScalaとKotlinで選べるとしたらよほどの変人以外はKotlin選ぶと思うわw
307デフォルトの名無しさん
2019/02/17(日) 11:30:47.79ID:OQFPUwNT ScalaはHaskellを意識しすぎ
簡潔に書きたいだけならKotlinかClosureの方がいい
簡潔に書きたいだけならKotlinかClosureの方がいい
308デフォルトの名無しさん
2019/02/17(日) 11:57:32.09ID:nzXhLQND Scalaのコンセプトは、スケーラビリティの理論実証
オブジェクト指向と関数型の統合によりスケーラビリティが実現すると考え
小規模から大規模まで同じ書き方/考え方で記述出来るように設計されている
出自はコンピュータサイエンスの学者
Kotlinのコンセプトは、より良い産業向け言語
Javaからの移行や相互運用、コンパイル速度、使い勝手について
「仕事の道具」であることを意識して設計されている
出自はIDE製品を提供する企業
オブジェクト指向と関数型の統合によりスケーラビリティが実現すると考え
小規模から大規模まで同じ書き方/考え方で記述出来るように設計されている
出自はコンピュータサイエンスの学者
Kotlinのコンセプトは、より良い産業向け言語
Javaからの移行や相互運用、コンパイル速度、使い勝手について
「仕事の道具」であることを意識して設計されている
出自はIDE製品を提供する企業
309デフォルトの名無しさん
2019/02/17(日) 12:47:22.79ID:7MWZQWrl どっちも我田引水なだけやん
310デフォルトの名無しさん
2019/02/17(日) 13:01:53.97ID:nzXhLQND 設計思想と既存資産があるから多様に派生し人が集まる
C, C++, Objective-Cが合流しないのも同様
それを我田引水と評することに何の意味もない
C, C++, Objective-Cが合流しないのも同様
それを我田引水と評することに何の意味もない
311デフォルトの名無しさん
2019/02/17(日) 15:40:49.55ID:1RbyA1NJ >>310
クスクス
クスクス
312デフォルトの名無しさん
2019/02/17(日) 15:53:56.04ID:tF7RiGiR scalaでAndroidのプラグインとかあった気がする
我田引水ってなんか意味わからんな
我田引水ってなんか意味わからんな
313デフォルトの名無しさん
2019/02/17(日) 23:16:27.59ID:ek0K0t7B314デフォルトの名無しさん
2019/02/18(月) 02:04:27.28ID:XPBhJDxI 我田引水ってのは共用物について不正に占有したり自らの便宜を図ったりするような場合を言う
自己アピールや競争を含めた利己的な行動すべてを我田引水と揶揄するのは農耕民族的な発想が過ぎる
そういうのは道徳というより村八分や出る杭が打たれるのを恐れる面が強くイノベーションの足枷
自己アピールや競争を含めた利己的な行動すべてを我田引水と揶揄するのは農耕民族的な発想が過ぎる
そういうのは道徳というより村八分や出る杭が打たれるのを恐れる面が強くイノベーションの足枷
315デフォルトの名無しさん
2019/02/18(月) 11:11:01.50ID:+13B6eaL もはや何のスレだか分からない
316デフォルトの名無しさん
2019/02/18(月) 13:20:37.82ID:cZFby2gr 道徳説教スレ
317デフォルトの名無しさん
2019/02/18(月) 13:34:09.52ID:trvxFZJG 我田引水スレ
318デフォルトの名無しさん
2019/02/18(月) 19:19:37.69ID:I6FKQlBO 後ろ盾がjetbrainsっていうのはどうなんやろ。
大手と比べてどんなメリットデメリットあると思う?
大手と比べてどんなメリットデメリットあると思う?
319デフォルトの名無しさん
2019/02/18(月) 19:29:55.81ID:Sk2Bqw0/ てか、我田引水ってどういう意味だっけwwww
320デフォルトの名無しさん
2019/02/18(月) 19:50:06.12ID:TrdfW/q6 >>318
googleと仲いいしintellijシリーズが売れなくなるとも思えんし安泰なんじゃ?
googleと仲いいしintellijシリーズが売れなくなるとも思えんし安泰なんじゃ?
321デフォルトの名無しさん
2019/02/18(月) 20:44:26.76ID:bWM4TeHv スカラ信者がまた荒らしてるな
322デフォルトの名無しさん
2019/02/18(月) 21:57:58.91ID:EXht3ErA >>318
大手と比べるとメリットはない。後ろ盾のない言語よりはいい。
IDEの開発会社という意味では、言語の普及がIDEの売上に直結する可能性があるので
Oracleみたいに独立不採算だからマネタイズに走るという思考にはなりにくいが、
絶対的なものではない。
大手と比べるとメリットはない。後ろ盾のない言語よりはいい。
IDEの開発会社という意味では、言語の普及がIDEの売上に直結する可能性があるので
Oracleみたいに独立不採算だからマネタイズに走るという思考にはなりにくいが、
絶対的なものではない。
323デフォルトの名無しさん
2019/02/18(月) 22:33:30.93ID:nEhvYQ88 IDEの開発会社であるが故のリスクもあるけどね
VSCodeのような強力な他の開発ツールがKotlinサポートにおいてIntelliJを超えてしまってユーザーが流れた場合、
JetBrainsにとってKotlinの開発を続けることにもはや意味がなくなってしまう
VSCodeのような強力な他の開発ツールがKotlinサポートにおいてIntelliJを超えてしまってユーザーが流れた場合、
JetBrainsにとってKotlinの開発を続けることにもはや意味がなくなってしまう
324デフォルトの名無しさん
2019/02/18(月) 22:58:18.56ID:/oirkxE3 後ろ盾最強はやっぱrust?
325デフォルトの名無しさん
2019/02/18(月) 23:02:22.94ID:3dpq5+94 Goでぇす!
326デフォルトの名無しさん
2019/02/19(火) 08:14:46.86ID:cAOiK8uf 後ろ盾の強さでいったらGoだべ
あれだけの巨大企業がついてる上に、開発も独裁せずに異常なまでにオープンであることを重視してるし
あれだけの巨大企業がついてる上に、開発も独裁せずに異常なまでにオープンであることを重視してるし
327デフォルトの名無しさん
2019/02/19(火) 09:12:17.39ID:D8b3v+Fo328デフォルトの名無しさん
2019/02/19(火) 09:33:24.18ID:cAOiK8uf329デフォルトの名無しさん
2019/02/19(火) 13:20:28.53ID:VQ802aqj goは好きじゃないが>>326の言うことには同意
でもDartちゃんは駄目だから早く眠らせてあげて…
でもDartちゃんは駄目だから早く眠らせてあげて…
330デフォルトの名無しさん
2019/02/19(火) 14:47:06.45ID:dYxLB9sm FlutterがDartじゃなければ一気に覇権を取るまでありえただろうにな
331デフォルトの名無しさん
2019/02/20(水) 14:22:13.38ID:v2qgHXVs Android次期OSの開発言語がDartになるみたいな話どうなったん
332デフォルトの名無しさん
2019/02/20(水) 15:43:28.44ID:YlCEZG7R 夢のOSなので夢で終わる
333デフォルトの名無しさん
2019/02/20(水) 15:54:05.41ID:agArr1lp ダー子
334デフォルトの名無しさん
2019/02/20(水) 16:09:47.41ID:xuurx1V0335デフォルトの名無しさん
2019/02/20(水) 17:27:44.53ID:9tgV50SM Dream → Nightmare
336デフォルトの名無しさん
2019/02/20(水) 19:05:59.81ID:v7iPz90J 夢は見るもの
目標は叶えるもの
目標は叶えるもの
337デフォルトの名無しさん
2019/02/20(水) 19:45:33.26ID:TCqLAjvR 夢を見る島
338デフォルトの名無しさん
2019/02/20(水) 21:47:37.37ID:sBZRwN3G339デフォルトの名無しさん
2019/02/22(金) 04:03:22.89ID:DtR1+6r8 >>334
まじかよダートいらねーじゃん
まじかよダートいらねーじゃん
340デフォルトの名無しさん
2019/02/23(土) 12:08:36.03ID:9pS68leH Котлин
341デフォルトの名無しさん
2019/02/24(日) 12:59:23.23ID:pmK9w2Lp ランキング画面を作っていてRecyclerViewの項目のソートをしたいんですが、
Cellectionをお気に入り数の降順でソートした上で、
タイトルとサブタイトルの昇順にソートするにはどうしたらいいですか
以下でお気に入り数の降順でソートするところまではできたんですが。
RankingDatas.sortedByDescending { it.bookMarkCount }
Cellectionをお気に入り数の降順でソートした上で、
タイトルとサブタイトルの昇順にソートするにはどうしたらいいですか
以下でお気に入り数の降順でソートするところまではできたんですが。
RankingDatas.sortedByDescending { it.bookMarkCount }
342デフォルトの名無しさん
2019/02/24(日) 17:16:45.57ID:DytDvOjA 俺だったらデータを抜いてくる時点でソートをかけて抜いてくる。
343デフォルトの名無しさん
2019/02/24(日) 17:28:12.24ID:pmK9w2Lp APIレスポンスはそうして返してるんですが、
ローカルでお気に入りオンオフしてランキング順位が変わった場合に
再度APIを叩いてデータを取り直すのも微妙なので
その場合はローカルでソートして
順番を入れ替えたいという感じです
ローカルでお気に入りオンオフしてランキング順位が変わった場合に
再度APIを叩いてデータを取り直すのも微妙なので
その場合はローカルでソートして
順番を入れ替えたいという感じです
344デフォルトの名無しさん
2019/02/24(日) 18:25:01.14ID:nlMNXQkf ドキュメントにこう書いてあるからascendingとdescendingを順次呼び出せばいいんじゃない?
The sort is stable. It means that equal elements preserve their order relative to each other after sorting.
呼び出す順序はソート優先順位の逆順で
The sort is stable. It means that equal elements preserve their order relative to each other after sorting.
呼び出す順序はソート優先順位の逆順で
345デフォルトの名無しさん
2019/02/24(日) 20:05:27.33ID:pmK9w2Lp rankingDatas.sortedByDescending { it.bookMarkCount }.sortedBy { it.title }.sortedBy { it.subTitle }
やってみましたが、途中の結果は捨てられて単に subTitle の降順になるようです
やってみましたが、途中の結果は捨てられて単に subTitle の降順になるようです
346デフォルトの名無しさん
2019/02/24(日) 20:26:13.24ID:pmK9w2Lp 昇順か
347デフォルトの名無しさん
2019/02/24(日) 21:01:47.88ID:DSwgvg4z sortedWithつかえ
348デフォルトの名無しさん
2019/02/24(日) 21:07:06.34ID:pmK9w2Lp できましたありがとうございました
349デフォルトの名無しさん
2019/02/25(月) 01:07:00.43ID:EPSsIluE 呼び出す順序はソート優先順位の逆順でと言ったのに伝わらなかったか
350デフォルトの名無しさん
2019/02/25(月) 05:33:03.93ID:D5d9E5fI 「kotlin sort multiple fields」で検索!
351デフォルトの名無しさん
2019/02/26(火) 03:00:37.89ID:lsok3PaS こういうことしたかったのか?
https://code.i-harness.com/ja/q/2388797
https://code.i-harness.com/ja/q/2388797
352デフォルトの名無しさん
2019/02/26(火) 06:27:00.41ID:oQJIDyJZ 久しぶりに触ったらcoroutineがだいぶ変わってるらしくて以前からとりあえず動くけどよく分かってない状態だったのにもう全然分からないよ……(´・ω・`)
353デフォルトの名無しさん
2019/02/26(火) 07:07:49.29ID:UAPWfCGq >>352
とりあえず前知識として「コールバック地獄」について知っておくといいかも
とりあえず前知識として「コールバック地獄」について知っておくといいかも
354デフォルトの名無しさん
2019/02/26(火) 08:39:12.02ID:5k0N70Wq coroutine登場人物多すぎ
355デフォルトの名無しさん
2019/02/26(火) 09:55:03.32ID:E0EMtjG2 え?子ルーチンそんなに変わったの?
356デフォルトの名無しさん
2019/02/26(火) 10:37:15.60ID:UAPWfCGq experimental中は色々変わったけど正式版以降の使い方は基本的に変わってないよ
https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md
https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md
357デフォルトの名無しさん
2019/02/26(火) 12:06:54.02ID:5MxkS3P7 >>351
のリンク先で、数値なら、- で降順にできるのか?
list.sortedWith(compareBy({ -it.age }, { it.name }, { it.address }))
Ruby なら、
arr2 = arr.sort_by { |a| [ -a[:score], a[:room] ] }
のリンク先で、数値なら、- で降順にできるのか?
list.sortedWith(compareBy({ -it.age }, { it.name }, { it.address }))
Ruby なら、
arr2 = arr.sort_by { |a| [ -a[:score], a[:room] ] }
358デフォルトの名無しさん
2019/02/26(火) 18:17:15.84ID:k06atLuF >>357
できる。
できる。
359デフォルトの名無しさん
2019/02/28(木) 03:26:51.88ID:oRFlldUh ま、しかし、複数項目で昇順降順が混在する場合は自分で Comparator 作っちゃった方が楽かもね。
360デフォルトの名無しさん
2019/02/28(木) 07:06:25.14ID:Lh1ejLNL いやいや rankingDatas.sortedBy { it.subTitle }.sortedBy { it.title }.sortedByDescending { it.bookMarkCount } でいいじゃん
361デフォルトの名無しさん
2019/02/28(木) 09:12:21.78ID:sPMvbV7g 直感的でない
362デフォルトの名無しさん
2019/02/28(木) 09:15:13.48ID:UGZ/YaG8 >>360
処理時間3倍かかるよそれ
処理時間3倍かかるよそれ
363デフォルトの名無しさん
2019/02/28(木) 10:37:24.91ID:o8LdAn98364デフォルトの名無しさん
2019/02/28(木) 13:05:23.62ID:oAFMMcaR >>360
それって2番目の並べ替えで1番目の並べ替えの順序が変わらないことは保証されてるの?
それって2番目の並べ替えで1番目の並べ替えの順序が変わらないことは保証されてるの?
365デフォルトの名無しさん
2019/02/28(木) 13:16:03.81ID:TwQuwGRl stable sortだから保証されてる
366デフォルトの名無しさん
2019/02/28(木) 15:53:56.89ID:sPMvbV7g mutableLivedataを外部に公開したら良くないってことで
別途livedataを作ってそいつに参照を持たせて
外部にはlivedataだけ公開するっていうのを
全部のmutableLivedataに対して行うの面倒臭いんですが
なにかいい方法ないですか
別途livedataを作ってそいつに参照を持たせて
外部にはlivedataだけ公開するっていうのを
全部のmutableLivedataに対して行うの面倒臭いんですが
なにかいい方法ないですか
367デフォルトの名無しさん
2019/02/28(木) 19:05:52.26ID:TwQuwGRl よく知らないけどmutableLivedataをコンストラクタで貰って
それを元にlivedataを作って両方保持するクラスでも作って包めばいいんじゃないの
それを元にlivedataを作って両方保持するクラスでも作って包めばいいんじゃないの
368デフォルトの名無しさん
2019/03/01(金) 01:02:08.44ID:8x0yRf06 それで何か解決するんですかね
結局view側からmutableLivedataに
アクセスできるんじゃないですかね
結局view側からmutableLivedataに
アクセスできるんじゃないですかね
369デフォルトの名無しさん
2019/03/01(金) 06:35:34.41ID:eJTnddJA 本当にやり方が思いつかないならもうちょっと経験値の高い先輩なりに相談してみよう
370デフォルトの名無しさん
2019/03/01(金) 08:39:12.55ID:8x0yRf06 分からないならレスしないでください。うざいだけです
371デフォルトの名無しさん
2019/03/01(金) 09:24:26.88ID:ajbNVKsu 動かしてないけどこんな感じ
import android.arch.lifecycle.*
import kotlin.reflect.KProperty
//保持用
fun <T> unmodifiableLiveData(d:LiveData<T>): LiveData<T> = Transformations.map(d){it}
class MutLiveWrap<T>(val lv:MutableLiveData<T>) {
val readonlyLv = unmodifiableLiveData(lv)
operator fun getValue(thisRef: Any?, property: KProperty<*>) = readonlyLv
}
val <T> MutableLiveData<T>.wrap get() = MutLiveWrap<T>(this)
//使用
class Test {
private val aWr = MutableLiveData<Int>().wrap
val a by aWr
fun f(){
val mutLv: MutableLiveData<Int> = this.aWr.lv
val roLv : LiveData<Int> = this.a
}
}
import android.arch.lifecycle.*
import kotlin.reflect.KProperty
//保持用
fun <T> unmodifiableLiveData(d:LiveData<T>): LiveData<T> = Transformations.map(d){it}
class MutLiveWrap<T>(val lv:MutableLiveData<T>) {
val readonlyLv = unmodifiableLiveData(lv)
operator fun getValue(thisRef: Any?, property: KProperty<*>) = readonlyLv
}
val <T> MutableLiveData<T>.wrap get() = MutLiveWrap<T>(this)
//使用
class Test {
private val aWr = MutableLiveData<Int>().wrap
val a by aWr
fun f(){
val mutLv: MutableLiveData<Int> = this.aWr.lv
val roLv : LiveData<Int> = this.a
}
}
372デフォルトの名無しさん
2019/03/01(金) 11:13:31.72ID:PhmT31GH >>370
分かりません。
分かりません。
373デフォルトの名無しさん
2019/03/01(金) 11:44:05.14ID:AdJjcFYH >>370
技術力がないだけじゃなくて人間としても終わってるのな
技術力がないだけじゃなくて人間としても終わってるのな
374デフォルトの名無しさん
2019/03/01(金) 12:41:01.41ID:yZJ4Zkhu 荒らしに返事するな!
そいつは前からいる、荒らしだろ。
相手をすると、この板に居つくだけ!
そいつは前からいる、荒らしだろ。
相手をすると、この板に居つくだけ!
375デフォルトの名無しさん
2019/03/01(金) 12:57:49.73ID:PhmT31GH ま、しかし、このスレの場合は日頃は過疎ってるのでたまに荒しが来てくれた方がスレが活性化して落ちる心配がなくなるなw
376デフォルトの名無しさん
2019/03/01(金) 16:06:36.33ID:XD1TRf4c developer.android.comの最近のページはコードサンプルがKotlinとJava両方載ってるんだね
タブで切り替えるんだけど最初に表示されてるのはKotlin
タブで切り替えるんだけど最初に表示されてるのはKotlin
377デフォルトの名無しさん
2019/03/01(金) 16:54:26.44ID:ae30enpy 俺も動かしてないけどつくってみた
import androidx.annotation.MainThread
import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.Observer
private class ReadOnlyLiveData<T>(private val liveData: LiveData<T>) : LiveData<T>() {
override fun setValue(value: T) { TODO("この関数を呼び出したとき、リードオンリーだから使えないよって教える。") }
override fun postValue(value: T) { TODO("この関数を呼び出したとき、リードオンリーだから使えないよって教える。") }
@MainThread override fun observe(owner: LifecycleOwner, observer: Observer<in T>) { liveData.observe(owner, observer) }
@MainThread override fun observeForever(observer: Observer<in T>) { liveData.observeForever(observer) }
@MainThread override fun removeObserver(observer: Observer<in T>) { liveData.removeObserver(observer) }
@MainThread override fun removeObservers(owner: LifecycleOwner) { liveData.removeObservers(owner) }
override fun getValue(): T? = liveData.value
@SuppressWarnings("WeakerAccess") override fun hasObservers(): Boolean = liveData.hasObservers()
@SuppressWarnings("WeakerAccess") override fun hasActiveObservers(): Boolean = liveData.hasActiveObservers()
}
fun <T> LiveData<T>.readOnly(): LiveData<T> {
if (this is ReadOnlyLiveData<T>) return this // もうすでにリードオンリー
return ReadOnlyLiveData(this)
}
import androidx.annotation.MainThread
import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.Observer
private class ReadOnlyLiveData<T>(private val liveData: LiveData<T>) : LiveData<T>() {
override fun setValue(value: T) { TODO("この関数を呼び出したとき、リードオンリーだから使えないよって教える。") }
override fun postValue(value: T) { TODO("この関数を呼び出したとき、リードオンリーだから使えないよって教える。") }
@MainThread override fun observe(owner: LifecycleOwner, observer: Observer<in T>) { liveData.observe(owner, observer) }
@MainThread override fun observeForever(observer: Observer<in T>) { liveData.observeForever(observer) }
@MainThread override fun removeObserver(observer: Observer<in T>) { liveData.removeObserver(observer) }
@MainThread override fun removeObservers(owner: LifecycleOwner) { liveData.removeObservers(owner) }
override fun getValue(): T? = liveData.value
@SuppressWarnings("WeakerAccess") override fun hasObservers(): Boolean = liveData.hasObservers()
@SuppressWarnings("WeakerAccess") override fun hasActiveObservers(): Boolean = liveData.hasActiveObservers()
}
fun <T> LiveData<T>.readOnly(): LiveData<T> {
if (this is ReadOnlyLiveData<T>) return this // もうすでにリードオンリー
return ReadOnlyLiveData(this)
}
378デフォルトの名無しさん
2019/03/02(土) 06:14:14.54ID:qFBH5IQH >>357
降順と昇順が混在する場合は compareBy または compareByDescending で Comparator 作って
それに対して thenBy または thenByDescending で追加させて行く方が楽だし速いと思う。
降順と昇順が混在する場合は compareBy または compareByDescending で Comparator 作って
それに対して thenBy または thenByDescending で追加させて行く方が楽だし速いと思う。
379デフォルトの名無しさん
2019/03/04(月) 16:04:14.52ID:/4qbaGVQ AnkoでBottom Sheetって使えますか?
380デフォルトの名無しさん
2019/03/08(金) 09:22:28.79ID:Yj0eRJ2i なんか面白い話題ないんかな。。
381デフォルトの名無しさん
2019/03/08(金) 10:46:41.80ID:pv8HlopZ 君が面白くなりなさい。
382デフォルトの名無しさん
2019/03/08(金) 13:24:56.87ID:AzqZJLRD springがフルkotlinになるのはいつ?
383デフォルトの名無しさん
2019/03/08(金) 18:01:21.77ID:rmua+rZ/ Exposed1.0が出るのはいつ?
384デフォルトの名無しさん
2019/03/10(日) 12:52:23.09ID:t+kr7Jdy sequenceってジェネレーターみたいなもの?
385デフォルトの名無しさん
2019/03/10(日) 13:42:04.30ID:56gRJqyl >>384
SequenceはIterableとほぼ同じ
違いは
Sequence: 遅延評価する (なのでジェネレーターも含む)
Iterable: 基本的には遅延評価でない (通常、実体はコレクション)
拡張関数も別れていて、例えば
Sequenceのmap は遅延評価するSequenceを返す
Iterableのmap はその場で全要素を処理してListを返す
SequenceはIterableとほぼ同じ
違いは
Sequence: 遅延評価する (なのでジェネレーターも含む)
Iterable: 基本的には遅延評価でない (通常、実体はコレクション)
拡張関数も別れていて、例えば
Sequenceのmap は遅延評価するSequenceを返す
Iterableのmap はその場で全要素を処理してListを返す
386デフォルトの名無しさん
2019/03/11(月) 00:27:22.19ID:+Nlo5Elt ずばり説明が書いてあるページを発見した。
KotlinのListとSequenceって何が違うの?
https://qiita.com/KirariGlock/items/9aa251a44c11900c8b5f
KotlinのListとSequenceって何が違うの?
https://qiita.com/KirariGlock/items/9aa251a44c11900c8b5f
387デフォルトの名無しさん
2019/03/11(月) 07:22:41.11ID:0boP2QX3 うんこは最後に出す方法
388デフォルトの名無しさん
2019/03/11(月) 17:24:32.47ID:2ppgAkG/ げ、知らなかった。
ずっとIterableがStreamの代わりだとばかり。
PythonのSequenceと混同してた。
ならば、Iterableをあそこまでゴージャスにする必要があったのか?
ずっとIterableがStreamの代わりだとばかり。
PythonのSequenceと混同してた。
ならば、Iterableをあそこまでゴージャスにする必要があったのか?
389デフォルトの名無しさん
2019/03/11(月) 18:33:50.09ID:JQuKUcCl 誰かの趣味だよきっと
390デフォルトの名無しさん
2019/03/11(月) 18:35:48.60ID:oxE6wZ/Z >>388
典型的なコレクション操作では遅延評価せずその場で全処理する方が早いため
意味付けが違うだけで、SequenceとIterableは同じ拡張関数を持ってるくらいの認識でOK
分かりやすさのため、あえて使い分けを用意しなかった
Javaの割り切り方もありだとは思うけどね
典型的なコレクション操作では遅延評価せずその場で全処理する方が早いため
意味付けが違うだけで、SequenceとIterableは同じ拡張関数を持ってるくらいの認識でOK
分かりやすさのため、あえて使い分けを用意しなかった
Javaの割り切り方もありだとは思うけどね
391デフォルトの名無しさん
2019/03/11(月) 21:05:48.78ID:MDT71nit SequenceはJava8のStreamと類似で、KotlinであえてStreamを使うべき機会はほとんどないからSequenceを使っておけば良いってことかな
392デフォルトの名無しさん
2019/03/11(月) 23:18:53.36ID:+cXkYAGY そしてSequenceって変数にぶち込んで使いまわせなかったっけ?
393デフォルトの名無しさん
2019/03/12(火) 01:11:15.05ID:WllyGH1o partitionのSequence版が無くて自作したわ
groupingByも遅延評価だけど使い方がむずい(毎回リファレンス読み直す)
groupingByも遅延評価だけど使い方がむずい(毎回リファレンス読み直す)
394デフォルトの名無しさん
2019/03/12(火) 08:13:05.73ID:z/76z4zm395デフォルトの名無しさん
2019/03/12(火) 12:54:36.68ID:6Uu2j9Xc kotlin推しがgoを推薦
https://www.youtube.com/watch?v=KGzoE6z7ojk
https://www.youtube.com/watch?v=KGzoE6z7ojk
396デフォルトの名無しさん
2019/03/12(火) 14:55:36.01ID:7iAawGvK python,go,kotlin全部推してるやん
397デフォルトの名無しさん
2019/03/12(火) 15:14:48.22ID:iD2RJper398デフォルトの名無しさん
2019/03/12(火) 15:56:40.12ID:7iAawGvK >>397
そうか。すまん
そうか。すまん
399デフォルトの名無しさん
2019/03/16(土) 11:53:34.93ID:28C0KCt9 そもそもなんの権威でもないやろこの人
400デフォルトの名無しさん
2019/03/16(土) 13:53:25.25ID:jFsymRCD 坊やだからさ
401デフォルトの名無しさん
2019/03/16(土) 16:06:54.74ID:ksQagb59 俺が Kotlin 押しビデオ作って公開すればいいのか?
しかし Kotlin 初心者なので「いいですよ〜。最高ですよ〜」などと情緒に訴えて見ている側を洗脳しようとすることぐらいしかできない。
しかし Kotlin 初心者なので「いいですよ〜。最高ですよ〜」などと情緒に訴えて見ている側を洗脳しようとすることぐらいしかできない。
402デフォルトの名無しさん
2019/03/16(土) 16:14:10.50ID:YxxaJZky403デフォルトの名無しさん
2019/03/16(土) 16:20:48.33ID:28C0KCt9 まぁでも、kotlin go あたりが推奨されるのはわかるけどな
今更phpとかおすよりかは説得力ある
今更phpとかおすよりかは説得力ある
404デフォルトの名無しさん
2019/03/16(土) 17:20:10.49ID:ksQagb59405デフォルトの名無しさん
2019/03/16(土) 17:27:02.08ID:ksQagb59 やっぱこれも必要だろうな。
https://imgur.com/b5zh9pa
https://imgur.com/b5zh9pa
406デフォルトの名無しさん
2019/03/16(土) 17:28:59.66ID:ksQagb59 既にどこの国の誰だか知らんが絵を作っている人はいた。
https://imgur.com/gallery/dIvW5Sh
https://imgur.com/gallery/dIvW5Sh
407デフォルトの名無しさん
2019/03/17(日) 18:08:41.49ID:fOPvRjrc PreferenceFragmentが非推奨になる
↓
代わりにandroidx.preference liblary使えって言われる
↓
日本語のガイドに説明なし
適当すぎんだろイライラ
↓
代わりにandroidx.preference liblary使えって言われる
↓
日本語のガイドに説明なし
適当すぎんだろイライラ
408デフォルトの名無しさん
2019/03/17(日) 21:15:53.12ID:t+AGMGYK あんま関係ないけどmavenのkotlinプラグインで増分コンパイルされないのって仕様?
409デフォルトの名無しさん
2019/03/18(月) 09:41:08.53ID:7YQXcQeA >>407
ドキュメント読めば書いてあるし問題なくね?
ドキュメント読めば書いてあるし問題なくね?
410デフォルトの名無しさん
2019/03/18(月) 17:50:47.00ID:VkTfSOi0 >>407
本気で言うけど、公式ドキュメント程度の英語は頑張って読んだ方がいいと思うよ。
本気で言うけど、公式ドキュメント程度の英語は頑張って読んだ方がいいと思うよ。
411デフォルトの名無しさん
2019/03/18(月) 19:24:24.40ID:6b7FslP4 まぁAndroidの公式リファレンスは言語切替をシステム化してるから
ドキュメントのバージョンが不一致なら警告表示するくらいすればいいのにとは思う
iOSの方は英語以外バッサリ切り捨ててる(最新は英語読めと明示してある)から
中途半端に惑わされることは無い
ドキュメントのバージョンが不一致なら警告表示するくらいすればいいのにとは思う
iOSの方は英語以外バッサリ切り捨ててる(最新は英語読めと明示してある)から
中途半端に惑わされることは無い
412デフォルトの名無しさん
2019/03/18(月) 20:47:50.90ID:1gtRswz3413デフォルトの名無しさん
2019/03/19(火) 03:22:14.95ID:j5JxWPYN もっと可愛い名前にすれば良かったのに
swiftみたいな
swiftみたいな
414デフォルトの名無しさん
2019/03/19(火) 03:33:14.71ID:EnTGEExM 古都リンちゃん
415デフォルトの名無しさん
2019/03/19(火) 10:04:27.55ID:InXhSaoV >>409
日本語でしか表示されないんだが
日本語でしか表示されないんだが
416デフォルトの名無しさん
2019/03/19(火) 10:51:32.88ID:STa9vfc0 >>415
ページ一番下に言語切替がある
リファレンスページでは正常に切り替わらないことがあるからトップページで切り換えた方がいい
https://developer.android.com/
もしくはURLに言語を英語にする「?hl=en」を付ける
https://developer.android.com/guide/topics/ui/settings.html?hl=en
日本語の方はAndroidXの記述が無いな
https://developer.android.com/guide/topics/ui/settings.html?hl=ja
ページ一番下に言語切替がある
リファレンスページでは正常に切り替わらないことがあるからトップページで切り換えた方がいい
https://developer.android.com/
もしくはURLに言語を英語にする「?hl=en」を付ける
https://developer.android.com/guide/topics/ui/settings.html?hl=en
日本語の方はAndroidXの記述が無いな
https://developer.android.com/guide/topics/ui/settings.html?hl=ja
417デフォルトの名無しさん
2019/03/19(火) 12:07:55.88ID:t/u/FScK Androidは公式で日本語ドキュメントあるのか
Kotlinのドキュメントは有志がやってたけどもうメンテしてないよな
Kotlinのドキュメントは有志がやってたけどもうメンテしてないよな
418デフォルトの名無しさん
2019/03/19(火) 12:30:24.38ID:BI7+7Q7/ 君がやってくれ。たのんだぞ。
419デフォルトの名無しさん
2019/03/19(火) 14:20:51.95ID:3khslMEX Kotlin in actionとどっちの方がいいんだ
420デフォルトの名無しさん
2019/03/19(火) 15:10:03.68ID:TG1sbbZQ >>416
丁寧にすまんな……
丁寧にすまんな……
421デフォルトの名無しさん
2019/03/19(火) 17:12:09.49ID:7p2/yAlP >>417
公式日本語ドキュメントは更新が遅いから読まない方がいいぞ
公式日本語ドキュメントは更新が遅いから読まない方がいいぞ
422デフォルトの名無しさん
2019/03/19(火) 17:54:02.89ID:qahjbQKM kotlin native応援してるんだけど何が一番貢献になるんやろか?
翻訳とか細かなライブラリ作ったりくらいなら時間かければできそうなんやけど、難しいことはできん。
やっぱ募金とかなんか?
翻訳とか細かなライブラリ作ったりくらいなら時間かければできそうなんやけど、難しいことはできん。
やっぱ募金とかなんか?
423デフォルトの名無しさん
2019/03/19(火) 18:07:06.75ID:VCt0hAH/424デフォルトの名無しさん
2019/03/19(火) 18:12:21.52ID:STa9vfc0 >>422
とりあえず公式リポジトリのスターとfork数増やして
kotlin nativeであることをアピールしたライブラリ作ればいいのでは
ただ、現時点ではパフォーマンスが残念だからお勧めしない
出来ることが違うとはいえ、ロジック部分は
JVMどころかKotlin/JS経由のnodeで動かすのより7〜10倍くらい遅い
まだコンパイラの最適化をやってないのは救いだけど
俺はARC with cycle collectorがスループット下げてる可能性を気にしてる
もしそうなら最適化やっても思うほど改善しないんじゃないかと
とりあえず公式リポジトリのスターとfork数増やして
kotlin nativeであることをアピールしたライブラリ作ればいいのでは
ただ、現時点ではパフォーマンスが残念だからお勧めしない
出来ることが違うとはいえ、ロジック部分は
JVMどころかKotlin/JS経由のnodeで動かすのより7〜10倍くらい遅い
まだコンパイラの最適化をやってないのは救いだけど
俺はARC with cycle collectorがスループット下げてる可能性を気にしてる
もしそうなら最適化やっても思うほど改善しないんじゃないかと
425デフォルトの名無しさん
2019/03/20(水) 08:09:47.58ID:vnEhpOgU JSとかnativeとかどうでもええ。
いろいろ変更予定のあるJVMとAndroid対応だけしっかりやれや。
いろいろ変更予定のあるJVMとAndroid対応だけしっかりやれや。
426デフォルトの名無しさん
2019/03/20(水) 09:36:36.87ID:bT3jH/zR JetBrainsの業績そんなに悪くないしむしろ伸びてるはずだけど
427デフォルトの名無しさん
2019/03/20(水) 13:58:35.52ID:uYHRW+dq とりあえずgitとintellijの更新はしとく。
作るとしたら何系のライブラリがいいと思う?
作るとしたら何系のライブラリがいいと思う?
428デフォルトの名無しさん
2019/03/20(水) 14:21:09.73ID:wkbxcvwm429デフォルトの名無しさん
2019/03/20(水) 15:39:59.54ID:uYHRW+dq なるほど。何に思い入れがあったか思い出してくるわ。
ありがと
ありがと
430デフォルトの名無しさん
2019/03/20(水) 17:00:17.12ID:BuSIOCAA むしろMicrosoftのほうが糞
431デフォルトの名無しさん
2019/03/20(水) 20:08:58.41ID:TxjggMxz >>423
ならライセンス買おうよ。
ならライセンス買おうよ。
432デフォルトの名無しさん
2019/03/20(水) 20:09:44.23ID:kvLAmSD0 そういえばXamarinネタ見なくなったな
433デフォルトの名無しさん
2019/03/20(水) 21:34:30.03ID:/gKFWWq8 >>432
まあ知ってる人はごくわずかだから話題にしたくても出来る人はいないだろう。
まあ知ってる人はごくわずかだから話題にしたくても出来る人はいないだろう。
434デフォルトの名無しさん
2019/03/22(金) 15:40:33.53ID:L3xU9+dS 即荒しが何か書いてスレが活性化するかと思ったら完全に無反応。本当に少数なったのだな。合掌。
435デフォルトの名無しさん
2019/03/23(土) 14:14:54.18ID:Bvojjkpo Kotlin そのものの質問ではないがこのスレの方が分かる人が多いような気がするのでここに書き込む。
IntelliJ IDEA で Kotlin のプロジェクトを作ってその src フォルダで 〜.kt を一つ作ってそこに main() が
あるだけなら良いんだけど、もう一つ 〜.kt を作ってそこにも main() を作って、それぞれを別々に動かす
ということはできないのかな? どうやらそのままではできないようで、そのままやろうとすると個別にコンパイル
しようとしても同じ関数があると衝突してエラーになる。(最初に登録した方のソースは大丈夫。2番目に
登録した方の 〜.kt ファイルのコンパイルでエラー)。
こういう使い方は想定されていないんだろうか? しかしこれができないと小さいプログラムが沢山あるような
プロジェクトは作れなくて個別に沢山のプロジェクトを作らねばならなくなる。仮にそういう風にしかできない
んだとしてもそれならばプロジェクトを束ねるようなその上位の何かは作れないのか?でないと同じ階層に
プロジェクトが沢山作られてしまい非常に使い辛い。
IntelliJ IDEA で Kotlin のプロジェクトを作ってその src フォルダで 〜.kt を一つ作ってそこに main() が
あるだけなら良いんだけど、もう一つ 〜.kt を作ってそこにも main() を作って、それぞれを別々に動かす
ということはできないのかな? どうやらそのままではできないようで、そのままやろうとすると個別にコンパイル
しようとしても同じ関数があると衝突してエラーになる。(最初に登録した方のソースは大丈夫。2番目に
登録した方の 〜.kt ファイルのコンパイルでエラー)。
こういう使い方は想定されていないんだろうか? しかしこれができないと小さいプログラムが沢山あるような
プロジェクトは作れなくて個別に沢山のプロジェクトを作らねばならなくなる。仮にそういう風にしかできない
んだとしてもそれならばプロジェクトを束ねるようなその上位の何かは作れないのか?でないと同じ階層に
プロジェクトが沢山作られてしまい非常に使い辛い。
436デフォルトの名無しさん
2019/03/23(土) 15:19:26.37ID:HXMNak6o >>435
トップレベルのmain()が名前空間で衝突しているからコンパイルエラーになると思われる。
class MyApp {
companion object {
@JvmStatic fun main(args: Array<String>) {
のような書き出しでエントリーポイントを作ることも出来ますが、そういった方法では解決できませんでしょうか。
トップレベルのmain()が名前空間で衝突しているからコンパイルエラーになると思われる。
class MyApp {
companion object {
@JvmStatic fun main(args: Array<String>) {
のような書き出しでエントリーポイントを作ることも出来ますが、そういった方法では解決できませんでしょうか。
437デフォルトの名無しさん
2019/03/23(土) 15:24:44.47ID:UK/ZLX81 >>435
A.kt に書けば AKt.class が、B.kt に書けば BKt.class が生成されるので
JvmNameとかpackage指定と合わないフォルダ下で名前衝突させたりしない限り
普通は衝突しないはずだけど
A.kt に書けば AKt.class が、B.kt に書けば BKt.class が生成されるので
JvmNameとかpackage指定と合わないフォルダ下で名前衝突させたりしない限り
普通は衝突しないはずだけど
438デフォルトの名無しさん
2019/03/23(土) 15:28:37.98ID:Bvojjkpo >>436
どうもありがとう。
同じ関数がなければ main() がファイルごとにあっても大丈夫なことがわかった。
実行する時は main() の行頭の左側に出ている ? マークをマウスでクリックして実行またはデバッグすれば実行できた。
どうもありがとう。
同じ関数がなければ main() がファイルごとにあっても大丈夫なことがわかった。
実行する時は main() の行頭の左側に出ている ? マークをマウスでクリックして実行またはデバッグすれば実行できた。
439デフォルトの名無しさん
2019/03/23(土) 15:29:46.08ID:Bvojjkpo >>437
ああ。package 付ける方法もあるな。試してないけどそれでもできそう。
ああ。package 付ける方法もあるな。試してないけどそれでもできそう。
440デフォルトの名無しさん
2019/03/23(土) 15:34:11.63ID:Bvojjkpo441デフォルトの名無しさん
2019/03/23(土) 15:38:27.73ID:UK/ZLX81 いや、437はpackageが同じでもファイル名が別なら衝突しないという話だよ
442デフォルトの名無しさん
2019/03/23(土) 18:56:11.23ID:Bvojjkpo >>441
package が同じというのは2ファイルが package 指定なしの時と同じだよね?
それだとダメだったんだよね。IntelliJ がどういう風にコンパイルしているかの問題だろうけど。
package が同じというのは2ファイルが package 指定なしの時と同じだよね?
それだとダメだったんだよね。IntelliJ がどういう風にコンパイルしているかの問題だろうけど。
443デフォルトの名無しさん
2019/03/23(土) 18:58:25.76ID:z3jdsP7r さすがにスレチ
444デフォルトの名無しさん
2019/03/23(土) 19:07:58.43ID:Bvojjkpo すまん。
445デフォルトの名無しさん
2019/03/23(土) 19:29:18.72ID:UK/ZLX81446デフォルトの名無しさん
2019/03/23(土) 20:07:45.61ID:UK/ZLX81 >>442
ああごめん435読み直したら、衝突したのはmainじゃなくて「同じ関数」なのね
対応方法としてはmain以外をprivate funにする,
classまたはcompanion objectまたはobjectに入れる
A.kt, B.kt
-----
fun main(){
a()
f.a2()
}
private fun a(){}
private val f = object {
fun a2(){}
}
ああごめん435読み直したら、衝突したのはmainじゃなくて「同じ関数」なのね
対応方法としてはmain以外をprivate funにする,
classまたはcompanion objectまたはobjectに入れる
A.kt, B.kt
-----
fun main(){
a()
f.a2()
}
private fun a(){}
private val f = object {
fun a2(){}
}
448デフォルトの名無しさん
2019/03/26(火) 10:19:16.34ID:E1WCPVyW Kotlin/Nativeが遅い原因を逆アセンブルして調べてたらこの記事にたどり着いた
https://soywiz.com/kpspemu-kn09/
UpdateReturnRefやLeaveFrameのコストが重すぎる
1.3.20時点ではリリースビルドでも最適化はされていない
https://soywiz.com/kpspemu-kn09/
UpdateReturnRefやLeaveFrameのコストが重すぎる
1.3.20時点ではリリースビルドでも最適化はされていない
449デフォルトの名無しさん
2019/03/26(火) 19:23:47.37ID:NbUyZWCM 誰でも頭が良くなる、プログラムが書けるようになる方法が発見される 56097
https://you-can-program.hatenablog.jp
https://you-can-program.hatenablog.jp
450デフォルトの名無しさん
2019/03/26(火) 21:38:27.76ID:PDyA3k9g451デフォルトの名無しさん
2019/03/26(火) 21:40:50.59ID:PDyA3k9g ていうか既にプログラム書ける人ばかり来てるであろうスレでそんなの書かれても効果を実感できるやつはほとんど居ないだろうなあ。
452デフォルトの名無しさん
2019/03/26(火) 21:53:14.49ID:hJyrjtJ9453デフォルトの名無しさん
2019/03/29(金) 20:35:19.53ID:abJt4WgD 今日Kotlin入門しサクッと文法をやった程度のものですがAndroidプログラミングの学習リソースを探しています
JavaでのAndroidプログラミング経験はありません
JavaでのAndroidプログラミング経験はありません
454デフォルトの名無しさん
2019/03/29(金) 20:41:29.42ID:KqjpTu4V 今日やっていきなりかよ!
もうちょっとKotlin単体で粘れよ!他にやることあるだろ!
もうちょっとKotlin単体で粘れよ!他にやることあるだろ!
455デフォルトの名無しさん
2019/03/29(金) 21:25:55.21ID:Jv6E4VJb456デフォルトの名無しさん
2019/03/29(金) 21:34:48.88ID:wVkKBlg0457デフォルトの名無しさん
2019/03/30(土) 06:03:17.66ID:145z6i/c ぼくなんかJavaちょっとかじっただけでAndroidに挑戦しちゃったわ
あの時はActivityがクラスな事すら分からずにテキスト見てその通り書いてたな……😅
あの時はActivityがクラスな事すら分からずにテキスト見てその通り書いてたな……😅
458デフォルトの名無しさん
2019/03/30(土) 13:35:02.89ID:M1S6T7Ca Rってなんですか?とか<T>ってなんですか?とかでぜひ挫折して欲しい
459デフォルトの名無しさん
2019/03/30(土) 15:12:50.70ID:b12H3n9S 挫折するような人はRとは?とか<T>とは?なんてこと考えたりしない
460デフォルトの名無しさん
2019/03/30(土) 15:38:23.64ID:bfZyzxOj461デフォルトの名無しさん
2019/03/30(土) 20:04:51.02ID:5DG6z16F RもTも知らんけど、コピペで動いてるからそれでいい
適当にやれば動く
Rが赤いときは、大抵xmlの打ち間違い
T?知らん
適当にやれば動く
Rが赤いときは、大抵xmlの打ち間違い
T?知らん
462デフォルトの名無しさん
2019/04/01(月) 00:45:49.25ID:Th3XB2nz だいたいあってるw
463デフォルトの名無しさん
2019/04/01(月) 01:50:31.93ID://wZRuJn reifiedつよいよな
464デフォルトの名無しさん
2019/04/01(月) 09:38:57.10ID:Fy4OwQz+ 発音が難しいよね
465デフォルトの名無しさん
2019/04/01(月) 16:18:36.04ID:yssFrFp/ コトリンのジェネリクスのTってC#のdefaut(T)みたいなのある?
466デフォルトの名無しさん
2019/04/01(月) 17:10:11.92ID:Tc5+6fel 俺はC#を知らない
467デフォルトの名無しさん
2019/04/01(月) 18:32:35.54ID://wZRuJn ない
csはint x=defaultってかけるみたいだけどkotlinは明示的に0で初期化しなきゃいけない
他の型でも同じ
csはint x=defaultってかけるみたいだけどkotlinは明示的に0で初期化しなきゃいけない
他の型でも同じ
468デフォルトの名無しさん
2019/04/01(月) 19:41:02.24ID:no59bRT+ C#のdefaultは単なるシンタックスシュガーじゃなくて、実行時に型引数に応じた適切な値を生成してくれる機能
JavaやKotlinのハリボテジェネリクスでは原理的に不可能
JavaやKotlinのハリボテジェネリクスでは原理的に不可能
469デフォルトの名無しさん
2019/04/01(月) 21:02:06.63ID:jyzymMUT やりたくなったことは何度かある
470デフォルトの名無しさん
2019/04/02(火) 01:27:31.42ID:imTVpGqL default(T)ないのか・・・
こうしてみたけど何か改良点ある?
例外時にnullも返せないし例外時に返すためだけに引数にt入れてるんだが・・・
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import com.fasterxml.jackson.module.kotlin.readValue
class SJson {
companion object {
inline fun <reified T> toObject(json: String, t: T): T {
val mapper = jacksonObjectMapper()
try {
val obj = mapper.readValue<T>(json)
return obj
} catch (e: Exception) {
SLog.e(e.message.toString())
return t
}
}
}
}
こうしてみたけど何か改良点ある?
例外時にnullも返せないし例外時に返すためだけに引数にt入れてるんだが・・・
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import com.fasterxml.jackson.module.kotlin.readValue
class SJson {
companion object {
inline fun <reified T> toObject(json: String, t: T): T {
val mapper = jacksonObjectMapper()
try {
val obj = mapper.readValue<T>(json)
return obj
} catch (e: Exception) {
SLog.e(e.message.toString())
return t
}
}
}
}
471デフォルトの名無しさん
2019/04/02(火) 07:53:18.35ID:JAcM/MrS >>470
単にnullを返したいということなら戻り値を T? にすればいい
単にnullを返したいということなら戻り値を T? にすればいい
472デフォルトの名無しさん
2019/04/02(火) 08:46:54.35ID:e4jQj1uZ ObjectMapper って使い回してよかったと思う
473デフォルトの名無しさん
2019/04/02(火) 09:36:52.02ID:imTVpGqL474デフォルトの名無しさん
2019/04/12(金) 13:13:10.63ID:EBXnKzt9 Kotlin 1.3.30 released
https://blog.jetbrains.com/kotlin/2019/04/kotlin-1-3-30-released/
KAPT関連の機能追加など
符号無し整数配列の機能追加など
Kotlin/Native
mingw_x86サポート
CocoaPodsとの実験的統合機能
C相互運用改善
他
https://blog.jetbrains.com/kotlin/2019/04/kotlin-1-3-30-released/
KAPT関連の機能追加など
符号無し整数配列の機能追加など
Kotlin/Native
mingw_x86サポート
CocoaPodsとの実験的統合機能
C相互運用改善
他
475デフォルトの名無しさん
2019/04/12(金) 23:07:21.58ID:JX4xskgO githubのrelease読んだけどめちゃくちゃ多かったな
476デフォルトの名無しさん
2019/04/13(土) 02:06:40.85ID:hw3Eyeqa ここからだとまだ 1.3.21 のままだね。
https://kotlinlang.org/docs/tutorials/command-line.html
IntelliJ だと 1.3.30 にアップデートできたけど。
https://kotlinlang.org/docs/tutorials/command-line.html
IntelliJ だと 1.3.30 にアップデートできたけど。
477デフォルトの名無しさん
2019/04/13(土) 02:22:02.28ID:hw3Eyeqa あれ? UInt 型の変数を String.format() で指定する時はどうするのかな?
%d は駄目だし。toString() してから %s 使えってか?
%d は駄目だし。toString() してから %s 使えってか?
478デフォルトの名無しさん
2019/04/13(土) 09:53:18.70ID:oqNH9LQH >>477
そのまま%sでも使えるけどString.formatはそもそもKotlinでなく
Javaの機能(=Kotlin/JVM以外で使用不可)なので
単純な書式ならString Template使った方がいいよ
val n = 100u
println( "n=${n}" )
そのまま%sでも使えるけどString.formatはそもそもKotlinでなく
Javaの機能(=Kotlin/JVM以外で使用不可)なので
単純な書式ならString Template使った方がいいよ
val n = 100u
println( "n=${n}" )
479デフォルトの名無しさん
2019/04/14(日) 20:07:14.86ID:JuY/4ckm UInt に関しては toLong() しちゃえば良いだけだと後で気づいたが、ULong の方はどうもならんね。
ULong.MAX_VALUE と Long.MAX_VALUE は10進数だと20桁と19桁で1桁違うので桁を考慮したフォーマットはこれを考慮する必要がある。
%20d とか %020d と書いても ULong については分かってくれないので自作する必要がある。
ULong.MAX_VALUE と Long.MAX_VALUE は10進数だと20桁と19桁で1桁違うので桁を考慮したフォーマットはこれを考慮する必要がある。
%20d とか %020d と書いても ULong については分かってくれないので自作する必要がある。
480デフォルトの名無しさん
2019/04/15(月) 01:34:29.54ID:PzbTbQ3M C#みたく${}内でフォーマットが使えれば一番なんだけどね…
481デフォルトの名無しさん
2019/04/15(月) 17:43:26.97ID:3BglWTch 要望出せばそのうち出来るようになりそう
482デフォルトの名無しさん
2019/04/19(金) 12:18:20.68ID:je8e8yU3 OracleJDK有料化でますますKotlin人口が増えるな
483デフォルトの名無しさん
2019/04/19(金) 13:16:58.17ID:oa1dttvK たしかASにjavaからkotlin変換がなかったっけ
あれで全て解決するような気がするんだけど
あれで全て解決するような気がするんだけど
484デフォルトの名無しさん
2019/04/19(金) 14:47:33.44ID:Z5+6w9VM jdk有料化とかで騒いでいる奴いるけど
彼らにとってoraclejdkが唯一のjdkなのかな
彼らにとってoraclejdkが唯一のjdkなのかな
485デフォルトの名無しさん
2019/04/19(金) 14:57:46.07ID:/crv8Bf3486デフォルトの名無しさん
2019/04/19(金) 17:40:48.18ID:xQzUZ1Zh JDK有償化の話は何ら騒ぐようなことじゃなかったのに
Oracleの説明が手抜きだったからああなった
あとOpenJDK公式サイトの構成が酷く大部分がメンテされてないもの原因の一つ
例えば Groups > Adoption > Wiki > Adopt OpenJDK
Oracleの説明が手抜きだったからああなった
あとOpenJDK公式サイトの構成が酷く大部分がメンテされてないもの原因の一つ
例えば Groups > Adoption > Wiki > Adopt OpenJDK
487デフォルトの名無しさん
2019/04/19(金) 17:46:39.55ID:xQzUZ1Zh サイト管理者が違うんだろうけど
AdoptOpenJDKへのリンクをトップに置いとけばいいのに
OpenJDKのビルドインフラのメンバーが運用してるんだから
AdoptOpenJDKへのリンクをトップに置いとけばいいのに
OpenJDKのビルドインフラのメンバーが運用してるんだから
488デフォルトの名無しさん
2019/04/19(金) 21:41:56.97ID:oXduz3ip うちはAWSのやつに順次置き換えてるわ、名前が覚えにくいけど
489デフォルトの名無しさん
2019/04/19(金) 21:50:42.00ID:aAzLpfHC なによりJakartaEEが無能すぎる
490デフォルトの名無しさん
2019/04/19(金) 22:34:55.70ID:hY3XsNGB そこでjblendですよ
491デフォルトの名無しさん
2019/04/20(土) 09:53:47.54ID:IaSD8GNU >>453
おぉー同士。
当方、Visual Basicアプリ、iOSアプリの経験はあるが、Android経験ゼロです。
どうやらAndroidManifest.xmlに記載のActivityがプログラムのエントリーポイントだと解った所。
iOSとの比較で言えば、
Activity = ViewController,
wedgit = View,
Fragment = Container ViewController
AppDelegate = Application
って感じらしい。
おぉー同士。
当方、Visual Basicアプリ、iOSアプリの経験はあるが、Android経験ゼロです。
どうやらAndroidManifest.xmlに記載のActivityがプログラムのエントリーポイントだと解った所。
iOSとの比較で言えば、
Activity = ViewController,
wedgit = View,
Fragment = Container ViewController
AppDelegate = Application
って感じらしい。
492デフォルトの名無しさん
2019/04/20(土) 11:40:44.23ID:IaSD8GNU >>491
ちょいと違うかも!
Fragment = custom wedgit(user defined wedgit)
みたいだな。
さて、Java, Kotlin初心者なので、両者のコードの対応表が欲しいところだ。
ちょいと違うかも!
Fragment = custom wedgit(user defined wedgit)
みたいだな。
さて、Java, Kotlin初心者なので、両者のコードの対応表が欲しいところだ。
493デフォルトの名無しさん
2019/04/20(土) 11:43:32.64ID:IaSD8GNU >>492
>Java, Kotlin
Overview of Kotlin and Comparison Between Kotlin and Java
https://www.xenonstack.com/blog/overview-kotlin-comparison-kotlin-java/
>Java, Kotlin
Overview of Kotlin and Comparison Between Kotlin and Java
https://www.xenonstack.com/blog/overview-kotlin-comparison-kotlin-java/
494デフォルトの名無しさん
2019/04/20(土) 13:32:39.16ID:IaSD8GNU495デフォルトの名無しさん
2019/04/21(日) 13:29:56.22ID:9kZK6Cbt macOS Mojave 10.14.2
Android Studio 3.4
環境でBasic Activity Project作ってHello World表示するまで、かれこれ2hr費やした。
ハマりポイント
1. Gradle project sync failed. Basic functionality will not work properly.▶resolved with installing JDK 8u212
2. No Module Specified▶ガチャガチャやって解決。
Android Studio 3.4
環境でBasic Activity Project作ってHello World表示するまで、かれこれ2hr費やした。
ハマりポイント
1. Gradle project sync failed. Basic functionality will not work properly.▶resolved with installing JDK 8u212
2. No Module Specified▶ガチャガチャやって解決。
496デフォルトの名無しさん
2019/04/21(日) 13:36:48.96ID:9kZK6Cbt ところでGradleって何だ?
daemonとして動いてファイルの変更を監視するmakeコマンドみたいなものか?
今、Gradle sync failed問題で困ってる。
新しくプロジェクト作ったら、Gradle sync failedってエラー吐いて、新規にapkってかModuleを作れない。なぜ??
daemonとして動いてファイルの変更を監視するmakeコマンドみたいなものか?
今、Gradle sync failed問題で困ってる。
新しくプロジェクト作ったら、Gradle sync failedってエラー吐いて、新規にapkってかModuleを作れない。なぜ??
497デフォルトの名無しさん
2019/04/21(日) 13:52:47.18ID:qy+VhZ5w >>496
何かというのはググってどうぞ
Gradle sync failed は Android Studio側の問題 (おそらくbuild.gradle生成処理の問題)
必要なライブラリのダウンロードが終わってないと発生するような印象
Android Studioを再起動してプロジェクトを新規作成しなおすとエラーが無くなったりする
何かというのはググってどうぞ
Gradle sync failed は Android Studio側の問題 (おそらくbuild.gradle生成処理の問題)
必要なライブラリのダウンロードが終わってないと発生するような印象
Android Studioを再起動してプロジェクトを新規作成しなおすとエラーが無くなったりする
498デフォルトの名無しさん
2019/04/21(日) 14:11:36.76ID:Jrx6sgEL gradle嫌い。
完全オフラインで開発作業したいのに、
ちょっとした事でネットアクセスを要求してくる。
完全オフラインで開発作業したいのに、
ちょっとした事でネットアクセスを要求してくる。
499デフォルトの名無しさん
2019/04/21(日) 14:14:25.40ID:RKX/L/5n GradleKotlinDSL使ってるけど情報少なすぎてハマるからオススメしない
500デフォルトの名無しさん
2019/04/21(日) 15:35:20.45ID:9kZK6Cbt >>497
AndroidStudio3.4(17 April 2019)には問題ありと判断して、3.2へdegradeしてみた。
Gradle sync failed issueは初回Studio起動時に発生するも、指示に従って、build toolの最新版をinstallしてみた。
その後は3.2では問題発生せず!
ちなみに3.3はArchiveに発見できず。September 2018のAndroidStudioだが、まあ、良いんじゃ無いかぁ。
AndroidStudio3.4(17 April 2019)には問題ありと判断して、3.2へdegradeしてみた。
Gradle sync failed issueは初回Studio起動時に発生するも、指示に従って、build toolの最新版をinstallしてみた。
その後は3.2では問題発生せず!
ちなみに3.3はArchiveに発見できず。September 2018のAndroidStudioだが、まあ、良いんじゃ無いかぁ。
501デフォルトの名無しさん
2019/04/21(日) 15:53:07.87ID:9kZK6Cbt くっそ!
AndroidStudio3.3は、English pageにあるのかぁ。
日本語ページに無いなんて!
どうやら、日本は置いてけぼりって事だ。
AndroidStudio3.3は、English pageにあるのかぁ。
日本語ページに無いなんて!
どうやら、日本は置いてけぼりって事だ。
502デフォルトの名無しさん
2019/04/21(日) 16:45:42.90ID:9kZK6Cbt AndroidStudio3.4
AndroidStudio3.2
AndroidStudio3.3.2
の順で試してみた。Mojave 10.14.3で。
Gradle sync failedが発生しないのは、3.2だった。
3.3.2, 3.4は発生する。
何をやっているかと言うと、
AndoroidStudioをinstallした直後に、新規プロジェクト(Basic Activity)を作った直後の挙動を調査しているのだ。
プロジェクト作成直後にGradle sync failedってよろしく無いよねぇ。
AndroidStudioをrestartしてもこの症状は解消しない。
AndroidStudio3.2
AndroidStudio3.3.2
の順で試してみた。Mojave 10.14.3で。
Gradle sync failedが発生しないのは、3.2だった。
3.3.2, 3.4は発生する。
何をやっているかと言うと、
AndoroidStudioをinstallした直後に、新規プロジェクト(Basic Activity)を作った直後の挙動を調査しているのだ。
プロジェクト作成直後にGradle sync failedってよろしく無いよねぇ。
AndroidStudioをrestartしてもこの症状は解消しない。
503デフォルトの名無しさん
2019/04/21(日) 16:51:51.27ID:qy+VhZ5w504デフォルトの名無しさん
2019/04/21(日) 17:41:08.01ID:9kZK6Cbt >>503
します。ただし、3.4の場合、何かのひょうしに解決されて、Gradle sync failedってのが出なくなります。
idea.logファイルに記録されてるWarningはこんな感じ。
WARN - n.GradleOrderEnumeratorHandler - Root project path of the Gradle project not found for Module: 'App03'
します。ただし、3.4の場合、何かのひょうしに解決されて、Gradle sync failedってのが出なくなります。
idea.logファイルに記録されてるWarningはこんな感じ。
WARN - n.GradleOrderEnumeratorHandler - Root project path of the Gradle project not found for Module: 'App03'
505デフォルトの名無しさん
2019/04/21(日) 18:18:34.43ID:2Pn5K2oC そのへんのエラーは冗談比喩抜きで「起動しっぱなしで放っておいたら数日後に直る」経験しかない
まあどっかの何かが新しい何かに何かしてなくて放置してると何かが何かなって何かするんだと思う
まあどっかの何かが新しい何かに何かしてなくて放置してると何かが何かなって何かするんだと思う
506デフォルトの名無しさん
2019/04/21(日) 18:20:30.52ID:9kZK6Cbt >>504
>Root project path of the Gradle project not found
解決か?
~/Library/Preferences/AndroidStudio3.4/
~/Library/Preferences/AndroidStudio3.3/
を消してやると、Gradle Sync failed Issue解決!か?
今の所、上手く動いてる.
次は、Command Lineでkotlincコマンドを実行したいのだが、AndroidStudioをinstallしただけではダメなのだろうか?
In Android Studio download page, the basic Android tools below are included in Android Studio.
らしいのだが?
>Root project path of the Gradle project not found
解決か?
~/Library/Preferences/AndroidStudio3.4/
~/Library/Preferences/AndroidStudio3.3/
を消してやると、Gradle Sync failed Issue解決!か?
今の所、上手く動いてる.
次は、Command Lineでkotlincコマンドを実行したいのだが、AndroidStudioをinstallしただけではダメなのだろうか?
In Android Studio download page, the basic Android tools below are included in Android Studio.
らしいのだが?
507デフォルトの名無しさん
2019/04/21(日) 18:36:10.73ID:9kZK6Cbt 試しに、
https://developer.android.com/samples
ここからサンプルプロジェクトをdownloadしてみた。
なんと、AndroidStudio付属のGradleとは異なるバージョンのGradleのinstallが始まった。
サンプルプロジェクト毎にTarget API Levelが異なるために、それ用のGradleがinstallされるみたい。
AndroidStudio3.2, 3.3.2, 3.4をinstallしたが、しばらく3.4を使ってみる。
https://developer.android.com/samples
ここからサンプルプロジェクトをdownloadしてみた。
なんと、AndroidStudio付属のGradleとは異なるバージョンのGradleのinstallが始まった。
サンプルプロジェクト毎にTarget API Levelが異なるために、それ用のGradleがinstallされるみたい。
AndroidStudio3.2, 3.3.2, 3.4をinstallしたが、しばらく3.4を使ってみる。
508デフォルトの名無しさん
2019/04/21(日) 18:38:19.48ID:9kZK6Cbt >>505
Gradle daemon(プロセス名java)をkillしてやれば、Sync failed Issueは解決するのかも!
Gradle daemon(プロセス名java)をkillしてやれば、Sync failed Issueは解決するのかも!
509デフォルトの名無しさん
2019/04/21(日) 18:48:08.38ID:2Pn5K2oC すまん触った
510デフォルトの名無しさん
2019/04/21(日) 19:56:32.73ID:9kZK6Cbt developer.android.comからサンプルをdownloadして動かしてたら、Gradle daemonが3つも動いてる事になった。
各々違うVersionのGradleらしい。
どうやら、androidの開発環境の歴史的変遷から、ややこしい事になってるみたいだ。
build.gradle(Module:app)とbuild.gradle(Project: kotlinApp)の2つあったり。
各々違うVersionのGradleらしい。
どうやら、androidの開発環境の歴史的変遷から、ややこしい事になってるみたいだ。
build.gradle(Module:app)とbuild.gradle(Project: kotlinApp)の2つあったり。
511デフォルトの名無しさん
2019/04/21(日) 21:42:46.66ID:ePLxajCC 連投しているところ悪いけど、その手の日記ならQiitaにでも書いておいてほしい。
ていうか書くまでもなくそこに答えが書いてある。
ていうか書くまでもなくそこに答えが書いてある。
512デフォルトの名無しさん
2019/04/21(日) 22:54:30.74ID:JMkKpOJG まずはAndroid関係ないシンプルなGradleプロジェクトを作ってみることをお勧めする。基礎知識が欠落しすぎてて余計な回り道しかしてない。
よほど込み入ったことをしない限りそんなに複雑なものではないから。
少なくとも歴史上生まれてきた数々のビルドツールの中では1番マシ。
よほど込み入ったことをしない限りそんなに複雑なものではないから。
少なくとも歴史上生まれてきた数々のビルドツールの中では1番マシ。
513デフォルトの名無しさん
2019/04/21(日) 22:54:39.59ID:8IQ6w5E8 .gladleのキャッシュとかいろいろあるけどねえ
ガチャガチャやってりゃ直るからgladleは優しいよな
ガチャガチャやってりゃ直るからgladleは優しいよな
514デフォルトの名無しさん
2019/04/21(日) 22:55:48.78ID:JMkKpOJG それ。ぶっ壊れたと思っても適当になんかしてりゃ直ってくれるから優秀。
515デフォルトの名無しさん
2019/04/21(日) 23:56:09.92ID:+YkyhY+W まったく毎度毎度グーグルの仕事はほんんんんと雑だな
516デフォルトの名無しさん
2019/04/22(月) 00:58:40.19ID:47gIWCEb fragmentのbindingってlateinitでvarにするのとby lazyでvalにするのとどっちが正解ですか
517デフォルトの名無しさん
2019/04/22(月) 03:51:49.53ID:SyBBal55 >>509
はい
はい
518デフォルトの名無しさん
2019/04/22(月) 10:56:56.63ID:QiOq/xsC519デフォルトの名無しさん
2019/04/22(月) 12:17:09.85ID:iCdpr57v JVMが有償化したらおまえら阿鼻叫喚
520デフォルトの名無しさん
2019/04/22(月) 12:49:18.33ID:+g+F61Q1 1年くらい前は確かに阿鼻叫喚だったけど今となってはもう誰も問題だと思ってない
521デフォルトの名無しさん
2019/04/22(月) 13:54:04.36ID:5CpOs8vM >>519
JVM, JRE, JDKが今どんな状況か分かってなさそう
JVM, JRE, JDKが今どんな状況か分かってなさそう
522デフォルトの名無しさん
2019/04/22(月) 14:54:26.97ID:3J9RCiSz >>521
詳しく頼む
詳しく頼む
523デフォルトの名無しさん
2019/04/22(月) 16:23:17.22ID:QiOq/xsC >>522
Android Studio 3.4
Build #AI-183.5429.30.34.5452501, built on April 10, 2019
JRE: 1.8.0_152-release-1343-b01 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.14.3
これでどう?
Android Studio 3.4
Build #AI-183.5429.30.34.5452501, built on April 10, 2019
JRE: 1.8.0_152-release-1343-b01 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.14.3
これでどう?
524デフォルトの名無しさん
2019/04/22(月) 16:29:37.09ID:QiOq/xsC 俺、AndroidStudio3.4をinstallしてからGradle sync failed問題を解決しようとして、Oracle JDK8u212ってのをinstallしちまった。
AndroidStudio3.4にはOpenJDKってのが入ってるのか?
Oracle JDK8u212ってのはuninstallしても良いのか?
ちなみに、Command Lineでjava -vすると
>java -version
java version "1.8.0_212"
Java(TM) SE Runtime Environment (build 1.8.0_212-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)
AndroidStudio3.4にはOpenJDKってのが入ってるのか?
Oracle JDK8u212ってのはuninstallしても良いのか?
ちなみに、Command Lineでjava -vすると
>java -version
java version "1.8.0_212"
Java(TM) SE Runtime Environment (build 1.8.0_212-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)
525デフォルトの名無しさん
2019/04/22(月) 16:34:09.84ID:952sQ1RS >>524
Android Studioには専用にカスタマイズされたOpenJDKが組み込まれててそれを使って動いているから、システムに別のJDKを入れようが入れまいが関係ない
Android Studioには専用にカスタマイズされたOpenJDKが組み込まれててそれを使って動いているから、システムに別のJDKを入れようが入れまいが関係ない
526デフォルトの名無しさん
2019/04/22(月) 16:35:59.31ID:QiOq/xsC ちなみにgradleってファイル名のbash scriptがAndroidStudio3.4には入っていて、
1. $JAVA_HOME
2. which java
上記からjavaコマンドの場所を検索してgradle-launcher-5.1.1.jarを動かしてるみたいなんだけど。
1. $JAVA_HOME
2. which java
上記からjavaコマンドの場所を検索してgradle-launcher-5.1.1.jarを動かしてるみたいなんだけど。
527デフォルトの名無しさん
2019/04/22(月) 16:37:13.18ID:952sQ1RS で、何がわからなくて何が聞きたいの?
528デフォルトの名無しさん
2019/04/22(月) 16:40:22.54ID:QiOq/xsC >>525
なるほど!
ってことは、Oracle版JDKはuninstallしてもOK?
以下のフォルダをごそっと削除してしまいたいんだけど。
> /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.8.0_212.jdk/Contents/Home
なるほど!
ってことは、Oracle版JDKはuninstallしてもOK?
以下のフォルダをごそっと削除してしまいたいんだけど。
> /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.8.0_212.jdk/Contents/Home
529デフォルトの名無しさん
2019/04/22(月) 16:49:59.02ID:952sQ1RS530デフォルトの名無しさん
2019/04/22(月) 18:10:15.79ID:QiOq/xsC >>529
thx
javaに依存してる何かは、無いです。
kotlinc(Kotlin Compiler)コマンドを使いたいので
>brew install kotlin
ってコマンドを打とうとしてます。
kotlinがJREを必要とするなら、JREも同時にbrewがinstallするでしょう。
だったら、消さずに残すのが良いでしょうか?
thx
javaに依存してる何かは、無いです。
kotlinc(Kotlin Compiler)コマンドを使いたいので
>brew install kotlin
ってコマンドを打とうとしてます。
kotlinがJREを必要とするなら、JREも同時にbrewがinstallするでしょう。
だったら、消さずに残すのが良いでしょうか?
531デフォルトの名無しさん
2019/04/22(月) 19:06:49.70ID:R7Rys8j6 幼稚園児が増える季節か
532デフォルトの名無しさん
2019/04/22(月) 19:49:54.02ID:BvK+7rjz この前も別の初心者がkotlincで詰まってたんだけど、どこかの有名な入門サイトがコマンドライン推奨でもしてるの?
正直kotlin書くならIDE前提だろうからコマンドラインでコンパイラの使い方を覚える必要なんて全くないと思うんだが。
正直kotlin書くならIDE前提だろうからコマンドラインでコンパイラの使い方を覚える必要なんて全くないと思うんだが。
533デフォルトの名無しさん
2019/04/22(月) 20:19:08.99ID:SyBBal55534デフォルトの名無しさん
2019/04/22(月) 20:20:41.47ID:47gIWCEb dagger
535デフォルトの名無しさん
2019/04/22(月) 20:31:59.51ID:QiOq/xsC >>532
うっそーん。
コマンドラインでチョコっと、コードを試したいってこと無い?
IDEよりVimが好きな俺だけか?
ようやく、Quickrun.vimが動くようになって、今コレ読んでるところ。
はじめてのKotlin。Javaと比較してみた
https://qiita.com/hituziando/items/fa2dc4097b24ab78276e
30分で覚えるKotlin文法
https://qiita.com/k5n/items/cc0377b75d8537ef8a85
うっそーん。
コマンドラインでチョコっと、コードを試したいってこと無い?
IDEよりVimが好きな俺だけか?
ようやく、Quickrun.vimが動くようになって、今コレ読んでるところ。
はじめてのKotlin。Javaと比較してみた
https://qiita.com/hituziando/items/fa2dc4097b24ab78276e
30分で覚えるKotlin文法
https://qiita.com/k5n/items/cc0377b75d8537ef8a85
536デフォルトの名無しさん
2019/04/22(月) 20:41:55.57ID:47gIWCEb それならブラウザ上で実行できるplayground的なものが公式にあったはず
537デフォルトの名無しさん
2019/04/22(月) 20:49:23.39ID:952sQ1RS ちょっと書いてちょっと動かすにしてもIntelliJでRunした方がいいしな、デバッガが超優秀だし
Vimで書いてコマンドラインで実行ってのは確かに昔Javaを勉強した頃はやったけど、
今となっては出汁をとるのに鰹節を削るところから始めるような古めかしさを感じる
Vimで書いてコマンドラインで実行ってのは確かに昔Javaを勉強した頃はやったけど、
今となっては出汁をとるのに鰹節を削るところから始めるような古めかしさを感じる
538デフォルトの名無しさん
2019/04/22(月) 20:51:00.58ID:952sQ1RS まあ好みだからそれがやりたいなら良いとは思うよ
仕事で新人がそんなことで詰まってたらやんわり注意するかもしれんけど
仕事で新人がそんなことで詰まってたらやんわり注意するかもしれんけど
539デフォルトの名無しさん
2019/04/22(月) 20:51:15.45ID:MftVaIwk そういうときはREPL使ってる
540デフォルトの名無しさん
2019/04/22(月) 21:14:37.90ID:j5GMJ/X8 単一ファイルを少し変更したいときはエディタ。
それ以外はIDEを使う
それ以外はIDEを使う
541デフォルトの名無しさん
2019/04/22(月) 21:42:39.28ID:QiOq/xsC >>537
三大Java IDEは気にはなってるけど、今の所リソース食いそうで躊躇してます。
今の所、Referenceの検索容易性から俺にはVimかなぁ。
デバッグ環境はpoorかな。print文を埋め込むしか、今の所は手が無しかな。
デバッグが必要ならAndroidStudio起動して、なおかつKotlin Scriptに変換して動かす事にします。
ScriptじゃないKotlinコードをAndroidStudioで動かす事は出来ないのかな?よく解らん。
Xcodeならplayground作れるんだが。
三大Java IDEは気にはなってるけど、今の所リソース食いそうで躊躇してます。
今の所、Referenceの検索容易性から俺にはVimかなぁ。
デバッグ環境はpoorかな。print文を埋め込むしか、今の所は手が無しかな。
デバッグが必要ならAndroidStudio起動して、なおかつKotlin Scriptに変換して動かす事にします。
ScriptじゃないKotlinコードをAndroidStudioで動かす事は出来ないのかな?よく解らん。
Xcodeならplayground作れるんだが。
542デフォルトの名無しさん
2019/04/22(月) 21:53:50.10ID:BvK+7rjz 君、謎の行動力がありそうでそれはいいんだけど、
本当に何から何まで無駄なことばっかりやってるからまず最初に調べる癖をつけたほうがいい
この世界は一にも二にもまずは調べることが何より大事
本当に何から何まで無駄なことばっかりやってるからまず最初に調べる癖をつけたほうがいい
この世界は一にも二にもまずは調べることが何より大事
543デフォルトの名無しさん
2019/04/22(月) 22:12:50.79ID:5CpOs8vM KotlinやるならIntelliJ一択
あとガワが違うだけでAndroid Studioの中身はIntelliJ
※Android以外のプロジェクト作成など、一部の機能を非表示にしている
あとガワが違うだけでAndroid Studioの中身はIntelliJ
※Android以外のプロジェクト作成など、一部の機能を非表示にしている
544デフォルトの名無しさん
2019/04/22(月) 22:19:17.89ID:BvK+7rjz Kotlin勉強したいならIntelliJの無償版使うのが1番おすすめだねえ
ちなみにAndroid Studio動かすのと消費するリソースは同じ、何せほぼ同じものだし
ちなみにAndroid Studio動かすのと消費するリソースは同じ、何せほぼ同じものだし
545デフォルトの名無しさん
2019/04/22(月) 22:23:01.40ID:5CpOs8vM >>522
・JVMはJREの一部、JREはJDKの一部
・Java9以降「システムへの単一JREのインストール」は無くなっており、
JDKから各アプリの同梱用JREを生成する (jdeps/jlink)
・OracleJDKに含まれるJVMは既に有償化されている
・OpenJDKに含まれるJVMは今後も有償化されることは無い
・JVMはJREの一部、JREはJDKの一部
・Java9以降「システムへの単一JREのインストール」は無くなっており、
JDKから各アプリの同梱用JREを生成する (jdeps/jlink)
・OracleJDKに含まれるJVMは既に有償化されている
・OpenJDKに含まれるJVMは今後も有償化されることは無い
546デフォルトの名無しさん
2019/04/22(月) 23:33:08.26ID:2FYuav9u547デフォルトの名無しさん
2019/04/23(火) 12:05:16.04ID:3Q52IgbA >>535
>はじめてのKotlin。Javaと比較してみた
>https://qiita.com/hituziando/items/fa2dc4097b24ab78276e
>
>30分で覚えるKotlin文法
>https://qiita.com/k5n/items/cc0377b75d8537ef8a85
もういっちょ!
Kotlinまとめ - 文法詳解 - クラスとそのメンバ
https://qiita.com/hicka04/items/6f47f505d7b68ede3680
>はじめてのKotlin。Javaと比較してみた
>https://qiita.com/hituziando/items/fa2dc4097b24ab78276e
>
>30分で覚えるKotlin文法
>https://qiita.com/k5n/items/cc0377b75d8537ef8a85
もういっちょ!
Kotlinまとめ - 文法詳解 - クラスとそのメンバ
https://qiita.com/hicka04/items/6f47f505d7b68ede3680
548デフォルトの名無しさん
2019/04/23(火) 13:16:20.26ID:gv0SOq8d >>535
ある。ちょこっとする時は例えWindowsで IntelliJ 起動中でも Linux サーバ側でREPLやるな。
なんでかというと IntelliJ のREPLのウインドウはなんか出力がすぐ出なかったりでおかしいから。
その他短すぎるプログラムのためにわざわざプロジェクト作ったり packge 作るのもアホらしい時とか。
ある。ちょこっとする時は例えWindowsで IntelliJ 起動中でも Linux サーバ側でREPLやるな。
なんでかというと IntelliJ のREPLのウインドウはなんか出力がすぐ出なかったりでおかしいから。
その他短すぎるプログラムのためにわざわざプロジェクト作ったり packge 作るのもアホらしい時とか。
549デフォルトの名無しさん
2019/04/23(火) 14:13:43.00ID:3Q52IgbA Android Studio残念ポイント!
1. Android Projectしか開くことができない。
2. Hello Worldするhello.ktを開くことができない。
なんで?そう言う時は、IntelliJ使えってことか?▶なんだろうなぁ。
1. Android Projectしか開くことができない。
2. Hello Worldするhello.ktを開くことができない。
なんで?そう言う時は、IntelliJ使えってことか?▶なんだろうなぁ。
550デフォルトの名無しさん
2019/04/23(火) 14:52:10.33ID:67h9+wNp551デフォルトの名無しさん
2019/04/23(火) 14:54:14.57ID:TrDrz5+t552デフォルトの名無しさん
2019/04/23(火) 15:47:52.74ID:KnPjeA9Q Intの変数名をintってするのってまずい?
val int : Int = 0
こういうの
val int : Int = 0
こういうの
553デフォルトの名無しさん
2019/04/23(火) 15:52:03.96ID:3Q52IgbA >>548
REPLねぇ。
Ruby, JavaScript(Node.js), SwiftのREPL環境を使ったことあるけど、Reflection機能が充実している言語(ruby)以外、イマイチだなぁ。
コードの編集も不自由だし。
あんた、本当にLinux側でREPLする事あるの?
REPLねぇ。
Ruby, JavaScript(Node.js), SwiftのREPL環境を使ったことあるけど、Reflection機能が充実している言語(ruby)以外、イマイチだなぁ。
コードの編集も不自由だし。
あんた、本当にLinux側でREPLする事あるの?
554デフォルトの名無しさん
2019/04/23(火) 15:54:20.98ID:3Q52IgbA >>552
怖いなぁ。そのコード。
俺、さっき、setNameってメソッドを作ったら、clashしてるって怒られた。
clash = conflict って意味らしい。
java.lang.StringのsetNameメソッドとコンフリクトしてるから、コンパイルしないんだって。
怖いなぁ。そのコード。
俺、さっき、setNameってメソッドを作ったら、clashしてるって怒られた。
clash = conflict って意味らしい。
java.lang.StringのsetNameメソッドとコンフリクトしてるから、コンパイルしないんだって。
555デフォルトの名無しさん
2019/04/23(火) 16:06:01.49ID:KnPjeA9Q そういうことあるのか
でもIntがintじゃないのってintを変数名で使ってもいいよっていう意思を感じるんだよなあ
val hoge : Hoge
ってすることを考えると
val int : Int
も自然な気がする
でもIntがintじゃないのってintを変数名で使ってもいいよっていう意思を感じるんだよなあ
val hoge : Hoge
ってすることを考えると
val int : Int
も自然な気がする
556デフォルトの名無しさん
2019/04/23(火) 16:09:50.49ID:KnPjeA9Q ああでもjavaは予約語でintだめなのか
やっぱりやめておこう
やっぱりやめておこう
557デフォルトの名無しさん
2019/04/23(火) 16:25:21.03ID:xD8uuYM0 そもそも逆コンパイルしたソースじゃないんだから
意味のある変数名付けなよ
意味のある変数名付けなよ
558デフォルトの名無しさん
2019/04/23(火) 16:31:00.98ID:3Q52IgbA macOS10.14.3
AndroidStudio3.4
環境です。API Referenceを参照するには、どうすれば?
Command-Jで起動するかと思いきや?何も起こらないっす。
Webサイトへ行かないとダメなのかな?
AndroidStudio3.4
環境です。API Referenceを参照するには、どうすれば?
Command-Jで起動するかと思いきや?何も起こらないっす。
Webサイトへ行かないとダメなのかな?
559デフォルトの名無しさん
2019/04/23(火) 17:37:07.37ID:gv0SOq8d >>553
ちょっと試す時とかによく使うよ
ちょっと試す時とかによく使うよ
560デフォルトの名無しさん
2019/04/23(火) 17:41:27.91ID:3Q52IgbA561デフォルトの名無しさん
2019/04/23(火) 18:02:43.25ID:3Q52IgbA >>558
see the hit result of Help>Search(Documentation).
You can retrieve the documents by ctrl-J@macOS as well.
see the hit result of Help>Search(Documentation).
You can retrieve the documents by ctrl-J@macOS as well.
562デフォルトの名無しさん
2019/04/23(火) 19:19:13.65ID:IWDMUBZh >>555
とりあえず変な癖をつける前に『リーダブルコード』を読んでくれ、頼むから
とりあえず変な癖をつける前に『リーダブルコード』を読んでくれ、頼むから
563デフォルトの名無しさん
2019/04/23(火) 19:47:01.75ID:hcUTeQ5O リーダブルコード読みやすいしわかりやすいし為になるし
書いたやつ神
書いたやつ神
564デフォルトの名無しさん
2019/04/23(火) 19:49:26.39ID:3Q52IgbA565デフォルトの名無しさん
2019/04/23(火) 19:52:05.70ID:Ky48Nwl1 >>564
嘘だ
嘘だ
566デフォルトの名無しさん
2019/04/23(火) 20:08:14.43ID:gv0SOq8d >>564
じゃあその本に書いてないことが書かれた本を出してくれ。Kindle版だけでもいいから。
じゃあその本に書いてないことが書かれた本を出してくれ。Kindle版だけでもいいから。
567デフォルトの名無しさん
2019/04/23(火) 20:16:21.90ID:IWDMUBZh >>565
知っていることを再認識させてくれる良書ではある
知っていることを再認識させてくれる良書ではある
568デフォルトの名無しさん
2019/04/23(火) 20:18:24.37ID:IWDMUBZh 何でIDが同じになるんだよ
同じプロバイダーなのか
同じプロバイダーなのか
569デフォルトの名無しさん
2019/04/23(火) 20:22:11.04ID:gv0SOq8d たまーに同じID出ることあるな。ものすごく希だが。
きっと今日は良いことあるよ。あと3時間40分ぐらいで終わるけど。
きっと今日は良いことあるよ。あと3時間40分ぐらいで終わるけど。
570デフォルトの名無しさん
2019/04/23(火) 20:22:12.06ID:3Q52IgbA >>565
嘘じゃない。
ああぁ。俺は間違ってないんだな。という感じ。
まあ、詳細に読んだわけでは無いし、プログラマが知るべき97のこと、って本にも似たような事が書いてある。
Matzも「名前重要」なんて事を、97本に寄稿している。
プログラミング作法、なんかの方がよっぽど良かったな。俺には。
嘘じゃない。
ああぁ。俺は間違ってないんだな。という感じ。
まあ、詳細に読んだわけでは無いし、プログラマが知るべき97のこと、って本にも似たような事が書いてある。
Matzも「名前重要」なんて事を、97本に寄稿している。
プログラミング作法、なんかの方がよっぽど良かったな。俺には。
571デフォルトの名無しさん
2019/04/23(火) 20:24:15.75ID:3Q52IgbA >>569
って事はHash algorithmがpoorってこった。
って事はHash algorithmがpoorってこった。
572デフォルトの名無しさん
2019/04/23(火) 20:25:36.05ID:B8eC+d1i コードコンプリート
573デフォルトの名無しさん
2019/04/23(火) 20:27:52.73ID:3Q52IgbA574デフォルトの名無しさん
2019/04/23(火) 20:29:32.04ID:IWDMUBZh プログラミング作法
プログラム書法
ソフトウェア作法
全てブライアン・カーニハン御年77歳の名著
プログラム書法
ソフトウェア作法
全てブライアン・カーニハン御年77歳の名著
575デフォルトの名無しさん
2019/04/23(火) 20:31:32.66ID:gv0SOq8d576デフォルトの名無しさん
2019/04/23(火) 20:32:56.33ID:3Q52IgbA >>566
じゃぁ、一つ俺の考え方を!
狭いスコープの中を生きる変数は、名前が短くても良い。
e.g. str1 = “OK”
広いスコープの中を生きる変数の名前は、長い名前が必要。
e.g. numberOfBooks = 100
何時いかなる時も、意味ある変数名をつけるのは、俺は反対だ。
変数名を考える事に、時間が惜しい時もある。
じゃぁ、一つ俺の考え方を!
狭いスコープの中を生きる変数は、名前が短くても良い。
e.g. str1 = “OK”
広いスコープの中を生きる変数の名前は、長い名前が必要。
e.g. numberOfBooks = 100
何時いかなる時も、意味ある変数名をつけるのは、俺は反対だ。
変数名を考える事に、時間が惜しい時もある。
577デフォルトの名無しさん
2019/04/23(火) 20:33:50.86ID:PyZ6tY2R 拡張プロパティに値セットする方法ある?
578デフォルトの名無しさん
2019/04/23(火) 20:36:26.55ID:gv0SOq8d やはりプログラミングも茶道とか華道とかと同様にプログラミング道を作ってわびさびが必要な時代が来たのかも知れないな。
579デフォルトの名無しさん
2019/04/23(火) 20:36:27.27ID:IWDMUBZh >>576
そ、ループ変数なんて i, j, k, ....nで良いやん
そ、ループ変数なんて i, j, k, ....nで良いやん
580デフォルトの名無しさん
2019/04/23(火) 20:38:43.46ID:PyZ6tY2R でもkotlinでforとか使わなくね?
581デフォルトの名無しさん
2019/04/23(火) 20:42:02.64ID:gv0SOq8d582デフォルトの名無しさん
2019/04/23(火) 20:54:10.92ID:3Q52IgbA >>581
昔、英語が出来なかった時には、
kabuPrice
とか
kabuka
なんて恥ずかしい名前使ってたけど、
今では、
sharePrice
でないと、code reading時にストレス感じるわぁ。
昔、英語が出来なかった時には、
kabuPrice
とか
kabuka
なんて恥ずかしい名前使ってたけど、
今では、
sharePrice
でないと、code reading時にストレス感じるわぁ。
583デフォルトの名無しさん
2019/04/23(火) 20:57:09.18ID:gv0SOq8d 漢字使え漢字
584デフォルトの名無しさん
2019/04/23(火) 21:02:15.89ID:3Q52IgbA val 感じ = "感じ"
print(感じ)
なんと、warningは出るが、実行可能。
print(感じ)
なんと、warningは出るが、実行可能。
585デフォルトの名無しさん
2019/04/23(火) 21:05:59.98ID:3Q52IgbA Qiita見ながらKotlin修行中だけど、
Jump Command便利そう。
return@forEach
continue@loop
return@loop
とか言うやつ。
これSwiftに欲しい。
Jump Command便利そう。
return@forEach
continue@loop
return@loop
とか言うやつ。
これSwiftに欲しい。
586デフォルトの名無しさん
2019/04/23(火) 21:15:06.63ID:3Q52IgbA そんなことより、API referenceってかDocumentをofflineで見る手段、どうしてる?
Zeal, Velocity, Dashなんかを使ってるの?
Android StudioでAppCompatActivetyを引くと
android.support.v7.app.AppCompatActivity public AppCompatActivity()
Gradle: com.android.support:appcompat-v7:28.0.0@aar
たったコレだけしか表示されないっす。
Zeal, Velocity, Dashなんかを使ってるの?
Android StudioでAppCompatActivetyを引くと
android.support.v7.app.AppCompatActivity public AppCompatActivity()
Gradle: com.android.support:appcompat-v7:28.0.0@aar
たったコレだけしか表示されないっす。
587デフォルトの名無しさん
2019/04/23(火) 21:32:38.61ID:bGCgvaJg588デフォルトの名無しさん
2019/04/23(火) 21:53:05.69ID:strBUBex >>585
便利な反面1歩間違えると悲惨なコードになりそうだな
便利な反面1歩間違えると悲惨なコードになりそうだな
589デフォルトの名無しさん
2019/04/23(火) 22:46:19.69ID:B8eC+d1i 尻でも触ったのか
590デフォルトの名無しさん
2019/04/23(火) 23:21:01.87ID:IWDMUBZh591デフォルトの名無しさん
2019/04/23(火) 23:23:43.15ID:IWDMUBZh ごめん間違えた、SwiftにあるからKotlinに欲しいって読み違えた
Xamarinのライセンス買ってくる
Xamarinのライセンス買ってくる
592デフォルトの名無しさん
2019/04/24(水) 05:30:04.16ID:BhgQi2cO 悲惨なコードとは?
593デフォルトの名無しさん
2019/04/24(水) 05:38:27.15ID:MHxaAVIF goto文みたいに次にどこに行くのか読みにくいって意味じゃないかな
そんなことはないけどね
そんなことはないけどね
594デフォルトの名無しさん
2019/04/24(水) 05:51:11.02ID:kB2a7+Os 変数名漢字って結構有りだと思う
平均からすれば英語かなり必死に勉強したほうだと思うけど、ネイティブからすれば変な英語使ってるって自覚あるし
ネイティブ的な感覚がないから、命名には常に苦労する
もちろん特定用途でしか使えない手法だけど、やっぱり母国語ってわかりやすいよね
英語圏のやつらにスーパハカーが多いのはそういう理由もあるよな、母国語でプログラムできるのうらやましいわ
平均からすれば英語かなり必死に勉強したほうだと思うけど、ネイティブからすれば変な英語使ってるって自覚あるし
ネイティブ的な感覚がないから、命名には常に苦労する
もちろん特定用途でしか使えない手法だけど、やっぱり母国語ってわかりやすいよね
英語圏のやつらにスーパハカーが多いのはそういう理由もあるよな、母国語でプログラムできるのうらやましいわ
595デフォルトの名無しさん
2019/04/24(水) 07:33:38.62ID:ZqBzQREh596デフォルトの名無しさん
2019/04/24(水) 11:18:15.23ID:ZqBzQREh Constructorの書き方がムズイ。
primery, secondary constructorとか、Swiftには無いし。
Kotlinスタートブック、はしばらく様子見。今の所買わない方向で…
だって、2016年の本って、情報が古そうだし。
primery, secondary constructorとか、Swiftには無いし。
Kotlinスタートブック、はしばらく様子見。今の所買わない方向で…
だって、2016年の本って、情報が古そうだし。
597デフォルトの名無しさん
2019/04/24(水) 12:11:30.51ID:f6AiwYyw そのうち在日ユダヤが「日本人にベーグル盗まれた」なんて狂言やりそう
598デフォルトの名無しさん
2019/04/24(水) 12:20:40.85ID:ymPUK1bE >>594
日本語固有のややこしい漢字の名称を無理やり英語にするよりはそのまま使った方が可読性もはるかにいいわな
何か不都合が起きたらIDEでリネームすりゃいいだけの話だから、全然ありだと思う
俺はテストケース名は日本語がんがん使う
日本語固有のややこしい漢字の名称を無理やり英語にするよりはそのまま使った方が可読性もはるかにいいわな
何か不都合が起きたらIDEでリネームすりゃいいだけの話だから、全然ありだと思う
俺はテストケース名は日本語がんがん使う
599デフォルトの名無しさん
2019/04/24(水) 12:48:24.16ID:CTi91KC0 >>596
Swiftの designated initializer ≒ Kotlinの primary constructor
Swiftの convenience initializer ≒ Kotlinの secondary constructor
Swiftの designated initializer ≒ Kotlinの primary constructor
Swiftの convenience initializer ≒ Kotlinの secondary constructor
600デフォルトの名無しさん
2019/04/24(水) 13:08:03.94ID:CTi91KC0 >>599の具体例
Swift
https://ideone.com/48Boj1
Kotlin 比較用
https://ideone.com/ovwjrs
Kotlin 短縮
https://ideone.com/IcR8Wo
Swift
https://ideone.com/48Boj1
Kotlin 比較用
https://ideone.com/ovwjrs
Kotlin 短縮
https://ideone.com/IcR8Wo
601デフォルトの名無しさん
2019/04/24(水) 13:28:15.20ID:CQvKnKTI >>577だけどこれ無理っぽいな
602デフォルトの名無しさん
2019/04/24(水) 14:01:42.54ID:CTi91KC0 >>577
勧めるものじゃないけど、一応疑似的にならば
https://ideone.com/7lTdsi
class A {}
private val xname = WeakHashMap<Any,String?>()
var A.name: String?
get() = xname[this]
set(v:String?) { xname[this] = v }
勧めるものじゃないけど、一応疑似的にならば
https://ideone.com/7lTdsi
class A {}
private val xname = WeakHashMap<Any,String?>()
var A.name: String?
get() = xname[this]
set(v:String?) { xname[this] = v }
603デフォルトの名無しさん
2019/04/24(水) 14:14:45.53ID:ZqBzQREh >>599
thx
thx
604デフォルトの名無しさん
2019/04/24(水) 14:19:09.62ID:ZqBzQREh605デフォルトの名無しさん
2019/04/24(水) 14:22:08.49ID:ZqBzQREh >>604
fun mainの外でthisは何を指してるのだ?
fun mainの外でthisは何を指してるのだ?
606デフォルトの名無しさん
2019/04/24(水) 14:28:29.52ID:ZqBzQREh >>605
>fun mainの外でthis
ってのはMainKtのインスタンスってことか?
うぅーん。後で確認。
fun main(args: Array<String>) {}
in a file called Main.kt will compile to something like:
public class MainKt {
public static void main(String[] args) {}
}
>fun mainの外でthis
ってのはMainKtのインスタンスってことか?
うぅーん。後で確認。
fun main(args: Array<String>) {}
in a file called Main.kt will compile to something like:
public class MainKt {
public static void main(String[] args) {}
}
607デフォルトの名無しさん
2019/04/24(水) 14:55:22.29ID:CTi91KC0 >>604
602は拡張プロパティとシングルトンのWeakHashMapを利用している
詳細はgoogleで
拡張プロパティ:
見た目はプロパティだが実際のところ
staticメソッドのシンタックスシュガー
fun A_name_get(thisObj: A): String? {
return xname.get(thisObj)
}
println( a.name )
↓
println( A_name_get(a) )
WeakHashMap:
キーがGC対象となるのを阻害しないMap
aとnameの関連付けはここに入っている
aがへの参照が無くなったら、nameへの関連付けもCG対象になって消える
602は拡張プロパティとシングルトンのWeakHashMapを利用している
詳細はgoogleで
拡張プロパティ:
見た目はプロパティだが実際のところ
staticメソッドのシンタックスシュガー
fun A_name_get(thisObj: A): String? {
return xname.get(thisObj)
}
println( a.name )
↓
println( A_name_get(a) )
WeakHashMap:
キーがGC対象となるのを阻害しないMap
aとnameの関連付けはここに入っている
aがへの参照が無くなったら、nameへの関連付けもCG対象になって消える
608デフォルトの名無しさん
2019/04/24(水) 15:34:34.20ID:ZqBzQREh609デフォルトの名無しさん
2019/04/24(水) 15:49:00.84ID:ZqBzQREh >>608
特異メソッドとは違うみたい。
Rubyのクラスの再オープン、オープンクラス、monkey patching
とか言う邪悪なテクみたい。
Dateクラスに本来備わってないyesterday, tomorrowとかいうpropertyを追加したりできる。
特異メソッドとは違うみたい。
Rubyのクラスの再オープン、オープンクラス、monkey patching
とか言う邪悪なテクみたい。
Dateクラスに本来備わってないyesterday, tomorrowとかいうpropertyを追加したりできる。
610デフォルトの名無しさん
2019/04/24(水) 15:52:13.17ID:ZqBzQREh うぅーん。
top level でthisが何を指しているのか?
よく解らん。
top level でthisが何を指しているのか?
よく解らん。
611デフォルトの名無しさん
2019/04/24(水) 15:52:31.03ID:CTi91KC0 連投せずググりなさい
612デフォルトの名無しさん
2019/04/24(水) 15:56:37.35ID:ZqBzQREh >>610
きっとthisは、nameプロパティーが呼ばれるまで定まらなくて、nameプロパティーのレシーバー(a1, a2)の事なんだ。
と言う事にしておこう。
拡張関数、拡張プロパティー、が必要になった時のメモ
Kotlinの拡張関数と拡張プロパティについて
https://qiita.com/RyotaMurohoshi/items/4b958af1d23da6d91a61
きっとthisは、nameプロパティーが呼ばれるまで定まらなくて、nameプロパティーのレシーバー(a1, a2)の事なんだ。
と言う事にしておこう。
拡張関数、拡張プロパティー、が必要になった時のメモ
Kotlinの拡張関数と拡張プロパティについて
https://qiita.com/RyotaMurohoshi/items/4b958af1d23da6d91a61
613デフォルトの名無しさん
2019/04/24(水) 17:00:48.57ID:HA70GdMc >ID:ZqBzQREh
日記は自分のブログでやってくれ
日記は自分のブログでやってくれ
614デフォルトの名無しさん
2019/04/24(水) 17:06:36.37ID:ymPUK1bE 散々言われてるみたいだけどまずとりあえずググる習慣をつけなさい
君はしなくていい回り道が多すぎる
君はしなくていい回り道が多すぎる
615デフォルトの名無しさん
2019/04/24(水) 20:05:15.35ID:CQvKnKTI616デフォルトの名無しさん
2019/04/24(水) 20:26:09.12ID:ZqBzQREh617デフォルトの名無しさん
2019/04/24(水) 20:28:11.81ID:Hf91oH+Q >>614
君も謝る羽目になるよ
君も謝る羽目になるよ
618デフォルトの名無しさん
2019/04/24(水) 20:45:23.71ID:ZqBzQREh なんと、キーワードになっている識別子もエスケープ可能!
例:isと言う名前のメソッドも呼び出せる。
foo.`is`(bar)
こんな感じ!
例:isと言う名前のメソッドも呼び出せる。
foo.`is`(bar)
こんな感じ!
619デフォルトの名無しさん
2019/04/24(水) 20:49:33.98ID:ZqBzQREh Qiitaの30分で…の記事、走り読みした。約8hr位要した。
Vim内でチョコチョコ試運転しながら、走り読み。
お疲れ様でした。▶俺
Vim内でチョコチョコ試運転しながら、走り読み。
お疲れ様でした。▶俺
620デフォルトの名無しさん
2019/04/24(水) 20:52:35.15ID:ZqBzQREh レシーバー付き関数リテラル、がよく解らんかった。
クラス移譲、プロパティー移譲
byとか使う奴。こんなのSwiftには無かったなぁ。
クラス移譲、プロパティー移譲
byとか使う奴。こんなのSwiftには無かったなぁ。
621デフォルトの名無しさん
2019/04/24(水) 21:03:15.80ID:kFXKi6KY622デフォルトの名無しさん
2019/04/24(水) 21:13:18.43ID:kFXKi6KY Kotlin は、swift とは似ていない
Kotlin は、Groovy を静的にしたもの。
つまり、Ruby, JavaScript の系統
オブジェクト指向・関数型のミックス
Kotlin は、Groovy を静的にしたもの。
つまり、Ruby, JavaScript の系統
オブジェクト指向・関数型のミックス
623デフォルトの名無しさん
2019/04/24(水) 22:03:35.37ID:JvprRVGM Swift程の糞はない
624デフォルトの名無しさん
2019/04/25(木) 06:51:51.77ID:BgXoud3L >>621
赤ベコ本の事ね。
赤ベコ本の事ね。
625デフォルトの名無しさん
2019/04/25(木) 09:50:10.40ID:P7ID4Nfd626デフォルトの名無しさん
2019/04/25(木) 11:34:43.93ID:ap5qFTOn > 読みやすい
> if (length > 10 )
>
> 読みにくい
> if (10 < length)
その主観は慣れによる、俺にとっては前者の方が読みにくい
うちでは「物差しの向きに一貫性を持たせる」という指針でやっている
その上で統一のため原則として「小さい方を左に書く」
よって >, >= を使わない
if (10 <= length && length < 100)
まぁRangeやRectでメソッドでの判定をすることも多く
そういう場合は左がどうこうというのは無いが
> if (length > 10 )
>
> 読みにくい
> if (10 < length)
その主観は慣れによる、俺にとっては前者の方が読みにくい
うちでは「物差しの向きに一貫性を持たせる」という指針でやっている
その上で統一のため原則として「小さい方を左に書く」
よって >, >= を使わない
if (10 <= length && length < 100)
まぁRangeやRectでメソッドでの判定をすることも多く
そういう場合は左がどうこうというのは無いが
627デフォルトの名無しさん
2019/04/25(木) 11:52:49.98ID:8pGnANx9 >>626
>if (10 <= length && length < 100)
if (length >= 10 && length < 100)
たまに、こう書くヤツが居るが殺意を覚える
一般的には可変値が左だと思う
>if (10 <= length && length < 100)
if (length >= 10 && length < 100)
たまに、こう書くヤツが居るが殺意を覚える
一般的には可変値が左だと思う
628デフォルトの名無しさん
2019/04/25(木) 12:18:15.49ID:NAVagSqc 俺も可変値が左だと思うけど、統一された指針が既にあるならそれを貫いたほうがいい
一貫性はとても大事
一貫性はとても大事
629デフォルトの名無しさん
2019/04/25(木) 12:32:09.35ID:wpotMNKo 小さい方を左に書く。
頭の中では、大小は、左右で考えているから
横書きと同じ感覚。
左上がスタート地点
洋画ではそう。左上に赤色を配置する。
そこが目線のスタート地点。
そこから時計回りに目線が、渦の中心へと向かっていく
頭の中では、大小は、左右で考えているから
横書きと同じ感覚。
左上がスタート地点
洋画ではそう。左上に赤色を配置する。
そこが目線のスタート地点。
そこから時計回りに目線が、渦の中心へと向かっていく
630デフォルトの名無しさん
2019/04/25(木) 12:41:16.64ID:NQvr5Lbg >>626
普通、言葉で考えると「lengthは10以上100未満?」て聞くじゃん。
「10は〜100は〜?」みたいな聞き方しないよね。
主語と動詞を逆にしちゃいけないと思う。
CやC++の頃は
if (length == 10) としたかったところをコーディングミスで
if (length = 10) にしてバグるのを防ぐ為に逆向きにしてた人を見受けたけど、いまどきはIDEがエラー出してくれるからねえ。
普通、言葉で考えると「lengthは10以上100未満?」て聞くじゃん。
「10は〜100は〜?」みたいな聞き方しないよね。
主語と動詞を逆にしちゃいけないと思う。
CやC++の頃は
if (length == 10) としたかったところをコーディングミスで
if (length = 10) にしてバグるのを防ぐ為に逆向きにしてた人を見受けたけど、いまどきはIDEがエラー出してくれるからねえ。
631デフォルトの名無しさん
2019/04/25(木) 12:49:03.99ID:M77Bu+mz IDEなくてもコンパイル時になんか出る。
632デフォルトの名無しさん
2019/04/25(木) 12:54:48.89ID:P7ID4Nfd >630
なるほど、確かにバグ防止で逆向きにも一理ある
面白いこと考えるね
なるほど、確かにバグ防止で逆向きにも一理ある
面白いこと考えるね
633デフォルトの名無しさん
2019/04/25(木) 13:03:38.24ID:myBoG5tn >>632
ヨーダ記法って言うやつ
ヨーダ記法って言うやつ
634デフォルトの名無しさん
2019/04/25(木) 13:14:11.32ID:wpotMNKo C言語では、左に代入できないものを書いていた
比較演算子と間違えて、代入演算子を使うと、コンパイルエラー
比較演算子と間違えて、代入演算子を使うと、コンパイルエラー
635デフォルトの名無しさん
2019/04/25(木) 13:15:44.93ID:D7t01tqT ヨーダ記法が可読性低いってのは散々言われてる
結局流行ってないしやらなくていい
結局流行ってないしやらなくていい
636デフォルトの名無しさん
2019/04/25(木) 13:44:40.50ID:nzEkPIBs 老害ってことや
637デフォルトの名無しさん
2019/04/25(木) 14:11:29.90ID:MiLFxbr9 老害にだけは成りたく無いと思ってました
638デフォルトの名無しさん
2019/04/25(木) 14:21:07.30ID:ap5qFTOn >>630
> 言葉で考えると「lengthは10以上100未満?」て聞くじゃん
なるほど、改めて思い起こすと言葉以上に図や式で考えているな
そういう資料を読み書きすることが多いからかもしれないが
10 length 100
--|----^----------|--
10 ≦ length < 100
他所のだけどイメージ
https://i.imgur.com/d5iRSb2.jpg
> 言葉で考えると「lengthは10以上100未満?」て聞くじゃん
なるほど、改めて思い起こすと言葉以上に図や式で考えているな
そういう資料を読み書きすることが多いからかもしれないが
10 length 100
--|----^----------|--
10 ≦ length < 100
他所のだけどイメージ
https://i.imgur.com/d5iRSb2.jpg
639デフォルトの名無しさん
2019/04/25(木) 21:25:32.13ID:BgXoud3L kotlin day4
kotlinc, kotlinコマンドの-classpathオプションの使い方でハマった。
>kotlin -cp jsoup-1.11.3.jar JsoupKt
error: could not find or load main class JsoupKt
こちらが正解
kotlin -cp .:jsoup-1.11.3.jar JsoupKt
なんか、変な仕様。そろそろbuild.gradleファイルの作り方を学ぶべきか?
kotlinc, kotlinコマンドの-classpathオプションの使い方でハマった。
>kotlin -cp jsoup-1.11.3.jar JsoupKt
error: could not find or load main class JsoupKt
こちらが正解
kotlin -cp .:jsoup-1.11.3.jar JsoupKt
なんか、変な仕様。そろそろbuild.gradleファイルの作り方を学ぶべきか?
640デフォルトの名無しさん
2019/04/25(木) 21:29:50.40ID:BgXoud3L あのぉー、Kotlinでスクレイピングしたいんですけど、
Jsoupがbest practice?
https://github.com/jhy/jsoup
実は、Javaも初心者なので、Kotlinへのmigrationでヘトヘト!
Jsoupがbest practice?
https://github.com/jhy/jsoup
実は、Javaも初心者なので、Kotlinへのmigrationでヘトヘト!
641デフォルトの名無しさん
2019/04/25(木) 22:45:02.30ID:k8swiVaB >>640
どんなサイトをスクレイピングしたいのかによるけど、javascriptをガンガン使ってるようなサイトならSeleniumが鉄板だと思うよ。
Jsoupでもjsを実行させられるらいしけど、とても辛いと聞いたことがある。基本的には静的なhtmlを扱うためのライブラリ。
どんなサイトをスクレイピングしたいのかによるけど、javascriptをガンガン使ってるようなサイトならSeleniumが鉄板だと思うよ。
Jsoupでもjsを実行させられるらいしけど、とても辛いと聞いたことがある。基本的には静的なhtmlを扱うためのライブラリ。
642デフォルトの名無しさん
2019/04/26(金) 09:47:20.98ID:MEdB7GvY >>641
thx
Kotlin day5
コマンドラインで、jsoupでスクレーピングするソースを作成できた。
昔を思い出して、実行にはMakefile作成して行った。
Makefile内で文字列操作(大文字小文字変換とか、文字列連結)とかできるかな?
Makefileはこんな感じ!
CC := kotlin
CFLAGS1 := -cp jsoup-1.11.3.jar -include-runtime
CFLAGS2 := -cp .:jsoup-1.11.3.jar
SRC := jsoup
all: go
go:
$(CC)c $(SRC).kt $(CFLAGS1)
$(CC) $(CFLAGS2) JsoupKt
~
thx
Kotlin day5
コマンドラインで、jsoupでスクレーピングするソースを作成できた。
昔を思い出して、実行にはMakefile作成して行った。
Makefile内で文字列操作(大文字小文字変換とか、文字列連結)とかできるかな?
Makefileはこんな感じ!
CC := kotlin
CFLAGS1 := -cp jsoup-1.11.3.jar -include-runtime
CFLAGS2 := -cp .:jsoup-1.11.3.jar
SRC := jsoup
all: go
go:
$(CC)c $(SRC).kt $(CFLAGS1)
$(CC) $(CFLAGS2) JsoupKt
~
643デフォルトの名無しさん
2019/04/26(金) 09:49:24.06ID:an8vMEsm >>642
makeが何かをわかっていたらそんな質問はしない
makeが何かをわかっていたらそんな質問はしない
644デフォルトの名無しさん
2019/04/26(金) 10:03:32.40ID:3DaeQ571645デフォルトの名無しさん
2019/04/26(金) 10:43:09.29ID:v018QqLA >>644
Selenium自体はテストとは無関係だよ、ただ用途としてテストツールと組み合わされることが多いだけ。
最近のサイトはReactとかで動的にガンガン組み立てられるからスクレイピングもSelenium使っておいた方が無難。
Selenium自体はテストとは無関係だよ、ただ用途としてテストツールと組み合わされることが多いだけ。
最近のサイトはReactとかで動的にガンガン組み立てられるからスクレイピングもSelenium使っておいた方が無難。
646デフォルトの名無しさん
2019/04/26(金) 13:23:49.21ID:A/WNBxWE Ruby, Nokogiri, Selenium WebDriver を使えば?
CSS Selector, XPath で、要素を指定する
driver.execute_script で、JavaScript のソースコードも実行できる
CSS Selector, XPath で、要素を指定する
driver.execute_script で、JavaScript のソースコードも実行できる
647デフォルトの名無しさん
2019/04/26(金) 14:28:56.17ID:5b9msznW Kotlin勉強してるって言ってるんだから別にRubyじゃなくていいだろ
648デフォルトの名無しさん
2019/04/26(金) 14:34:22.95ID:an8vMEsm NokogiriでXPathとCSSセレクタ使うならべつにこっちでも同じだと思うよ
649デフォルトの名無しさん
2019/04/26(金) 17:19:57.29ID:MEdB7GvY JsoupはNokogiriと違ってXPathを使ってDOMの操作ができない。
けど、使い方はNokogiriとよく似てる。
Androidアプリにスクレイピング機能を実装したいので、Ruby使えば?は却下!
けど、使い方はNokogiriとよく似てる。
Androidアプリにスクレイピング機能を実装したいので、Ruby使えば?は却下!
650デフォルトの名無しさん
2019/04/26(金) 17:21:05.67ID:MEdB7GvY ところでJsoupの名前の由来って何?
Java soup = Javaのスープ
変な名前。
Java soup = Javaのスープ
変な名前。
651デフォルトの名無しさん
2019/04/26(金) 17:57:42.91ID:TC/HkfSU いちいち聞かずに勉強しろと延々言われているのに守らないからそういうちぐはぐな恥を晒して支持を減らすことになる(君はすでに識別されている)
どうせPythonのBeautifulSoupのことも知らないしタグスープという言葉も知らんのだろう
…あ、後者は別に知らんでいいわ、知らない人が多いし正式な用語というわけでもないから
どうせPythonのBeautifulSoupのことも知らないしタグスープという言葉も知らんのだろう
…あ、後者は別に知らんでいいわ、知らない人が多いし正式な用語というわけでもないから
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 ∧_∧ / ̄ ̄
( ´∀`)< ド?
( ) \__
│ │ │
(__)___)
( ´∀`)< ド?
( ) \__
│ │ │
(__)___)
753デフォルトの名無しさん
2019/05/22(水) 13:10:44.21ID:o0mLtMWH iosアプリ作るのは現実的にいけそう?
754デフォルトの名無しさん
2019/05/22(水) 15:26:22.63ID:06P4CJxl いけるいける
755デフォルトの名無しさん
2019/05/22(水) 17:11:00.38ID:ddL9armR 大丈夫大丈夫、なんの問題もない
756デフォルトの名無しさん
2019/05/22(水) 19:37:38.21ID:N+dUt+tn 逆引きのAndroid開発用のKotlin本ないの?
Javaのはあるけどさ
Javaのはあるけどさ
757デフォルトの名無しさん
2019/05/22(水) 21:14:49.49ID:o0mLtMWH758デフォルトの名無しさん
2019/05/22(水) 22:18:54.87ID:mQdasoF8 うん、大丈夫、なにも心配することないから
759デフォルトの名無しさん
2019/05/23(木) 00:10:33.20ID:K2oq56d+760デフォルトの名無しさん
2019/05/23(木) 00:56:30.37ID:ClSxeVCE Kotlinでの競技プログラミングのコンテストがあるよ!
5月28日の23時35分から2時間半!
Kotlin Heroes Announcement
https://codeforces.com/blog/entry/67162
https://codeforces.com/contests/1170
5月28日の23時35分から2時間半!
Kotlin Heroes Announcement
https://codeforces.com/blog/entry/67162
https://codeforces.com/contests/1170
761デフォルトの名無しさん
2019/05/23(木) 01:52:40.87ID:kvy164Qh 英語で書かれた問題を解読するだけで2時間半が経過してしまいそうな予感
762デフォルトの名無しさん
2019/05/23(木) 02:45:36.97ID:K2oq56d+ >>760
IntがintになるかIntegerになるか考慮しないといけなかったらちょっと嫌だなあ。
IntがintになるかIntegerになるか考慮しないといけなかったらちょっと嫌だなあ。
763デフォルトの名無しさん
2019/05/23(木) 06:58:10.23ID:ZvIUMcmJ764デフォルトの名無しさん
2019/05/24(金) 09:20:43.95ID:1flrLOhd >>756
必要か?
必要か?
765デフォルトの名無しさん
2019/05/24(金) 13:57:22.09ID:WFuDBTgU Listの初期化って
var list = listOf<Hoge>()
と
var list :Hoge? = null
どっちがいいの?
var list = listOf<Hoge>()
と
var list :Hoge? = null
どっちがいいの?
766デフォルトの名無しさん
2019/05/24(金) 15:11:48.77ID:10iCK04b >>765
全く違うもの出されてどちらがと聞かれても・・・
全く違うもの出されてどちらがと聞かれても・・・
767デフォルトの名無しさん
2019/05/24(金) 16:53:05.84ID:cg0Vnpe0 >>765
その2つでいうなら下はリストを作れてないから上一択になるぞw
その2つでいうなら下はリストを作れてないから上一択になるぞw
768デフォルトの名無しさん
2019/05/24(金) 16:57:14.79ID:WFuDBTgU 間違えた下は
var list :List<Hoge>? = null
ね
これならどっちがいい?
var list :List<Hoge>? = null
ね
これならどっちがいい?
769デフォルトの名無しさん
2019/05/24(金) 16:59:34.27ID:cg0Vnpe0 どちらにせよその2つは作られる型が違う
nullableにする必要があるかどうかで使い分けろとしか
nullableにする必要があるかどうかで使い分けろとしか
770デフォルトの名無しさん
2019/05/24(金) 17:00:11.96ID:cg0Vnpe0 俺だったら何か理由がない限り上
771デフォルトの名無しさん
2019/05/24(金) 17:00:17.36ID:g+HqU4NL 特別な理由がない限り上はvarじゃなくてvalにすべきじゃない?
772デフォルトの名無しさん
2019/05/24(金) 17:15:07.02ID:WFuDBTgU773デフォルトの名無しさん
2019/05/24(金) 17:52:50.04ID:8qiM3xuo val にして空の MutableList 作るのは?
774デフォルトの名無しさん
2019/05/24(金) 18:01:30.45ID:XLHoRxVW 俺はemptyListだな
775デフォルトの名無しさん
2019/05/24(金) 18:03:21.78ID:6OR0USBX ?取るのめんどいから空のリストにしてくれ
776デフォルトの名無しさん
2019/05/24(金) 18:27:38.07ID:g+HqU4NL777デフォルトの名無しさん
2019/05/24(金) 18:51:13.35ID:xfff2+MO >>772
Kotlinにおいてはvarもnullableもごく限られた場面でしか使わない例外的なものだということは知っておいた方が良い。
nullableは無駄に取り扱いが面倒だったり、varは予期せぬバグを生み出す温床になり得るから。
なので
val list = mutableListof<Unko>()
が、大抵の場面で正解。
Kotlinにおいてはvarもnullableもごく限られた場面でしか使わない例外的なものだということは知っておいた方が良い。
nullableは無駄に取り扱いが面倒だったり、varは予期せぬバグを生み出す温床になり得るから。
なので
val list = mutableListof<Unko>()
が、大抵の場面で正解。
778デフォルトの名無しさん
2019/05/24(金) 19:42:38.12ID:Oa3ZkFre Unkoって何ですか
779デフォルトの名無しさん
2019/05/24(金) 20:03:18.59ID:g/LimCLF えっお前んちUnkoねーのだっせー
780デフォルトの名無しさん
2019/05/24(金) 20:04:30.18ID:6mh6tvLx かといって盲目的に mutable collection を使うのもどうかと思うがな
781デフォルトの名無しさん
2019/05/24(金) 20:17:54.95ID:73sdMVIH 盲目的も何もコンテキストが分からないんだから一般論としてvarを使うよりはMutableListを使う方が適してると言うしかないだろ
どんな状況でも何がなんでもMutableListを使えなんて誰も言ってない
どんな状況でも何がなんでもMutableListを使えなんて誰も言ってない
782デフォルトの名無しさん
2019/05/24(金) 20:23:02.45ID:73sdMVIH783デフォルトの名無しさん
2019/05/25(土) 05:49:19.79ID:wB1WneOU784デフォルトの名無しさん
2019/05/25(土) 06:37:38.07ID:fh0ztzaz lateinitはvalにできないから糞
785デフォルトの名無しさん
2019/05/25(土) 07:20:32.83ID:Kvnc/U5Q そんなご無体な
786デフォルトの名無しさん
2019/05/25(土) 08:02:42.85ID:9ELY4FpV valだけが正しい。valにできないなら新しいvalにコピーするべき
787768
2019/05/25(土) 10:50:32.51ID:VlF1HZqT788デフォルトの名無しさん
2019/05/25(土) 10:57:44.94ID:VlF1HZqT nullの警告が厳しいからこそ使うのはどうだろうか
nullならnullだと知らされるがemptyじゃ何の警告も出ない
nullならnullだと知らされるがemptyじゃ何の警告も出ない
789デフォルトの名無しさん
2019/05/25(土) 13:16:02.71ID:exhgzloH ・リスト自体を構築するケース
・listを使わないケースがかなりある and 非常に効率重視(※)なら
var list: List<Hoge>? = null
必要になったら list = mutableListOf()
・そうでないなら
val list = mutableListOf<Hoge>()
※mutableListOf(=ArrayListの生成コスト)すら許容出来ない場合
なおmutableListOfと比較するとlazyの準備処理の方がコストが掛かる
・場合によって構築済みリストを入れ替える(再代入)するケース
var list = listOf<Hoge>()
補足: listOf()はemptyListにinline展開されEmptyListのシングルトンを返すので生成コストは無い
>>765 >>772は再代入目的のようなのでlistOfで良い
・listを使わないケースがかなりある and 非常に効率重視(※)なら
var list: List<Hoge>? = null
必要になったら list = mutableListOf()
・そうでないなら
val list = mutableListOf<Hoge>()
※mutableListOf(=ArrayListの生成コスト)すら許容出来ない場合
なおmutableListOfと比較するとlazyの準備処理の方がコストが掛かる
・場合によって構築済みリストを入れ替える(再代入)するケース
var list = listOf<Hoge>()
補足: listOf()はemptyListにinline展開されEmptyListのシングルトンを返すので生成コストは無い
>>765 >>772は再代入目的のようなのでlistOfで良い
790デフォルトの名無しさん
2019/05/25(土) 13:19:44.44ID:F8alA812791デフォルトの名無しさん
2019/05/25(土) 17:48:30.03ID:AAsiXMmO Androidなどで、非同期処理が関わってくると、
valは注意して使わないといけない場面が、意外にたくさんあることに気が付く。
valは注意して使わないといけない場面が、意外にたくさんあることに気が付く。
792デフォルトの名無しさん
2019/05/25(土) 18:20:07.77ID:lux9UzI+ Activityのbindingはby lazyのval
Fragmentのbindingはlateinit var
Fragmentのbindingはlateinit var
793デフォルトの名無しさん
2019/05/26(日) 23:17:26.29ID:/1jO9AOV >>765
そもそもローカル変数の話なのかプロパティの話なのか…
そもそもローカル変数の話なのかプロパティの話なのか…
794デフォルトの名無しさん
2019/05/27(月) 12:03:53.57ID:j1Bw0s67 emptyListってシングルトンだから生成コストがないってのは分かるんだけど、
今時その程度の生成コストを気にする場面ってそんなない気もする
富豪的プログラミングなんて言われるかもしれんけど、もはやそれ自体死語だしな
今時その程度の生成コストを気にする場面ってそんなない気もする
富豪的プログラミングなんて言われるかもしれんけど、もはやそれ自体死語だしな
795デフォルトの名無しさん
2019/05/27(月) 12:57:29.86ID:ffeERoRR796デフォルトの名無しさん
2019/05/27(月) 13:34:53.60ID:IGUdGZaE valで都度変数作るからなぁ
797デフォルトの名無しさん
2019/05/27(月) 14:33:20.72ID:24xkxhR7 プロパティの話ね
mutableにしてもそもそも生成は別のところでListごと作るからmutableだろうがListだろうが関係ない
当然後から代入するからvalにはできない
mutableにしてもそもそも生成は別のところでListごと作るからmutableだろうがListだろうが関係ない
当然後から代入するからvalにはできない
798デフォルトの名無しさん
2019/05/27(月) 14:57:26.23ID:EJcO498B copyメソッド
799デフォルトの名無しさん
2019/05/27(月) 23:34:59.34ID:s432cqVY サーバーサイドばっかだからかもしれんがプロパティにMutableListを使うことがそうそう無い
データクラスのコンストラクタ引数に val list: List はよくある
データクラスのコンストラクタ引数に val list: List はよくある
800デフォルトの名無しさん
2019/05/27(月) 23:56:54.45ID:zFWKvIPE 内部DSLとかの指示を構築する系の実装で使うかな
801デフォルトの名無しさん
2019/05/28(火) 05:58:36.43ID:sEeuOOEX サーバーサイドかどうか関係なくない?
俺はよく使うよ。例えばツリー構造になってるデータを読み込む処理で自分の子ノードのリストを持つため、とか、これ昨日書いた。
俺はよく使うよ。例えばツリー構造になってるデータを読み込む処理で自分の子ノードのリストを持つため、とか、これ昨日書いた。
802デフォルトの名無しさん
2019/05/28(火) 06:33:15.65ID:f4BtQ/HR val text = ""
って
val text :String = ""
って書いた方がいい?
って
val text :String = ""
って書いた方がいい?
803デフォルトの名無しさん
2019/05/28(火) 07:05:11.16ID:Bdaqy37y804デフォルトの名無しさん
2019/05/28(火) 08:10:42.72ID:sEeuOOEX >>802
いらない。何をどう見ても明らかにStringだから意味ない。
いらない。何をどう見ても明らかにStringだから意味ない。
805デフォルトの名無しさん
2019/05/28(火) 23:54:42.49ID:g+jKUI0N >>802
Javaのvarで似たような議論がある。
https://orablogs-jp.blogspot.com/2018/03/style-guidelines-for-local-variable.html
Javaのvarで似たような議論がある。
https://orablogs-jp.blogspot.com/2018/03/style-guidelines-for-local-variable.html
806デフォルトの名無しさん
2019/05/29(水) 01:39:37.10ID:KhqOXHGU Kotlinに、SwiftのExpressibleByStringLiteralみたいなのが無くて本当に良かったと思う
あれは呪いだ
あれは呪いだ
807デフォルトの名無しさん
2019/05/29(水) 02:17:57.59ID:Qb2i3AGM >>802 は、IntelljIDEA か Android Studio 使ってないのかね?
警告消して緑色になるようがんばれ
おれは警告にどうしても従えない場合でも、アノテーション使って絶対緑色にする
警告消して緑色になるようがんばれ
おれは警告にどうしても従えない場合でも、アノテーション使って絶対緑色にする
808デフォルトの名無しさん
2019/05/29(水) 04:33:25.97ID:XoYuC6Fl Charは'a'なのね
809デフォルトの名無しさん
2019/05/29(水) 06:05:24.96ID:ouhOLTM0 >>806
なにそれ?
なにそれ?
810デフォルトの名無しさん
2019/05/29(水) 07:50:04.16ID:KhqOXHGU811デフォルトの名無しさん
2019/05/31(金) 14:21:13.30ID:Jjn+Dq6k >>806
PHPだと1リクエストごとにFWの初期化処理を行っているのが遅い理由でしょ
特にLaravelは読み込むファイルも多いし重い
他の言語だとアプリケーションサーバ起動時に一回だけ初期化処理をするので1リクエストあたりの処理が少ない
PHPでもSwooleやReactPHPなどを使えば同じことはできるけど、まあ既存のFWを乗っけてもバグりやすいだろうね
PHPだと1リクエストごとにFWの初期化処理を行っているのが遅い理由でしょ
特にLaravelは読み込むファイルも多いし重い
他の言語だとアプリケーションサーバ起動時に一回だけ初期化処理をするので1リクエストあたりの処理が少ない
PHPでもSwooleやReactPHPなどを使えば同じことはできるけど、まあ既存のFWを乗っけてもバグりやすいだろうね
812デフォルトの名無しさん
2019/05/31(金) 18:46:44.28ID:R6sHUJ5K なんの話だよ
813デフォルトの名無しさん
2019/05/31(金) 22:32:24.72ID:VAUlN9pw やべぇやつが来たなwww
814デフォルトの名無しさん
2019/06/01(土) 07:53:39.61ID:6Ne8KtIA 普通に誤爆でしょ
815デフォルトの名無しさん
2019/06/01(土) 11:37:30.64ID:OCCxHMSa android用途:元気
サーバーサイド用途:全く流行らず
kotlin/native: 瀕死
kotlin.js: 死亡
現状こんな認識なんだけど合ってる?
サーバーサイド用途:全く流行らず
kotlin/native: 瀕死
kotlin.js: 死亡
現状こんな認識なんだけど合ってる?
816デフォルトの名無しさん
2019/06/01(土) 11:43:16.53ID:HBXiOctn Xamarin程の糞はない
817デフォルトの名無しさん
2019/06/01(土) 12:20:19.48ID:oJ6AvSx+ >>815
Kotlin nativeはなんかもう不死鳥とかみたく蘇ったりする予定なので書いておいてください
Kotlin nativeはなんかもう不死鳥とかみたく蘇ったりする予定なので書いておいてください
818デフォルトの名無しさん
2019/06/01(土) 14:59:33.17ID:7bqJsR1f 身内のGraalにトドメ刺されて終わりだろ。
819デフォルトの名無しさん
2019/06/01(土) 15:47:15.77ID:v1/bDBif /NativeがGraalにやられても/JVMがスイッチするから大丈夫
820デフォルトの名無しさん
2019/06/01(土) 16:20:49.17ID:4wvh7Cn2 >>815
合ってる
合ってる
821デフォルトの名無しさん
2019/06/01(土) 16:55:01.52ID:uuPo6pHP nativeはまだ作成中みたいな感じなので瀕死とは違うと思うが
822デフォルトの名無しさん
2019/06/01(土) 17:46:40.68ID:xELmXxSQ Kotlinを勉強し始めたんだけどさあ
これってレファレンスを見てエディタで打ち込む->kotlincでコンパイル=>javaで動かす・・・・ってのを繰り返さないとならんの?
Swiftに言う「swift asdf.swift」みたいなのに相当するコマンドはないのかしら
これってレファレンスを見てエディタで打ち込む->kotlincでコンパイル=>javaで動かす・・・・ってのを繰り返さないとならんの?
Swiftに言う「swift asdf.swift」みたいなのに相当するコマンドはないのかしら
823デフォルトの名無しさん
2019/06/01(土) 17:49:07.58ID:FZbdo0L3 そうか。合ってるか。。
サーバーサイド kotlinが流行ってないのは何でなんだろ。
現状問題なく使えるように思うけど、ほとんど開発案件出てこないね。
サーバーサイド kotlinが流行ってないのは何でなんだろ。
現状問題なく使えるように思うけど、ほとんど開発案件出てこないね。
824デフォルトの名無しさん
2019/06/01(土) 17:50:33.82ID:v1/bDBif825デフォルトの名無しさん
2019/06/01(土) 17:51:43.68ID:FZbdo0L3 >>822
まずintellij(IDE)をインストールしないと始まらない
まずintellij(IDE)をインストールしないと始まらない
826デフォルトの名無しさん
2019/06/01(土) 18:32:24.41ID:7x5on0RN このスレ定期的にkotlinc使う奴が出てくるよな
どこぞの入門サイトに書いてあるんかね
どう考えてもintellij使う前提の言語なのに
どこぞの入門サイトに書いてあるんかね
どう考えてもintellij使う前提の言語なのに
827デフォルトの名無しさん
2019/06/01(土) 18:32:52.15ID:7x5on0RN >>823
サーバーサイドKotlinで生きていきたいけど、仕事なさすぎて難しいよなあ
サーバーサイドKotlinで生きていきたいけど、仕事なさすぎて難しいよなあ
828デフォルトの名無しさん
2019/06/01(土) 19:41:31.36ID:4wvh7Cn2829デフォルトの名無しさん
2019/06/01(土) 20:59:16.14ID:f9ycqMAV うちはサーバーサイドで使ってるわ
ほぼ俺しか書いてないが
ほぼ俺しか書いてないが
830デフォルトの名無しさん
2019/06/01(土) 22:10:50.15ID:GQlgchjf YouTube に動画をアップしてる、KENTA でも、
サーバーサイドの、Elixir, Kotlin などを受注するのに苦労してる。
彼は、変わった言語の仕事に、こだわる
こういう仕事は、滅多に出回らないから、ツテから入るのかも。
KENTAは千以上、名刺交換してるとか
彼は、GUI は嫌いらしい。
画面の修正で、時間を食うのが、嫌いらしい
数ピクセル、位置が違うとか、
修正したら、違う人が、元に戻せと言ったりw
GUI は、技術を学ぶ、時間効率が悪いから、嫌いらしい。
だから、サーバーサイドの仕事を取る
サーバーサイドの、Elixir, Kotlin などを受注するのに苦労してる。
彼は、変わった言語の仕事に、こだわる
こういう仕事は、滅多に出回らないから、ツテから入るのかも。
KENTAは千以上、名刺交換してるとか
彼は、GUI は嫌いらしい。
画面の修正で、時間を食うのが、嫌いらしい
数ピクセル、位置が違うとか、
修正したら、違う人が、元に戻せと言ったりw
GUI は、技術を学ぶ、時間効率が悪いから、嫌いらしい。
だから、サーバーサイドの仕事を取る
831デフォルトの名無しさん
2019/06/01(土) 22:33:39.21ID:v1/bDBif 歌詞かな
832デフォルトの名無しさん
2019/06/01(土) 22:48:31.29ID:ZDO2fOJr サーバーサイド普通に使ってるぞ
lombok駆使するよりいいと思う
lombok駆使するよりいいと思う
833デフォルトの名無しさん
2019/06/01(土) 23:07:41.16ID:jNRuoNdG >>830
海外の方?
海外の方?
834デフォルトの名無しさん
2019/06/01(土) 23:08:06.44ID:vdsZQvk5 ポエムだぞ
835デフォルトの名無しさん
2019/06/02(日) 01:28:53.78ID:/69WsxDT >>830
「、」で区切り過ぎ。その文章の場合は全ての「、」を削除した方が読みやすい。
「、」で区切り過ぎ。その文章の場合は全ての「、」を削除した方が読みやすい。
836デフォルトの名無しさん
2019/06/02(日) 01:33:22.19ID:/69WsxDT >>822
IntelliJ 使った方が楽だが、kotlinc でコマンドラインでやるとしたら最後の実行は kotlin コマンドでできるよ。
kotlinc xxx.kt
kotlin XxxKt
みたいにする。
kotlin コマンドは環境変数セットしたりして最終的に java を動かす。
IntelliJ 使った方が楽だが、kotlinc でコマンドラインでやるとしたら最後の実行は kotlin コマンドでできるよ。
kotlinc xxx.kt
kotlin XxxKt
みたいにする。
kotlin コマンドは環境変数セットしたりして最終的に java を動かす。
837デフォルトの名無しさん
2019/06/02(日) 10:05:23.69ID:80ueDuoq で、サーバサイドkotlinのこれからについての認識なんやけど合ってる?
・実戦投入可能なレベルに達している
・goが選ばれるような案件では以下の点でgoに勝てないので流行らない
→粒度の細かいマイクロサービス:deploy容易性がgoに劣る、kotlinの抽象力が活き辛い
→aws lambdaとか:上記に加えてjvmが温まるまで遅い
・モノリシック案件のbetter javaとしては第一候補
→フルスタックFWが有望でspring bootが最有力
→必然的にSIerの仕事が多くなる
・SIerが最重要視するのは実績
→実績を積むには待つしかない
・実戦投入可能なレベルに達している
・goが選ばれるような案件では以下の点でgoに勝てないので流行らない
→粒度の細かいマイクロサービス:deploy容易性がgoに劣る、kotlinの抽象力が活き辛い
→aws lambdaとか:上記に加えてjvmが温まるまで遅い
・モノリシック案件のbetter javaとしては第一候補
→フルスタックFWが有望でspring bootが最有力
→必然的にSIerの仕事が多くなる
・SIerが最重要視するのは実績
→実績を積むには待つしかない
838デフォルトの名無しさん
2019/06/02(日) 10:08:10.88ID:80ueDuoq kotlin/nativeは「hello world」を「hello world!」にするだけでビルドに7sかかるんやけど。。
こんなもんなん?何かやり方間違ってるのかな。
こんなもんなん?何かやり方間違ってるのかな。
839デフォルトの名無しさん
2019/06/02(日) 10:25:57.88ID:klo8W86L >>837
受託の業界は知らんけど、WEB業界なら今までJavaやらScalaやら使ってたところはもう大体使えるところから使い始めてる。
ただそもそも日本のWEB業界ではJavaが不人気過ぎてどうしてもニッチの部類に留まってるわな。
生存戦略としてはとにかく仕事の多いRailsやらをやるか、仕事は少ないが応募者も少ないKotlinを極めるか、まあどちらでもありっちゃあり
どうせ5年後には違う技術が台頭してるし
受託の業界は知らんけど、WEB業界なら今までJavaやらScalaやら使ってたところはもう大体使えるところから使い始めてる。
ただそもそも日本のWEB業界ではJavaが不人気過ぎてどうしてもニッチの部類に留まってるわな。
生存戦略としてはとにかく仕事の多いRailsやらをやるか、仕事は少ないが応募者も少ないKotlinを極めるか、まあどちらでもありっちゃあり
どうせ5年後には違う技術が台頭してるし
840デフォルトの名無しさん
2019/06/02(日) 11:16:42.46ID:uIkDYzKb 既存のJavaからKotlinはあっても、そもそも新規でJVM選択するかなっていう
841デフォルトの名無しさん
2019/06/02(日) 12:06:59.02ID:TDNwqEN9 sunが震え声で
ハードの進化でJVMのパフォーマンスは向上していくから…
って言ってから何年経ったのか
ハードの進化でJVMのパフォーマンスは向上していくから…
って言ってから何年経ったのか
842デフォルトの名無しさん
2019/06/02(日) 12:13:33.66ID:UpSyXruc PHPで作ってたけどパフォーマンスが出なくなって来たからJavaで作り直す、みたいなのはよく聞くな
同じ理由で昔はRailsからJavaってのもあったけど最近のRailsは速いからあまり聞かなくなった
同じ理由で昔はRailsからJavaってのもあったけど最近のRailsは速いからあまり聞かなくなった
843デフォルトの名無しさん
2019/06/02(日) 14:27:04.47ID:Kbt/vpV3 Rails ができれば、コピーのCakePHP も出来る
違う言語だけど
違う言語だけど
844デフォルトの名無しさん
2019/06/02(日) 14:47:02.52ID:530n/55/ Rubyキチ、無視しろ。
845デフォルトの名無しさん
2019/06/02(日) 14:52:37.88ID:LUUGWxBq php8()
846デフォルトの名無しさん
2019/06/02(日) 15:29:19.09ID:sHGNUntV 新規でサーバ側でkotlinで作ってもらったけど
少数派なのか。
まあ、何ができるかが大事だからいいけど、流行に左右されるのは厳しいね。
少数派なのか。
まあ、何ができるかが大事だからいいけど、流行に左右されるのは厳しいね。
847デフォルトの名無しさん
2019/06/02(日) 16:54:37.31ID:/69WsxDT848デフォルトの名無しさん
2019/06/02(日) 21:44:03.80ID:xSU5v8RX 結構Java嫌いな人多いんだね。自分もJavaは好きじゃないけど。
>>840
Javaが検討される規模のWEBサービス作る時にJVM以外の選択肢って例えば何かあるのかな?
>>841
Javaの出始めと比べたら劇的に進化してSunの言う通りになったと思うけどな。
Java離脱組もパフォーマンスじゃなくて開発効率やサービスの拡張性を気にしてる。
>>846
少数派なのはそうなんだけど、依頼側から見たサーバーサイドkotlinのデメリットは
・現状では開発者が少ない=人が集まらないことによる遅延、開発者単価
・実績がない=未知の何かが起こるかも
なのでローンチ出来てる時点でデメリットは乗り越えているし、
Android界隈では確固たる位置にいるからこの先メンテ人材が見つからない心配もない。(←ここが流行に左右されて困るポイント)
悪くない選択だったと思うんだけど
>>840
Javaが検討される規模のWEBサービス作る時にJVM以外の選択肢って例えば何かあるのかな?
>>841
Javaの出始めと比べたら劇的に進化してSunの言う通りになったと思うけどな。
Java離脱組もパフォーマンスじゃなくて開発効率やサービスの拡張性を気にしてる。
>>846
少数派なのはそうなんだけど、依頼側から見たサーバーサイドkotlinのデメリットは
・現状では開発者が少ない=人が集まらないことによる遅延、開発者単価
・実績がない=未知の何かが起こるかも
なのでローンチ出来てる時点でデメリットは乗り越えているし、
Android界隈では確固たる位置にいるからこの先メンテ人材が見つからない心配もない。(←ここが流行に左右されて困るポイント)
悪くない選択だったと思うんだけど
849デフォルトの名無しさん
2019/06/03(月) 23:56:34.84ID:JEDLjuFd JVMの性能は実行時最適化が強みだから
ベンチマーク系は不利
巨大なプログラムで長時間の動作において有利なはず
にもかかわらずベンチマークでもそこそこ速いんだからすごいのでは
ベンチマーク系は不利
巨大なプログラムで長時間の動作において有利なはず
にもかかわらずベンチマークでもそこそこ速いんだからすごいのでは
850デフォルトの名無しさん
2019/06/04(火) 00:08:19.43ID:8w4/id00 いや実行時最適化は繰り返し実行される処理に対して効くからベンチマークには強いぞ
立ち上がりの遅さとか、ベンチマークに現れない体感的な部分がJVMは遅い
事実上サーバー専用だから仕方ないが
立ち上がりの遅さとか、ベンチマークに現れない体感的な部分がJVMは遅い
事実上サーバー専用だから仕方ないが
851デフォルトの名無しさん
2019/06/04(火) 02:28:23.05ID:Xu6aOKJJ JVMはガーベッジコレクションでスローダウンするから未だに使い物にならない。
一番大事な時に直撃で機会損失が億いくと違約金も凄まじかったぜ。
一番大事な時に直撃で機会損失が億いくと違約金も凄まじかったぜ。
852デフォルトの名無しさん
2019/06/04(火) 06:40:04.13ID:1zKcF7rp 果てしなく嘘くさいな
シビアなシステムでどれだけ使われてると思ってるんだ
シビアなシステムでどれだけ使われてると思ってるんだ
853デフォルトの名無しさん
2019/06/04(火) 07:41:14.05ID:zxBnyDUV 10年以上前からあるコンカレントGCすら知らないような会社なんだろう
854デフォルトの名無しさん
2019/06/04(火) 08:08:31.64ID:LGhp/e10 業務用Javaに関しては新機能が使われずなおかつアプデなしで10年経過とか普通にあるからな
それはそれでもいいから対外的にJava語るなって話なんだが
それはそれでもいいから対外的にJava語るなって話なんだが
855デフォルトの名無しさん
2019/06/04(火) 08:20:13.77ID:1zKcF7rp 例のみずほのサグラダファミリアもJava1.5という噂を聞いたけどマジなんかな
856デフォルトの名無しさん
2019/06/04(火) 10:17:08.75ID:prB+PlYz ネイティブでgc使わないようなコードも出せるようになればなんとかなりそうな気もするが、そうするとライブラリもそれ用のを使わないとダメか。
857デフォルトの名無しさん
2019/06/04(火) 11:48:04.89ID:+GlxYcps graalvmでできるぞ
858デフォルトの名無しさん
2019/06/04(火) 12:44:23.82ID:zxBnyDUV それ回収しないやつじゃないですかね
859デフォルトの名無しさん
2019/06/04(火) 18:10:17.62ID:/4mAZqwS JVMが使い物にならないという人が何を使っているのかとても気になる
860デフォルトの名無しさん
2019/06/04(火) 18:49:03.68ID:Rd1vYitp JVM入りの指輪使ってます!
861デフォルトの名無しさん
2019/06/04(火) 19:32:40.19ID:+GlxYcps jvmの引数でもGCのラグを解消できるし
最新のZGCというのも出てきた
最新のZGCというのも出てきた
862デフォルトの名無しさん
2019/06/04(火) 23:57:50.92ID:FDlJBmR7 JVMというかspring fwの起動が糞遅いのは分かる
2.0になって少しましになったけど…
2.0になって少しましになったけど…
863デフォルトの名無しさん
2019/06/05(水) 01:12:19.63ID:PtZsxspX springってそんな遅いっけ?
864デフォルトの名無しさん
2019/06/05(水) 10:00:02.20ID:zKfENgey 気のせいかわからんがKotlinでspringやると遅いような気がする
865デフォルトの名無しさん
2019/06/05(水) 10:01:33.26ID:C+IWDk26 Ktor流行って欲しい
866デフォルトの名無しさん
2019/06/05(水) 10:13:38.35ID:gaDZjJ4I867デフォルトの名無しさん
2019/06/05(水) 13:28:31.33ID:B3mDB84e868デフォルトの名無しさん
2019/06/05(水) 19:11:23.87ID:i1hhoL96 >>866
Ktorをその並びで並べるのはちょっと違うと思う。
Ktorをその並びで並べるのはちょっと違うと思う。
869デフォルトの名無しさん
2019/06/05(水) 21:56:16.86ID:Nwu/rjvu >>868
kotlin/jvmはJava代替でSIerによるフルスタックFW&モノリシック開発が向いている
kotlin/nativeはGo代替を目指していてWeb系企業のマイクロサービスが向いている
kotlin/jvm+ktorではGOに勝てるユースケースが無いので
ktor流行にはkotlin/nativeの流行も必須というのが自分の主張。
まあ異論はあると思う。ちなみにkotlin/nativeは応援してるしktorも流行ってほしい
kotlin/jvmはJava代替でSIerによるフルスタックFW&モノリシック開発が向いている
kotlin/nativeはGo代替を目指していてWeb系企業のマイクロサービスが向いている
kotlin/jvm+ktorではGOに勝てるユースケースが無いので
ktor流行にはkotlin/nativeの流行も必須というのが自分の主張。
まあ異論はあると思う。ちなみにkotlin/nativeは応援してるしktorも流行ってほしい
870デフォルトの名無しさん
2019/06/06(木) 00:14:12.91ID:crlHsY/g871デフォルトの名無しさん
2019/06/06(木) 05:38:57.73ID:AHPkvIjM872デフォルトの名無しさん
2019/06/06(木) 06:33:47.56ID:DDFFQDhW そもそもKtorってJVM、というかServletに依存してね
873デフォルトの名無しさん
2019/06/06(木) 09:26:51.24ID:B66i5Eyn 依存はしてなくね
874デフォルトの名無しさん
2019/06/06(木) 10:59:43.79ID:72rhxhib 次のリリースでkotlin/nativeのbuild時間が改善されそう
リリースいつなんだろ。。
リリースいつなんだろ。。
875デフォルトの名無しさん
2019/06/06(木) 12:47:51.63ID:rJJBtVPp 利根川さんにでも聞け
876デフォルトの名無しさん
2019/06/06(木) 20:06:45.07ID:UUcOWqLu kotlin/nativeはGraal(AOT)に勝てるかどうかすら怪しいのに、夢見過ぎだろ。
877デフォルトの名無しさん
2019/06/06(木) 20:44:18.25ID:tk55iQ4S ktsって誰も使ってなさそう
878デフォルトの名無しさん
2019/06/06(木) 21:14:00.21ID:DsfM5wVX Gradleで使う
879デフォルトの名無しさん
2019/06/07(金) 08:15:36.89ID:XGKtoEgu880デフォルトの名無しさん
2019/06/07(金) 08:44:09.41ID:XGKtoEgu >>879の補足
Graal側はAArch64/Linux対応が完成してからiOS対応をやるかどうか検討するとのこと
https://github.com/oracle/graal/issues/373#issuecomment-454697157
まだAArch64/Linux整備中の段階
https://github.com/oracle/graal/commits?author=sanzinger&since=2019-05-15&until=2019-06-07
iPhone/iPadのチップ : A10〜A12X : ARMv8ベース
ARMv8の64ビットモードがAArch64
Graal側はAArch64/Linux対応が完成してからiOS対応をやるかどうか検討するとのこと
https://github.com/oracle/graal/issues/373#issuecomment-454697157
まだAArch64/Linux整備中の段階
https://github.com/oracle/graal/commits?author=sanzinger&since=2019-05-15&until=2019-06-07
iPhone/iPadのチップ : A10〜A12X : ARMv8ベース
ARMv8の64ビットモードがAArch64
881デフォルトの名無しさん
2019/06/07(金) 16:14:27.25ID:5OmdT0Za kotlin/nativeのメインターゲットはiOS開発なんだろうと思う。
882デフォルトの名無しさん
2019/06/07(金) 16:40:27.70ID:xSr7j0ut 普通に考えりゃそうだわな
883デフォルトの名無しさん
2019/06/07(金) 16:53:00.43ID:q0RmewW9 Swiftネイティブでいいじゃん、他にはUnityもあるし。
入り込む余地ないでしょ。
入り込む余地ないでしょ。
884デフォルトの名無しさん
2019/06/07(金) 19:12:00.19ID:uzdYHfME 釣り針は大きすぎちゃいかんのだぞ
885デフォルトの名無しさん
2019/06/09(日) 13:55:10.20ID:pv0ZpPmn kotlin3大いいところ
・android標準という安心感(直ぐには廃れない)
・モダンな書き方ができる(arrowもあるし)
あと1つは?
・android標準という安心感(直ぐには廃れない)
・モダンな書き方ができる(arrowもあるし)
あと1つは?
886デフォルトの名無しさん
2019/06/09(日) 14:23:05.48ID:LrdSIDEQ >>885
Listが基本immutableなことやnull安全はモダンに含まれるのかな?
標準という意味ではGradleの記述言語としてもサポートされているので、廃れにくいかなと思っている。
個人的にはDSLを3つ目として挙げたい。
Listが基本immutableなことやnull安全はモダンに含まれるのかな?
標準という意味ではGradleの記述言語としてもサポートされているので、廃れにくいかなと思っている。
個人的にはDSLを3つ目として挙げたい。
887デフォルトの名無しさん
2019/06/09(日) 14:43:33.75ID:zgQq0a06 JVMで動く言語でJavaのライブラリそのまま使えるのが良い
これに関してはKotlinである必用はないのだが、その他の利点の上に更にこれがあるのが良い
これに関してはKotlinである必用はないのだが、その他の利点の上に更にこれがあるのが良い
888デフォルトの名無しさん
2019/06/09(日) 16:29:58.10ID:SDScvKJ1 最新のjavaも随分進化したから、そこまでkotlinにこだわらねえ。
kotlinがjavaや.netみたく自前の最初からnull安全なクラスライブラリ備えてるなら別だけど。
kotlinがjavaや.netみたく自前の最初からnull安全なクラスライブラリ備えてるなら別だけど。
889デフォルトの名無しさん
2019/06/09(日) 16:35:14.81ID:yULR2w5s 逆にあえてJavaを使う理由が特に思い当たらんからとりあえずKotlin使うわ
890デフォルトの名無しさん
2019/06/09(日) 19:10:48.79ID:TX+aAcRC Javaに新機能が追加されてもざんねんなJava部分が消えるわけではないので
可能であるなら最初からKotlinでやりたいかな
可能であるなら最初からKotlinでやりたいかな
891デフォルトの名無しさん
2019/06/09(日) 22:02:36.62ID:LrdSIDEQ >>888
自分も最初はラムダもOptionalもあるからとそう思っていたけど、immutable programmingで行こうと思った時に、
Listがimmutableであることを保証する方法がないことに気づいてKotlinへの移住を思い切った。
immutable programmingはそれほど実現しなかったと反省しているが、
Kotlin/JSやbuild.gradle.ktsとかも出来たので後悔はしていない。
自分も最初はラムダもOptionalもあるからとそう思っていたけど、immutable programmingで行こうと思った時に、
Listがimmutableであることを保証する方法がないことに気づいてKotlinへの移住を思い切った。
immutable programmingはそれほど実現しなかったと反省しているが、
Kotlin/JSやbuild.gradle.ktsとかも出来たので後悔はしていない。
892デフォルトの名無しさん
2019/06/10(月) 10:30:03.83ID:5WqM3fpA うちももう新規追加は全部Kotlinだわ
だってJavaで書くメリットがマジで何もないんだもん
だってJavaで書くメリットがマジで何もないんだもん
893デフォルトの名無しさん
2019/06/10(月) 10:36:29.16ID:rgxxUvbF javaで仕事してるやつ転職できなくなるぞ
894デフォルトの名無しさん
2019/06/10(月) 11:17:01.74ID:g6tidy/F coboちゃんが入れ替わっただけの蛇腹は逝ってヨシ
895デフォルトの名無しさん
2019/06/10(月) 13:43:04.79ID:5WqM3fpA896デフォルトの名無しさん
2019/06/10(月) 23:11:05.39ID:f1GGY3g+ kotlin書いてる人は何の仕事してるの?
やっぱandroid?
やっぱandroid?
897デフォルトの名無しさん
2019/06/11(火) 05:51:34.27ID:qT8Bq+lF サーバーサイド
7割SpringBoot3割sparkその他
7割SpringBoot3割sparkその他
898デフォルトの名無しさん
2019/06/11(火) 05:52:20.89ID:qT8Bq+lF 2年くらい前まで都市伝説レベルだったサーバーサイドKotlinも最近は勉強会でよく見かけるようになったんだ
899デフォルトの名無しさん
2019/06/11(火) 07:18:21.72ID:G5A56vfp できればkotlinで作りたいって言われてサーバー側のプログラムを作ってもらった。
DBサーバは別で画面制御だけ。
自分でも勉強しようと思ってこのスレッドを見てるところ。
DBサーバは別で画面制御だけ。
自分でも勉強しようと思ってこのスレッドを見てるところ。
900デフォルトの名無しさん
2019/06/11(火) 15:06:52.23ID:1jV87VfI そっか。サーバサイドkotlin順調に普及してきてるんやね。ワイの周り以外では。
うらやましい!
うらやましい!
901デフォルトの名無しさん
2019/06/11(火) 17:51:05.94ID:PKI+0nSq ほぼ0だったのがようやく1になったくらいで、まだまだマイナーだけどね
902デフォルトの名無しさん
2019/06/11(火) 19:13:42.98ID:oFYgO+/L 分布が0から1になったら制圧完了じゃないか
903デフォルトの名無しさん
2019/06/13(木) 09:02:41.37ID:t9tRfwUY kotlinは関数型も取り入れてるし
色々欲張り過ぎで言語仕様複雑化してるイメージがあるんだけど
実際使っててどうなの?
kotlinプロジェクトはコーディングスタイルが多様化しそう
色々欲張り過ぎで言語仕様複雑化してるイメージがあるんだけど
実際使っててどうなの?
kotlinプロジェクトはコーディングスタイルが多様化しそう
904デフォルトの名無しさん
2019/06/13(木) 10:04:02.16ID:7TzYdFG0 >>902
プログラマならまずそう思うわなw
プログラマならまずそう思うわなw
905デフォルトの名無しさん
2019/06/13(木) 17:30:55.80ID:rjthL9V0 AndroidStudioやVSCode(mathiasfrohlichのKotlin Language機能拡張)で学習してるんだけどさ
どちらにしてもスペルミスは文字の色である程度わかるけど、文法が間違っててもその場で指摘してくれるわけじゃないのね
ある程度身につくまで文法間違いやを教えてくれるとありがたいんだけどそういうのはないのかな?
どちらにしてもスペルミスは文字の色である程度わかるけど、文法が間違っててもその場で指摘してくれるわけじゃないのね
ある程度身につくまで文法間違いやを教えてくれるとありがたいんだけどそういうのはないのかな?
906デフォルトの名無しさん
2019/06/13(木) 17:36:07.23ID:5KTA02i+ 文法間違いとはなんぞや
一応、実行できないくらい間違ってる場合はIntelliJ系だと「現時点で解釈不能でわけわかんないです」「これを書いてるつもりの場合は〇〇が必要です」って下に英語でちょろっと出る
一応、実行できないくらい間違ってる場合はIntelliJ系だと「現時点で解釈不能でわけわかんないです」「これを書いてるつもりの場合は〇〇が必要です」って下に英語でちょろっと出る
907デフォルトの名無しさん
2019/06/13(木) 18:20:30.31ID:KlaL+iOR 文法間違いは普通に赤線で指摘されるだろ
908デフォルトの名無しさん
2019/06/13(木) 19:19:37.31ID:t9tRfwUY kotlinのバグ発生率はJavaより低いですか?
909デフォルトの名無しさん
2019/06/13(木) 19:22:16.85ID:5KTA02i+ Javaのバグ発生率を教えてくれたら考えてあげてもいいよ
同じような式で計算して出すから
同じような式で計算して出すから
910デフォルトの名無しさん
2019/06/13(木) 19:32:38.72ID:BCeAlBQy911デフォルトの名無しさん
2019/06/13(木) 19:38:53.30ID:t9tRfwUY >>909
https://web.cs.ucdavis.edu/~filkov/papers/lang_github.pdf
>Java−0.01 (0.04)
Javaはいろいろな言語の中で平均的なバグ発生率のようです。
Kotlinはこの表にありません。
https://web.cs.ucdavis.edu/~filkov/papers/lang_github.pdf
>Java−0.01 (0.04)
Javaはいろいろな言語の中で平均的なバグ発生率のようです。
Kotlinはこの表にありません。
912デフォルトの名無しさん
2019/06/13(木) 19:43:19.29ID:t9tRfwUY Javaのバグ発生率は、
同じ領域で使われていると思われるC++,C#,Pythonと比べて最も低いです。
つまり、カーネルやデバドラやブラウザ系でなければJavaが一番優秀に思えます。
しかしKotlinはJavaを打ち倒すかもしれません。
同じ領域で使われていると思われるC++,C#,Pythonと比べて最も低いです。
つまり、カーネルやデバドラやブラウザ系でなければJavaが一番優秀に思えます。
しかしKotlinはJavaを打ち倒すかもしれません。
913デフォルトの名無しさん
2019/06/13(木) 19:52:28.01ID:LD/3JdHH ぬるぽ
ぬるぽ
出まくるが
これはバグじゃないのか
ぬるぽ
出まくるが
これはバグじゃないのか
914デフォルトの名無しさん
2019/06/13(木) 20:13:21.29ID:t9tRfwUY その比較研究はgithubのコミットに基づいているようなので
ほとんどのNPEは開発中に発生して修正済みでしょう。
最初からNPEを発生させないkotlinは、
むしろバグ発生率よりコーディングスピードで優れているかもしれません。
ほとんどのNPEは開発中に発生して修正済みでしょう。
最初からNPEを発生させないkotlinは、
むしろバグ発生率よりコーディングスピードで優れているかもしれません。
915デフォルトの名無しさん
2019/06/13(木) 20:40:07.05ID:RwojvEQB その類の実証研究、大抵がJava対象だからKotlinだとどうなのかとかはまぁ分からんよね
916デフォルトの名無しさん
2019/06/13(木) 21:07:39.94ID:bk4aKhUm kotlinだとコードの行数が減るからjavaに比べて開発規模が小さかったと判断されてしまう
917デフォルトの名無しさん
2019/06/13(木) 23:03:46.90ID:bcw2IMf7 >>913
仕様です。
仕様です。
918デフォルトの名無しさん
2019/06/14(金) 14:45:14.16ID:g+H89gem kotlinの言語仕様的にjavaよりバグり易そうな部分ってあるんかな?
919デフォルトの名無しさん
2019/06/14(金) 16:59:32.14ID:3STsRhDl >>918
it や this が思ったものと違うものを指していたとか。
it や this が思ったものと違うものを指していたとか。
920デフォルトの名無しさん
2019/06/14(金) 18:14:32.08ID:g+H89gem 確かに。let 周りで失敗してたことあったわ。あの辺はちょっと複雑になっちゃってる感あるね。
921デフォルトの名無しさん
2019/06/14(金) 18:28:44.08ID:LdOtrrUz KotlinはTypeScript, Swift, C#あたりの典型的なモダンCファミリーの範囲を超えてオリジナリティを出してきた部分については途端に微妙になる印象
当然っちゃ当然なんだが、天才的なものは感じないね
当然っちゃ当然なんだが、天才的なものは感じないね
922デフォルトの名無しさん
2019/06/14(金) 20:01:34.38ID:pfb3ZKlS Javaはエラーコードを強制される部分があって、プログラムの質の底上げがされてるんじゃないかな
923デフォルトの名無しさん
2019/06/14(金) 20:09:15.99ID:HXW20L0t エラーコードを強制って例外処理のこと?
924デフォルトの名無しさん
2019/06/14(金) 20:23:59.56ID:Emc1ZmLq なんかもう、わかんない人は無理に会話入ってこなくていいよ
925デフォルトの名無しさん
2019/06/14(金) 20:32:30.84ID:HXW20L0t たぶんJavaにあってKotlinに無いものは無い
強いて言えばKotlinは関数型を採り入れて言語仕様が複雑化しつつあるし
Javaとの混在が可能だからごちゃごちゃしやすい
人によって書き方が変わりやすい
あとGSONとの連携で問題が生じやすいとかあったはず
強いて言えばKotlinは関数型を採り入れて言語仕様が複雑化しつつあるし
Javaとの混在が可能だからごちゃごちゃしやすい
人によって書き方が変わりやすい
あとGSONとの連携で問題が生じやすいとかあったはず
926デフォルトの名無しさん
2019/06/14(金) 22:27:49.12ID:7NQ+qMUb 検査例外とラムダ式の相性の悪さは…
927デフォルトの名無しさん
2019/06/14(金) 22:47:52.21ID:w6RR3Bwm 検査例外ちゃんは皆に嫌われてるから…
投げられた例外を捌けるかどうかは呼び出し元の都合や要件に依るからcatchを強制されるのは好かん
て雲のジュウザが言ってた
投げられた例外を捌けるかどうかは呼び出し元の都合や要件に依るからcatchを強制されるのは好かん
て雲のジュウザが言ってた
928デフォルトの名無しさん
2019/06/14(金) 22:48:02.61ID:HXW20L0t なんかQiitaにうまく書けるコードあったからちょっとカスタマイズして使ってる
https://qiita.com/q-ikawa/items/3f55089e9081e1a854bc
https://qiita.com/q-ikawa/items/3f55089e9081e1a854bc
929デフォルトの名無しさん
2019/06/15(土) 04:17:10.27ID:6gRe3JZA マルチパラダイムな関数型言語はどう設計していくのが良いのか難しいと思う
OOPと関数型は根本的にミスマッチしてる
OOPと関数型は根本的にミスマッチしてる
930デフォルトの名無しさん
2019/06/15(土) 07:02:06.90ID:9mAlYVnq ポインタさえなければ、バグの出やすさは誤差の範囲じゃないかな
931デフォルトの名無しさん
2019/06/15(土) 07:54:39.96ID:pCdIqw4x Android kotlinで言えばMVVM一択だろ
悩むほど選択肢はない
悩むほど選択肢はない
932デフォルトの名無しさん
2019/06/15(土) 08:21:51.26ID:34xcDdoq >>926
関数型とも相性が悪いが嫌わないで下さいませ
関数型とも相性が悪いが嫌わないで下さいませ
933デフォルトの名無しさん
2019/06/15(土) 09:07:49.50ID:Ga3aXpPN934デフォルトの名無しさん
2019/06/15(土) 10:09:18.81ID:kA7AOVm/ OOPそのものじゃなくてクラスでデータと関数が密結合してるのがいまいちという話は感じる
935デフォルトの名無しさん
2019/06/15(土) 10:29:34.05ID:XQanIMKl 本質的にはラムダ/クロージャでの束縛と変わらないと思うけどな
936デフォルトの名無しさん
2019/06/15(土) 10:40:41.99ID:VIoLCw8z >>909
有言実行な
有言実行な
937デフォルトの名無しさん
2019/06/15(土) 11:15:34.03ID:jsVQo8Sw >>934
やはりdata Classだな
やはりdata Classだな
938デフォルトの名無しさん
2019/06/15(土) 11:31:49.90ID:Ga3aXpPN これが f(g(immutableData))
こうなる immutableObject.g().f()
こうなる immutableObject.g().f()
939デフォルトの名無しさん
2019/06/16(日) 15:28:56.20ID:+bML8jLF >>918
わからない。なさそうな気がするが、KotlinにはKotlinなりの何かハマり易そうな部分があるのだろうな。弱点というかなんというか。
わからない。なさそうな気がするが、KotlinにはKotlinなりの何かハマり易そうな部分があるのだろうな。弱点というかなんというか。
940デフォルトの名無しさん
2019/06/17(月) 09:40:35.09ID:IlEGRCQm 宮迫の闇営業の件で何をトチ狂ったか、宮迫が出演する番組のスポンサーが
JetBrainsだと勘違いして開発者達にお問い合わせメール送りまくってるの草。
JetBrainsと宮迫は関係ねーよw
JetBrainsだと勘違いして開発者達にお問い合わせメール送りまくってるの草。
JetBrainsと宮迫は関係ねーよw
941デフォルトの名無しさん
2019/06/17(月) 12:39:31.98ID:WHxj8IY7 何の話か全くわからない。
かといって聞いても面白そうな話ではないので詳しく聞きたいとも思わない。
かといって聞いても面白そうな話ではないので詳しく聞きたいとも思わない。
942デフォルトの名無しさん
2019/06/17(月) 13:00:55.37ID:o6rhTPDa 向いてないから死ね
943デフォルトの名無しさん
2019/06/17(月) 14:50:03.42ID:WHxj8IY7 向いてない?
944デフォルトの名無しさん
2019/06/17(月) 15:42:34.39ID:hVMxT+V3 (芸能ゴシップに)向いてない
945デフォルトの名無しさん
2019/06/17(月) 17:37:42.52ID:zJfN8BpE そんなことで死んでたら、おばちゃん以外全滅やな
946デフォルトの名無しさん
2019/06/17(月) 17:48:49.03ID:z41igY3s JetBrainsがテレビCM出してるの想像したらワロタ
オカンが「あらDataGripもいいわねえ」とか言うのか
オカンが「あらDataGripもいいわねえ」とか言うのか
947デフォルトの名無しさん
2019/06/18(火) 06:15:56.76ID:3nOE2mBA プログラム板にキチガイ降臨中!botに一晩も反応する異常さ
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
https://mevius.5ch.net/test/read.cgi/tech/1559872586/
142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
https://mevius.5ch.net/test/read.cgi/tech/1559872586/
142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
948デフォルトの名無しさん
2019/06/18(火) 17:12:38.49ID:yt+j24gZ949デフォルトの名無しさん
2019/06/18(火) 20:05:30.96ID:Yl81yVsm EBライブラリってのをdownloadしてcompileしてみた。
http://www.mistys-internet.website/eb/
ドキドキしながらsamplesを動かすと、動いてるみたい。
このライブラリを使えばEPWING辞書データにアクセスする事ができる。
俺の場合、手元のジーニアス大辞典にアクセスできた。
こいつでAndroidアプリ、辞書Viewer作れば需要あるかな?
EPWINGだけでなく、辞郎形式のテキストにも対応しちゃう事にする。
Qiitaへ投稿されたMouse Dictionaryみたいなのを目指すけど、需要あるか、ちょいと心配。
http://www.mistys-internet.website/eb/
ドキドキしながらsamplesを動かすと、動いてるみたい。
このライブラリを使えばEPWING辞書データにアクセスする事ができる。
俺の場合、手元のジーニアス大辞典にアクセスできた。
こいつでAndroidアプリ、辞書Viewer作れば需要あるかな?
EPWINGだけでなく、辞郎形式のテキストにも対応しちゃう事にする。
Qiitaへ投稿されたMouse Dictionaryみたいなのを目指すけど、需要あるか、ちょいと心配。
950デフォルトの名無しさん
2019/06/18(火) 22:59:28.72ID:dBLXUbfR >>949
ジーニアスのアプリがほしいと思っていた時期が、私にもありました。
でも、今や単語を選択して右クリック(長押し)->webで検索で済むと気づいてからは、
なんということでしょう。それまで高まっていた物欲が嘘のように消え去りました。
ジーニアスのアプリがほしいと思っていた時期が、私にもありました。
でも、今や単語を選択して右クリック(長押し)->webで検索で済むと気づいてからは、
なんということでしょう。それまで高まっていた物欲が嘘のように消え去りました。
951デフォルトの名無しさん
2019/06/19(水) 04:49:57.44ID:tVNS+22r 【出資】松本卓朗 人工知能詐欺【注意】
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/
952デフォルトの名無しさん
2019/06/19(水) 06:23:38.19ID:l5Kajxps EBライブラリ、ソースのtimestampが2010/01/03と随分古い。
動かすとテキストがeuc-jpで出て来た。
これは、辞書に依存するのか?それともEBライブラリの仕様か?
2010年ってまだ、UTF-8が普及する前なのか?
そういえばYahoo Japanのフロントページが以前はeuc-jpだった気がする。けど、何時だったか思い出せない。
多分、Ruby 1.9が出現したころだから、これも2010年辺りか?
iPhoneと共にutf-8が普及し出したから2007年にはutf-8は普及の兆しがあったはずだが。
動かすとテキストがeuc-jpで出て来た。
これは、辞書に依存するのか?それともEBライブラリの仕様か?
2010年ってまだ、UTF-8が普及する前なのか?
そういえばYahoo Japanのフロントページが以前はeuc-jpだった気がする。けど、何時だったか思い出せない。
多分、Ruby 1.9が出現したころだから、これも2010年辺りか?
iPhoneと共にutf-8が普及し出したから2007年にはutf-8は普及の兆しがあったはずだが。
953デフォルトの名無しさん
2019/06/19(水) 06:58:47.54ID:l5Kajxps954デフォルトの名無しさん
2019/06/19(水) 09:56:43.59ID:t5G+Fp+C955デフォルトの名無しさん
2019/06/19(水) 10:46:28.14ID:l5Kajxps twitterを電子辞書をkeyに検索すると、デバイスのお絵かき機能を使った落書きが、大量にヒットする。
学生さんは、授業中、イラスト描いてるらしい。
けど、画風が皆、似通ってるのはなぜだ?アニメ世代ってのは、あんな絵が好きなのか?
学生さんは、授業中、イラスト描いてるらしい。
けど、画風が皆、似通ってるのはなぜだ?アニメ世代ってのは、あんな絵が好きなのか?
956デフォルトの名無しさん
2019/06/19(水) 19:31:58.26ID:l5Kajxps EPWINGって何の略?
必死にググったけど、WINGの部分が良く解らん。
EP = Electronic Publishing
ってのはすぐ気がついたけど。
あとEPWINGの仕様で、データはEUC-JPで格納されてる様だ。
EBライブラリのREADMEはISO-2022-JPで書かれていた。
時代を感じる。まだ、10年も経ってないのに。
必死にググったけど、WINGの部分が良く解らん。
EP = Electronic Publishing
ってのはすぐ気がついたけど。
あとEPWINGの仕様で、データはEUC-JPで格納されてる様だ。
EBライブラリのREADMEはISO-2022-JPで書かれていた。
時代を感じる。まだ、10年も経ってないのに。
957デフォルトの名無しさん
2019/06/19(水) 19:36:05.36ID:WYELJAwQ958デフォルトの名無しさん
2019/06/20(木) 07:32:57.64ID:q2Ahu20H UTF-8がWindows10にも普及しているのか?調べてみた。
2018年末最新のWindows10からUTF-8採用って事みたい。
ごく最近ッてことだ。おそろしい。きっと混乱はまだ続きそう。
2018年末最新のWindows10からUTF-8採用って事みたい。
ごく最近ッてことだ。おそろしい。きっと混乱はまだ続きそう。
959デフォルトの名無しさん
2019/06/20(木) 08:51:24.08ID:sDpzaQfg メモ帳でutf-8使うとBOMってのが付くのが憎悪しかない
960デフォルトの名無しさん
2019/06/20(木) 09:27:00.55ID:6ruM3wzV 漢字コード周りは太古より混沌としてますなあ
961デフォルトの名無しさん
2019/06/20(木) 10:34:16.29ID:q2Ahu20H >>959
メモ帳の文字コード既定値がUTF-8に、Windows 10「May 2019 Update」
https://tech.nikkeibp.co.jp/atcl/nxt/column/18/00723/042300004/
メモ帳の文字コード既定値がUTF-8に、Windows 10「May 2019 Update」
https://tech.nikkeibp.co.jp/atcl/nxt/column/18/00723/042300004/
962デフォルトの名無しさん
2019/06/20(木) 11:33:05.23ID:XGI0CaH0 MSはsjis系のテキストファイルと区別するためにUTF-8のテキストファイルにBOM付けたかったんだろうが、Unix系の人達の激しい抵抗に屈した形だな
963デフォルトの名無しさん
2019/06/20(木) 13:09:58.71ID:YzAIhfm/ >>960
もはやWindowsだけが浮いてて他は統一されている
もはやWindowsだけが浮いてて他は統一されている
964デフォルトの名無しさん
2019/06/20(木) 13:22:43.18ID:R3CNAp+/ 困ってるのが日本人だけだとしたら酷いな
965デフォルトの名無しさん
2019/06/20(木) 14:02:42.49ID:JwmP4tXt >「BOM(バイト・オーダー・マーク)なしのUTF-8」が追加
>デフォルト設定でBOMなしのUTF-8を選択するようになった
もうBOM付かないんですか!やったーー!AA略
>デフォルト設定でBOMなしのUTF-8を選択するようになった
もうBOM付かないんですか!やったーー!AA略
966デフォルトの名無しさん
2019/06/20(木) 14:09:50.23ID:JwmP4tXt ExcelがBOM無しCSVに未対応じゃないすか!やだーー!
967デフォルトの名無しさん
2019/06/20(木) 15:39:54.52ID:q2Ahu20H UTF-8のデメリットは、1文字が1 - 6byteの可変長であること。
例:a = 61, 1byte
😀 = F0 9F 98 80, 4byte
これ、文字列バイナリデータが与えられた時、文字数ってどうやって数えるんだ?
例:a = 61, 1byte
😀 = F0 9F 98 80, 4byte
これ、文字列バイナリデータが与えられた時、文字数ってどうやって数えるんだ?
968デフォルトの名無しさん
2019/06/20(木) 15:46:34.34ID:9IsAc6k5 UTF-8 のメリットは任意のバイト位置で
それが何バイト必要な文字なのかと
その文字中の何バイト目かが判ることなんだが
それが何バイト必要な文字なのかと
その文字中の何バイト目かが判ることなんだが
969デフォルトの名無しさん
2019/06/20(木) 17:45:07.28ID:q2Ahu20H970デフォルトの名無しさん
2019/06/20(木) 18:58:22.29ID:JwmP4tXt 文字数という意味ではUTF-32でさえも可変長だよ
異体字セレクタとかあるから
異体字セレクタとかあるから
971デフォルトの名無しさん
2019/06/20(木) 20:08:50.04ID:+6KXUujL972デフォルトの名無しさん
2019/06/20(木) 20:21:19.41ID:1cBvDRZL 名前がコトリンだからあなどられて、ばかにされそうだけど
そこんとこどうなの?
そこんとこどうなの?
973デフォルトの名無しさん
2019/06/20(木) 20:25:32.03ID:iAGTq6ne Kotlinの気持ち悪さといったらない
974デフォルトの名無しさん
2019/06/20(木) 22:46:04.16ID:1p12e0x8 本当はSwiftより先にあったらしいけどさ
なんか言語学習を混乱させるために出てきた「後発劣化Swift」みたいな感覚が抜けないな
なんか言語学習を混乱させるために出てきた「後発劣化Swift」みたいな感覚が抜けないな
975デフォルトの名無しさん
2019/06/20(木) 23:02:51.30ID:JwmP4tXt Swift1.2〜3.2くらいまでアプリ開発で使いつつ
MLでの言語仕様の議論追ったりしてたけどKotlinと比較してそんな印象は無いなぁ
むしろSwiftがSwiftユーザーを混乱させる勢いだったよ
MLでの言語仕様の議論追ったりしてたけどKotlinと比較してそんな印象は無いなぁ
むしろSwiftがSwiftユーザーを混乱させる勢いだったよ
976デフォルトの名無しさん
2019/06/20(木) 23:39:22.66ID:LZeo8jFH おまえらことりんの事バカにし過ぎ
977デフォルトの名無しさん
2019/06/21(金) 00:11:32.79ID:B9wXa8Qq バカにする者の居る国の沿岸に Kotlin class destroyer でも派遣してやりなさい。
978デフォルトの名無しさん
2019/06/21(金) 00:19:44.86ID:oqDjX8us inline classには期待してる
979デフォルトの名無しさん
2019/06/21(金) 02:52:37.45ID:FirfeIPX >>971
君は勉強が足りない
君は勉強が足りない
980デフォルトの名無しさん
2019/06/21(金) 06:45:14.02ID:0S+ga2MW981デフォルトの名無しさん
2019/06/21(金) 09:40:47.55ID:UUUS7pJl >>979
君よりは足りているように思えるのだが。
君よりは足りているように思えるのだが。
982デフォルトの名無しさん
2019/06/21(金) 12:14:23.93ID:4tmbpCdV 向いてないから死ね
983デフォルトの名無しさん
2019/06/21(金) 12:36:06.78ID:A0zl/65r 喧嘩はおやめ、ABC
984デフォルトの名無しさん
2019/06/21(金) 13:20:15.67ID:DPrh10DB ネカマだけどアタシのために喧嘩を止めて
985デフォルトの名無しさん
2019/06/21(金) 13:30:31.81ID:skxOC/OA986デフォルトの名無しさん
2019/06/21(金) 16:41:40.80ID:A0zl/65r デジタル人格は死んでも本体が生きていればいくらでも復活出来る
987デフォルトの名無しさん
2019/06/22(土) 00:51:03.50ID:sUTyEXDJ くだすれPython(超初心者用) その43【Ruby禁止】
Python スレのテンプレを勝手に改変して、荒らしてる奴。
「Ruby 死ね」とか、いつも書いてる
Ruby, jQuery, Lodash, ライブラリの話は禁止とか、
テンプレを勝手に改変して、多くのスレを建てる荒らし!
荒らしの特徴は、いつも30分以内に、2回書き込んで自演する。
複数人いるように、見せかけるのが特徴
Python スレのテンプレを勝手に改変して、荒らしてる奴。
「Ruby 死ね」とか、いつも書いてる
Ruby, jQuery, Lodash, ライブラリの話は禁止とか、
テンプレを勝手に改変して、多くのスレを建てる荒らし!
荒らしの特徴は、いつも30分以内に、2回書き込んで自演する。
複数人いるように、見せかけるのが特徴
988デフォルトの名無しさん
2019/06/22(土) 04:18:14.63ID:zj+KJbMh ( ´_ゝ`)フーン
989デフォルトの名無しさん
2019/06/22(土) 10:05:28.96ID:fiI8bn9U 次スレよろ
990デフォルトの名無しさん
2019/06/22(土) 16:01:21.64ID:zj+KJbMh991デフォルトの名無しさん
2019/06/22(土) 19:29:56.53ID:jXJvmGnc >>990
次スレ乙
次スレ乙
992デフォルトの名無しさん
2019/06/23(日) 06:23:13.99ID:R2rggQxM 梅
993デフォルトの名無しさん
2019/06/23(日) 17:43:28.65ID:rsKqqEB5 竹
994デフォルトの名無しさん
2019/06/23(日) 19:46:17.29ID:N5Qb8UIm 松
995デフォルトの名無しさん
2019/06/23(日) 22:16:19.27ID:vZOM6xmC お前ら向いてないよ
996デフォルトの名無しさん
2019/06/23(日) 22:31:20.40ID:6JO2kpc/ なんだと
997デフォルトの名無しさん
2019/06/24(月) 06:19:00.21ID:ghfSvaJN998デフォルトの名無しさん
2019/06/24(月) 09:52:00.23ID:nG4gLzh9 998
999デフォルトの名無しさん
2019/06/24(月) 12:50:53.78ID:6xXOOyfa 1000は君に譲ろう。さあ、書きなさい。
1000デフォルトの名無しさん
2019/06/24(月) 12:52:49.34ID:NW8XqAfb 1000なら令和最初の関東大震災
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 197日 16時間 23分 8秒
新しいスレッドを立ててください。
life time: 197日 16時間 23分 8秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【おこめ券】鈴木農相 米価維持の意図「一切ない」 [ぐれ★]
- 「日本はドイツと違い反省せず」…中国外相、独外相に対日批判 台湾問題で理解求める [少考さん★]
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★6 [七波羅探題★]
- 【苺ましまろ】立民衆院議員、人気漫画の水着少女画像を「醜悪」タイ人少女の性搾取事件と関連付け…党内で反発 [少考さん★]
- 「残業キャンセル界隈」若者が増加?「職務放棄」との批判も…“定時退社の権利”どこまで通用するか [七波羅探題★]
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 ★5 [蚤の市★]
- 日銀植田「国債買い入れ増やして金利を下げるぞ😤」 これどっかで見たな… [972432215]
- お前ら「ブラックフライデーで工具買ったぞ!」 何に使うの?
- 【悲報】「高市だけは許さん!」追い詰められた習近平、実体は経済が「ソ連化」の影響でボロボロ、日本は中国の政治ショーに付き合うな [733893279]
- 【高市悲報】中国軍「公海で空母の発着訓練するって事前通告したのになんで自衛隊機は急接近してきたんだ…?」中国軍困惑 [931948549]
- 30過ぎた大人おじさんが大学生(昔)のままのファッションをする「おじさんキッズコーデ」、炎上して問題視される。 [153490809]
- 日本人のおでん離れ。作る回数減った30.1%🍢 [256556981]
