Kotlin 3

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/03/19(月) 04:26:26.03ID:GqsfT9Tb
JetBrainsが開発した期待の新言語Kotlinについて語りましょう
https://kotlinlang.org

前スレ
Kotlin 2
https://mevius.5ch.net/test/read.cgi/tech/1509462463/
412デフォルトの名無しさん
垢版 |
2018/05/29(火) 21:25:57.83ID:1TljkXCl
てか、若いのから年寄りまで満遍なく居るのでは?
2018/05/29(火) 21:44:30.47ID:vcLjwH3c
じゃあ1人ずつ年齢かいてもらおうか
2018/05/29(火) 22:16:55.12ID:Uq1OydmE
珍しく伸びてると思ったら30代のオッサンがついて行けないような話で盛り上がってた
2018/05/29(火) 22:23:20.74ID:t/HXH+4/
時代的には80年代前半〜中頃
ロビンの横にはAMIGA+APPLEの専門店と
マーズマーケティングカンパニーがあったのよ(香港のノリの店)
2018/05/29(火) 23:11:41.89ID:Uq1OydmE
その時代にそういう店に出入りしてたってことは今50代だろ、、
2018/05/29(火) 23:41:33.87ID:zVPinOAm
この辺だな
https://goo.gl/maps/hfUJjG3gzEn
2018/05/30(水) 07:40:26.17ID:sR71Xw8R
そろそろ昔のPC板に移動しろよ
2018/05/30(水) 08:50:35.40ID:rSpBF+9Z
ベーマガとかの世代が今コトリンに興味があるのか
2018/05/30(水) 10:22:20.68ID:j/R6l5mj
ていうか、そもそも5chがもう年寄りの巣窟になってるからな
若い子はSNS中心で2chの存在自体知らんだろう
2018/05/30(水) 12:15:25.29ID:gFcKHTel
kotlinユーザーに
とってはGradle/Groovyがかなり上手い。
高い本買って、あくせく読んでたけどJavascriptにないもの
Javaにないもの
Kotlinにないものを全部持ってる気がする。
ただ始めるには本を買うお金と英語力と互換性の違いをカバー
するタメの根気が必要!!!
2018/05/30(水) 14:00:39.83ID:HCa7QHob
やっぱり皆さんってタイピングめっちゃ早いんですか?
2018/05/30(水) 14:07:55.72ID:j/R6l5mj
タイピングの遅いプログラマーって、長時間正座できない落語家みたいなもんだろ
2018/05/30(水) 14:16:56.26ID:CY9EdCtz
昔、先輩に

「PCのスペック上げる前に自分のスペック上げろ」
「プログラミングで1番ボトルネックになるのは入力スピードだからキーボードには金かけろ」

って教えられた
それ以来HHKB使ってる
2018/05/30(水) 14:31:36.04ID:7cKgIkbU
補完きくから実はタイピングはそれほど重要ではない
2018/05/30(水) 14:37:04.08ID:CY9EdCtz
Railsかなんかの動画で
初めてTextMate見た時は衝撃的だったわ
2018/05/30(水) 14:43:29.58ID:A0VUQsWM
>>425
補完の速さのためにマシンスペックが重要になってくるよな。
428デフォルトの名無しさん
垢版 |
2018/05/30(水) 16:15:20.38ID:ugq2le2T
>>422
速いんじゃないかな。ていうかブラインドタッチしててキー見ていない。

たまに速くてもホームポジションに指を置いてなくてキーボード見ながら打ってる人居るが、それだとブラインドタッチよりは遅くなるのが普通だと思う。
そうであってはいけないわけではないしそれでも速い人は速いかも知れないが効率は悪いと思う。
2018/05/30(水) 16:42:43.12ID:YuvTuL6/
なにそれ
2018/05/30(水) 16:57:52.97ID:gDez+FCM
思考を途切れさせない程度の速度で入力できれば十分じゃないかな。データ入力を専門とする人達ほどの速さはいらないと思う。
キー入力自体よりは、頭で考えている時間の方が比重はかなり大きいと思うよ。
2018/05/30(水) 17:00:46.40ID:zSYAOh3E
設計に一番時間かからない?そうでもないのか…?
2018/05/30(水) 17:25:16.33ID:jNbD5bbO
>>422
超早いよ。昔ゾンビ撃ちまくったもん
433デフォルトの名無しさん
垢版 |
2018/05/30(水) 17:33:02.85ID:nN9lgGwZ
>>431
設計は思い付くかどうかの問題なのでなんとも言えない。以前別の所でやったことと同じとか類似するなら速い。
そうでない場合は新たに調べなければならないことがあったりして遅くなる。
2018/05/30(水) 17:58:05.47ID:zS//e6Rq
プログラムを作るのにキー入力にかかる時間なんて大した比重じゃないだろ
9割は考えてる時間だわ
2018/05/30(水) 18:18:15.31ID:9jVf+l7V
HHKB使ってるやつカチャカチャうるさいんだけど他人の迷惑になってるって何で気付かないの
2018/05/30(水) 18:37:57.99ID:j/R6l5mj
タイピング速度の話題ってスレチなんだけど他人の迷惑になってるって何で気付かないの
2018/05/30(水) 19:41:52.33ID:zSYAOh3E
>>423がそれを言うのか
2018/05/31(木) 06:04:46.53ID:oIL7gyOu
kotlinとjavaとを比較したら
kotlinの方が実行速度は速く
メモリにも優しいの?
2018/05/31(木) 07:19:08.57ID:IFC4BjEQ
えっ?
2018/05/31(木) 08:05:10.36ID:m7ssRjNs
は?
2018/05/31(木) 08:55:30.24ID:02ZqwxZp
JavaとJavaを比較するのは難しいな
2018/05/31(木) 11:55:00.64ID:+cT2qfLL
出力されるものが違うんだから比較は出来るだろ
厳密にはKotlinの方が遅いんじゃないのか?でもnull安全
2018/05/31(木) 12:16:29.46ID:sPT40d0f
ラムダは無名インナークラスのオブジェクトとしてヒープに作られ、だからinlineにしろと言うが下手に使うとapkサイズ(Android)が大きくなる
444デフォルトの名無しさん
垢版 |
2018/05/31(木) 12:34:27.33ID:XsftK6MO
どんな最適化がされるかによるかな
2018/05/31(木) 14:38:12.68ID:+jWn3Bpu
Kotlinから生成されるのと同じコードをjavaで書いたら当然同じ速度になるだろ
2018/06/01(金) 14:06:58.90ID:yWtLbZRH
kotlinはjavaコードをシンプルに書ける分、実行速度が遅いのかなと思ってしまったです
2018/06/01(金) 15:55:27.95ID:EctGEGTk
kotlinってJavaより本気でシンプルに書けてると思う?
そのシンプルさって本気で必要か?
2018/06/01(金) 16:19:38.55ID:L+svQd+Y
必要だったかどうかは10年後にわかる
2018/06/01(金) 18:17:17.42ID:Iuf8RZKT
>>446
おじちゃんが「コンパイル」という言葉を教えてあげよう。勉強しなさい。
2018/06/01(金) 18:17:57.16ID:Iuf8RZKT
>>447
はい、思います。
2018/06/01(金) 19:05:06.36ID:N1sEXyvJ
コードレビューのときとかも見なきゃいけないコードが減って、
重要な部分だけが差分として出てくるのはいいよね
2018/06/02(土) 11:55:47.77ID:FVBP1VOI
>>451
俺としては型推論や記述の省略はむしろコードレビューの時に情報が足りなくて、結局差分以外の前後(特に前)を読まないと修正が妥当かどうかが判断出来ない。
2018/06/02(土) 12:22:50.19ID:6vA0Yh4c
型推論ってJavaでのメソッドチェーンや引数に式書くのと同じだけどな
それらも避けてるならまぁ・・・
2018/06/02(土) 12:25:37.58ID:nQfuo/WV
>>452
無能おつ
2018/06/02(土) 16:45:18.56ID:wXgfkuX+
>>452
俺も含めて世界中のエンジニアはそれで何の問題もなくコードレビュー出来てるんだ。
Kotlinの仕様でなく自分の能力を疑え。
2018/06/02(土) 16:55:25.60ID:E/YFLCfz
>>452
絵に描いたような「新しいものを否定するために否定する理由を探す老害」の言動そのものだな
自覚がないなら本当にヤバいからよく考え直した方がいい
2018/06/02(土) 18:31:22.94ID:XBrA/rvC
>>452
向いてないから死ね
2018/06/02(土) 20:44:32.83ID:eVt6fhvr
むしろ生きろ
2018/06/02(土) 21:54:47.77ID:DuLLPUxH
生きて地獄を味わってから救いを求めて死ねばいい
2018/06/02(土) 23:47:53.75ID:0q60OoOK
>>452
わかる
2018/06/03(日) 21:50:21.46ID:FVUlI3B2
>>459
わかる
2018/06/04(月) 09:24:35.97ID:+ZSn+chj
>>452
言わんとすることは分かるけど叩く流れだから叩いとく
お前のかーちゃんデーベソ
2018/06/04(月) 09:43:42.30ID:H4zTDe2l
>>452ってそこまで 叩くほどのことか?って思うけど、流れに従って叩いとく
https://www.youtube.com/watch?v=hNDEpi3yLrY
2018/06/04(月) 10:52:23.62ID:UeJV2JW9
>>452
文盲乙
2018/06/06(水) 11:27:15.52ID:JwFcperg
お前らが特定のレス叩きすぎるから萎縮してスレ過疎ったじゃねーかよ!
2018/06/06(水) 11:30:36.99ID:GT56WN7x
twitterじゃねえんだからゴミみたいなレスが溢れてるよりは何も書かれてない方が良いだろ
2018/06/06(水) 12:44:55.73ID:BvgLEABL
最初から過疎ってるからセーフ
468デフォルトの名無しさん
垢版 |
2018/06/06(水) 12:57:33.74ID:Q9sTm81B
で、肝心なKotlinの話題はないのか?
本が出るとかでもいいから。
2018/06/06(水) 14:39:19.17ID:9e0pNtVE
KotlinのAndroid入門本が新しく一冊出るはず
470デフォルトの名無しさん
垢版 |
2018/06/06(水) 15:00:44.62ID:d/sMsUvN
おお。そうか。また出るのか。
なんて本?もうAmazonとかには出てる?
2018/06/06(水) 21:03:09.61ID:stCrLIZM
Androidじゃないみたいだけど、こんな本出ていた事に気づかなかった。

やさしいKotlin入門
http://amzn.asia/hwYD4Tq
472デフォルトの名無しさん
垢版 |
2018/06/06(水) 21:15:39.65ID:I/lN0jrQ
新しくてAndroidっていうとこれか?

基本からしっかり身につくAndroidアプリ開発入門 Android Studio 3対応 (「黒帯エンジニア」シリーズ)
森 洋之
http://amzn.asia/fSD1PG8
2018/06/06(水) 21:40:46.93ID:pHjT5KoP
>>472
ああ、たぶんそれ
2018/06/06(水) 21:42:52.89ID:OU2EIiJw
DroidKaigi 2018 - Inside Android Architecture Components
ttps://www.youtube.com/watch?v=7v4pJXy5dhk

Hiroyuki Mori [JA]
2018/06/06(水) 22:26:21.79ID:RLod4FuC
C#+WinFormsは趣味レベルで知ってる、それ以外は知らない
周りに教えてくれる人はいない
こんな状況でkotlinでAndroidプログラミングを1からっていけますかね?
Androidが3の頃に挑戦して挫折したヘタレです

ググってたら今やるならkotlinで、みたいな話いっぱい出てくるんですが
言ってるのはJavaでAndroidやってきた人ばっかな気がして
そういう人たちにはとっつきやすいってだけな気がしてきました

一応
http://www.atmarkit.co.jp/ait/series/8323/
見てたら結構C#に似ているところも多く
言語的には自分にとってJavaよりもとっつきやすいように見えるのですが


C#ならXamarinという選択肢もあるかもしれませんが
XAMLやWPFを学ぼうとしていまいち理解できず挫折したヘタレでもあり
クロスプラットフォームがやりたいわけでもないし・・・
どちらにせよ1から学ぶための書籍やサイトが少ないのが最大のネックだと思っています
特にサイトは経験者向けと思われる情報ばかりで・・・

今んとこJavaもAndroidプログラミングも知らないという人向けの書籍は出てないように見えます
>>472もJava経験者向けと書いてありますし

kotlinスタートブックは図書館で借りられるぽいので
とりあえず借りようかと思っています(貸出中でまだ借りられないけど)
2018/06/06(水) 22:31:07.38ID:Glbjy1Oa
やりたいことが決まっているなら出来る。
決まってなければ情報量に溺れる
2018/06/06(水) 22:32:37.62ID:OU2EIiJw
目的がはっきりしないやつは何をやっても駄目
お勉強が目的ならJavaでもKotlinでもXamarinでも何でもやって時間を消費していけばいい
2018/06/06(水) 22:34:36.68ID:g67biSXH
>>475
本気でやる気があるなら専門書の1冊や2冊くらいちゃんと買おうな
2018/06/06(水) 22:56:55.88ID:ZTNhaAtL
>>475
世の中にはプログラミングのプの字も知らないところから独学でアプリを作る人も腐る程いるから大丈夫。
趣味レベルでも他の言語を触ったことがあるならそんなに難しくないよ。
480デフォルトの名無しさん
垢版 |
2018/06/07(木) 00:51:11.01ID:VEx/11mP
俺はC#のしの字も知らないのでなんとも言えない。
そうか。似てたのか。
2018/06/07(木) 01:14:51.14ID:EO/o86zQ
セックスのセの字も知らない俺が来ましたよ
2018/06/07(木) 06:32:54.21ID:HTPCxOdL
>>475
C#はJavaと似ているというから、Javaを知らなくても大丈夫かもしれないけど、
GUI部分はXAMLとかが出来なかったという点に不安が残る。
でも>>476が大体真実。
2018/06/07(木) 06:50:58.51ID:BNU48/le
まずこの本を3回読んで、Java とオブジェクト指向を学ぶ。
スッキリわかる Java入門 第2版、2014

その後、
Kotlinスタートブック -新しいAndroidプログラミング、長澤 太郎、2016
2018/06/07(木) 07:47:18.48ID:I0cIVcWf
検索力が一番大事
それとプログラミングで使う知識のかなりの部分は特定の言語に依らない

取っ掛かりとしては普通にサンプルアプリをビルド/実行する環境作っていじっていけばいい
485475
垢版 |
2018/06/07(木) 16:39:06.79ID:f2IosttJ
皆さんどうもです
私の場合、一番の肝はモチベーションを保てるかどうかだと気付きました

そういう意味では
じっくり勉強するより
>>484さんの言うように
とにかく打ち込んで動かしてみることかなと思いました。

javaを見たときは「c#と比べてなんか使いにくいな」というのが第一印象でしたが(あくまでちょっと調べてみた初心者の主観ですよ)
Kotlinは分かりやすくてc#よりいろいろ便利な気がしたので
自分の直感を信じてKotlinでやってみます。
取りあえずは新し目のKotlin+Android本を買ってみようかと
>>472を立ち読みしてみましたが
チンプンカンプンというわけではなかったので

>>482
xamlで挫折したことがネックになるなら
言語は何選んでもだめな気がするので考えないことにしました
2018/06/07(木) 17:01:50.89ID:RUXm3D2t
モチベーションを保ちたいならkotlinの勉強会なりもくもく会なりに定期的に行くといいよ
2018/06/07(木) 19:56:16.13ID:b0JUau+Y
いーやお前は向いてない
488デフォルトの名無しさん
垢版 |
2018/06/07(木) 20:42:49.81ID:VEx/11mP
おまえモナー
2018/06/08(金) 07:07:19.14ID:dTeFfRCY
スッキリわかる Java入門 第2版、2014
たのしいRuby 第5版、2016
Kotlinスタートブック -新しいAndroidプログラミング、長澤 太郎、2016

これら3冊を、数十時間で読める

でも、各言語の文法なんて、アプリ開発にはほとんど関係ない。
大部分が、Android API・OS の事だから

ゲーム作りなら、ほとんどが2D/3D の部分
2018/06/08(金) 09:48:36.84ID:zbn8MUSd
Rubyからプログラムに入った人間だから静的型付け言語は面倒臭いと思ってたけど、ただJavaが面倒臭かっただけなんだな。
KotlinをIDEで開発する生産性の高さに慣れてしまったらもう戻れない。
Kotlinかわいいペロペロ。
2018/06/08(金) 13:50:40.98ID:6xuCEeJN
初心者が最初に覚えるべきことは、
lateinitとby lazyだと思う
492デフォルトの名無しさん
垢版 |
2018/06/08(金) 13:53:39.63ID:1PlqYTvd
わかった。今日はそれを覚えよう。
493デフォルトの名無しさん
垢版 |
2018/06/08(金) 14:26:23.78ID:fK9rmHcJ
by lazyはともかくlateinitは絶対に他の方法が無い場合以外は基本的にアンチパターンだと思う。
2018/06/08(金) 14:29:49.98ID:K7RFP+ML
AndroidのonCreateで代入する系はどうするのがいいんだ
2018/06/08(金) 14:36:08.22ID:YLelc45R
>>494
俺はby lazyにしてる
2018/06/08(金) 15:36:52.73ID:TJLfCVD6
>>494
それはいいんでないの
2018/06/08(金) 16:31:15.73ID:pba8q40Y
lateinitを多用しすぎると実質null safetyが無意味になるからねえ
2018/06/08(金) 21:53:46.19ID:Rj8gI1Yc
Rock54で書き込みできなくて、短縮URLなんだけど済まない
ちょっと質問なんだけど、 https://goo.gl/RZzhrdのスレに下記の記述があるんだけど、

test6のほうはわかるんだけど、test5のほうで無名関数?の型が省略できるのはなんで?

//波括弧を省略して返値が明らかなとき返値の型を省略可能
var test5 = fun (num: Int) = num * 5

//変数の型を明示してあれば無名関数の引数と返値の型を省略可能
var test6: (Int) -> Int = fun (num) = num + 5
2018/06/08(金) 22:06:41.31ID:ZuDJRL/n
>>498
numがInt型であることが明記してあって、かつ式の中でIntが乗算されてるからでしょ。
Int × Intの計算なら計算結果がIntであることは明らか。
2018/06/09(土) 00:12:44.38ID:ck0LUwLO
Int型を明示して16進数で指定するときに、値が4byteかつ負の数だとtoInt()が必要なの面倒だな
2018/06/09(土) 14:19:38.63ID:Zus7L/10
What's new in Kotlin
ttps://speakerdeck.com/satorufujiwara/whats-new-in-kotlin?slide=1
502デフォルトの名無しさん
垢版 |
2018/06/09(土) 17:23:04.13ID:uYb8xFM5
>>500
一応こうするとエラーは出ないけどね。見た目が不自然だな。

val f: Int = 0x80000001 - 0x100000000
2018/06/09(土) 18:06:46.11ID:bp611qr0
そもそも16進数で書くのって何の意味があるんだ?
2018/06/09(土) 18:19:06.46ID:UdCQy9ct
>>499
なるほど、そういうことなんか。類推してくれるんだな
上で挙げたサイトでいろんな記述の仕方があるけど、関数型?とかって慣れてないと難しいな
2018/06/09(土) 18:23:37.27ID:PEEuyqb1
>>503
カラーコードとかビットマスク
506デフォルトの名無しさん
垢版 |
2018/06/09(土) 19:37:29.06ID:uYb8xFM5
>>503
そう書いた方がプログラムが分かり易くなることがあるから使う。

例えばファイルやネットワークから取得した1バイトの下位6bitだけを取り出したい時とか
x and 0x3f と書いた方が x and 63 よりは分かり易い。まあ2進数使って x and 0b11_1111 の
ように書いても良いけどこれはビット数が多くなると分かり辛くなる(アンダーライン入れて
書いてくれないと余計に)。
2018/06/09(土) 20:06:50.64ID:PEEuyqb1
あとコードポイントも16進数の方がわかりやすいな
2018/06/09(土) 20:54:23.48ID:Sr7ZUfc8
マイナス符号ごと16進にするケースはエラーコードくらいかね
2018/06/09(土) 21:16:47.58ID:mIOWCJGq
ARGB
2018/06/10(日) 10:07:44.14ID:VIIC+jke
いい加減、リソース解放言語レベルでサポートしろよ。
ネストがひどくなる。
2018/06/10(日) 10:43:23.49ID:Hxag2VNZ
spring使う時はlateinitはありがたい

コンストラクタインジェクションできない場合もあるし
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況