◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

Kotlin 2 YouTube動画>1本 ->画像>7枚


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/tech/1509462463/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

601デフォルトの名無しさん2018/02/17(土) 09:11:07.08ID:cSouIKOJ
Kotlin使いがJava使いにマウント取ってる様を見てまたこの繰り返しかと思いそっ閉じ

602デフォルトの名無しさん2018/02/17(土) 11:37:12.55ID:EWYfJ6l0
マウント取ってるように見える?そりゃなんていうか、劣等感強すぎでは?
てか一々そんなこと考えてないで自分でも使えばいいじゃん。禁止されているわけでもなし。
Java が使える状態になったことのある人が Kotlin 使えるようになれないわけがないと思うが。

603デフォルトの名無しさん2018/02/17(土) 19:20:37.06ID:MOg6+5DY
ていうかkotlin使いって99%Java使いも兼ねてるだろうからマウントとるも何もないのでは

604デフォルトの名無しさん2018/02/17(土) 22:06:51.34ID:QsKtGr9g
今使ってる人はそもそもJavaできるからな
より使いやすくても、対立構造にはならないよな

605デフォルトの名無しさん2018/02/18(日) 01:22:27.54ID:5P/pcqvC
>>557
モバイル開発は違うかもだが、業務系は極端に言っちまうとjava要員集めるっつたら使い捨て兵隊集めだよ。

606デフォルトの名無しさん2018/02/18(日) 11:33:46.48ID:LPhOEvze
そんな自分の知ってる世界だけの狭い話をされても

607デフォルトの名無しさん2018/02/18(日) 13:07:28.97ID:hkjnjusX
Kotlin, RxJava, MVVMは基本的な必須スキルだからな
未だに実務経験ないやつは失業確定ざまああwwwwwww

608デフォルトの名無しさん2018/02/18(日) 13:07:47.53ID:1pIRFdOf
>>605
兵隊だなんてでたらめ書くなよ
兵隊じゃなくて奴隷だぞ

609デフォルトの名無しさん2018/02/18(日) 13:24:23.64ID:R7wrwf8X
Android系の技術スレは失業だの兵隊だの低いところでマウント争ってるんだな。稼いでるやついなそう。

610デフォルトの名無しさん2018/02/18(日) 13:56:19.84ID:D295fkqM
そういやKotlinはまだ求人数は少ないけど給与は良いって調査結果があったな
中途半端だと仕事にありつけないかもしれないな

611デフォルトの名無しさん2018/02/18(日) 14:56:03.30ID:oDDrqbus
しかしKotlinってKotlinらしくない従来のJavaっぽい書き方をしても動いてしまうからな。金を多く払う意味があまりないかも知れないぞ。

612デフォルトの名無しさん2018/02/18(日) 16:12:24.98ID:nyTLTr1m
Kotlinで単価が高いのは、チームが今後Kotlinでやってけるように導入の面倒見れる人だよ
>>611が言ってるレベルの奴なんてそもそも高い単価で雇われないから

613デフォルトの名無しさん2018/02/18(日) 16:20:57.25ID:JlUJeRgg
面倒みなきゃならんほどのものじゃないでしょ
プログラム初心者じゃあるまいし

614デフォルトの名無しさん2018/02/18(日) 16:37:41.33ID:nyTLTr1m
>>613
お前の周辺状況について述べてるわけじゃないことぐらい理解して

615デフォルトの名無しさん2018/02/18(日) 16:51:37.36ID:oDDrqbus
>>612
雇う側がそれを見抜ければ良いんだろうけどね。

616デフォルトの名無しさん2018/02/18(日) 17:24:17.84ID:JlUJeRgg
>>614
確認だけど職業としてプログラマやってる人たちの話って前提だよね?
小学校のプログラムの授業とかじゃなくて

617デフォルトの名無しさん2018/02/18(日) 19:36:30.68ID:nyTLTr1m
>>616
もういいよめんどくさい
じゃあKotlinできればそのレベルに関わらず誰でも単価高いってことでええわ

618デフォルトの名無しさん2018/02/18(日) 22:46:31.63ID:mRumiIcD
ラムダ式から式の外側のthisを参照するにはどうすればいいでしょうか?現状、
val this_ = this
async {
 this_
}
とかしてますけど、これ以外方法ない?

619デフォルトの名無しさん2018/02/19(月) 00:54:19.29ID:bFR3uyhH
>>618
無いことはないけど俺もそうしてるよ
class A {
  fun f(){
    async {
      this@A
    }
  }
}
https://kotlinlang.org/docs/reference/this-expressions.html

620デフォルトの名無しさん2018/02/19(月) 07:19:51.84ID:YvDQTksi
>>618
結局それが1番手っ取り早いと思うけど、this_っていう変数名は気持ち悪いから嫌

621デフォルトの名無しさん2018/02/19(月) 11:29:23.81ID:IoDkpp2Z
言っとくけどselfもダサいよ

622デフォルトの名無しさん2018/02/19(月) 11:44:10.96ID:yCg2MRRi
そうじゃねえだろ
それを言うなら、self_ もダサい

623デフォルトの名無しさん2018/02/19(月) 12:18:18.12ID:uDWMisC4
やっぱ thiz だよね

624デフォルトの名無しさん2018/02/19(月) 12:46:45.80ID:8HhXX1j3
どう書いても最適化されて同じコードになったりして・・・

625デフォルトの名無しさん2018/02/19(月) 16:13:32.25ID:qb2IEpmC
俺なら一目で何だか分かる名前にする

626デフォルトの名無しさん2018/02/19(月) 17:29:10.39ID:yTArt2lJ
例えば?

627デフォルトの名無しさん2018/02/19(月) 17:33:59.71ID:tDxwJ5H8
>>619
ありがとうござます。this@hogeを使う事にしました

628デフォルトの名無しさん2018/02/19(月) 17:36:07.64ID:UjHZ69on
>>626
val unko = this

629デフォルトの名無しさん2018/02/19(月) 17:37:58.45ID:jylwc8fn
ore,kore,sore

630デフォルトの名無しさん2018/02/19(月) 17:39:35.65ID:UjHZ69on
val 式の外側のthis = this

async {
式の外側のthis.method()
}

これが1番わかりやすいな

631デフォルトの名無しさん2018/02/19(月) 18:45:31.43ID:J+iGZU0/
class名.instanceはコトリンではつかえないのん?

632デフォルトの名無しさん2018/02/19(月) 22:24:58.24ID:9U/kf45x
>>631
objectで宣言したクラス(シングルトン)のclass名.INSTANCEのことでしょうか?

633デフォルトの名無しさん2018/02/19(月) 23:31:48.80ID:4xWfaW8A
エンクロージングインスタンスの話。
クラス名.thisの間違いだった。

634デフォルトの名無しさん2018/02/19(月) 23:50:04.20ID:bFR3uyhH
ラムダに束縛したいのはthisだけとは限らないしネストも有り得るので
クラス外の関数として分離した場合の引数名のイメージで変数名付けてる

val view = this
val cal = activeCalculator
async {
  cal.recalc()
  transaction {
    val tran = this
    check(cal, tran)
  }
  view.notifyUpdate()
}

635デフォルトの名無しさん2018/02/20(火) 06:41:06.84ID:qL04aTa6
>>634
真面目にいえば俺もこれ。
this_とかは仮に何かしらでもう一段ネストした時に詰む。

636デフォルトの名無しさん2018/02/20(火) 09:07:54.40ID:qXeXVbGF
ネストする時は、
this__
this___
this____
this_____

と、_を増やしてけば

637デフォルトの名無しさん2018/02/20(火) 10:02:20.87ID:I+nWo9FQ
よみづらい

638デフォルトの名無しさん2018/02/20(火) 10:02:36.87ID:pltRTpB+
>>636
フォントが違うと見え方が変わりそう

639デフォルトの名無しさん2018/02/20(火) 12:03:00.62ID:5NVGlXhy
>>636
天才かよ

640デフォルトの名無しさん2018/02/20(火) 12:57:02.91ID:DWBDu+Jk
ま、しかし、あまりにもネストが深くなるようならロジック考え直した方が良いかも

641デフォルトの名無しさん2018/02/20(火) 20:10:18.67ID:xSX01qXm
メソッド参照とか別クラスとか。

642デフォルトの名無しさん2018/02/20(火) 20:29:10.81ID:qXSQ9QV9
ネストは三段ぐらいまでにしといた方がいいだろうな。
その辺が迷宮の入り口だ。

Cのポインタとかも同じ。3段以上先には魔物が住んでいる。

643デフォルトの名無しさん2018/02/20(火) 20:35:32.22ID:qL04aTa6
せめて他のメソッドに切り出すくらいは最低でもやるべきだわな

644デフォルトの名無しさん2018/02/20(火) 22:17:03.69ID:/iBGk+pN
androidでデータバインディングしようとして
class Foo {
 @Bindable
 val bar get() = hoge.bar
}
とかできないの??・・・

645デフォルトの名無しさん2018/02/20(火) 22:18:25.44ID:/iBGk+pN
エラー内容はThis annotation is not applicable to target 'member property without
backingField or delegate'です。
どうしたらいいでしょかね

646デフォルトの名無しさん2018/02/20(火) 22:30:04.18ID:/iBGk+pN
Javaでは
class Foo {
 @Bindable
 String getBar() { hoge.getBar() }
}
で、hogeはFooのフィールド変数です。

647デフォルトの名無しさん2018/02/20(火) 23:05:50.58ID:/iBGk+pN
ごめんさい。解決しました。@get:Bindable

648デフォルトの名無しさん2018/02/21(水) 00:01:54.65ID:CION/kfn
また、アノテーションだけど。遅延初期化ではアノテーションつけれんの?しょぼーん。
@field:Transient
val lazyVal by lazy {}
だめか・・

649デフォルトの名無しさん2018/02/21(水) 14:48:51.57ID:aopUu534
いま触れてないけどkotlin-Nativeってどんな感じ?
ほとんどなんでもコンパイルかけれる?
見たところLLVM通すから行けそうだけど

650デフォルトの名無しさん2018/02/21(水) 15:35:13.89ID:HWbyxxJS
実用で使うのはまだ怖いけど、遊びで触る分にはちゃんと動くよ。
javaの標準パッケージが全く使えないから、jvmで動かす前提で作ってあるクラスだのライブラリだのが動かないという辛さはある。

651デフォルトの名無しさん2018/02/21(水) 16:03:44.92ID:wwQ+gY6z
javaのパッケージ使えないんならわざわざJVM言語使う価値なんかないわwさよなら〜

652デフォルトの名無しさん2018/02/21(水) 16:13:56.98ID:4d1xezjM
うん。はっきり言って現状ではこれを使うメリットが何一つ思い浮かばないよ俺も。

653デフォルトの名無しさん2018/02/21(水) 17:59:59.69ID:ftdNQJg9
地味にアップデートされてるからJBが飽きなければそのうち実用レベルになるかもねえ

654デフォルトの名無しさん2018/02/21(水) 18:05:11.04ID:2C7myRiq
それなりの標準ライブラリはあるんでしょ?まだないの?(ないわけないか。なければ Hello world も出せないもんな)

655デフォルトの名無しさん2018/02/21(水) 18:28:14.61ID:aopUu534
ありがとう。
なるほどまだ様子見しとくわ
Javaの標準パッケージ動かないの辛いね

656デフォルトの名無しさん2018/02/21(水) 18:37:05.98ID:KLOfXDKN
>>652
はいキチガイ

657デフォルトの名無しさん2018/02/21(水) 18:56:30.68ID:sG9Uh+s7
>>656がメリットを説明してくれる模様w

658デフォルトの名無しさん2018/02/21(水) 19:15:48.38ID:CION/kfn
この言語意味不明になってきた。
class Test {
 var str: String
  get() = field
  set(value) { }
 constructor() {
  str = "あいう"
 }
}
val t = Test()
普通にstrがnullになる

659デフォルトの名無しさん2018/02/21(水) 19:17:58.58ID:CION/kfn
セカンダリコンストラクタでstrのbakcingFieldにアクセスできないの??
 constructor() {
  str = "あいう" // これはsetter経由のプロパティアクセス
 }

660デフォルトの名無しさん2018/02/21(水) 19:21:36.71ID:ftdNQJg9
>>656
現状でこれ使ってハッピーなことがあるなら教えてくれw

661デフォルトの名無しさん2018/02/21(水) 19:23:37.72ID:ftdNQJg9
>>658-659
そのコードの意図がよく分からないんだけど、何がしたいの?ゆ

662デフォルトの名無しさん2018/02/21(水) 19:30:46.29ID:CION/kfn
>>661
意図はないけど、null安全とかいっておきながらkotlin側だけでnull入るコード書けるのまずいような気がする。
いや、プロパティの初期化方法がうざくて色々調べてたら気づいただけ。

663デフォルトの名無しさん2018/02/21(水) 19:35:19.91ID:CION/kfn
プロパティ宣言すると初期値与えろってうるさいんだけど、うるさいのはいいんだけど初期値の与え方が
val str: String = プロパティイニシャライザ
プロパティイニシャライザ以外、bakcingFieldに直接与える方法ないの??
>>659だって、初期値与えろってコンパイルエラーでるから、セカンダリコンストラクタに
str = "あいう" // これはsetter経由のプロパティアクセス
書いたんだけど、setter経由のプロパティアクセスだとsetterが>>658のようになってるって初期値実際与えられてないし・・

664デフォルトの名無しさん2018/02/21(水) 19:38:04.92ID:CION/kfn
>書いたんだけど、setter経由のプロパティアクセスだとsetterが>>658のようになってるって初期値実際与えられてないし・・

>書いたんだけど、setter経由のプロパティアクセスだとsetterが>>658のようになってるいじわるコードだと初期値実際与えられてないし・・
に修正

665デフォルトの名無しさん2018/02/21(水) 19:44:04.71ID:ftdNQJg9
そういうことね
確かにこれならsetterの部分でコンパイルエラー出て欲しい気がするな
帰ったらドキュメント舐め回してみるか

666デフォルトの名無しさん2018/02/21(水) 22:17:43.95ID:mU+xwBkv
>>658
lateinintつけないでコンパイル通ってしまうなら、Kotlinコンパイラのバグの可能性も...

667デフォルトの名無しさん2018/02/21(水) 22:24:25.01ID:mU+xwBkv
>>666は勘違いでした。申し訳ない。
>>658
多分あまりにも悪意に満ちた常人なら間違え内容のない契約プログラミング違反だから、
そこまでは面倒を見られないということかも。

668デフォルトの名無しさん2018/02/21(水) 22:33:20.79ID:A2iqRMA5
悪意の無い初心者がめちゃくちゃ書いてもちゃんと面倒見てくれるべきだと思う

669デフォルトの名無しさん2018/02/21(水) 23:05:16.86ID:CION/kfn
null安全の導入とともに変数は宣言時に初期値を与えなきゃいけなくなって、
ローカル変数は宣言時に与えなきゃいけないけど、インスタンス変数は宣言時または
コンストラクタ内で与えればOKなんだけど、
backingFieldを持つプロパティと相性悪かった?ってことかな。

backingFieldを持つプロパティはプロパティイニシャライザを与えるか、
コンストラクタ内でbackingFieldに直接初期化するという条件を付けくわえないとだめ?

field:str = "あいう" // コンストラクタ内でのみ使えるbakckingFieldにアクセスする専用構文の導入が必要 か
str = "あいう” // コンストラクタ内でのプロパティへの代入はsetterは経由しないとかの条件が必要

670デフォルトの名無しさん2018/02/22(木) 00:40:47.03ID:P3OwyHQx
バグ相当だと思う

初期化(setter呼び出し)の有無は判定出来ているのだから
コンパイルエラーにするのが難しいなら
その直後にそのプロパティのBacking Fieldがnullだったら
KotlinNullPointerExceptionを投げる処理を暗黙的に追加すべき

671デフォルトの名無しさん2018/02/22(木) 00:42:25.58ID:P3OwyHQx
コンパイラor言語仕様のバグって意味ね

672デフォルトの名無しさん2018/02/22(木) 01:34:10.26ID:2g+h2XZc
null安全の導入->非nullableのクラス型のデフォルト値なんてないから、変数は必ず初期化する
必要がある->(この再、nullable、非nullable関係なく全変数初期化するように)

未初期化の変数がコンパイラエラーにならないんて、これが言語仕様なら
仕様がクソだったってことだな(さすが、適当に作った言語ってことに)。
コンパイラのバグであることを祈ろう。

6736662018/02/22(木) 06:49:37.65ID:W5l1Fr+S
>>658は、Test()でconstructor()が呼ばれないことについて
エラーも警告も出ないことも問題かもしれない。
>>672
Javaで1回しか代入できないフィールドを作るのにsetterに渡された値を捨ててしまうことは
手法としては考えれられなくはないから、バグではなく仕様かも。
逆にチェックを厳しくし過ぎると出来そうなことができなくなる罠も出てくるから
完璧は無理かと。
Kotlin自体「実用的な」範囲でバランスをとったというコンセプトだし。

6746662018/02/22(木) 06:57:22.88ID:W5l1Fr+S
>>673
の一つ目は勘違いでした。
Kotlinは便利だけど、いくつかの規則は言語仕様でなく契約に基づいていて
契約違反のコードは勘違いを起こさざるを得ないと言い訳する...orz

675デフォルトの名無しさん2018/02/22(木) 07:31:42.26ID:tIZ7FSiP
C#でいいじゃん

676デフォルトの名無しさん2018/02/22(木) 07:39:36.87ID:HpXxCMc4
>>674
いや、この件は普通にコンパイラの仕様バグだと思うからissue上げて来なよ

677デフォルトの名無しさん2018/02/22(木) 07:44:53.50ID:HpXxCMc4
一回しか代入したくないならセッターの中にそういう処理を書けばいいだけだし、
非NullableなのにNullが入る状態でコンパイルできるのはどう考えてもバグでしょ

678デフォルトの名無しさん2018/02/22(木) 07:45:17.47ID:P3OwyHQx
>>673
そういう手法のときは内部フィールド側はNullableになっているべきじゃないかな
通常ケースの一つとしてnullがあるパターンなわけだから

private var strF: String? = null
var str: String get(){return strF ?: ""} set(value) { }

679デフォルトの名無しさん2018/02/22(木) 09:29:54.25ID:tZO46ghF
setterを空にしたらバッキングフィールドへの代入は永遠にされないのでは?
外部からバッキングフィールドへの代入ってできないよね?
(getterで値を変更するカウンターみたいなやつは別として)。

680デフォルトの名無しさん2018/02/22(木) 21:30:53.59ID:MQzOZIuj
Nullableでないプロパティのsetterがnullの状態で呼ばれることがあるって考えるとなんか気持ち悪いな
俺の感覚だとsetterが呼ばれた時点でフィールドは初期化されていて欲しいしフィールドの初期化にsetterは使って欲しくない

681デフォルトの名無しさん2018/02/22(木) 22:55:00.07ID:4ek3nBtk
JRubyよりはええんか?

682デフォルトの名無しさん2018/02/23(金) 00:50:16.39ID:U4AoY/IO
>>658の var str : String の部分を var str = "aaa" みたいに書くと var なのに str に何を代入しても
中身が"abc"のまま変化しないプロパティが完成w

683デフォルトの名無しさん2018/02/23(金) 00:50:44.77ID:U4AoY/IO
間違えた。"abc"じゃない"aaa"な。

684デフォルトの名無しさん2018/02/23(金) 07:49:04.02ID:bsuGQjVb
>>682
ワロタ
嫌な会社を辞めるときにテロとしてそういうコード残しておくイタズラとかできそう
それはそうとnullableじゃないのにnullになりうるセッターがコンパイル通るのはやっぱおかしいよな
そんなんする奴がいるのかって話ではあるが

685デフォルトの名無しさん2018/02/23(金) 08:31:33.24ID:nqFe2RWJ
githubにあるkotlinのプロジェクトはissuesのリンクがないや
どこに報告すればいいんだ

686デフォルトの名無しさん2018/02/23(金) 08:54:38.23ID:MOvRrowf
>>685
なぜREADMEを読まない…

687デフォルトの名無しさん2018/02/23(金) 14:54:59.97ID:0k9d4/AB

688デフォルトの名無しさん2018/02/23(金) 18:54:32.34ID:fUBBLv0N
こりゃダメだ
C#使おっと

689デフォルトの名無しさん2018/02/23(金) 19:22:20.80ID:tkkK8G2q
>>687
えぇ…これ仕様通りなん?だとしたら糞じゃね?

690デフォルトの名無しさん2018/02/23(金) 20:44:31.66ID:Py5a3myD
>>688
C#はこういうこと起きないの?
てか、そもそも同じような形式のプログラム作れるの?

691デフォルトの名無しさん2018/02/23(金) 21:13:42.52ID:8lqriKW0
C#はそもそもnull安全じゃないから出てくること自体おかしい

692デフォルトの名無しさん2018/02/23(金) 21:26:34.63ID:i7MOfoRF
8.0ではoptinでnull安全にできるようになるんじゃなかったけ。まあ、でもmicrosoftはこんなポカしないと思うけど。

693デフォルトの名無しさん2018/02/23(金) 22:05:57.26ID:R3lraTlN
オプティン…

694デフォルトの名無しさん2018/02/23(金) 22:13:05.72ID:YiHajEe6
・セカンダリコンストラクタが存在する
・代入して初期化してる(ように見える)プライマリコンストラクタかセカンダリコンストラクタがある
この2つを満たすとコンパイル通っちゃうのかな
https://paiza.io/projects/78ZAW5fM_jNEyfhRPD5VbA

695デフォルトの名無しさん2018/02/23(金) 22:28:48.21ID:8lqriKW0
>>694
こりゃコンパイラのバグ説が濃厚だな

696デフォルトの名無しさん2018/02/23(金) 22:46:50.15ID:ZKkKvK7/
完全に趣味でSwift触り始めたんだけど、ことりんと似すぎてて脳の切り替えが大変

697デフォルトの名無しさん2018/02/23(金) 23:32:19.57ID:gu5jD4u6
setterがNOPだからでしょ
何もおかしくないと思うんだが

698デフォルトの名無しさん2018/02/23(金) 23:51:24.69ID:pZoCSvCU
>>697
Javaなら何もおかしくないけど、これはkotlinなんですよ

699デフォルトの名無しさん2018/02/24(土) 00:23:17.37ID:KMKYwria
あー、ごめんごめん、nullableじゃないのにってことね

700デフォルトの名無しさん2018/02/24(土) 06:43:01.61ID:geSYf0sR
SwiftではOptionalよん

701デフォルトの名無しさん2018/02/24(土) 06:47:11.68ID:H2lSL8Bq
そこら辺の名称も統一してくれたらよかったのに

702デフォルトの名無しさん2018/02/24(土) 08:17:33.01ID:vmshfWHt
引数や戻り値の属性(アノテーション)としての出自でNullable (@Nullable)
型引数を持つデータ構造として出自でOptional (Optional<T>)

703デフォルトの名無しさん2018/02/24(土) 08:21:38.91ID:gsJVlH30
だから何?

704デフォルトの名無しさん2018/02/24(土) 08:32:56.79ID:vmshfWHt
単なる経緯にだからも何も無いんだけど

705デフォルトの名無しさん2018/02/24(土) 09:18:53.65ID:b9ViFkCo
Optionalではアンラップが必要で、Nullableでは不要

706デフォルトの名無しさん2018/02/24(土) 15:32:03.48ID:QRpOEI48
つまりOptionalは神Nullableは糞

707デフォルトの名無しさん2018/02/24(土) 15:33:06.32ID:QRpOEI48
間違えた逆だNullableは神Optionalは糞

708デフォルトの名無しさん2018/02/24(土) 16:29:10.25ID:XDApard5
神と糞は種類が違うだろ

709デフォルトの名無しさん2018/02/24(土) 16:55:50.73ID:La3HIAz8
Xamarin程の糞はない

710デフォルトの名無しさん2018/02/24(土) 20:13:00.64ID:geSYf0sR
Kotlinではnullにならない型など存在しないのだ、がっはっは

711デフォルトの名無しさん2018/02/24(土) 23:25:19.26ID:QE7g/pJn
神は糞である。

712デフォルトの名無しさん2018/02/25(日) 06:02:39.69ID:z/Jlakx1
糞は紙で拭け

713デフォルトの名無しさん2018/02/25(日) 10:33:42.84ID:4s22ePtw
Kotlinインアクションの尼評価低いなと思ったら理由が「難しい」ってw

714デフォルトの名無しさん2018/02/25(日) 10:54:15.05ID:skC5U3zO
やっぱGroovy in Actionだろ、GradleはGrooovyなんだぜぇ

715デフォルトの名無しさん2018/02/25(日) 11:44:58.69ID:XjF3qDop
こんな本が出てたんだな。

Androidアプリ開発の教科書
http://amzn.asia/59lxVwl

716デフォルトの名無しさん2018/02/25(日) 11:46:33.02ID:XjF3qDop
あ、Kotlin で検索したら出てきた本だけど Kotlin とは限らないみたいだな。すまん。

717デフォルトの名無しさん2018/02/25(日) 11:50:17.94ID:XjF3qDop
すまん。Kotlin の K の字も出てこないな。忘れてくれ。

718デフォルトの名無しさん2018/02/25(日) 12:40:42.33ID:pcyqC+jB
Kotlinイン・アクション、2017

Kotlinスタートブック -新しいAndroidプログラミング、長澤 太郎、2016

せっかく太郎が、イン・アクションを参考にして、わかりやすく書いたのだから、
日本人は、太郎本を読んだ方がよい

719デフォルトの名無しさん2018/02/25(日) 13:02:41.55ID:OHKw3fir
情報量はインアクションの方が多いから、わざわざ薄めた本を買う必要なんてないよ

720デフォルトの名無しさん2018/02/25(日) 13:29:07.46ID:V/Ygd9gi
>>718
お前はスッキリをすすめてろよ

721デフォルトの名無しさん2018/02/25(日) 14:16:36.00ID:4s22ePtw
Kotlin本といえば今のところインアクションとスタートブックの2択だと思うけど、
「難しい」って理由でレビュー評価下げるのはどうよ?と思ったんで、難しい以外に
インアクションで問題点ある?
バージョンが古いとか?

722デフォルトの名無しさん2018/02/25(日) 14:31:03.18ID:VQCl2C19
※716
Androidの入門本なんてAndroid搭載機種の種類と同じくらい大量に出てるのになぜわざわざそれを貼ろうと思ったのか

723デフォルトの名無しさん2018/02/25(日) 14:41:45.45ID:XjF3qDop
>>722
先に書いた通り、AmazonでKotlinで検索して出てきたため。

724デフォルトの名無しさん2018/02/25(日) 15:09:27.72ID:Ydc/tL+D
電子書籍でレイアウト固定だと買う気しない

725デフォルトの名無しさん2018/02/26(月) 08:03:23.98ID:RZjRtr5i
知らんけどkotlinのandroid入門書なんてもう山ほど出てるんちゃうの?まだjavaばっかなの?

726デフォルトの名無しさん2018/02/26(月) 08:23:30.09ID:t40oU2wX
まだ一冊しかないのでは?

727デフォルトの名無しさん2018/02/26(月) 08:27:44.65ID:RZjRtr5i
そうなのか、意外と動き遅いんだな

728デフォルトの名無しさん2018/02/26(月) 08:56:28.62ID:qQ1Da7Hp
本で勉強する時代じゃないからね

729デフォルトの名無しさん2018/02/26(月) 09:20:17.57ID:G+urRbGd
細切れ情報を探すのはやだな。レベルも方針もバラバラだし。
良書があるなら本がいい。

730デフォルトの名無しさん2018/02/26(月) 09:34:26.29ID:/jWICelY
まあ、AndroidでKotlin使うのは増え続けるだろうから何れ本も増えるだろう。

731デフォルトの名無しさん2018/02/26(月) 09:43:22.22ID:CZmy/XEe
本は中古やで何冊かあったよ、まだ高かったけど
正直Pythonは失敗だったと思う

732デフォルトの名無しさん2018/02/26(月) 10:09:15.19ID:G+urRbGd
pythonは糞本で良書が埋もれちゃってる

733デフォルトの名無しさん2018/02/26(月) 10:47:30.45ID:/j3wCSg3
Null Objectパターン流行るといいなあ。

734デフォルトの名無しさん2018/02/26(月) 13:51:07.53ID:Mu1MCm3E
>>732
流行った言語は自動的にそうなる。

735デフォルトの名無しさん2018/02/26(月) 17:53:54.70ID:i6+hAPO4
>>733
流行るも何もgof23パターンのうちの一つだぞ

736デフォルトの名無しさん2018/02/26(月) 18:03:06.16ID:3e/qclCH
Null Objectはgof外でしょ

737デフォルトの名無しさん2018/02/26(月) 18:15:26.27ID:i6+hAPO4
>>735
すまぬ。
どうやらボケが始まったようだ…

738デフォルトの名無しさん2018/02/26(月) 18:44:34.21ID:3e/qclCH
気にするな、禊としてXamarinのライセンス買ってこい

739デフォルトの名無しさん2018/02/26(月) 18:51:59.91ID:3Mt4XsWV
買わない買わない

740デフォルトの名無しさん2018/02/26(月) 19:46:08.16ID:FSYyOpBd
>>721
本を読んだけどどっちもよかったよ。
ただ読み手のスキルで理解力に差があるからそこで評価が分かれてるのかも。

741デフォルトの名無しさん2018/02/27(火) 10:02:27.46ID:GEmGj4yT
IntelliJの変換機能使ってシコシコKotlinに変換してるけどstatic無いのがウザくなって来た
Swiftにはあるのにー

742デフォルトの名無しさん2018/02/27(火) 12:16:20.20ID:pU97M93t
>>741
コンパニオンは?

743デフォルトの名無しさん2018/02/27(火) 18:56:17.20ID:9XUAnYvD
自動変換使ったら普通にcompanion objectにならなかったっけ

744デフォルトの名無しさん2018/02/27(火) 20:07:07.98ID:VEiALCIH
スーパーコンパニオンがいいです

745デフォルトの名無しさん2018/02/27(火) 23:14:15.97ID:m5Iw3K9X
自動変換してもコンパニオンにならなかったから、シコシコ変えてる

746デフォルトの名無しさん2018/02/27(火) 23:34:21.25ID:l+pACPTY
Android stuiosって糞重いのな
Xcodeの比じゃなかったわ

747デフォルトの名無しさん2018/02/27(火) 23:39:03.53ID:oVWfwCMw
Core i7、メモリ32GBだけど、コーディングに支障があるほど重いとは感じないかな

748デフォルトの名無しさん2018/02/28(水) 00:05:50.05ID:KPu2dHe+
ノート用のi5、8Gでもサクサク動くぞ

749デフォルトの名無しさん2018/02/28(水) 01:54:55.83ID:SwOhtkGH
基本xcodeの方が重くない?

750デフォルトの名無しさん2018/02/28(水) 04:32:16.89ID:ifAjmiIg
Android stuios...

751デフォルトの名無しさん2018/02/28(水) 06:49:11.80ID:qqsPLA0F
明らかにxcodeの方が重い

752デフォルトの名無しさん2018/02/28(水) 06:51:00.64ID:qqsPLA0F
あ、Android StudioじゃなくてAndroid stuiosの話なのか
それなら知らんわ

753デフォルトの名無しさん2018/02/28(水) 07:13:17.29ID:hln4Ed73
VisualStudioはサクサク動くね

754デフォルトの名無しさん2018/02/28(水) 08:34:11.55ID:pTBSmEfK
Android Studioはエミュレータの起動が激重

755デフォルトの名無しさん2018/02/28(水) 08:51:39.92ID:CR0DdEON
お前のPCが糞なんだろ

756デフォルトの名無しさん2018/02/28(水) 09:34:38.82ID:3IEGD0z0
そういやエミュレータは遅いな。あれ速くならんもんかね?実機に繋いじゃうしかないか?

757デフォルトの名無しさん2018/02/28(水) 11:19:49.30ID:fhD/c/L7
そんなにおもいか?

758デフォルトの名無しさん2018/02/28(水) 12:23:44.87ID:pWBZNbli
その部分はXcodeも糞重いからまあしゃあない

759デフォルトの名無しさん2018/02/28(水) 13:05:00.32ID:/o1cB3Jz
お前の収入がまともなPCも買えないほど低いだけ

760デフォルトの名無しさん2018/02/28(水) 15:32:06.67ID:nKEiX8dA
Flutterが話題になってるけど、Dartなんだよなあ、、

761デフォルトの名無しさん2018/02/28(水) 15:32:21.47ID:nKEiX8dA
Kotlinならよかったのに

762デフォルトの名無しさん2018/02/28(水) 15:59:23.70ID:/fCVXMT7
やっぱ金掛けてゲーミングPCにしないといかんかね

763デフォルトの名無しさん2018/02/28(水) 17:02:46.79ID:Dh2+122Q
何の話ししてるんだ

764デフォルトの名無しさん2018/02/28(水) 17:05:13.06ID:Dh2+122Q
IntelliJファミリーのIDEが不自然に重い時はプラグインを疑った方が良い
もしくは単純にindexingか何かをしてるだけか

とりあえず2013年モデルでメモリ8GBのMBPでもサクサク動く

765デフォルトの名無しさん2018/02/28(水) 21:48:31.62ID:CR0DdEON
さっさとまともな収入得られる会社に転職しろ

766デフォルトの名無しさん2018/03/01(木) 05:22:15.58ID:cE1p2NGM
googleさんの本命はkotlinじゃなくてflutterのDartだったってこと?

767デフォルトの名無しさん2018/03/01(木) 06:15:15.24ID:uqwlFRYM
いや、あの会社がプログラミング言語を開発するのは趣味みたいなもんだから。

768デフォルトの名無しさん2018/03/01(木) 11:37:02.64ID:tn3lzpGs
飽きたら捨てるでしょ

769デフォルトの名無しさん2018/03/01(木) 13:21:29.38ID:a0FtR1fD
女ったらし

770デフォルトの名無しさん2018/03/01(木) 13:52:18.31ID:rGfsNRkK
Goってどこ行ったんだよ

771デフォルトの名無しさん2018/03/01(木) 14:25:40.30ID:a0FtR1fD
トイレ

772デフォルトの名無しさん2018/03/01(木) 16:56:43.31ID:/5bgAPbJ
有名どころだけでもGASとgoとDartとあるからな
統一しろや

773デフォルトの名無しさん2018/03/01(木) 17:02:42.69ID:SIvaL2Ua
なんかgoogleって統一感無いよなー。
dart捨てたと思ってたのに、このタイミングで復活させるとかさ。ならchromeに予定通りvm載せろや

774デフォルトの名無しさん2018/03/01(木) 17:40:32.49ID:JNnNxKxo
もうどれにも移行せずJavaに留まるのが一番

775デフォルトの名無しさん2018/03/01(木) 18:09:19.76ID:cE1p2NGM
>>773
それが望ましいな。まぁ、Flutter+Dartが成功したらchromeにもDartVM搭載復活とかあるかもね。
それで、JavaScript絶滅に追いやってほしいわ。
今どきの言語ならなんえり好みしないからフロントエンドからJavaScriptを絶滅に追いやってほしい。

776デフォルトの名無しさん2018/03/01(木) 18:12:11.07ID:uQkXDe7H
未だにKotlinの実務経験のないやつは完全失業ざまあwww

777デフォルトの名無しさん2018/03/01(木) 18:13:28.77ID:tn3lzpGs
それはない

778デフォルトの名無しさん2018/03/01(木) 18:26:37.33ID:ABErgR5Z
>>774
COBOLだってまだ生きてるしね

779デフォルトの名無しさん2018/03/01(木) 18:48:56.63ID:cE1p2NGM
つか、あれ、ラムダ式の中で値返すときretrunとかキーワードつけないのかー
ふーんって思ったけど、制御までreturnするんじゃないのか・・
{
 if (条件式) 値1
 その他の文
 値2
}
で、if文の条件式が真の時、値1が返ってreturnするのかと思ったらその後も実行されるのか・・

780デフォルトの名無しさん2018/03/01(木) 18:56:24.56ID:cE1p2NGM
あれ、どうやって値返すんだよん。if else使いたくないんだけど。

781デフォルトの名無しさん2018/03/01(木) 19:05:41.78ID:uqwlFRYM
>>779-780
太郎本でも読むことをお勧めする

782デフォルトの名無しさん2018/03/01(木) 19:22:21.90ID:SIvaL2Ua
>>775
jsを、撲滅ってESの最新仕様追いかけなよ。
悪くないから

783デフォルトの名無しさん2018/03/01(木) 19:23:41.14ID:cE1p2NGM
コンパイルエラーがでるからそこらへん適当にやっててもなんとかなったけどww。
真面目に考えるとどうなってんだこれww
今までコンパイルエラーが消えるように適当に例えば、
fun testAsync(): Deffered<String> {
 return async {
  lock.withLock {
   "ABC"
  }
 }
}
むしろ、retrunを付けると怒られたからこのままにしたけど。return@asyncってラベルつけるればいいのか。
ラベルつけない場合はどうなってんだこれ。

784デフォルトの名無しさん2018/03/01(木) 21:08:11.92ID:lRGki80K
inline の場合は return の意味がちょっと変わっちゃうんじゃない?

785デフォルトの名無しさん2018/03/02(金) 09:57:27.48ID:cO6anSKk

786デフォルトの名無しさん2018/03/02(金) 19:55:39.45ID:UK6+GFm3
>>785
ありがとう。ちょっと前に話題になってたのね。
つか、前に教えてもらったhttp://jetbrains.github.io/kotlin-spec/
にそれに関する事のってねぇな?

DartだってECMAでしっかりした仕様書になってるのに、
仕様書がいまだにこんなレベルなのにAndroidのFirst Class Languageにするなんて
Google何考えてんだか・・

787デフォルトの名無しさん2018/03/02(金) 20:38:44.95ID:UK6+GFm3
後、
https://ideone.com/RIMEHi
で、
val t = Test()
t.update()
にすると、propertyが変更されないっぽいんですけど、なんででしょうか??
Android環境でコルーチンを使ってます
よろしくお願いします。

788デフォルトの名無しさん2018/03/02(金) 20:49:08.27ID:UK6+GFm3
あれ、そういや、>>787でfieldってラムダ式の中から変更できるの??

789デフォルトの名無しさん2018/03/02(金) 21:31:57.84ID:ypGJ9h8+
ダメだこの言語…はやく何とかしないと…

790デフォルトの名無しさん2018/03/02(金) 21:56:02.44ID:Cxn2x5kD
え、Androidやろうと思って今ならKotlinかなって思って調べてたのに。

791デフォルトの名無しさん2018/03/03(土) 00:14:44.42ID:xuTznB0o
>>787
Androidやコルーチンであることは直接の関係が無く
インラインでないラムダとprivate setの組み合わせが影響しているようだ

https://ideone.com/aLit2X
↑これの「4」が出力されるケースと同じでsetの処理を通らずに
バッキングフィールドに直に代入されてると思う

バグか仕様か断言はしないけど、多分コンパイラのバグじゃないかな

792デフォルトの名無しさん2018/03/03(土) 00:41:15.44ID:AQTy3jz6
>>791
うぉぉ。ありがとう。コルーチン関係なかったのか。
まだ、インラインとか勉強してなくてさっぱりだけどw
この前の>>658も俺だし、
真面目にkotlinで開発しようと思って2週間ぐらいでこのザマとか
なんなのkotlinの品質。笑えないな。

793デフォルトの名無しさん2018/03/03(土) 00:53:35.09ID:X3kFcdUX
この前のもだけど誰かバグとして報告してあげて…

794デフォルトの名無しさん2018/03/03(土) 01:02:48.20ID:AQTy3jz6
そうだよね。俺もちょっと前というか昨日もそうだけど、>>787のまた変な動きに出くわして
さすがにうんざりしてIssue Trackerのぞいたけど、前のも報告されてないっぽいよねww

つか、前のやつは単なるコンパイラのバグですまされない仕様修正とか入りそうな予感してるんだけど。
まぁ、現状の仕様ってのがなんだかよくわからんけど。

795デフォルトの名無しさん2018/03/03(土) 07:18:41.68ID:LSyqUS+v
じゃあiOS開発に引きこもってろ

796デフォルトの名無しさん2018/03/03(土) 09:31:08.45ID:xuTznB0o
コンパイラのバグはバグとして直すのが当然だけど

この前のバッキングフィールドの初期化回避や
setter内のインラインでないラムダからバッキングフィールドにアクセスするのを
普通のアプリ開発として書いているのなら止めた方が良いと思う

個人的な感覚では動作以前に「コンパイルが通るべきでは無いコード」だと思うので

797デフォルトの名無しさん2018/03/03(土) 11:42:59.48ID:GRjh9/QH
仕様がないとバグかそうでないか判断できないが仕様はどこにあるんだ?

798デフォルトの名無しさん2018/03/03(土) 20:31:37.81ID:AQTy3jz6
kotlinで3000行くらいすでに書いちゃったけど、とりあえず、private setをpublic setに直して回避・・
しばらくflutterで遊んでくるか

799デフォルトの名無しさん2018/03/03(土) 20:32:59.01ID:usZqppoC
しようがないなあ

800デフォルトの名無しさん2018/03/03(土) 22:17:04.30ID:veVqPwjm
醤油が無いなぁ


lud20190627103912ca

レス:1-200 201-400 401-600 601-800 801-1000 ALL

このスレへの固定リンク: http://5chb.net/r/tech/1509462463/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「Kotlin 2 YouTube動画>1本 ->画像>7枚 」を見た人も見ています:
次世代言語12 Go Rust Swift Kotlin TypeScript
Kotlin 5
Kotlin 4
Kotlin 3
Kotlin 6
Dart これ以上変な言語を増やすんじゃねえ! Kotlin
次世代言語13 Go Rust Swift Kotlin TypeScript
次世代言語Part8[Haskell Rust Kotlin TypeScript]
次世代言語17 Go Rust Kotlin TypeScript Julia
次世代言語15 Go Rust Swift Kotlin TypeScript
次世代言語15 Go Rust Bosque Kotlin TypeScript
次世代言語9[Haskell Rust Kotlin TypeScript Dart]
次世代言語14 Go Rust Swift Kotlin TypeScript
次世代言語18 Go Rust Elixir Kotlin TypeScript
次世代言語議論スレ[Rust Kotlin Haskell]第6世代
次世代言語Part7[Go Rust Swift Kotlin TypeScript]
次世代言語22 Go Nim Rust Swift Kotlin TypeScript
KoRn Limp Bizkit Slipknot DISTURBED LINKIN PARK
【IT】Kotlin 1.2正式版リリース。KotlinはJavaとJavaScriptのマルチプラットフォーム対応に
【MODARTT】 Pianoteq 2 【Physical modelling】
Kotlin
Kotlin 7
Kotlin 8
Alice in Chains 2
【スチーム】Steam in Linux 2
Led Zeppelin VS Deep Purple 2
●2018年 MotoGP 第6戦 イタリアGP Lap 2
次世代言語26 TypeScript Swift Go Kotlin Nim
次世代言語21 Go Nim Rust Swift Kotlin TypeScript
次世代言語議論スレ[Go Rust Kotlin Scala]第4世代
【TOYOTA】セルシオ30系 / LS430オーナー専用スレ 2
次世代言語25 TypeScript Swift Go Kotlin Rust Nim
次世代言語23 Go Nim Rust Swift Kotlin TypeScript
次世代言語29 TypeScript Swift Go Kotlin Rust Nim
次世代言語28 TypeScript Swift Go Kotlin Rust Nim
次世代言語24 Go Nim Rust Swift Kotlin TypeScript
【Netflix】オルタード・カーボン/Altered Carbon 2
【EXC】新仮想通貨Excaliburcoin エクスカリバーコイン【えくすこ】 2
リネージュ2 レボリューション / Lineage2 Revolution Part 278
リネージュ2 レボリューション / Lineage2 Revolution Part 282
リネージュ2 レボリューション / Lineage2 Revolution Part 268
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 205
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 208
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 207
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 209
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 210
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 208
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 215
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 206
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 214
【糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 212
【糞糞運営】リネージュ2 レボリューション / Lineage2 Revolution Part 229
【L2R】無課金専用リネージュ2 レボリューション / Lineage2 Revolution Part 21
【L2R】無課金専用リネージュ2 レボリューション / Lineage2 Revolution Part 20
【鯖統合不労所得】リネージュ2 レボリューション / Lineage2 Revolution Part 241
【ヴェンデッタ本スレ】リネージュ2 レボリューション / Lineage2 Revolution Part 271
リネージュ2 レボリューション / Lineage2 Revolution Part 276【課金パックを買うだけの過疎アプリ】
Kotlin初心者質問スレ
ScalaにできてKotlinにできないこと
【IT】Kotlinで開発された初のAndroid向け不正アプリが発見
02:45:03 up 141 days, 3:43, 0 users, load average: 14.31, 20.03, 28.14

in 0.019891977310181 sec @0.019891977310181@0b7 on 090515