はてなキーワード: ジェネリクスとは
エンジニアなの?
ただの決めつけだし、対人論証ですね
Rustでは、pubで可視性管理を管理してカプセル化し、データ構造を定義し、traitでデータ構造に対する操作のインターフェースを定義し、
ジェネリクスやトレイトオブジェクトを使ってさまざまなデータに対して多相で処理を提供することが一般的です
「RustはOOPじゃないし」に対する反論としてはこちらの方が重要であり、私がエンジニアであるかどうか、どのようなプロダクトを書いたかなどはノイズでしかなく、答える必要も、考える必要もありません
これの方がスカスカだよね
てきとーにホラ吹いてるだけだとしても、反証可能性がない
こっちはRust技術者が他にいて、Rustでそんな書き方しねえわみたいなことあったら指摘できるよね
反証可能性がある
自分には6年付き合った年上の彼女がいた。名前はPHP。学生の時からの付き合いで、自分にとっては初めての彼女だった。付き合った当初は全てが新鮮で、オブジェクト指向やSOLID原則、大事なことは全て彼女から教えてもらった。(そう思われるかもしれないが、)時間が経って彼女の魅力が感じられなくなってしまったということはなくて、彼女は歳をとっても魅力的なままだった。むしろreodonlyプロパティやEnum、null safe演算子など、新しい機能が導入されてますます綺麗になっていったように思う。最近ではジェネリクスさえ導入されたようだ。彼女は本当に努力家だ。
(褒められた話ではないが一応、彼女以外の女性を全く知らなかったわけではなく、TypeScriptという若い子と少し遊んでいたこともある。TypeScriptは昔からの知り合いのJavaScriptの妹で、大雑把な姉と違って几帳面で、少しオタク気質もある個性的な子だった。よく新しい型パズルを考案して楽しそうに話してくれたが、自分には正直よく分からなかった笑。)
そんな中でも基本的には6年間PHPとずっと一緒に過ごしてきた。前述の通り彼女に何か不満があったわけではない。ただ、彼女との将来に不安を覚えるようになってしまっていた。周囲に彼女と付き合っていることを話すと、「え、まだPHPと付き合ってたんだ?(昔は人気だったけど、最近はそうでもないよね)」みたいなことを、彼女のことをよく知らない人から言われたりもした。そこまで直接的ではなかったけれど。自分も、彼女以外の女性のことをほとんど知らずにずっと彼女と付き合っていて大丈夫なのかななんて思ってしまったりしていた。
結局自分はPHPと別れて、新しい女性と付き合う決断をした。新しい彼女の名前はGo。彼女は若いのに自分の芯がしっかりしていて、みんなの憧れの格好良い女性といった人だった。そんな彼女と付き合いだして、最初は戸惑うことも多かった。
例えばこんな感じだ。
また、今まで当たり前だと思っていたPHPの良さに気づくことも多い。PHPStanを使えば静的型付け言語と同じように型安全性を担保できていたし、彼女のWeb FWには歴史が長いだけあって痒いところまで手が届く様々な機能が完備されていた。経験豊富でこちらの要望をなんでも受け止めてくれるような包容力があったことに今更気づいた。
とはいえ、いつまでも昔の彼女を引きずっていてもしょうがない。Goにはこちらに積極的に合わせてくれるような包容力はないが、彼女なりの哲学を持っていてそれ故の美しさがあると思う。そして正直、まだ彼女の10分の1も理解できていない。彼女が得意だという並行処理や、実行速度が求められるような処理も、自分はまだ実際に実装したことはない。でもこれからしっかり向き合って、Goのことをもっと理解して、実りのある交際にしていきたいと考えている。PHPと別れてGoと付き合う決断したのは自分なのだから。
悪の帝国 Oracle が Java を有償化し重税を課そうとしたその時、正義の勇者 Amazon が立ち上がり新しい Java 実装 Corretto を無償で広めて救ったのだ!
……という情弱が好きそうなデマがあるんだが、こんな陳腐なシナリオに喜んでいるようではインチキなテック系 YouTuber に食い物にされてしまうぞ☆
Oracle レジスタンスはいた。彼らは Oracle の中に潜んでいたんだ。
時は2005年に遡る。
Java を開発した 米 Sun Microsystems は赤字にあえいでいた。
2004年に Java 5 (目玉機能はジェネリクス) がリリースされてしばらくの頃だ。
この頃、ひとつのオープンソースプロジェクトが立ち上がる。名を Apache Harmony という。
開発は2005年5月に開始され、2006年10月には Apache 財団のトップレベルプロジェクトとなった。
Sun は多数の企業をまきこみ、いろんな企業に Java™ をライセンスしていた。
Java の実装は Sun が持っていたが、各社が独自に実装したり、Sun と契約してコード提供を受けたりしていた。
Java™ を名乗るためには Technology Compatibility Kit (TCK) という互換チェックをパスしなければならない。
初期の Java はオープンソースではなかった。誰もが自由にコードを参照し用いることができるものではなかったんだ。
これをオープンソース化しようという野心で始まったのが Apache Harmony プロジェクトだ。
Java の実装をいちから書き起こしオープンソースの代表的な Apache License Version 2 ライセンスで提供したのだ。
しかし、Sun は Apache2 ライセンスを良しとせず、Harmony に Technology Compatibility Kit (TCK) を受けさせなかった。
なるほど。彼らが Java をオープンソース化したレジスタンスだったわけか?
違う。話はそんなにシンプルではない。
2006年 Sun は Java をオープンソースにする意志があると発表した。
Sun は Java を リンク例外付きの GNU General Public License でオープンソース化することにした。
Harmony のライセンスは自由な改変を認めるものだった。
OpenJDK のライセンスは派生物を作ったなら、そのソースコードの公開義務がある、という点が大きな違いだった。
OpenJDK は出た当初はまだ Sun の JDK との非互換が多かった。しかしこれが現代まで続く OpenJDK の始まりだったのである。
2007年11月 GoogleがAndroidを発表した。 Android は Java 言語で開発することができる。
そのベースとなったのは Sun との火種くすぶる Apache Harmony だった。よりにもよって!
(後にGoogleが負けて賠償し、現在のAndroid は OpenJDK ベース)
その渦中、赤字に喘いでいた Sun はついに身売りを決断する。2009年のことである。
当初 IBM との交渉が報じられていたが金額で折り合わなかったようだ。
そこに颯爽とあらわれたのが Oracle である。 Oracle が Sun Microsystems を買収することになった。
しかし Oracle にはよくない噂がある。敵対買収してプロダクトを潰してしまうという黒い噂だ。
Sun の Java も Oracle に食い物にされてしまうんじゃないか、いわゆる 「悪のOracle」 のイメージはこの頃からのものだ。
しかし、 Sun はすでに Java をオープンソース化していた。 派生物もオープンソースにしなくてはならない OpenJDK で!
Oracle は Java を Sun 社ごと買ったが、 Java はすでに独り占めできるようなものではなかった。
Sun 本家の JDK を引き継いだ Oracle JDK と、OpenJDKがついに統合される。
Oracle がソースコードを OpenJDK に寄贈し、 Oracle JDK も OpenJDK ベースとなった。
ここに OpenJDK への移管は完全となり、Javaのオープン化は成就した。
それまでの OpenJDK は Oracle JDK との非互換が不安視されていたわけだが、Java11 からはその不安もなくなった。
こうして完全にオープン化された Java は、各サードパーティーからディストリビューションが出るようになった。
Java11 での Java のオープン化を経て、Javaはディストリビューション乱立時代へと突入する。
Amazon Corretto もそうした OpenJDK の派生ディストリビューションのひとつである。
OpenJDK の開発は今なお Oracle が主力となって牽引している。
Java を解放しようとしたレジスタンスは、赤字に喘いでいたSunの中にいた。
たとえ Sun が身売りをすることになろうとも、Java を邪悪な独裁者の手に渡さないように。
Sun が倒れてしまう前に Java はオープン化された。Javaの仕様策定は Java Community Process (JCP) にて行われる。
Javaの仕様策定は Oracle の独断で進めることはできない。 OpenJDK の開発も Oracle の独断ですることができない。
GNU General Public License でオープンソース化された Java は、派生物のライセンスもGPLが強制されソースコードを公開しなければならない。
そんな OpenJDK をリリースした、当時の Sun の中の人達こそがレジスタンスだったんだ。
eraseToAnyPublisher()で全部AnyPublisherにして使うのが作法みたいだけどそれってどうなの。
それRxで言うasObservable()でしょ?
そしてAnyPublisherだけじゃそれが1発飛んで終わるのか継続的にポンポン飛んでくるのか型からじゃ分からないでしょ。
その点RxはObservableをはじめ、SingleやMaybeやCompletableを普通に取り回してるよね。
っていうか作法って何よ。いや作法は俺が言ってるだけだけど、ちゃんとした理由なくない?例えばFuture作ったらそのまま返せば良いじゃないですか。どうして駄目なんスか。
Rxに比べたCombineの利点ってエラーをジェネリクスで定義できるってとこだけじゃない?SwiftUIとの連携は別として。
Combineの方が速いらしいけど...そもそもRxSwiftで速度が問題になることなんてないし。
ああもう、こんなこと言ってたらeraseToAnyPublisher()自体にも腹立ってきたわ。なんであんな長ったらしいもんがそこら中に溢れてんねん。
そもそもオブジェクト指向そのものが40年以上前の技術だろが。
生物が単純な細胞の組み合わせと相互作用で複雑なシステムを構成するモデルに習って、単純なオブジェクトとメッセージパッシングの組み合わせでプログラムを表現する事で、プログラムを完結する小さなオブジェクトという単位に分割し、管理困難な複雑さに対処する事がオブジェクト指向の本質だろ。
構造化との違いはデータ構造も管理の単位に含めた事で、これによって複雑な状態管理をオブジェクトの中に閉じ込め、インターフェースだけ意識すれば良くなった点。
本質を理解していればオブジェクト指向でプログラム作るのにオブジェクト指向言語とか必要ない。ジェネリクスとかそもそもオブジェクト指向と関係ないし、後付けのいろんな用語に騙されて本質を見失うなよ。
日本語とオブジェクト指向が相性良いと言われてたのは日本語の語順がオブジェクト→メソッドというプログラム上での表現に似ているから、日本語話者にはすんなり理解しやすいよねって点。
納得以前にオカルトじゃろ。
10年位前の知識をベースに話されても、それで今通用しないって増田はわかるじゃろ。
「継承」を日本語の文章で説明してみ?「インターフェース」を。「ジェネリクス」を。「オーバーライド」は?
時間 | 記事数 | 文字数 | 文字数平均 | 文字数中央値 |
---|---|---|---|---|
00 | 68 | 10007 | 147.2 | 52.5 |
01 | 74 | 11677 | 157.8 | 68.5 |
02 | 65 | 8255 | 127.0 | 35 |
03 | 10 | 928 | 92.8 | 51 |
04 | 8 | 1023 | 127.9 | 100.5 |
05 | 7 | 1650 | 235.7 | 132 |
06 | 11 | 790 | 71.8 | 44 |
07 | 27 | 7501 | 277.8 | 37 |
08 | 28 | 3948 | 141.0 | 45 |
09 | 65 | 8887 | 136.7 | 40 |
10 | 85 | 10708 | 126.0 | 49 |
11 | 92 | 8832 | 96.0 | 32.5 |
12 | 76 | 14348 | 188.8 | 54 |
13 | 98 | 8746 | 89.2 | 50 |
14 | 127 | 11769 | 92.7 | 37 |
15 | 103 | 8060 | 78.3 | 46 |
16 | 94 | 10540 | 112.1 | 44 |
17 | 97 | 11267 | 116.2 | 47 |
18 | 84 | 11220 | 133.6 | 48.5 |
19 | 89 | 11521 | 129.4 | 49 |
20 | 127 | 15857 | 124.9 | 47 |
21 | 78 | 7808 | 100.1 | 47.5 |
22 | 87 | 15049 | 173.0 | 62 |
23 | 99 | 19630 | 198.3 | 65 |
1日 | 1699 | 220021 | 129.5 | 48 |
人(195), 自分(163), 今(100), 話(94), 増田(88), 仕事(66), 前(65), 子供(64), 日本(62), 人間(62), 問題(60), 相手(54), 好き(49), 気(48), あと(47), 必要(45), 普通(45), 会社(44), 関係(43), 気持ち(43), 場合(40), 男(39), 手(39), ネット(39), 最近(37), 女(37), 社会(36), 感じ(35), 親(34), 日本語(33), 女性(33), オタク(32), 世界(32), 頭(32), 結局(31), 今日(31), 意味(31), 人生(31), 時間(30), 金(30), 昔(30), 安倍(30), しない(28), 目(27), 毎日(27), 他人(27), 顔(27), 最初(27), 嫌(26), 言葉(26), 説明(26), 他(26), 存在(26), 理解(26), 価値(26), 英語(26), 理由(26), 可能性(25), 結果(25), 現実(25), 原因(25), 別(25), 日本人(24), 幸せ(24), 友達(24), 全部(24), 確か(24), 時代(24), 逆(24), ダメ(24), 時点(23), 一人(23), 自体(23), 一番(23), アニメ(23), レベル(23), 一つ(23), エロ(23), 完全(23), 家(23), 誰か(23), 個人(22), ー(22), 内容(22), 絶対(22), 表現(22), 自由(22), 無理(22), 結婚(22), 生活(22), じゃなくて(22), 判断(21), 発言(21), 職場(21), 興味(21), 口(21), 批判(21), 努力(20), 話題(20), 人たち(20), 女の子(20)
増田(88), 日本(62), 安倍(30), 可能性(25), じゃなくて(22), 養育費(17), 石破(15), アメリカ(15), ラノベ(14), 元増田(13), スマホ(13), わからん(13), 何度(13), ネトウヨ(13), 表現の自由(12), OK(12), いない(12), 表現規制(11), エロ漫画(11), なのか(11), マジで(11), 自民党(11), なんだろう(11), AI(10), 個人的(10), ブログ(10), 外国人(10), 中国(10), いいね(10), 普通に(10), 毎日(9), 罵詈雑言(9), モテ(9), トラバ(9), 数年(9), ツイッター(9), コスパ(9), キモ(8), エロゲ(8), ゾーニング(8), フェミ(8), 女性専用車両(8), リアル(8), 人間関係(8), ブコメ(8), w(8), はてブ(8), Twitter(8), SNS(8), 10年(8), 基本的(8), 2018年(8), BL(8), ヤバい(8), ???(7), である(7), Apple(7), ぶっちゃけ(7), なっちゃった(7), …。(7), 団塊世代(7), 下方婚(7), 20年(7), ジェネリクス(7), 安楽死(7), ガンダム(7), 東京(7), iPhone(7), LGBT(6), PC(6), 自己責任(6), 真逆(6), 一緒に(6), コロンブス(6), イケメン(6), ワイ(6), 経済的(6), ネット上(6), 欧米(6), 女子高生(5), 緊急事態条項(5), 自分たち(5), 価値観(5), 慰謝料(5), gt(5), ナチス(5), にも(5), A(5), 18禁(5), いいんじゃない(5), 帰国子女(5), 何回(5), 目的地(5), 社会的(5), ヴィーガン(5), 最終的(5), ロードムービー(5), 自分自身(5), キツ(5), 1980年代(5), 韓国(5), キモい(5), ポリコレ(5), 差別主義(5), 好きな人(5)
https://jsfiddle.n(3), とネットに書いてどうすんだ? (3), 確かに俺は年収800万の貧乏だわ・・(3), それな (2)
■会社で臭いと言われるのだがどうしていいかわからない /20180918135609(40), ■日本語ってすごくコスパが悪い言語だと思う /20180917202443(21), ■女だけど親権押し付けて離婚して、それから /20180918120625(18), ■敬老の日なので、長生きについて考えて欲しい /20180917203123(13), ■本当に表現規制って厳しくなってるの? /20180918194029(11), ■そばの香りって本当にあるの? /20180918110338(11), ■子どもを生むというエゴ /20180918114817(9), ■テンションが上がる差し入れって何? /20180917203615(8), ■親友と縁を切ろうと思ってる /20180918114257(8), ■貧乏人の家は不潔だ /20180918160825(8), ■他人の喘ぎ声に困っている /20180918172057(7), ■コロンブスの卵って /20180918132104(6), ■三大「時代の変化に伴ってアニメで描けなくなったもの」 /20180917210222(6), ■スーパーカミオカンデの中に /20180918103943(5), ■anond:20180918010434 /20180918135608(5), ■小児性愛(ロリコン)だけど辛さを分かってほしい /20180918172436(5), ■自分をいじめてた人がお笑い芸人になってた /20180918012627(5), ■君たちが差別に反対することを拒否するのなら /20180918194520(4), ■メスガキ /20180918161546(4), ■明坂さんのRoselia卒業を美談にしないでほしい /20180918112604(4), ■エロゲ雑誌は誰が読んでいるのか /20180918220704(4), ■医学生とは /20180918014126(4), ■貧困が呼ぶ声 /20180918195136(4), ■チップとデールって何が出るの? /20180918122442(4), ■anond:20180918132252 /20180918132450(4), ■来世が怖い /20180918125216(4), ■男女別れて生きよう 選ばれた者だけが繁栄のため子供を作ろう /20180918124629(4), ■モテない /20180918145503(4), ■エレベーターで左側を歩く人 /20180917192759(4)