JetBrainsが開発した期待の新言語、Androidの公式開発言語にしてサーバーサイドもなんでもいけるKotlinについて語りましょう
※前スレ
Kotlin 5
https://mevius.5ch.net/test/read.cgi/tech/1544268581/
探検
Kotlin 6
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん
2019/06/22(土) 15:59:57.23ID:zj+KJbMh881デフォルトの名無しさん
2020/03/24(火) 01:42:20.76ID:T0vrM+QL >>880
偉いとされる人が言った、または、有名な団体が作ったようなものを無条件で信じるあなたのような権威主義者が多いだけ。
有名な所が出してきたものは初期の衣の凄くもてはやされる。
使ったこともちゃんと学んだことも無いのに多くの人が褒めちぎる。
それはなぜかというと、そうすることで自分が新しいものに追いついていると
人に錯覚させることが出来ると思い込んでいるからだ。
実際には何も知らないくせに適当に新しいものを褒めているだけ。
偉いとされる人が言った、または、有名な団体が作ったようなものを無条件で信じるあなたのような権威主義者が多いだけ。
有名な所が出してきたものは初期の衣の凄くもてはやされる。
使ったこともちゃんと学んだことも無いのに多くの人が褒めちぎる。
それはなぜかというと、そうすることで自分が新しいものに追いついていると
人に錯覚させることが出来ると思い込んでいるからだ。
実際には何も知らないくせに適当に新しいものを褒めているだけ。
882デフォルトの名無しさん
2020/03/24(火) 01:45:43.46ID:PY48eDSf Rustスレも荒らしてるので無視しとけ
883デフォルトの名無しさん
2020/03/24(火) 03:32:39.53ID:kBVBs/yt null自体が問題なんじゃなくて、既存の言語の型システムでnon nullableな参照型がないのが問題なだけ。ごっちゃにしすぎ。
884デフォルトの名無しさん
2020/03/24(火) 03:41:54.20ID:kBVBs/yt だから、null自体はあった方が便利、ただ、型システムの方で値型だろうが参照型だろうがnullable、non-nullableの両方定義できるようにしとけってだけ
885デフォルトの名無しさん
2020/03/24(火) 07:51:18.66ID:O58srhK5 もういい加減別スレ作ってそっちでやってくれ
886デフォルトの名無しさん
2020/03/24(火) 08:13:59.70ID:PfG4KY3E >>880
その失敗の本質は、いつでもnullポインタを入れられてしまうことだよ
Nullableの元でもあるHaskellのMaybeモナドやScalaのOptionモナドは
無効を表現出来るが何ら脆弱と見られていない
KotlinのNullableは効率のため単なる参照型変数にコンパイルされるが
プログラム上は以下のようなコンテナと概念的には同じ
sealed class Nullable<T> {
open val isNull:Boolean get() = true
open val value:T get() = throw NullPointerException()
}
class Some<T>(override val value:T): Nullable<T>() {
override val isNull:Boolean get() = false
}
class None<T>: Nullable<T>()
その失敗の本質は、いつでもnullポインタを入れられてしまうことだよ
Nullableの元でもあるHaskellのMaybeモナドやScalaのOptionモナドは
無効を表現出来るが何ら脆弱と見られていない
KotlinのNullableは効率のため単なる参照型変数にコンパイルされるが
プログラム上は以下のようなコンテナと概念的には同じ
sealed class Nullable<T> {
open val isNull:Boolean get() = true
open val value:T get() = throw NullPointerException()
}
class Some<T>(override val value:T): Nullable<T>() {
override val isNull:Boolean get() = false
}
class None<T>: Nullable<T>()
887デフォルトの名無しさん
2020/03/24(火) 08:34:24.48ID:nrIfxQG3888デフォルトの名無しさん
2020/03/24(火) 09:26:10.10ID:/F68+jPW お前らの人生はnullみたいなもんだわ
889デフォルトの名無しさん
2020/03/24(火) 12:12:39.00ID:608mB07n ぬぬるぬるやで
890デフォルトの名無しさん
2020/03/24(火) 12:12:56.90ID:608mB07n ぬ多い
891デフォルトの名無しさん
2020/03/24(火) 12:22:26.33ID:cFvopTvT >>888
お前の人生は違うの?
お前の人生は違うの?
892デフォルトの名無しさん
2020/03/24(火) 12:48:34.07ID:Evm5n4ah けんかはおやめABC
893デフォルトの名無しさん
2020/03/24(火) 14:08:56.84ID:bSQ4VduX いい加減レス違いですよ
894デフォルトの名無しさん
2020/03/24(火) 21:20:41.36ID:PfG4KY3E Kotlin 1.4-M1 Released
https://blog.jetbrains.com/kotlin/2020/03/kotlin-1-4-m1-released/
https://blog.jetbrains.com/kotlin/2020/03/kotlin-1-4-m1-released/
895デフォルトの名無しさん
2020/03/25(水) 19:58:41.50ID:R+JOhqjs 初めてAndroidアプリ作成の案件に携わってるけどクソOSクソ端末に対応するコスト無駄すぎるな
イライラするわ
イライラするわ
896デフォルトの名無しさん
2020/03/25(水) 20:11:20.32ID:i/r3a70w テスト用に全ての実機用意するとかマジで有り得ん
897デフォルトの名無しさん
2020/03/25(水) 22:13:46.30ID:kFDvoIpy 全ての実機ってどんだけ集めたんだ?
898デフォルトの名無しさん
2020/03/25(水) 23:23:26.21ID:3tnofAZc ガラケー時代は中古もかき集めてやってたな
899デフォルトの名無しさん
2020/03/25(水) 23:47:54.47ID:TgMiAYI3900デフォルトの名無しさん
2020/03/25(水) 23:51:58.92ID:s5BcMGLd 社長て
901デフォルトの名無しさん
2020/03/26(木) 07:47:41.98ID:3JCRH1uw >>899
働いたことなさそう
働いたことなさそう
902デフォルトの名無しさん
2020/03/26(木) 07:52:36.00ID:PXNa4DUz まぁあれな感じのあれだけど、変に煽るのやめろ、誰も得しない
903デフォルトの名無しさん
2020/03/26(木) 09:15:47.51ID:RQaGoEl4 まあ先に煽ってるのは向こうだししょうがない
904デフォルトの名無しさん
2020/03/26(木) 11:30:29.60ID:cp63zjH+ >>901
社長したことなさそう
社長したことなさそう
905デフォルトの名無しさん
2020/03/26(木) 12:45:41.29ID:V49tRipQ 社長(自営業
906デフォルトの名無しさん
2020/03/30(月) 12:29:37.34ID:XS9n9xNo サーバーサイドkotlinを導入したいんだが、なんて言って上司を説得するのがいいと思う?
上司は昔java1.6やってたくらい。
上司は昔java1.6やってたくらい。
907デフォルトの名無しさん
2020/03/30(月) 12:36:40.55ID:Q7TXlLL8 言語云々を論点にしてはいけない
「技術選定も含めて俺に任せてくれ」だ
お前の全責任においてお前が成果を出せば誰も文句は言わない
それができないんなら黙って前例踏襲してなさい
「技術選定も含めて俺に任せてくれ」だ
お前の全責任においてお前が成果を出せば誰も文句は言わない
それができないんなら黙って前例踏襲してなさい
908デフォルトの名無しさん
2020/03/30(月) 15:01:23.30ID:XS9n9xNo すまん。ちょっと聞き方悪かったわ。
単純にメリデメ教えてくれって言われたらなんて答える?
単純にメリデメ教えてくれって言われたらなんて答える?
909デフォルトの名無しさん
2020/03/30(月) 16:14:25.46ID:S7P/1C/L ライブラリが同じなのでフツーのJava経験者なら3日もあれば習得できます
開発環境にJavaのソースをコピペすると自動変換もできます
null参照はコンパイラーが検出してくれる言語仕様なのでnullに関するバグを排除できます
ちなみにA案件でのnull参照バグは全体のxx%でした
Java14で計画されている言語仕様の改善も全て先取りしているので開発効率が上がります
中でもrecord型の先取りにより開発規模がA案件試算でxx%削減できます
ほかに口説き文句あれば俺も知りたい
開発環境にJavaのソースをコピペすると自動変換もできます
null参照はコンパイラーが検出してくれる言語仕様なのでnullに関するバグを排除できます
ちなみにA案件でのnull参照バグは全体のxx%でした
Java14で計画されている言語仕様の改善も全て先取りしているので開発効率が上がります
中でもrecord型の先取りにより開発規模がA案件試算でxx%削減できます
ほかに口説き文句あれば俺も知りたい
910デフォルトの名無しさん
2020/03/30(月) 18:20:58.26ID:LtUNGbMV911デフォルトの名無しさん
2020/03/30(月) 18:30:16.30ID:VgShyY/Q Kotlin採用していただけないのなら辞めますといえば一発や。
912デフォルトの名無しさん
2020/03/30(月) 18:40:18.84ID:/1SwYHDd 自分にとってどういうメリットがあるのかと
そのメリットが既存のものを捨てて乗り換えるコストを上回りそうかどうかという
2点をクリアしないと普通の人は新しいものを導入しようって気持ちにはならない
2つとも個々の状況によるものだから
現状の問題点や比較対象無しに聞いてもフワッとしたものしか返ってこないと思う
そのメリットが既存のものを捨てて乗り換えるコストを上回りそうかどうかという
2点をクリアしないと普通の人は新しいものを導入しようって気持ちにはならない
2つとも個々の状況によるものだから
現状の問題点や比較対象無しに聞いてもフワッとしたものしか返ってこないと思う
913デフォルトの名無しさん
2020/03/30(月) 19:38:12.89ID:4bRrJB51 上司「小鳥飼いたいのか?」
914デフォルトの名無しさん
2020/03/30(月) 19:57:32.43ID:2xrywwd7 ウザっ
915デフォルトの名無しさん
2020/03/30(月) 20:58:19.14ID:XS9n9xNo javaの仕様に追従してる層にならメリットは説明できるけど、そうじゃない層に説明するのは難しい。。
実際、アドバイスくれてる人の説明もjavaの辛みが分かってこその主張だと思う
なんかjava1.6で止まってる人にも分かりやすいメリットないかな。。
ちなみに上司は、人の集めづらさを懸念をしてるだけで、本格的に反対してる訳では無い。純粋にメリット何?って感じ
実際、アドバイスくれてる人の説明もjavaの辛みが分かってこその主張だと思う
なんかjava1.6で止まってる人にも分かりやすいメリットないかな。。
ちなみに上司は、人の集めづらさを懸念をしてるだけで、本格的に反対してる訳では無い。純粋にメリット何?って感じ
916デフォルトの名無しさん
2020/03/30(月) 21:25:01.20ID:Y9H00XEN >>906
ここは一つネガキャンで。「KotlinがあるのにJavaをやるのは、JavaがあるのにCをやるようなもの。」
ただ、上司がJava至上主義者なら、「Cなんかと一緒にするな!!」と激怒するおそれあり。
ここは一つネガキャンで。「KotlinがあるのにJavaをやるのは、JavaがあるのにCをやるようなもの。」
ただ、上司がJava至上主義者なら、「Cなんかと一緒にするな!!」と激怒するおそれあり。
917デフォルトの名無しさん
2020/03/30(月) 22:39:22.47ID:cikRGyRQ そろそろ転職しようと思ってたんだがコロナの影響でエンジニアの求人は減ってるの?まだ待った方が良い?
918デフォルトの名無しさん
2020/03/30(月) 23:14:36.65ID:9vU1dCrA プログラマとエンジニアは別物なので、まずその辺の違いをハッキリさせたほうがいい
919デフォルトの名無しさん
2020/03/31(火) 01:21:29.69ID:09jFIsyL でも、もしJavaならバージョンいくつ使うつもり?
そこどこ新しめJavaならそこまで苦痛にならんぞ
1.6ぐらいと比較して俺のペインポイントだったローカル変数の型推論もあるし、ラムダもあるし、コレクションのストリーム操作もあるし。
大きめの機能でasync/awaitないけど
そこどこ新しめJavaならそこまで苦痛にならんぞ
1.6ぐらいと比較して俺のペインポイントだったローカル変数の型推論もあるし、ラムダもあるし、コレクションのストリーム操作もあるし。
大きめの機能でasync/awaitないけど
920デフォルトの名無しさん
2020/03/31(火) 01:22:07.78ID:09jFIsyL そこそこ新しめ*
921デフォルトの名無しさん
2020/03/31(火) 01:23:36.87ID:09jFIsyL あぁもちろんnull safetyもあるが
922デフォルトの名無しさん
2020/03/31(火) 12:30:43.25ID:mNevEI+p >>911
一発で辞めることができたりして
一発で辞めることができたりして
923デフォルトの名無しさん
2020/04/02(木) 00:15:49.69ID:MNI6t01H Kotlinのdata classがJava14でrecordとして採用されると聞いて感動したのも束の間、まだPreviewなので正式採用はJava16辺りと知り気が遠くなった
誰もが普通に使えるようになるのは2026年頃じゃろか
誰もが普通に使えるようになるのは2026年頃じゃろか
924デフォルトの名無しさん
2020/04/02(木) 01:51:56.87ID:UJkjbKIq 半年毎にアップデートだからJava16は1年後
925デフォルトの名無しさん
2020/04/02(木) 02:07:24.43ID:MNI6t01H 誰もが普通にと書いたのはJava11の延長サポートが2026までだから遅い現場だとそこまで待つかなと
でもそれを言うなら8は2030まで延長できるんだった
でもそれを言うなら8は2030まで延長できるんだった
926デフォルトの名無しさん
2020/04/03(金) 06:46:06.71ID:/ReAKvRh >>919
ラムダ式とOptionalで行けるのではと思っていた時代が、私にもありました。
ただ参照透過なプログラミングをしようとした途端、Listと配列がMutableなことが越えられない壁になる。
Java9から不変リストを作るList.of()があるけど、必要なのは実行時エラーでなくコンパイルエラーで教えてくれる不変リスト。
ラムダ式とOptionalで行けるのではと思っていた時代が、私にもありました。
ただ参照透過なプログラミングをしようとした途端、Listと配列がMutableなことが越えられない壁になる。
Java9から不変リストを作るList.of()があるけど、必要なのは実行時エラーでなくコンパイルエラーで教えてくれる不変リスト。
927デフォルトの名無しさん
2020/04/03(金) 09:39:44.79ID:yWt1Tau8 それを言ったらKotlinのListも不変リストではなく読み取り専用のビューなので同じなのでは
928デフォルトの名無しさん
2020/04/03(金) 09:41:24.03ID:yWt1Tau8 いや追加や更新機能のないリストインターフェースが欲しいということか
929デフォルトの名無しさん
2020/04/12(日) 01:08:01.34ID:NWUkpCEz Windows 10 で IntelliJ IDEA を 2020.1 にアップデートしたら起動後にちゃんと動かなかった。
ウインドウは出るがその中が灰色のまま。右下に赤いやつが点滅していてマウスカーソルを
持って行ってクリックすると IDE Internal Error Occurred See Details and Submit Report と
出てくるが、Detail も何も出てこない。ウィンドウの右上の×を押しても終わらず、しょうがない
のでタスクマネージャで終了させた。
Community edition だが、試しに Ultimate の同バージョン方をインストールしたら動いた。
ま、しかし、ライセンスあるわけではないのでとりあえず Community edition の 2019.3.4 に
しておいた。これはちゃんと動く。
ウインドウは出るがその中が灰色のまま。右下に赤いやつが点滅していてマウスカーソルを
持って行ってクリックすると IDE Internal Error Occurred See Details and Submit Report と
出てくるが、Detail も何も出てこない。ウィンドウの右上の×を押しても終わらず、しょうがない
のでタスクマネージャで終了させた。
Community edition だが、試しに Ultimate の同バージョン方をインストールしたら動いた。
ま、しかし、ライセンスあるわけではないのでとりあえず Community edition の 2019.3.4 に
しておいた。これはちゃんと動く。
930デフォルトの名無しさん
2020/04/14(火) 10:52:23.60ID:TtcAIhBY javaすらやったことない人におすすめのKotlinの参考書ありますでしょうか?
931デフォルトの名無しさん
2020/04/14(火) 11:07:51.69ID:VpWClbHP Javaやれ
932デフォルトの名無しさん
2020/04/14(火) 11:14:48.92ID:TtcAIhBY 今更古いものを勉強するのは嫌です
933デフォルトの名無しさん
2020/04/14(火) 11:22:31.52ID:yYd/ONZz ネットで調べりゃすぐでてくんだろ
934デフォルトの名無しさん
2020/04/14(火) 11:31:09.72ID:ARe9d0+J Kotlinは腐りきったJavaをなんとか少しでも便利に使うための車椅子のようなもの
古いのを勉強したくないならKotlin含めJava系の世界に飛び込むこと自体を考え直してもいいんじゃないかな
古いのを勉強したくないならKotlin含めJava系の世界に飛び込むこと自体を考え直してもいいんじゃないかな
935デフォルトの名無しさん
2020/04/14(火) 11:35:17.73ID:TtcAIhBY 屁理屈は良いので参考書を教えて下さい。
936デフォルトの名無しさん
2020/04/14(火) 11:35:46.91ID:yYd/ONZz ダメだこいつ
937デフォルトの名無しさん
2020/04/14(火) 20:35:17.70ID:W7vR7yPX だめかなあ
938デフォルトの名無しさん
2020/04/14(火) 21:14:44.96ID:CfDohWIc 当然、日本ユーザー会会長の太郎本!
Kotlinスタートブック -新しいAndroidプログラミング、長澤 太郎、2016
スッキリわかる Java入門 第2版、2014
超有名なスッキリを読んでないと、オブジェクト指向が分からないのでは?
Ruby をやってれば、オブジェクト指向・メソッドチェーンによる関数型と、両方とも理解できるけど
Kotlinスタートブック -新しいAndroidプログラミング、長澤 太郎、2016
スッキリわかる Java入門 第2版、2014
超有名なスッキリを読んでないと、オブジェクト指向が分からないのでは?
Ruby をやってれば、オブジェクト指向・メソッドチェーンによる関数型と、両方とも理解できるけど
939デフォルトの名無しさん
2020/05/01(金) 08:16:22.65ID:q8mD6cDI >>930
C++, C#, Java, Swift, Rubyみたいなモダン言語の経験が無いと、Kotlinは難しいかも。
1. Clousure
2. Generics
3. Type Annotation Estimation
4. Collection
5. protocol
こう言うのが意味不明となる。
OOP自身は難しく無い。
C++, C#, Java, Swift, Rubyみたいなモダン言語の経験が無いと、Kotlinは難しいかも。
1. Clousure
2. Generics
3. Type Annotation Estimation
4. Collection
5. protocol
こう言うのが意味不明となる。
OOP自身は難しく無い。
940デフォルトの名無しさん
2020/05/01(金) 09:25:47.40ID:MJ8FtJpe 全然関係ないんだけどさ
前々から思ってたんだが
「モダン」って言い方になんか古臭さを感じるんだよな
大正時代的な
他に良い呼び方ってないもんだろうか
前々から思ってたんだが
「モダン」って言い方になんか古臭さを感じるんだよな
大正時代的な
他に良い呼び方ってないもんだろうか
941デフォルトの名無しさん
2020/05/01(金) 09:32:44.13ID:k2YlXFh6 ダイナミックレンジですねわかります
942デフォルトの名無しさん
2020/05/01(金) 09:41:54.27ID:xXuuls7c943デフォルトの名無しさん
2020/05/01(金) 10:56:25.01ID:q8mD6cDI >>942
Type inference
Type inference
944デフォルトの名無しさん
2020/05/01(金) 10:58:18.55ID:q8mD6cDI >>940
最新新言語、State of Arts computer language、Advanced Language、Recent Language、Up-to-date Language
御好きにすれば!
最新新言語、State of Arts computer language、Advanced Language、Recent Language、Up-to-date Language
御好きにすれば!
945デフォルトの名無しさん
2020/05/01(金) 11:12:14.62ID:zXgs9Rh4 プロトコルってどういうの?
946デフォルトの名無しさん
2020/05/01(金) 11:51:29.93ID:+e/fjpUy >>945
俺もそれ聞きたいな
俺もそれ聞きたいな
947デフォルトの名無しさん
2020/05/01(金) 12:19:40.77ID:zJYyytsu >> 440
意識高い系言語でいいんじゃね
意識高い系言語でいいんじゃね
948デフォルトの名無しさん
2020/05/01(金) 12:20:45.98ID:q8mD6cDI >>946
such like Interface in Java or Abstruct Class in C++
such like Interface in Java or Abstruct Class in C++
949デフォルトの名無しさん
2020/05/01(金) 13:01:44.47ID:zXgs9Rh4 >>948
機能的に違いないのに、名前だけ別のものつけたん?
機能的に違いないのに、名前だけ別のものつけたん?
950デフォルトの名無しさん
2020/05/01(金) 13:06:28.96ID:+e/fjpUy >>948
理解しました
理解しました
951デフォルトの名無しさん
2020/05/01(金) 13:13:27.88ID:578ddPng952デフォルトの名無しさん
2020/05/01(金) 13:16:50.04ID:+e/fjpUy モダンExcelなんていう言葉を最近聞いたよ
953デフォルトの名無しさん
2020/05/01(金) 15:33:32.05ID:q8mD6cDI954デフォルトの名無しさん
2020/05/01(金) 16:45:14.68ID:zXgs9Rh4955デフォルトの名無しさん
2020/05/01(金) 16:54:21.95ID:DyZSnah+ >>948
この業界ではよくあること
この業界ではよくあること
956デフォルトの名無しさん
2020/05/01(金) 18:17:15.79ID:m4mY1Cpc >>940
ナウいヤングな君は和製英語の事は忘れて英語の modern を思い浮かべなさい。
ナウいヤングな君は和製英語の事は忘れて英語の modern を思い浮かべなさい。
957デフォルトの名無しさん
2020/05/02(土) 04:45:48.24ID:HrddHHvE アマゾンで検索したら7/17発売予定の本が見つかった。表紙デザインもまだ出てこない。
基礎からわかる Kotlin
富田 健二 (著)
単行本: 224ページ
出版社: シーアンドアール研究所 (2020/7/17)
言語: 日本語
ISBN-10: 4863542917
ISBN-13: 978-4863542914
発売日: 2020/7/17
アマゾンのURL書くとここに書き込みできないのでヨドバシのURL書いておく。
https://www.yodobashi.com/product/100000009003256396/
基礎からわかる Kotlin
富田 健二 (著)
単行本: 224ページ
出版社: シーアンドアール研究所 (2020/7/17)
言語: 日本語
ISBN-10: 4863542917
ISBN-13: 978-4863542914
発売日: 2020/7/17
アマゾンのURL書くとここに書き込みできないのでヨドバシのURL書いておく。
https://www.yodobashi.com/product/100000009003256396/
958デフォルトの名無しさん
2020/05/02(土) 10:00:39.97ID:aaZCC6Sm モダンと言えばモダン焼きが思い浮かぶな
959デフォルトの名無しさん
2020/05/02(土) 15:59:26.40ID:eL+vj3NV >>958
大阪人臭い、俺はだんぜん考える人だな
大阪人臭い、俺はだんぜん考える人だな
960デフォルトの名無しさん
2020/05/02(土) 16:12:54.07ID:HQ5rAU7k ガチで間違えたのかネタで言ったのか分かりにくい
961デフォルトの名無しさん
2020/05/02(土) 20:00:00.13ID:HrddHHvE 10秒ぐらい考え込んでフリーズした。
962デフォルトの名無しさん
2020/05/03(日) 08:14:29.07ID:Myb2oOr3 思考回路はショート寸前
963デフォルトの名無しさん
2020/05/03(日) 21:30:39.85ID:+yZ1SVH+ >>962
今すぐ会いたいよ
今すぐ会いたいよ
964デフォルトの名無しさん
2020/05/04(月) 05:41:02.53ID:ZCjfeBBX >>957
その出版社の本、本のサイズの割に字が小さくて、読みにくいんだよね。
その出版社の本、本のサイズの割に字が小さくて、読みにくいんだよね。
965デフォルトの名無しさん
2020/05/04(月) 20:57:12.28ID:gMqnLc6N プロトコルってなんなのかよくわからんからググったんだけどさ
Swiftだと主に構造体を使うことになっていて!?構造体にも適用できるインターフェイスがプロトコルってことなのか?
もしそうだとしたら、構造体が主流じゃないKotlinにプロトコルがあろうがなかろうがほとんど変わらん気がするが・・・・
Swiftだと主に構造体を使うことになっていて!?構造体にも適用できるインターフェイスがプロトコルってことなのか?
もしそうだとしたら、構造体が主流じゃないKotlinにプロトコルがあろうがなかろうがほとんど変わらん気がするが・・・・
966デフォルトの名無しさん
2020/05/04(月) 21:27:04.79ID:au6sJ5VU プロトコルとインターフェースは呼び名が違うだけ
JavaのインターフェースはObjective-Cのプロトコルを真似して違う名前を付けたもの
SwiftはObjective-Cからプロトコルという名前をそのまま受け継いでる
JavaのインターフェースはObjective-Cのプロトコルを真似して違う名前を付けたもの
SwiftはObjective-Cからプロトコルという名前をそのまま受け継いでる
968デフォルトの名無しさん
2020/05/05(火) 06:35:08.05ID:L2fj2Ukz Interfaceって機能がなぜ必要?
1. Super1, Super2を多重継承したDerived ClassからSuper1, 2に共にあるfooメンバにアクセスすると、Super1.foo, Super2.fooのどちらが呼ばれる?
2. この問題を回避するには、多重継承を禁止すれば良い(菱形継承問題、Diamond Problem)
3. もう一つの解決方法は、宣言しか実装していないClass(Interface, Prototype, Abstruct Class, Module)を使えば良い。
この理解でOK?
1. Super1, Super2を多重継承したDerived ClassからSuper1, 2に共にあるfooメンバにアクセスすると、Super1.foo, Super2.fooのどちらが呼ばれる?
2. この問題を回避するには、多重継承を禁止すれば良い(菱形継承問題、Diamond Problem)
3. もう一つの解決方法は、宣言しか実装していないClass(Interface, Prototype, Abstruct Class, Module)を使えば良い。
この理解でOK?
969デフォルトの名無しさん
2020/05/05(火) 06:40:25.13ID:L2fj2Ukz >>968
具体例
図形 -> 四角形 -> 平行四辺形 -> 長方形
平行四辺形 -> 菱形
こう言うClass Hierarchyがあった時に
長方形 -> 正方形
菱形 -> 正方形
なる正方形を作りたい。
こんな時に、Diamond Problemが発生。
具体例
図形 -> 四角形 -> 平行四辺形 -> 長方形
平行四辺形 -> 菱形
こう言うClass Hierarchyがあった時に
長方形 -> 正方形
菱形 -> 正方形
なる正方形を作りたい。
こんな時に、Diamond Problemが発生。
970デフォルトの名無しさん
2020/05/05(火) 06:47:50.54ID:L2fj2Ukz >>969
[菱形継承問題 - Wikipedia](https://ja.wikipedia.org/wiki/%E8%8F%B1%E5%BD%A2%E7%B6%99%E6%89%BF%E5%95%8F%E9%A1%8C)
俺も昔、C++のvirtual ってなんだ?って日々を過ごした。
e.g.
class B: virtual public A
[菱形継承問題 - Wikipedia](https://ja.wikipedia.org/wiki/%E8%8F%B1%E5%BD%A2%E7%B6%99%E6%89%BF%E5%95%8F%E9%A1%8C)
俺も昔、C++のvirtual ってなんだ?って日々を過ごした。
e.g.
class B: virtual public A
971デフォルトの名無しさん
2020/05/05(火) 06:53:54.99ID:MSVPcbFQ C++は仕様多すぎて複雑怪奇すぎて意味わからん
C++以外の、高速で、メモリ、OSネイティブAPIを直接いじれて、アセンブリに近い言語って無いんか?
大体ネイティブ機能実装とかだと C++ でやることになるけど
Python とかも結構頑張ってるん?
C++以外の、高速で、メモリ、OSネイティブAPIを直接いじれて、アセンブリに近い言語って無いんか?
大体ネイティブ機能実装とかだと C++ でやることになるけど
Python とかも結構頑張ってるん?
972デフォルトの名無しさん
2020/05/05(火) 06:54:37.91ID:L2fj2Ukz >>970
[多重継承(C++) - 超初心者向けプログラミング入門](https://programming.pc-note.net/cpp/inheritance_multiple.html)
C++におけるvirtual の意味!
[多重継承(C++) - 超初心者向けプログラミング入門](https://programming.pc-note.net/cpp/inheritance_multiple.html)
C++におけるvirtual の意味!
973デフォルトの名無しさん
2020/05/05(火) 06:57:28.64ID:L2fj2Ukz >>971
Golangがそれに近いのでは?
Swift, Kotlin Nativeが高速コードを吐く、万能言語を目指してるけど、今のところ達成されていない。
かといってC++が普及しているか?と言われると、初学者を撥ね付ける仕様の複雑さで、そうもなってない。
Golangがそれに近いのでは?
Swift, Kotlin Nativeが高速コードを吐く、万能言語を目指してるけど、今のところ達成されていない。
かといってC++が普及しているか?と言われると、初学者を撥ね付ける仕様の複雑さで、そうもなってない。
974デフォルトの名無しさん
2020/05/05(火) 07:22:45.91ID:L2fj2Ukz 学生向けGoogleの社会貢献事業、今年のAnnouncing our Google Summer of Code 2020 students
Swiftやるみたい。
https://forums.swift.org/t/announcing-our-google-summer-of-code-2020-students/36147
Swiftやるみたい。
https://forums.swift.org/t/announcing-our-google-summer-of-code-2020-students/36147
975デフォルトの名無しさん
2020/05/05(火) 07:56:44.92ID:rwJ86+M0 複数のクラスから継承(is-a)するのは、難しすぎる・柔軟ではないので、
Ruby でも継承は、1つのクラスからしかできない
その代わり、複数の機能・モジュールを、Mixin(has-a, インタフェース)できる
mixinすると継承チェーンに割り込むので、継承チェーンは一直線になる。
同名の関数は、親クラスよりも先に、mixinでみつかる
子 → mixin → 親
Ruby でも継承は、1つのクラスからしかできない
その代わり、複数の機能・モジュールを、Mixin(has-a, インタフェース)できる
mixinすると継承チェーンに割り込むので、継承チェーンは一直線になる。
同名の関数は、親クラスよりも先に、mixinでみつかる
子 → mixin → 親
976デフォルトの名無しさん
2020/05/05(火) 09:55:13.50ID:3EKm8pq3977デフォルトの名無しさん
2020/05/05(火) 11:54:40.15ID:9hK6pGme >>975
ほんとどこにでも湧いて出てくるな
ほんとどこにでも湧いて出てくるな
978デフォルトの名無しさん
2020/05/05(火) 14:25:41.55ID:L2fj2Ukz979デフォルトの名無しさん
2020/05/05(火) 17:57:01.37ID:pxHbBt7R980デフォルトの名無しさん
2020/05/05(火) 18:21:58.43ID:0KGdisErレス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★4 [BFU★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★5 [Hitzeschleier★]
- テレビ朝日 本社から男性が転落し死亡。関連会社社員か 当たった通行人が左肩軽傷 [阿弥陀ヶ峰★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- テレビ朝日本社から20~30代の関連会社社員とみられる男性が転落し死亡 六本木けやき坂通りの通行人にはけが人なし [少考さん★]
- 高市早苗首相が天理教系企業に“巨額発注” 総額5000万円 本人は「政治団体の活動に必要な支出」と回答 ★2 [Hitzeschleier★]
- 【高市速報】中国、最後通牒 [308389511]
- 【速報】テレビ朝日本社から20代〜30代の男性が飛び降り自殺して死亡 東京・六本木 [597533159]
- お前らダウナー系だよな
- 現役JKのお茶会スレ( ¨̮ )︎︎𖠚ᐝ182
- 東京の家賃安くね?
- 精液がゼリー状で黄ばんでるせいで女と付き合う勇気ない
