Kotlin 3 at TECH
[2ch|▼Menu]
[前50を表示]
700:デフォルトの名無しさん
18/06/27 21:47:53.30 UhwNkHWJ.net
Googleも一枚岩ではないからな

701:デフォルトの名無しさん
18/06/27 21:54:44.06 058nb6Zd.net
そういうカオスなのがGoogleっぽくて嫌いじゃない
Googleはインド系
Appleは中国系

702:デフォルトの名無しさん
18/06/27 22:06:52.35 M3lpNFO8.net
Google的にはWebAssemblyはどの言語なんだろ
Kotlin/Nativeを推してくれたりしないものか

703:デフォルトの名無しさん
18/06/27 22:36:51.97 09Lu5AaC.net
GoogleはSEO最強だからどんなものでもそれなりに凄いもののように見えるけど、
実際にはGoogle自身も全く本気でやってないお遊びレベルのゴミが多いでしょ
Googleって社内的には非常に一貫性の高い独自のプラットフォームがあって、世間のOSSベースな開発とはかけ離れた世界になってるらしいし

704:デフォルトの名無しさん
18/06/28 05:21:24.48 lL281Rpl.net
ソースは?

705:デフォルトの名無しさん
18/06/28 08:16:52.30 1UW06GNd.net
googleのソースリポジトリへのコミット要件が割と厳し目なのは有名かな。
その割にgithubにあげてるのはそもそもまともに動かないものもたまにある。

706:デフォルトの名無しさん
18/06/28 11:23:25.80 m6ikkjV1.net
>>693
オリバーかイカリ使ってる

707:デフォルトの名無しさん
18/06/30 20:53:17.24 eWG25u0M.net
この前のHadi Haririのイベント行った奴いないの?

708:デフォルトの名無しさん
18/07/01 08:01:17.25 /DvFOeR7.net
すみません、どちらに質問させて頂けるのか分からなくてこちらで教えていただければと考えてます。よろしくお願いします。

709:696
18/07/01 08:15:08.30 /DvFOeR7.net
1 fun func(x:int,y:(Int)->Int)=L(x)
2 func(1,{it*5})
1行目のL(x)は何を意味しているのでしょうか?
また、var y:(Int)->Int={x:Int->x*2}をfunc関数に代入するために
1行目にy:(Int)->Intを引数にして
2行目で、{x:Int->x*2}を実行しているという理解でいいのでしょうか?

710:デフォルトの名無しさん
18/07/01 08:18:15.23 nOlX7v2j.net
>>682
Unityの「だってお前らこれではゲームしか作らんだろ」という割り切りっぷりは清々しい
ゲーム的文法で作る以外のルートがねえw

711:デフォルトの名無しさん
18/07/01 10:29:25.00 7m3QggRW.net
>>698
1行目はLという名前の関数にxを渡してるだけ
 fun func(x:int, y:(Int)->Int) {
   return L(x)
 }
の省略表記
ただ、引数のyが無視されているので
L(x) じゃなくて y(x) の間違いなんじゃねって気がする
2行目は代入云々はその理解で合ってるけど
「実行している」のではなく「定義して渡している」
実際そのコードではyが呼ばれてないのでその掛け算は実行されない

712:デフォルトの名無しさん
18/07/01 16:20:40.37 nicbhK38.net
なんで、宣言のとき型と変数名逆にしたんだろうなあ、苛つくわあ

713:デフォルトの名無しさん
18/07/01 16:23:38.80 nOlX7v2j.net
>>701
省略したいときウルトラ面倒になるのでやりたくなかったのだろう

714:デフォルトの名無しさん
18/07/01 16:58:23.83 nicbhK38.net
val 人間:文字列=山田
気持ち悪いわあ

715:デフォルトの名無しさん
18/07/01 18:15:00.04 kOaBFF1V.net
>>701
型が省略されてるものとされないものが混在したら可読性ウンコになるだろ

716:デフォルトの名無しさん
18/07/01 19:41:23.70 zdyprq44.net
以前はPASCAL, ML, Haskell、最近なら Scala, Go もこういう形で、
「型 変数」っていう順序のCスタイルの方が本来異色なんだけど。

717:デフォルトの名無しさん
18/07/01 20:18:17.04 dWb7F20p.net
>>704
val a=0
int b=1
みたいな感じじゃだめだったのか気になる

718:デフォルトの名無しさん
18/07/01 20:49:55.44 8aTW58+O.net
val name : String = " 名前"
" String "に代入してる感覚があるから、わかりにくのは事実だわなw

719:デフォルトの名無しさん
18/07/01 20:53:31.14 dWb7F20p.net
>>707
これよこれ
Aをhogeという型で代入
hogeという型のAに代入
好みかな…

720:デフォルトの名無しさん
18/07/01 21:01:29.33 kOaBFF1V.net
>>706
それだと
val int a = 0
val b = 1
になるやん

721:デフォルトの名無しさん
18/07/01 21:31:28.10 sOb0a/fB.net
文芸的プログラミングというやつで、
val name: String
はname of Stringと見えるから英語の順序的にはこのほうが自然

722:デフォルトの名無しさん
18/07/01 21:38:16.02 nOlX7v2j.net
てゆーか>>703の例の時点でさくっと英語理屈を出してあげたほうが混乱がなかったと思う
じゃあなんでC族がそうなってないかって?
Cだからそんな面倒なことしねーんだよお前側が機械に合わせろw

723:デフォルトの名無しさん
18/07/01 22:01:00.11 q7RVjG2e.net
日本語話者の一般的な認知様式は
鳥の模型>模型の鳥
名前を表す文字列>文字列で表された名前
だし、日本語でも 変数名:型 の方が言語的には自然では

724:デフォルトの名無しさん
18/07/01 22:20:03.34 InQHnS3f.net
数字の n は 42
文字列の s は "42"

725:デフォルトの名無しさん
18/07/01 22:26:56.25 nicbhK38.net
言葉的にはそうかもしれないが
抽象度の順じゃないつうのがねー
これがモヤっとする原因
哺乳類>人間>山田

726:デフォルトの名無しさん
18/07/01 22:31:27.77 R8XGd50K.net
>>714
うるせーそれが仕様だ
慣れろバカ

727:デフォルトの名無しさん
18/07/01 22:50:43.53 q7RVjG2e.net
>>713
それも大抵の日本人は
nは数字の42
sは文字列の"42"
と表現すると思うよ

728:デフォルトの名無しさん
18/07/01 22:55:24.40 +8z4/crF.net
単純に慣れだと思うんだけどなぁ
コード読むときに
>>713
>>715
みたいな考えいちいち経由しないでしょ

729:デフォルトの名無しさん
18/07/01 23:01:37.60 8aTW58+O.net
kotlinの基本に慣れる為に
val name : String = " 名前"
"定数"の"name"には"String型"の"値"を入れる
と言う解釈がすんなり行けるかな

730:デフォルトの名無しさん
18/07/01 23:08:56.02 raAwvdUY.net
val name: String = "..."
"name" is a string: "John Smith"
「名前」は文字列、"山田花子"
打ってる時はだいたいこういう感じの思考の流れがある

731:デフォルトの名無しさん
18/07/01 23:19:27.43 CPfYnrTw.net
>>718
define a variable "name" as a string and assign a value "名前" to it って読むんだよそれ

732:デフォルトの名無しさん
18/07/01 23:20:47.61 InQHnS3f.net
valなのにvariable wwwww

733:デフォルトの名無しさん
18/07/01 23:27:05.41 yaDvqYhr.net
昔々PascalというかDelphiをよく使っていたので変数名、形の順でも違和感なし。
Oracle の PL/SQL も確かそうだったな。
Cも昔からよく使ってるけどね。Javaは趣味で使う程度かな。

734:デフォルトの名無しさん
18/07/01 23:30:37.32 yaDvqYhr.net
そういやKotlinは val a, b, c : Int みたいに書いてまとめて宣言できないんだっけ?できた?

735:デフォルトの名無しさん
18/07/02 00:28:48.57 QmQNg+H0.net
>>709
javaとかこんなんじゃなかったっけ

736:デフォルトの名無しさん
18/07/02 00:29:30.51 QmQNg+H0.net
>>709
>>706のことね

737:デフォルトの名無しさん
18/07/02 02:31:32.49 oF5BHAcS.net
変数名とコロンの間にスペース入れるのは規約違反?

738:デフォルトの名無しさん
18/07/02 04:08:17.17 M/CoMLX8.net
>>726
エラー出ないから言語としては良いのでは?
関係ないが>>723で書いたやつは試したらダメだった。

739:デフォルトの名無しさん
18/07/02 10:54:34.73 sDkOSnE9.net
>>726
IntelliJのCode Style設定ではどちらも選べるようになってるから、どちらでもいいんでない

740:デフォルトの名無しさん
18/07/02 12:07:35.37 eli6Ofbc.net
>>727,728
そーなのか
なんとなく型はスペース無しで継承はスペース有りかと
ありがとりん

741:デフォルトの名無しさん
18/07/02 15:54:18.89 fF3oZnn5.net
そうそう型と継承が同じ記法だからごちゃごちゃするよな
どうせならすべて動的型付けにすればよかったのに

742:デフォルトの名無しさん
18/07/02 16:24:41.26 6MU/ELtX.net
動的型付けだと、存在意義全否定だろ。
Groovyでも使っとけ。

743:デフォルトの名無しさん
18/07/02 20:41:56.60 nCi8FeLN.net
型推論と動的型付けを混同すんなよ

744:デフォルトの名無しさん
18/07/02 21:15:16.60 BzTTxziN.net
>>700
お礼が遅れてすみません。
仰る通り、記載ミスで、y(x)です。
ご解説ありがとうございます。
すっきりしました。ありがとうございます。

745:デフォルトの名無しさん
18/07/02 21:24:23.77 EvLqbtyu.net
>>733
うむ。精進なされよ。

746:デフォルトの名無しさん
18/07/02 23:00:47.89 //b/At4I.net
慣れたら型が後の方が可読性高く感じる
それと構文解析しやすくなるのもあるんじゃね
Kotlinでの
 (T1,T2)->R
はJavaでは
 BiFunction<T1,T2,R>
型が先だと関数型(function type)が他の構文と衝突しないよう識別子やジェネリクス型を置くことになる

747:デフォルトの名無しさん
18/07/03 00:00:46.54 GdB7bYPq.net
(TT^TT)

748:デフォルトの名無しさん
18/07/03 00:39:55.52 TIu9/k2l.net
関数の返値の変数の型も指定できるから、そっちのほうはわかりやすいんじゃないかな
fun hoge(): String = "ぬるぽ"
関数型プログラミングだと、そういう形式のほうがわかりやすいんじゃないかと思う
val hoge: () -> String = fun(): String = "ぬるぽ"

749:デフォルトの名無しさん
18/07/03 09:23:57.08 5ohzf/bH.net
>>737
ガッ

750:デフォルトの名無しさん
18/07/03 10:05:34.13 2Hrfam1D.net
慣れの問題じゃなあかなあ

751:デフォルトの名無しさん
18/07/03 10:06:19.13 2Hrfam1D.net
うう。スマホのフリック入力で失敗した。

752:デフォルトの名無しさん
18/07/03 10:07:52.88 ng0Ex9q0.net
>>739
人間歳をとると新しいものに慣れるのに時間がかかるようになる
そしてこのスレはおっさんのすくつだ

753:デフォルトの名無しさん
18/07/03 10:19:34.86 lMsOY+nb.net
このスレの人たち、今だにガラケー使ってそうだな
いつまで慣れの問題でギャーギャー言ってんだよ

754:デフォルトの名無しさん
18/07/03 10:40:19.23 pQbF/VH/.net
>>740
「い」の入力失敗率はあじょう。
人間工学的におかしあ。
あちばん遠あからな。

755:デフォルトの名無しさん
18/07/03 11:32:14.53 jh9a6Llj.net
>>742
幸か不幸かどこぞの板と違って末尾で判断できない

756:デフォルトの名無しさん
18/07/03 15:12:48.33 k8WNCQ/C.net
kotlinのコロン( : )ってどんな働き・役割なのですか?

757:デフォルトの名無しさん
18/07/03 15:56:30.11 k8WNCQ/C.net
もう一つ質問させてください
1. class chiba{ }
2. class chiba(){ ]
3. class chiba(city:String="--"){ }
1はコンストラクタは持たない
2は自動でパラメータのないコンストラクタが生成される
3は( )内でパラメータを初期化し{ }がコンストラクタになる
という理解でいいのでしょうか?

758:デフォルトの名無しさん
18/07/03 16:38:20.61 h4wqJ0lA.net
>>745
単独では何の働きも役割もない
ただの区切り文字

759:デフォルトの名無しさん
18/07/03 20:19:53.43 rBmEiF9u.net
>>746
以下4行は同一、下に行くほど省略表記なだけ
コンストラクタは自動的に作られる
class chiba constructor() { }
class chiba() { }
class chiba { }
class chiba
コンストラクタ(プライマリコンストラクタ)の中身は
初期化ブロック( init{...} )とインスタンス変数の初期化
具体的にコードで
URLリンク(ideone.com)
リファレンス
URLリンク(kotlinlang.org)

760:デフォルトの名無しさん
18/07/03 20:54:14.27 ODNzvHJa.net
ObservableFieldの説明を見ていたら、
URLリンク(developer.android.com)
public final ObservableField<String> first = new ObservableField<String>();
public final ObservableField<String> last = new ObservableField<String>();
public final ObservableField<String> display = new ObservableField<String>(first, last) {
    @Override
    public String get() {
        return context.getResources().getString(R.string.name, first.get, last.get());
    }
};
既存のObservableFieldを組み合わせて新しいObservableFieldを作るようなコードが載っているので、
そのままコピペして試してみたんですが、コンパイルが通らないんですがどうしたらいいですか

761:デフォルトの名無しさん
18/07/03 21:10:49.57 egr/fzRr.net
>>749
コンパイルエラーのエラーメッセージを読む

762:デフォルトの名無しさん
18/07/03 21:13:11.08 b3yF7W7d.net
それJavaじゃん
Kotlinで書く

763:デフォルトの名無しさん
18/07/03 21:34:21.57 ODNzvHJa.net
Kotlinに変換しても同じだった
エラーメッセージは以下だが、何を治したらいいのか
Cannot resolve constructor 'ObservableField(...)'

764:デフォルトの名無しさん
18/07/04 04:50:43.63 deFmQ17L.net
スレ違いの

765:デフォルトの名無しさん
18/07/04 04:54:54.94 /r54tfMO.net
コトリヌス

766:デフォルトの名無しさん
18/07/04 07:37:22.00 QS1wdrQw.net
>>752
だからKotlinで書けよ
自動変換は完璧じゃない

767:デフォルトの名無しさん
18/07/04 07:37:52.39 K6PpspCw.net
基礎からやっていくか、状況をちゃんと説明出来るようになるか

768:デフォルトの名無しさん
18/07/04 07:42:41.16 d8xWcdxC.net
初心者でせっかくだらjavaよりも新しいkotlinでやろうと勉強中なんだけど、結局javaも知らんといかんのね…

769:デフォルトの名無しさん
18/07/04 07:54:41.64 qSU3AFLq.net
「こんぱいるとおりません」は実際なんも説明してねーからな
で、「ほんとうに」全部自分でゼロから作るならJavaの知識は不要なのだけど
実際はJavaの内部ライブラリやJava製の外部ライブラリを利用するorさせられることが多いので
Javaは少なくとも読めて呼び出し法くらいは知っておかないと現状余裕で詰まる

770:デフォルトの名無しさん
18/07/04 08:34:41.84 dJOGt5Qc.net
普通に、コンストラクタの引数がちがうか、importしてないか、importするための設定をbuild.gradleに書いてないかだろ

771:デフォルトの名無しさん
18/07/04 08:39:44.33 hww1W9rh.net
ああそのレベルならimportしてないが有力だな、確かにw

772:デフォルトの名無しさん
18/07/04 08:42:59.27 bgzrJhKa.net
ビルド通ったやついるん?

773:デフォルトの名無しさん
18/07/04 10:08:54.78 lcEaonpe.net
importしてないならその前でコケるだろjk
sdkのバージョン違いじゃないの?

774:デフォルトの名無しさん
18/07/04 10:40:04.79 dJOGt5Qc.net
build.gradleのandroid {} のなかに dataBinding { enable = true } 書いて、ObservableField のとこで Alt + Enter すれば、必要なimport が追加されたよ

775:デフォルトの名無しさん
18/07/04 11:34:18.64 Fv6I2084.net
return context.getResources().getString(R.string.name, first.get, last.get();
ここの行のfirst.getもfirst.get()のはずだし、公式のサンプルコードがおかしいんじゃねえの

776:デフォルトの名無しさん
18/07/04 11:39:55.59 PJj9ZCzu.net
>>748
ありがとうございました!

777:デフォルトの名無しさん
18/07/04 14:18:24.41 6R9abQ63.net
kotlinはネット投稿越しの説明デバッグが面倒くさい…

778:デフォルトの名無しさん
18/07/04 15:27:56.70 hVA06Lo9.net
>>723に書いたやつはできないがこういうのはできるのな。
val (a, b, c, d, e) = listOf(1, 2, 3, 4, 5)
ただし5つまで。理由は component1() 〜 component5() を使うため。

779:デフォルトの名無しさん
18/07/04 16:47:52.07 n4h9hTEh.net
はい
URLリンク(goo.gl)

780:デフォルトの名無しさん
18/07/04 19:03:02.55 Uqt21yY2.net
>>768
グロ

781:デフォルトの名無しさん
18/07/04 19:20:22.52 dJOGt5Qc.net
>>766
kotlin はテキストのコピペで説明できるから簡単じゃね?
VS使ってるとスクリーンショット使わないと説明できないこと多くて大変

782:デフォルトの名無しさん
18/07/04 19:41:26.22 yHhNx3G5.net
>>770
>VS使ってるとスクリーンショット使わないと説明できないこと多くて大変
たとえば?

783:デフォルトの名無しさん
18/07/04 21:42:39.79 KFDu9ptB.net
それもまたスクリーンショットを使わないと説明できないのです。

784:デフォルトの名無しさん
18/07/04 21:47:17.49 gFgZc5FG.net
9MT

785:デフォルトの名無しさん
18/07/05 06:52:07.84 3UdVdS3q.net
つまりVSは抽象概念だった?

786:デフォルトの名無しさん
18/07/05 18:11:14.13 1+w/aSOe.net
JVM系でのことりんのポジションって.Net系だと何になるの?

787:デフォルトの名無しさん
18/07/05 18:25:29.62 em8VdMHP.net
すみません。ラムダ式について質問させてください。
純粋にkotlinじゃなくてすみません。
import kotlin.concurrent.*
fun main(args:Array<String>){
var a1=Pn("A")
var a2=Pn("B")
var a3=Pn("C")
thread{a1.en()}
thread{a2.en()}
thread{a3.en()}
}
class Pn(nm:String){
fun en(){
for(i in 1..5){
println("${nm}:${i}")
}
}
}
thread{a1.en()}の波括弧内はラムダ式ということなのですが、
もともとの関数の記述って、どんな記述になりますか?
a1:Pn->a1.eat()
とかですか?

788:デフォルトの名無しさん
18/07/05 18:48:07.71 9m4qXusF.net
質問の意味がわからない

789:デフォルトの名無しさん
18/07/05 19:37:20.63 gU4M+kls.net
>>776
いや、そのラムダは引数に何も受け取ってないよ
クロージャになってて外側のa1とかの変数をキャプチャしてるだけ
JavaScriptとかの書き方で言えば
() => { a1.en() }
みたいな感じ

790:デフォルトの名無しさん
18/07/05 20:08:46.41 bx98WRX+.net
クロージャ使うのは一苦労じゃ

791:デフォルトの名無しさん
18/07/05 20:17:49.90 9m4qXusF.net
【審議中】
    ∧,,∧  ∧,,∧
 ∧ (´・ω・) (・ω・`) ∧∧
( ´・ω) U) ( つと ノ(ω・` )
| U (  ・) (・`  ) と ノ
 u-u (l    ) (   ノu-u
     `u-u’. `u-u’

792:デフォルトの名無しさん
18/07/05 20:57:09.18 n+w19a7Z.net
>>776
fun lambda1() {
 return a1.en()
}
thread( lambda1 )

793:デフォルトの名無しさん
18/07/05 22:45:45.28 zhHpKoz0.net
コチン星は他に転用できないでしょ
Javaは何にでも使える
コチン星がそうなったら移住してやんよ

794:デフォルトの名無しさん
18/07/05 22:54:46.98 gU4M+kls.net
逆なんだよなあ

795:デフォルトの名無しさん
18/07/05 22:58:33.72 y9cLPe3E.net
現実には逆だね
Kotlin使ってるような奴はJavaはもちろん他にも複数の言語使える

796:デフォルトの名無しさん
18/07/06 07:14:19.59 BcpJI+Hp.net
今kotlin使ってるやつはJavaとSwiftは書けそうだよな
あと聞くところによるとずっとRuby使ってたweb系の人たちの間でkotlinの人気があるらしい

797:デフォルトの名無しさん
18/07/06 08:51:02.46 8OYGWEQ0.net
KotlinとSwiftは似ているから
iOSとAndroidでお互いのコードを参考にしやすいという点でも
Kotlinを使ったほうが良いよね

798:デフォルトの名無しさん
18/07/06 09:06:38.50 QElqX86J.net
>>778
>>781
ありがとうございました!
納得できました。またよろしくお願いします!感謝です

799:デフォルトの名無しさん
18/07/06 09:16:06.34 mA2hlx7s.net
>>786
うちはまさにそれでやってる。
細かい違いはあれど、両者で大体同じ感じに作れるからだいぶ生産性が上がる。

800:デフォルトの名無しさん
18/07/06 09:32:23.49 abpU4SXk.net
「あれをああいうふうにつくりたい」で片方が概念から違うコード塊だとめげるものね
せめて見る方向は一緒でないと困る

801:デフォルトの名無しさん
18/07/06 09:39:15.11 M3cpa2kA.net
Kotlin, Swift, TypeScript, C#あたりはいいかげん合体して一つになれよとは思う
似たような言語増えすぎ

802:デフォルトの名無しさん
18/07/06 09:58:03.13 HP0oeisi.net
アーキテクチャもMVVMで統一しておくとさらにいいね

803:デフォルトの名無しさん
18/07/06 10:37:25.30 SXzPAxPV.net
合体して!

804:デフォルトの名無しさん
18/07/06 10:43:05.75 zksWstCG.net
>>785
ruby の特徴が groovy 経由で kotlin にとりこまれてるからねぇ

805:デフォルトの名無しさん
18/07/06 10:50:59.18 dSjMYi7e.net
まあHello Worldレベルならどれも大差ないよね

806:デフォルトの名無しさん
18/07/06 11:30:17.98 2AM7zbcj.net
>>789
一度作って終わりなら何でもいいけど、機能追加やらメンテやら考えたら極力設計レベルで近づけておきたいからね。
俺は経験ないけどObjectiveCとJAVAでこれやってた人たちほんとすごい。

807:デフォルトの名無しさん
18/07/06 13:21:00.56 49COMX7t.net
Ruby由来の特徴って?
Pythonから取ってきたようなのはちらほらあるけど。

808:デフォルトの名無しさん
18/07/06 13:28:11.07 nxtJThkD.net
信者の布教

809:デフォルトの名無しさん
18/07/06 13:44:46.19 q/ghlqNX.net
>>796
なんでもかんでもそれで実装しようとして一応作り上げ公開はするもののメンテできず放置するムラ気の情熱

810:デフォルトの名無しさん
18/07/06 14:05:18.34 LdCqv7/c.net
>>796
ヒント:ワシが育てた

811:デフォルトの名無しさん
18/07/06 15:32:07.66 kKlMDWU3.net
>>799
いいや、わしが育てた。

812:デフォルトの名無しさん
18/07/06 15:58:16.16 zvJYjc+f.net
kotlin配列めんどくさすぎwwwwワロタwwwww

813:デフォルトの名無しさん
18/07/06 16:02:32.49 zksWstCG.net
>>796
Kotlin 公式のこのページなんだけど
URLリンク(kotlinlang.org)
むかしは Type-Safe Groovy-Style Builders と呼ばれてた
URLリンク(github.com)
ドキュメントは修正されちゃったけど、機能が修正されたわけじゃない
lambdaを { } で書くのとか、カッコの外に出せるのとか、これ実現するために必須

814:デフォルトの名無しさん
18/07/06 16:15:00.75 CcG3LQ04.net
Kotolinて変数にプリミティブ型が無いけど、
画像処理とか大量にデータ処理すると、Javaより遅くならない?

815:デフォルトの名無しさん
18/07/06 16:28:27.50 zksWstCG.net
>>803
ByteArray使えばよいでしょう

816:デフォルトの名無しさん
18/07/06 17:00:50.17 CcG3LQ04.net
>>804
配列はDoubleArrayとかあるのね
bit演算はushrがあるから、Javaより見易そう(Javaの>>>と>>が見辛過ぎ)なのがいいな
そろそろ切り替える踏ん切りがつきそうになった、ありがとう

817:デフォルトの名無しさん
18/07/06 20:20:35.42 AbsrypZ1.net
>>803
プリミティブに出来るものは勝手にプリミティブになる
Kotlinの
  fun f1(a:Int, b:Int?, c:List<Int>){}
はJavaでの
  void f1(int a, Integer b, List<Integer> c){}
になる
URLリンク(kotlinlang.org)

818:デフォルトの名無しさん
18/07/06 21:01:12.71 g8uAR+7L.net
プリミティブ型がなくてもうまいこと最適化されてだいたいは問題なくなるのではないかな?

819:デフォルトの名無しさん
18/07/06 21:02:17.37 g8uAR+7L.net
うう。リロードし忘れてたらかぶった。

820:デフォルトの名無しさん
18/07/06 22:24:17.82 QG6T2BVC.net
>>806-807
Javaのラッパー型とか考え無くていいのか
上手く出来ているんだな

821:デフォルトの名無しさん
18/07/06 23:30:21.00 4Ugvbwaw.net
ByteArrayとかIntArrayはJavaの呪い

822:デフォルトの名無しさん
18/07/06 23:33:34.92 gLP4VBNq.net
えっと

823:デフォルトの名無しさん
18/07/07 07:47:51.03 uYnOjfeF.net
>>810
何でそう思う?

824:デフォルトの名無しさん
18/07/07 08:02:53.54 1JBcciC6.net
>>810
ほんとそう

825:デフォルトの名無しさん
18/07/07 19:26:53.37 XhDuF4YP.net
data classのcopy()というメソッドは
新しいインスタンスを作るの?
それともインスタンス変数を書き換えるの?

826:デフォルトの名無しさん
18/07/07 20:07:44.59 LTqMROwD.net
>>814
新しいインスタンスを作るよ
その際に新しいインスタンスに対してプロパティの差し替えを指定できる

827:デフォルトの名無しさん
18/07/07 20:15:10.40 VybllwrG.net
イミュータブルデータ

828:デフォルトの名無しさん
18/07/07 22:09:42.29 XhDuF4YP.net
>>815
そうですかコピるんですね、インスタンスはイミューダブルだから

ところでデリゲートって何ですか?

829:デフォルトの名無しさん
18/07/07 22:10:48.19 uYnOjfeF.net
>>817
繊細とか壊れやすいとか、そういう意味だよ

830:デフォルトの名無しさん
18/07/07 23:35:57.76 Ty8z3s6n.net
それはフラジャイルだろ!

831:デフォルトの名無しさん
18/07/07 23:38:31.93 qgEX9CeR.net
小麦粉のこと?

832:デフォルトの名無しさん
18/07/08 00:50:39.49 Ju8r78kR.net
Androi


833:dにはデリゲートなんて用語はない



834:デフォルトの名無しさん
18/07/08 00:55:04.92 sfogbTE4.net
>>817

data class のインスタンスはイミュータブルに作ることもできるけど
別にイミュータブルな保証ないよ
普通に var プロパティ宣言できるし

835:デフォルトの名無しさん
18/07/08 04:35:49.01 PDRntQm6.net
>>819
デリケートだろとつっこむところ?
>>817
クラスAを継承したクラスBを作るときに、継承を使う代わりに、クラスB内にクラスAのインスタンスを持たせて、
クラスBにおけるクラスAのAPI実装をそのインスタンスに丸投げすること。
インターフェースしか定義されておらず、インスタンスはヘルパークラスからしか作れないような場合に便利。

836:デフォルトの名無しさん
18/07/08 08:39:29.95 A+oeHsIU.net
>>817
デリゲートは手動で書く手間を減らす機能だし
動作分かってないと初学者にとって混乱の元だから
「委譲書くの面倒」と思うようになるまで使わなくていい
仕様を知っておきたいならbyキーワードの具体例をググって読むべき

837:デフォルトの名無しさん
18/07/08 08:53:04.34 GTRmE3gZ.net
よくあるのは破壊的操作だけ決まった手順でやりたい可変リスト
内部に可変リストを持たせてListインターフェースをこの可変リストに委譲しつつ、
破壊的操作をするメソッドは自分で実装する

838:デフォルトの名無しさん
18/07/08 13:09:11.90 I8JQ03ez.net
デリゲートゾーンの痒みにデリケア

839:デフォルトの名無しさん
18/07/09 15:42:24.09 k14wcRqL.net
2次元配列てどうやって作るの?
ググっても、一次元配列の説明しかないんだけど

840:デフォルトの名無しさん
18/07/09 16:07:50.43 HEVR++FY.net
「Kotlin 多次元配列」とかでググれば出てくるけど、もっと簡単に作れるようにしてほしいよな
Kotlinはコレクション周りが面倒

841:デフォルトの名無しさん
18/07/09 16:22:32.46 uw3CHAwx.net
ありがとう!多次元配列ででました
リストの中のリストみたいな作り方しかできないんですね

842:デフォルトの名無しさん
18/07/09 16:25:07.73 a7X8gOns.net
Java11で多次元配列が追加されるっぽいし
そのとき一緒にKotlinにも追加されるんじゃないかな

843:デフォルトの名無しさん
18/07/09 19:41:02.60 2W9i2TNQ.net
>>829
でもそれは多次元配列ではないからな
全世界から激しくツッコミ入るからな
「ネストした配列」とかきちんと表現しよう

844:デフォルトの名無しさん
18/07/09 19:42:26.58 CMpb5of+.net
本当の多次元配列とネストした配列の違いってなんなの

845:デフォルトの名無しさん
18/07/09 19:59:47.17 upwaJxXn.net
だっちゅーの

846:デフォルトの名無しさん
18/07/09 20:40:00.23 2EXLNjt4.net
>>832
配列の配列: n個入る内箱をm個並べて入れた外箱、実際には内箱に入る数はそれぞれ違うこともある
二次元配列: 最初からn*mで仕切られた箱
得意なこと、苦手なことも、箱を入れた箱と最初から全部仕切られた箱の関係と似ている
Java自体が真性の多次元配列ないからKotlinにもないんじゃね
ScalaとかGroovyにも真性の多次元配列はないのだろう

847:デフォルトの名無しさん
18/07/09 20:55:27.19 CMpb5of+.net
それって、メモリは所詮一次元だけど
n×mの連続領域確保して[][]でアクセスできるインターフェース提供できれば二次元配列って言えるってこと?
ポインタの配列にしなければいいってことかな??

848:デフォルトの名無しさん
18/07/09 20:56:07.10 NIgnyVo4.net
多次元配列みたいにアクセスできるクラス作って中で一次元配列を全容素数作ってアクセスする時に n * y + x のように計算してアクセスするの作れば、まあなんとなく気分を味わう事はできるな。
あとはうまいこと最適化されて効率よくなる事を祈るのみ。

849:デフォルトの名無しさん
18/07/09 20:57:03.20 NIgnyVo4.net
うう。リロードしてなかったらなんとなく内容が被った。orz

850:デフォルトの名無しさん
18/07/09 21:13:13.46 2EXLNjt4.net
>>835
おおむねそういうこと
配列の配列は縦方向と横方向でアクセスのコストが違うとか
多次元配列は、行をまるごと取り出そうとすると新規に配列を作る必要があるとか、違いがいろいろある
Kotlinに真性の多次元配列はないけど、仮にあったらイテレーションする時も変わってくるはず。
for (item in twoDimesionalArray) { println(item) }
for (innerArray in arrayOfArray) {
for (item in innerArray) { println(item) }
}

851:デフォルトの名無しさん
18/07/09 22:15:19.94 NSgi36DG.net
普通のプログラミングよりPythonのnumpyとかMATLABとか科学技術計算やってた人はイメージしやすいかもね

852:デフォルトの名無しさん
18/07/09 23:30:34.66 1ah1GiNN.net
マンピー?

853:デフォルトの名無しさん
18/07/10 00:37:38.55 lPJyrY2R.net
>>838
なるほどありがとう

854:デフォルトの名無しさん
18/07/10 06:58:10.69 IxsE6k10.net
>>840
なるほどありがとう

855:デフォルトの名無しさん
18/07/10 07:38:02.37 LbQkaO6y.net
ほとんどの言語は、配列の配列(jaggy 配列)だろ
表で言えば、同じ行内の列データは連続しているけど、
各行のデータは連続していない
1行目の各列は連続しているけど、
1行目と2行目は、別の場所にある

856:デフォルトの名無しさん
18/07/10 08:14:20.19 UVYr8NpU.net
計算コストを度外視すれば多次元配列でできることは大抵配列の配列で実現できるから、そこまで気にする必要はないんだけどね

857:デフォルトの名無しさん
18/07/10 09:17:54.93 xdf1qrhG.net
さも重大事のように煽っといてなんだその結論は

858:デフォルトの名無しさん
18/07/10 11:02:23.47 4/WJyavM.net
まあよっぽどカリッカリのパフォーマンスを求められるシビアな要件じゃない限りいらんわな
もしその差がそんなに重要ならとっくに色々な言語で実装されてる

859:デフォルトの名無しさん
18/07/10 14:19:24.23 nhRVi4l7.net
tensorkotlin

860:デフォルトの名無しさん
18/07/10 22:11:35.45 y/3n5Cpu.net
>>835が言ってる通りで
糖衣構文的なものがあるかどうか程度の差
パフォーマンスが必要な部分はハードウェアアクセラレーションのため
java.awt.imageみたいにAPI経由するからDSL表現力さえあれば後はライブラリの役割

861:デフォルトの名無しさん
18/07/11 06:23:53.16 xk2F4E8W.net
配列は一次元、嫁は二次元だからそれぞれ1つずつ次元が上がって欲しい。

862:デフォルトの名無しさん
18/07/11 09:10:45.05 A6luu057.net
現在三次元の嫁はどうなりますか

863:デフォルトの名無しさん
18/07/11 09:18:11.28 /4kd3SWK.net
3次元嫁は都市伝説

864:デフォルトの名無しさん
18/07/11 09:29:45.16 RuBHX//D.net
オンデマンドで呼び出せるんじゃね
呼び出し料金かかるけど

865:デフォルトの名無しさん
18/07/12 11:23:31.16 xhtZxHU1.net
Kotlinで書けるSPAフレームワークって無いの?
JSとかTS面倒なんだけど

866:デフォルトの名無しさん
18/07/12 11:38:40.09 nnJijZVz.net
TSなら面倒というほど大した差はないだろ
むしろVSCodeで鬼のように補完が効


867:く分、フロントでの生産性は圧倒的にTSのほうが上



868:デフォルトの名無しさん
18/07/12 12:25:18.13 ut9WLbMZ.net
補完に関してはKotlin+IntelliJIDEAのほうが上だろ
TSのフロントでの生産性が圧倒的なのには同意だが

869:デフォルトの名無しさん
18/07/12 13:25:44.38 9wyU7EsK.net
VSCode程の糞はない

870:デフォルトの名無しさん
18/07/12 14:32:59.18 3OhKsAp4.net
え?
VSCodeが糞かはともかくそれ以上の糞なんかJava系に限ってもeclipseとかNetBeansとかいくらでもあるだろ

871:デフォルトの名無しさん
18/07/12 18:21:16.24 EedZr1tw.net
Netbeansはひどいよなあ
あれMPLABのベースに使われててクソイライラする
ファイルの管理周りがとくにひどい
microchipはatmel買収したんだからatmelスタジオに追加すればいいのに糞が

872:デフォルトの名無しさん
18/07/12 19:05:58.45 ZfcOFQ2e.net
>>857
このスレのお約束フレーズだからマジレスすんな

873:デフォルトの名無しさん
18/07/12 19:07:03.83 ZfcOFQ2e.net
そういやeclipseにもkotlinプラグインあるらしいけど、わざわざeclipse使ってる奴いるのだろうか

874:デフォルトの名無しさん
18/07/12 19:15:27.87 cdBPRXqc.net
>>860
他のプロジェクトも色々やっててそうしないと切り替えるのが面倒とか、あるいは会社でそれしか使っちゃ駄目って事になってるとか。

875:デフォルトの名無しさん
18/07/12 19:59:34.30 aA43Ofcz.net
>>860
一度使おうとしたけど、インテリさん使ったらインテリすぎて戻れなくなった
ただ、インテリさんはWeb関連の便利機能が有料なんで、そこらへんは月食さんの方が良いな

876:デフォルトの名無しさん
18/07/12 20:02:55.71 WF2aS5Vl.net
Androidで連続計測アプリを作るなら、
RxKotlinがいいの?

877:デフォルトの名無しさん
18/07/12 22:51:04.77 mvC68ILq.net
>>860
1年以上前に使ってみたことがあるが、Javaのプロジェクトにまでエラーが頻発して使い物にならなかった。
なお、KotlinがAndroid公式に採用されて以降、この1年でほとんど開発は進んでいない模様。
釣った魚に餌はやらない、みたいな。

878:デフォルトの名無しさん
18/07/13 05:53:34.32 m41AHQph.net
>>862
IDEAの年額って、どう考えても払うだけの価値はあるほどエクリプスンより生産性上がるだろ
少なくともツール自体を動かすために余計な苦労は要らなくなる

879:デフォルトの名無しさん
18/07/13 06:43:02.63 EUOoQR1t.net
大量のプラグインのバージョン管理とか設定調整とかどう考えても時間の無駄だからなー

880:デフォルトの名無しさん
18/07/13 06:55:12.32 Ee6EtEgb.net
30日試用もあるけどひとまず1年分買って試すのも良いと思うな

881:デフォルトの名無しさん
18/07/13 07:58:16.06 ov74f2Px.net
>>866
年間通したらそれだけで数万円分の工数はとられるよな

882:デフォルトの名無しさん
18/07/13 08:09:45.54 ov74f2Px.net
Vimとかも自分で育てていく楽しさはあるんだけど、道具として割り切るなら箱出してほぼ何もせずとも全て揃ってるIDEAさんが最強なんだよなあ。
AndroidとiPhoneもそんなイメージだけど。

883:デフォルトの名無しさん
18/07/13 09:03:03.39 CVNDg+4c.net
xcode程の糞はない

884:デフォルトの名無しさん
18/07/13 09:20:51.97 5TLJeRCv.net
VSCodeはJava開発環境としてはMS自身によるプラグイン開発によって既に普通に使えるレベルに達してる
さすがにKotlinはJBとガチ喧嘩になるからMS自身は手を出さないだろうけど、
IntelliJが死んだらKotlinも当然自動的に消えるわけで、MSを調子に乗らせないためにもJBにはなんとか頑張ってほしい

885:デフォルトの名無しさん
18/07/13 09:21:39.47 7kFLYEGJ.net
VScodeほどの神はいない

886:デフォルトの名無しさん
18/07/13 09:46:20.22 n


887:6HMRhww.net



888:デフォルトの名無しさん
18/07/13 09:56:45.72 cQfKwCET.net
Emacsはマジで瀕死みたいだな。Atomに食われてVSCodeでとどめを刺された。

889:デフォルトの名無しさん
18/07/13 10:04:34.44 SHnopJX1.net
むかしむかし使い古しpcにDebianいれてゴニョゴニョ設定してxemacsを起動できたときめっちゃ感動した

890:デフォルトの名無しさん
18/07/13 11:55:19.72 CVNDg+4c.net
vimの完全勝利

891:デフォルトの名無しさん
18/07/13 12:44:49.86 fxcd0vFw.net
ま、vimは軽いし何も考えなくて良いのがいいよな。
ただしサンプルプログラムのようなとても短くて小規模なプログラム作る時なw

892:デフォルトの名無しさん
18/07/13 13:16:53.00 CVNDg+4c.net
vimは単体で使うだけでなく、
プラグインという形で各種エディタ, IDEに組み込まれている
もはやコードを書くという行為はvimを使うことと同等
vimも使いこなせないようなやつはエンジニア向いてないね

893:デフォルトの名無しさん
18/07/13 13:24:28.27 vWSrkCkJ.net
お、そうだな

894:デフォルトの名無しさん
18/07/13 13:46:43.72 r56MKyep.net
VSCodeはVimプラグインもクソ優秀なんだよな
IDEとしての機能性とVimらしい快適性をこれほど高い次元で両立できるエディタは10年煮詰めたVimを除けば他にない

895:デフォルトの名無しさん
18/07/13 14:03:48.40 5yynDKDH.net
VSCodeのプラグインが優秀過ぎて他に移れない
シーケンス図とか描くのもすげー便利だし

896:デフォルトの名無しさん
18/07/13 14:15:06.91 LloFxrI0.net
IntelliJで開いたときに、赤も黄色も出ないコードを書くものだけが、Vimを使いなさい。

897:デフォルトの名無しさん
18/07/13 15:38:16.85 RC8GAzHb.net
シーケンス図なんて作らせるようなところでもkotlinだのvscodeだの使わせてくれるものなのか

898:デフォルトの名無しさん
18/07/13 17:17:34.83 4N3JeixC.net
intellijよりvsのほうがコード補完優秀だよね
頻繁に使うものが上位に来るし
intellijだとcって打つとCamera()とか一度も使ってないものががいきなり候補に出るし

899:デフォルトの名無しさん
18/07/13 17:37:39.30 L1uFjowm.net
intellij+補完で検索すると、わりと多機能で驚く

900:デフォルトの名無しさん
18/07/13 17:47:43.71 r56MKyep.net
VSの補完は機能とかそういう段階をとっくに卒業してる
ついに機械学習を使って文脈を理解する超補完を搭載するらしいな

901:デフォルトの名無しさん
18/07/13 18:36:03.53 n6HMRhww.net
みんなインテリとVSCどう使い分けてんの?
Kotlinはインテリで、それ以外の言語はVSCって感じ?

902:デフォルトの名無しさん
18/07/13 18:47:06.02 m41AHQph.net
jsだけVSで他はインテリんだな
正直Rubyとかどちらで書いても大差ないから、わざわざ乗り換えてない

903:デフォルトの名無しさん
18/07/13 19:34:40.82 ojWLt4Rx.net
cだけでCameraとかでてこないぞ?
Camまで打つとCameraクラスが候補の二番目に出てくるが
小文字のcじゃ下まで見てもCameraが候補に無い

904:デフォルトの名無しさん
18/07/13 19:39:27.08 Uh3oS1ye.net
黙って猫を使うべ

905:デフォルトの名無しさん
18/07/13 19:58:31.98 FZV/D1H9.net
Camera程の糞はない

906:デフォルトの名無しさん
18/07/13 20:48:04.46 WQBoNRJ+.net
>>878
今日は釣れませんね。

907:デフォルトの名無しさん
18/07/13 20:53:25.87 WQBoNRJ+.net
>>882
「彼らはそれを聞くと、年長者たちから始めて、ひとりひとり出て行き、
そしてvimを使う者は誰もいなくなった。」

908:デフォルトの名無しさん
18/07/13 22:09:00.10 FGelWouYx
>>886
もう搭載されてるよ
今はC#しかサポートされてないけど

intellicodeって言う機能で
GithubのStarが多いリポジトリで絶賛機械学習してる

909:デフォルトの名無しさん
18/07/13 22:19:5


910:2.15 ID:4N3JeixC.net



911:デフォルトの名無しさん
18/07/13 22:58:51.51 e4KiRV9a.net
>>895
日本語入力じゃないんだから直前に入力したのに優先的に出てこられても困る
Android Studio kotlin は文法的に入力可能なものがだいたい順番変わらず出てくるんで、候補がまちまちってことは無いと思うぞ?
直前に入力したやつが文法的に正しくて、その名前を文法的に正しい位置に再度挿入しようとするなら、普通2〜3文字入力すれば出てこない?

912:デフォルトの名無しさん
18/07/13 23:00:22.87 e4KiRV9a.net
あと俺の環境じゃ、小文字 c で、Camera や Color は絶対でてこない感じ

913:デフォルトの名無しさん
18/07/14 00:34:59.12 Aep6lVRC.net
まあCameraが出るかはライブラリによるんだけど
頼むからまず変数名優先してほしい
すぐ上にval cellがあるのに…
使ったこともないメソッドやクラスが第一候補になるんだよ

914:デフォルトの名無しさん
18/07/14 07:51:18.68 JQ0iUrKc.net
だから普通のAndroidのプロジェクトだとCameraはimportすれば使える状態なんだってば
だからCameまで入力すれば候補の一番に出てくる
でも小文字cだと候補全部見ても出てこない
大文字小文字区別するから
あと、関数内のローカル変数は候補の一番上にでてくるよ?
val cell がある関数内なら、cell が候補の最初にでてくる
アルファベット順みたいだから val ccc があればそっちが先になるけど

915:デフォルトの名無しさん
18/07/14 08:21:46.85 JQ0iUrKc.net
いま気が付いたけど補完候補のウィンドウの右下のアイコンで順番変更できるね
Aとπを切り替えられる
Sort by relevance がπで、これはローカル変数が先に出てくる
Sort lexicographically がAで、種類に関係なくアルファベット順にソートされて出てくる

916:デフォルトの名無しさん
18/07/14 09:26:42.24 dkGtAehS.net
>>900
お前神かよ
ご褒美にXamarinのライセンス買っていいぞ

917:デフォルトの名無しさん
18/07/14 14:54:16.91 5xLt9ZqN.net
うわ知らなかったわ
ありがとん

918:デフォルトの名無しさん
18/07/14 15:56:46.57 Aep6lVRC.net
>>900
大文字小文字は設定で区別しないようにしてるよ

919:デフォルトの名無しさん
18/07/14 16:47:47.10 +xcHO0vt.net
IntelliJでUML書いたらKotlinのコード吐き出したり
逆にKotlinのコードからUML作ったり出来ないかな

920:デフォルトの名無しさん
18/07/14 18:58:50.43 6PGIbnJP.net
売ってるソフトでJava用があるから何れはできるんだろうな。IntelliJ用のプラグインができるかどうかはわからないが。

921:デフォルトの名無しさん
18/07/15 13:45:49.84 Hz5XkdO4.net
UMLって久しぶりに聞いたな
まだ作ってるところあるのか

922:デフォルトの名無しさん
18/07/15 16:24:31.04 3xY3bcKj.net
あかんの?

923:デフォルトの名無しさん
18/07/15 17:07:41.02 raVPXb0K.net
いや普通に使うけど。
設計書に貼り付けたり他人への説明に利用したり。

924:デフォルトの名無しさん
18/07/15 17:38:53.88 uIOFDJwQ.net
UML自体は普通に有用だと思うけど
コードと同じくらいの粒度で使うのは無理があると思う
プログラマくらいにしか分からんような複雑なUMLが出てきたり
時間掛けた割にはしょぼいコードが生成されるだけ

925:デフォルトの名無しさん
18/07/15 18:20:11.68 CEbRprL7.net
いまどきUMLって…

926:デフォルトの名無しさん
18/07/15 18:25:40.94 +eT7t0LR.net
プログラマ以外に理解してもらうツールじゃなくね?
プログラマ以外に使ったらクラス図で「矢印の方向は逆だろ!常識で考えろ!」とか言われそう…

927:デフォルトの名無しさん
18/07/15 18:40:13.88 Hceo1yYw.net
「UMLを理解してるプログラマ」と「UMLを理解してるプログラマ以外の人」とのコミュニケーションの為の共通


928:言語



929:デフォルトの名無しさん
18/07/15 18:48:47.40 wQ4YHCTS.net
シーケンス図はかなり需要がある

930:デフォルトの名無しさん
18/07/15 18:49:50.14 8t2eejTv.net
>>913
たとえば?

931:デフォルトの名無しさん
18/07/15 18:53:38.68 wQ4YHCTS.net
>>914
>>908

932:デフォルトの名無しさん
18/07/15 19:18:47.75 Ukh8Tanz.net
>>912
まあその程度だな
学術分野におけるドイツ語くらいの需要

933:デフォルトの名無しさん
18/07/15 19:20:27.67 cKZpz8ou.net
UML程の糞はない

934:デフォルトの名無しさん
18/07/15 20:02:07.66 8t2eejTv.net
>>915
具体的に

935:デフォルトの名無しさん
18/07/15 22:53:24.26 gJmfo5mB.net
>>917
なんでもクソにしたがるのはNG

936:デフォルトの名無しさん
18/07/15 22:54:05.52 6dWIKdS7.net
>>916
ああしっくりきた。
新卒で入ったSIerではたまに使ったけど、転職してからは見たことないわ。
基本的に大規模開発のドキュメントくらいでしか使わんかもね。

937:デフォルトの名無しさん
18/07/15 23:06:21.06 VHVK8HfR.net
SIer程の糞はない

938:デフォルトの名無しさん
18/07/16 09:06:08.21 uw6hw0Ul.net
自分がお堅い受託やってたの5年くらい前だけど、その頃にはUMLってすでにあまり聞かなくなってたな。
上に挙げられてるような用途では有用なんだけど、だいたいあれを使って説明したい相手がUMLを知らないから作る意味がなかった。
あとドキュメントのメンテで死ぬ。

939:デフォルトの名無しさん
18/07/16 11:42:34.36 +8yEYxZh.net
UMLに限らないけど、あまり実装の中身に踏み込んだドキュメントは作るべきじゃない
何もいいことはないし、第1大抵は誰も見ない

940:デフォルトの名無しさん
18/07/16 12:33:18.70 01iJluUg.net
全部印刷して見てもらえばいいの?

941:デフォルトの名無しさん
18/07/16 12:38:25.05 xJBxrgfC.net
UML流行らなかったな
需要はありそうだったんに

942:デフォルトの名無しさん
18/07/16 13:12:45.40 uzDS2N3a.net
糞はない大喜利してるやつはスルーしとけよ

943:デフォルトの名無しさん
18/07/16 13:40:04.44 GVNh7z7o.net
クラス図、コミュニケーション図、シーケンス図あたりは日常的に使うわ。
ソフトウェアの静的&動的構造を図示したかったらUML以外を選ぶ理由がないもの。
機械生成や詳細設計まで踏み込んで使用するのはまったくおすすめしないね。要約してppt一枚に収まり切るくらいが丁度いい。
あくまで人に見せる&説明する用。

944:デフォルトの名無しさん
18/07/16 13:44:27.92 fVJkfJ21.net
お遊びならppt一枚でいいかもしれないけど
仕事では何百、何千ページの要件定義、基本設計、詳細設計を書かなければならないんだぜ
そのページ数に比例する枚数のUML作図コストはあまりにも高すぎる

945:デフォルトの名無しさん
18/07/16 13:51:34.31 fyxTFisU.net
古い体質の会社で働いてるんだな
秀丸エディタとか使ってそうw

946:デフォルトの名無しさん
18/07/16 14:07:08.64 BXgPiXpB.net
プログラミングに図は不要、グローバル変数ぐらいevil

947:デフォルトの名無しさん
18/07/16 14:17:39.16 7c+rCVk/.net
×仕事では
○自分の会社では
この世の99%のプロジェクトでは数千ページに及ぶドキュメントとか不要

948:デフォルトの名無しさん
18/07/16 14:21:58.27 fVJkfJ21.net
小規模のショボいシステムしか知らないのだろうけど
そういう人たちは気楽でいいよねぇ
典型的なカジュアルプログラマって感じ
遊び半分って表現がピタリ

949:デフォルトの名無しさん
18/07/16 14:23:30.12 UinAaMlN.net
それをkotlinで構築するのは大変そうですね

950:デフォルトの名無しさん
18/07/16 14:35:01.85 BXgPiXpB.net
日本でドキュメントが多くなるのは承認したいからだろ


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

1145日前に更新/204 KB
担当:undef