前スレ
オブジェクト指向はオワコン?
https://mevius.5ch.io/test/read.cgi/tech/1721393540/
オブジェクト指向はオワコン? part2
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2026/08/13(木) 14:38:03.02ID:pdAcKRXu797デフォルトの名無しさん
2026/08/24(月) 02:32:03.86ID:YY0Bkc3V c++のそれらの企画書では時間的な長さ(生存期間)をlifetimeまたはstorage durationとよび
std::dynamic_extent は空間的なサイズ(要素数)に用いて使い分けているな
C言語の標準規格(ISO/IEC 9899)においては、配列のサイズを extent とは呼んでいないようだな
std::dynamic_extent は空間的なサイズ(要素数)に用いて使い分けているな
C言語の標準規格(ISO/IEC 9899)においては、配列のサイズを extent とは呼んでいないようだな
798デフォルトの名無しさん
2026/08/24(月) 02:32:52.68ID:YY0Bkc3V799デフォルトの名無しさん
2026/08/24(月) 02:34:08.35ID:RtsQfhBt800デフォルトの名無しさん
2026/08/24(月) 02:39:28.95ID:RtsQfhBt 英英辞典で調べてもextentに生存期間の意味はない
lengthやsizeの意味はある
だからC++のstd::dynamic_extentが配列などの長さやサイズの意味で用いてることは正しい
つまり動的extentは動的サイズ
lengthやsizeの意味はある
だからC++のstd::dynamic_extentが配列などの長さやサイズの意味で用いてることは正しい
つまり動的extentは動的サイズ
801デフォルトの名無しさん
2026/08/24(月) 02:41:42.77ID:YY0Bkc3V 英英辞典には載っていないだろうなw
802デフォルトの名無しさん
2026/08/24(月) 02:53:04.24ID:RtsQfhBt C/C++/C#の規格書はlifetimeなんだな
あとは規格や公式でextentを用いるプログラミング言語があるのかどうか
あとは規格や公式でextentを用いるプログラミング言語があるのかどうか
803デフォルトの名無しさん
2026/08/24(月) 02:59:57.04ID:RtsQfhBt Rustは規格書がないようだが公式でlifetimeと言ってるな
804デフォルトの名無しさん
2026/08/24(月) 03:12:48.44ID:YY0Bkc3V C++では、C++11以降の標準ライブラリや、C++20/C++23で追加された新しい機能において、
配列などの「(各次元の)要素数、あるいはデータの広がり(長さ)」を指す用語として extent という言葉を使っている。
とのことだ
なお、Cで配列などの空間サイズにextentというコトバを使うことはない
配列などの「(各次元の)要素数、あるいはデータの広がり(長さ)」を指す用語として extent という言葉を使っている。
とのことだ
なお、Cで配列などの空間サイズにextentというコトバを使うことはない
805デフォルトの名無しさん
2026/08/24(月) 03:27:00.00ID:BSEHZD2k なるほど
変数などの生存期間はlifetimeと呼んだほうが良いわけか
変数などの生存期間はlifetimeと呼んだほうが良いわけか
806デフォルトの名無しさん
2026/08/24(月) 03:29:17.82ID:YY0Bkc3V807デフォルトの名無しさん
2026/08/24(月) 03:34:14.48ID:YY0Bkc3V 時価だ空間だ書いているとまた場の理論のおじさんが
妄想を爆発させそうだなw
妄想を爆発させそうだなw
808デフォルトの名無しさん
2026/08/24(月) 03:48:54.71ID:BSEHZD2k >>806
使い分けはその通り
経緯は先にCの標準規格書としてlifetimeの用語が定まった
C++も同じく標準規格書としてlifetimeの用語が定まった
後にC++20の時にdynamic extentを動的なサイズの意味で配列などの要素数に用いた
std::dynamic_extent
使い分けはその通り
経緯は先にCの標準規格書としてlifetimeの用語が定まった
C++も同じく標準規格書としてlifetimeの用語が定まった
後にC++20の時にdynamic extentを動的なサイズの意味で配列などの要素数に用いた
std::dynamic_extent
809デフォルトの名無しさん
2026/08/24(月) 03:51:14.54ID:YY0Bkc3V >>808
サイズ面でextentをつかうよになったのは割と新しめのC++か
サイズ面でextentをつかうよになったのは割と新しめのC++か
810デフォルトの名無しさん
2026/08/24(月) 03:57:58.68ID:YY0Bkc3V 結局話の発端の
>659
>動的extentって何だ?
>例えばC++のdynamic_extentはオプション指向と関係ないように
>概念を話すときに特定の言語でのみ通用する用語は使わないでほしい
とは何だったのか。
>659
>動的extentって何だ?
>例えばC++のdynamic_extentはオプション指向と関係ないように
>概念を話すときに特定の言語でのみ通用する用語は使わないでほしい
とは何だったのか。
811デフォルトの名無しさん
2026/08/24(月) 04:00:23.52ID:YY0Bkc3V 相手する値打ちの無い輩だったということか…
812デフォルトの名無しさん
2026/08/24(月) 04:18:02.26ID:/7yyHiO5 なぜC++で空間サイズに関してextentが使われるようになったか大体分かった
--
C++の標準ライブラリでは、配列のサイズや広がりを表現するために extent(複数形は extents)という言葉が使われるようになりました。
* std::extent (C++11〜)
* 配列型の「指定した次元の要素数(サイズ)」をコンパイル時に取得するための機能です。
* 例えば int arr[3][5]; に対座して、std::extent_v<decltype(arr), 1> とすると、2次元目の広がりである 5 が取得できます。 [2, 3]
* std::span (C++20〜)
* 連続したメモリ(配列や std::vector など)を指し示す軽量な覗き窓(ビュー)です。
* このクラスのテンプレート引数やメンバ定数として、要素数を表す extent が定義されています。ここで要素数が実行時になるものを std::dynamic_extent と呼びます。 [4, 5]
* std::mdspan / std::extents (C++23〜)
* 多次元配列を扱うための機能です。
* C++23からは、多次元配列の「次元の数」を rank、「各次元の要素数(サイズ・広がり)」を extent と明確に呼び分け、それを管理する std::extents というクラスも登場しました。 [1, 6, 7]
## 2. なぜ size や length ではなく extent なのか?
C++において size() や length() は、コンテナにある「すべての要素の総数(合計カウント)」を返すものとして長年使われてきました。 [8]
しかし、多次元配列(例えば、縦3 × 横5 の行列)を扱うようになると、以下のような混乱が生じます。
* 「この行列の size は?」と言われたとき、全体の個数である 15 なのか、縦の長さ 3 なのか、横の長さ 5 なのか区別がつきにくい。
そのため、近代C++では以下のように言葉を使い分けるようになりました。
* rank(階数・次元数): 配列が「何次元」あるか(例: 2次元配列なら 2)。
* extent(境界・広がり): 各次元における「要素の長さ・サイズ」(例: 1次元目の extent は 3、2次元目の extent は 5)。
* size(総サイズ): すべての次元の extent を掛け合わせた「全要素の総数」(例: $3 \times 5 = 15$)。 [1, 6, 7]
## 結論
C++では、配列の「要素の数」や「各次元のサイズ」といった空間的な広がりを公式に extent と呼びます。 [1, 2]
--
C++の標準ライブラリでは、配列のサイズや広がりを表現するために extent(複数形は extents)という言葉が使われるようになりました。
* std::extent (C++11〜)
* 配列型の「指定した次元の要素数(サイズ)」をコンパイル時に取得するための機能です。
* 例えば int arr[3][5]; に対座して、std::extent_v<decltype(arr), 1> とすると、2次元目の広がりである 5 が取得できます。 [2, 3]
* std::span (C++20〜)
* 連続したメモリ(配列や std::vector など)を指し示す軽量な覗き窓(ビュー)です。
* このクラスのテンプレート引数やメンバ定数として、要素数を表す extent が定義されています。ここで要素数が実行時になるものを std::dynamic_extent と呼びます。 [4, 5]
* std::mdspan / std::extents (C++23〜)
* 多次元配列を扱うための機能です。
* C++23からは、多次元配列の「次元の数」を rank、「各次元の要素数(サイズ・広がり)」を extent と明確に呼び分け、それを管理する std::extents というクラスも登場しました。 [1, 6, 7]
## 2. なぜ size や length ではなく extent なのか?
C++において size() や length() は、コンテナにある「すべての要素の総数(合計カウント)」を返すものとして長年使われてきました。 [8]
しかし、多次元配列(例えば、縦3 × 横5 の行列)を扱うようになると、以下のような混乱が生じます。
* 「この行列の size は?」と言われたとき、全体の個数である 15 なのか、縦の長さ 3 なのか、横の長さ 5 なのか区別がつきにくい。
そのため、近代C++では以下のように言葉を使い分けるようになりました。
* rank(階数・次元数): 配列が「何次元」あるか(例: 2次元配列なら 2)。
* extent(境界・広がり): 各次元における「要素の長さ・サイズ」(例: 1次元目の extent は 3、2次元目の extent は 5)。
* size(総サイズ): すべての次元の extent を掛け合わせた「全要素の総数」(例: $3 \times 5 = 15$)。 [1, 6, 7]
## 結論
C++では、配列の「要素の数」や「各次元のサイズ」といった空間的な広がりを公式に extent と呼びます。 [1, 2]
813デフォルトの名無しさん
2026/08/24(月) 04:21:28.45ID:8dfHuOfg extentはLisp用語
空間的なscopeと対比することでextentを時間的な意味でLisp用語にした
本来のextentは時間的ではなく一般的な範囲を示す
Lisp用語としてのみextentが生存期間の意味で使われている
それがLisperによって広まった
一方でC/C++など他の言語から見ると
Lisp用語extentは相応しい用語に見えない
わかりやすいlifetimeが採用された
それでもLisp用語extentを使う人が一部残った
一方でC++はextentを本来の意味で使うことにした
std::dynamic_extentはその本来の意味に沿っている
空間的なscopeと対比することでextentを時間的な意味でLisp用語にした
本来のextentは時間的ではなく一般的な範囲を示す
Lisp用語としてのみextentが生存期間の意味で使われている
それがLisperによって広まった
一方でC/C++など他の言語から見ると
Lisp用語extentは相応しい用語に見えない
わかりやすいlifetimeが採用された
それでもLisp用語extentを使う人が一部残った
一方でC++はextentを本来の意味で使うことにした
std::dynamic_extentはその本来の意味に沿っている
814デフォルトの名無しさん
2026/08/24(月) 04:24:18.55ID:/7yyHiO5815デフォルトの名無しさん
2026/08/24(月) 04:25:13.82ID:/7yyHiO5816デフォルトの名無しさん
2026/08/24(月) 04:33:06.49ID:/7yyHiO5 そんな、必死で検索して探さなくていいよ
もう寝なよ
もう寝なよ
817デフォルトの名無しさん
2026/08/24(月) 06:26:02.29ID:CNRXA6iN >>744を使えばもめることも誤解されることもなくて平和だよん
818デフォルトの名無しさん
2026/08/24(月) 07:54:25.67ID:0OmhbSEr extentを時間的要素に用いるのはかなり一般的じゃ無いって事でOK
819デフォルトの名無しさん
2026/08/24(月) 08:32:51.10ID:m7Qyi1DS オブジェクト指向でプログラム書いてるけどエクステントの言葉は知らなかった
スコープから外れたオブジェクトはいずれGCされるとだけ思ってプログラム書いてるしそれで問題ない
エクステントを意識して書かれたプログラムは何かが良くなるとかそういうのは別にないんでしょ
プログラムの動作を説明するときに役立ちそうではあるけどね
スコープから外れたオブジェクトはいずれGCされるとだけ思ってプログラム書いてるしそれで問題ない
エクステントを意識して書かれたプログラムは何かが良くなるとかそういうのは別にないんでしょ
プログラムの動作を説明するときに役立ちそうではあるけどね
820デフォルトの名無しさん
2026/08/24(月) 08:41:35.36ID:0OmhbSEr821デフォルトの名無しさん
2026/08/24(月) 09:09:17.26ID:m7Qyi1DS マネージドヒープで管理できないものはあるからね
ネイティブメモリはローンパターンとかリソースモナドっぽいものを拵えて管理してるわ
ネイティブメモリはローンパターンとかリソースモナドっぽいものを拵えて管理してるわ
822デフォルトの名無しさん
2026/08/24(月) 09:09:45.80ID:++uoiV4H 誰も真のオブジェクト指向でプログラムできないからねぇ
それっぽい機能使ってるけどforループで回して手続き型プログラムやってる
関数や配列の強化版としてしか使えていない
それっぽい機能使ってるけどforループで回して手続き型プログラムやってる
関数や配列の強化版としてしか使えていない
823デフォルトの名無しさん
2026/08/24(月) 09:25:33.80ID:m7Qyi1DS >>822
誰もできないなら真のオブジェクト指向があると考えてる人がバカなんじゃないの? 違うの?
誰もできないなら真のオブジェクト指向があると考えてる人がバカなんじゃないの? 違うの?
824デフォルトの名無しさん
2026/08/24(月) 10:06:50.63ID:9H+y+Lt4 CのlifetimeとLispのextentとRustのlifetimeは
何かしらの生存期間/有効期間を表現しているという意味では同じだけど
肝心の「何かしら」の中身が違うので同じものとして取り扱わないほうがいい
何かしらの生存期間/有効期間を表現しているという意味では同じだけど
肝心の「何かしら」の中身が違うので同じものとして取り扱わないほうがいい
825デフォルトの名無しさん
2026/08/24(月) 10:45:45.63ID:W8icJp64826デフォルトの名無しさん
2026/08/24(月) 10:56:41.85ID:0OmhbSEr >>822
真のオブジェクト指向でプログラム出来ないとかw
道具を道具として使えない奴の言い訳にしか聞こえないなw
んなもん道具なんだから頭でウジウジ考えて真のオブジェクト指向目指すより
テキトーに道具として使った方が勝ちだ
真のオブジェクト指向でプログラム出来ないとかw
道具を道具として使えない奴の言い訳にしか聞こえないなw
んなもん道具なんだから頭でウジウジ考えて真のオブジェクト指向目指すより
テキトーに道具として使った方が勝ちだ
827デフォルトの名無しさん
2026/08/24(月) 11:22:03.68ID:++uoiV4H つまり用途がないんだよオブジェクト指向にはな
世の中の実業に求められてるのは手続き型プログラムってことよ
世の中の実業に求められてるのは手続き型プログラムってことよ
828デフォルトの名無しさん
2026/08/24(月) 11:30:53.67ID:0OmhbSEr 機能分割くらいに考えて使えればいいんだよ
グダグダ屁理屈並べてああでもないこうでもないで何日も時間潰しても
結局最後は設計が悪かったになるんだからw
グダグダ屁理屈並べてああでもないこうでもないで何日も時間潰しても
結局最後は設計が悪かったになるんだからw
829デフォルトの名無しさん
2026/08/24(月) 11:34:05.39ID:m7Qyi1DS 手続き型とオブジェクト指向は地続きなものだしなあ
手続き型でプログラム書いて必要になったときにオブジェクト指向でまとめるくらいでちょうど良い
手続き型でプログラム書いて必要になったときにオブジェクト指向でまとめるくらいでちょうど良い
830デフォルトの名無しさん
2026/08/24(月) 12:28:27.74ID:hVz7/hAx 手続きは地続き
831デフォルトの名無しさん
2026/08/24(月) 12:30:28.08ID:iOSk3pf4 データとそれを処理する関数をまとめたカプセル化は良いと思う。
細々したことをさらけださなくいいから。
C++ならテンプレートだな。まあ、会社では使用禁止だろうけど。
細々したことをさらけださなくいいから。
C++ならテンプレートだな。まあ、会社では使用禁止だろうけど。
832デフォルトの名無しさん
2026/08/24(月) 12:43:50.88ID:0OmhbSEr テンプレートやマクロって、公的に利用されてるもの以外は混乱の元なんだよね
833デフォルトの名無しさん
2026/08/24(月) 12:50:46.60ID:/rJQvH3P >>656
>クラス(カプセル化)、動的インスタンス(動的extent)、継承、多態といったもので
>プログラムを現すモデルとして実は適していなかったおそれがあると思う
これやっぱりCOBOLのような手続き型を想定した話だったのか
さすがおじいさん
>クラス(カプセル化)、動的インスタンス(動的extent)、継承、多態といったもので
>プログラムを現すモデルとして実は適していなかったおそれがあると思う
これやっぱりCOBOLのような手続き型を想定した話だったのか
さすがおじいさん
834デフォルトの名無しさん
2026/08/24(月) 12:54:25.98ID:ApDDNJ0D 東工大の大学院出てそうだなwww
835デフォルトの名無しさん
2026/08/24(月) 13:08:11.00ID:/7yyHiO5 なぜそう思った?
836デフォルトの名無しさん
2026/08/24(月) 15:41:30.92ID:NI+byBux この使い分けも難しい
ニブル (nibble)
テトラード (tetrade)
カルテット (quartet)
ニブル (nibble)
テトラード (tetrade)
カルテット (quartet)
837デフォルトの名無しさん
2026/08/24(月) 15:46:54.81ID:/TxIyeAu >>835
気分はstatic!だから
気分はstatic!だから
838デフォルトの名無しさん
2026/08/24(月) 16:08:32.29ID:FITgzI9F えらい勢いあるねこのすれωωω
839デフォルトの名無しさん
2026/08/24(月) 16:49:46.42ID:++uoiV4H 不毛なことって延々と続くからね
840デフォルトの名無しさん
2026/08/24(月) 18:18:43.72ID:0OmhbSEr スキー用具が冬季オリンピックの開催国で使われる名称になるみたいな差だからいいんだよw
841デフォルトの名無しさん
2026/08/24(月) 18:46:36.30ID:9P8EVJBT842デフォルトの名無しさん
2026/08/24(月) 19:06:41.35ID:oSCPHv4Q >>29
>>・extentが独立な状態変数は、どうしてもそうしなければならないもの以外、なるべく状態変数にしない
このextentが独立はlifetimeが独立の意味?
生存期間が独立って表現おかしくない?
生存期間が静的と言いたいのかな?
>>特にextentとscope。
>>C言語で明確化された、ネストしたシンプルで分かりやすく
>>そしてextentと対応付きやすいscopy
ネストしたと書かれているから
おそらく多段ブロックスコープの話っぽい
でもextentはscopeと対応しないから意味を持つよね
extentを敢えて出す意味は?
>>・extentが独立な状態変数は、どうしてもそうしなければならないもの以外、なるべく状態変数にしない
このextentが独立はlifetimeが独立の意味?
生存期間が独立って表現おかしくない?
生存期間が静的と言いたいのかな?
>>特にextentとscope。
>>C言語で明確化された、ネストしたシンプルで分かりやすく
>>そしてextentと対応付きやすいscopy
ネストしたと書かれているから
おそらく多段ブロックスコープの話っぽい
でもextentはscopeと対応しないから意味を持つよね
extentを敢えて出す意味は?
843デフォルトの名無しさん
2026/08/24(月) 20:30:04.38ID:SH8uZeIr 馬鹿しかいない
844デフォルトの名無しさん
2026/08/24(月) 22:28:44.89ID:/7yyHiO5 ほんとそう思った
845デフォルトの名無しさん
2026/08/24(月) 23:11:07.53ID:SAx4f3U/846デフォルトの名無しさん
2026/08/24(月) 23:12:21.80ID:SAx4f3U/847デフォルトの名無しさん
2026/08/24(月) 23:56:26.47ID:5ApQpNZr848デフォルトの名無しさん
2026/08/25(火) 03:53:26.26ID:Fbem61UJ staticおじさんは
staticおじいさんに進化しました
staticおじいさんに進化しました
849デフォルトの名無しさん
2026/08/25(火) 06:40:27.48ID:DTj/Nd7/850デフォルトの名無しさん
2026/08/25(火) 09:32:51.45ID:DTj/Nd7/ オブジェクト指向はその仕組みが元凶で悪というよりも
自由度が高かったり色々な(変な・凝った)書き方が出来てしまい
それを使う人間が上手く律し利点だけを引き出すような使い方が結局できない
思い込みと自己流で変な流用の仕方をしがちだった
使う人間側にも問題があったのではないかと最近では思う
それをそれを制限する仕組みをオブジェクト指向は備えていなかった
で、制限する言語が最近出て来た
自由度が高かったり色々な(変な・凝った)書き方が出来てしまい
それを使う人間が上手く律し利点だけを引き出すような使い方が結局できない
思い込みと自己流で変な流用の仕方をしがちだった
使う人間側にも問題があったのではないかと最近では思う
それをそれを制限する仕組みをオブジェクト指向は備えていなかった
で、制限する言語が最近出て来た
851デフォルトの名無しさん
2026/08/25(火) 10:13:57.96ID:oBSBF0sY オブジェクト指向言語自体は洗練されてるからねw
提供されてるライブラリのクラスメソッドの出来の良さよw
提供されてるライブラリのクラスメソッドの出来の良さよw
852デフォルトの名無しさん
2026/08/25(火) 10:26:10.59ID:6vdc+tuL853デフォルトの名無しさん
2026/08/25(火) 10:29:44.33ID:2JbrJHvg delay()を初心者に教えるとその先が壁になって
いつまでもシングルタスクのまま進歩しないのと同じだな
いつまでもシングルタスクのまま進歩しないのと同じだな
854デフォルトの名無しさん
2026/08/25(火) 10:51:57.55ID:kmT7Vw9O >>852
自分で調べろ
自分で調べろ
855デフォルトの名無しさん
2026/08/25(火) 10:58:49.00ID:V26zP6ij856デフォルトの名無しさん
2026/08/25(火) 11:01:52.62ID:kmT7Vw9O >>855
specって何? specが気になってぜんぜん頭に入ってこない
specって何? specが気になってぜんぜん頭に入ってこない
857デフォルトの名無しさん
2026/08/25(火) 11:04:09.41ID:dp5nuGuB satisfied_countってなんやねん!
858デフォルトの名無しさん
2026/08/25(火) 11:10:09.26ID:FPo7YXHj つか、なんでみんなダラダラ条件分岐書き連ねるの?
859デフォルトの名無しさん
2026/08/25(火) 11:18:37.93ID:kmT7Vw9O >>858
他に良いやり方あるんけ? おーん?
他に良いやり方あるんけ? おーん?
860デフォルトの名無しさん
2026/08/25(火) 11:19:36.83ID:oBSBF0sY まあ、バカがループ禁止にしたからかな?
861デフォルトの名無しさん
2026/08/25(火) 11:32:42.57ID:V26zP6ij とりあえず出力ができるものということで書いたので、粗があるのは許してちょ。specは、〜specの並びを見れば、意図するところは分かってもらえるかなと思ったんだけどね(>>593でも書いているし)。
woofルールがなければ述語関数を渡して判定させるという形で書けるのでまだ分かりやすかったと思うんだけど、今回は、woofルールもまとめて一本で書いたので正直分かりにくくなった面はあると思う。
ま、あくまでお試しで書いてみた例にすぎないので、その程度のものとして見てもらえれば。
woofルールがなければ述語関数を渡して判定させるという形で書けるのでまだ分かりやすかったと思うんだけど、今回は、woofルールもまとめて一本で書いたので正直分かりにくくなった面はあると思う。
ま、あくまでお試しで書いてみた例にすぎないので、その程度のものとして見てもらえれば。
862デフォルトの名無しさん
2026/08/25(火) 11:40:36.88ID:FPo7YXHj >>859
辞書作って判定回せばデータ変えるだけだぞ
辞書作って判定回せばデータ変えるだけだぞ
863デフォルトの名無しさん
2026/08/25(火) 11:47:07.75ID:kmT7Vw9O >>862
ほほんw それでやってみ、できないからw
ほほんw それでやってみ、できないからw
864デフォルトの名無しさん
2026/08/25(火) 11:47:53.08ID:kmT7Vw9O エアプが妄想でこうやれば良いと言っててウケるw
865デフォルトの名無しさん
2026/08/25(火) 11:52:07.39ID:FPo7YXHj866デフォルトの名無しさん
2026/08/25(火) 11:59:10.14ID:V26zP6ij867デフォルトの名無しさん
2026/08/25(火) 12:03:40.92ID:FPo7YXHj 最小公倍数で回せなくなったのかw
あと変換後のスペル順番が違う…と
スペル変換をもう一つ噛ませればいいだけじゃん
あと変換後のスペル順番が違う…と
スペル変換をもう一つ噛ませればいいだけじゃん
868デフォルトの名無しさん
2026/08/25(火) 12:06:57.49ID:FPo7YXHj いっその事、1万テーブルの変換表作って
ダイレクトに参照させた方がいいまであるなw
ダイレクトに参照させた方がいいまであるなw
869デフォルトの名無しさん
2026/08/25(火) 13:36:41.58ID:uW9aS2eb870デフォルトの名無しさん
2026/08/25(火) 13:55:36.08ID:kmT7Vw9O >>869
自分で作れ
自分で作れ
871デフォルトの名無しさん
2026/08/25(火) 14:08:10.89ID:V26zP6ij >>869
そう? 組み込みクラスのオブジェクトの便利なメソッドを使うというのも十分にオブジェクト指向だと思うけど。
そういうネジ・クギレベルのことを超えて、ユーザー定義クラスみたいなのを作って色々やるのがいいかどうかは設計時の考え方次第だと思うよ。今回は関数で十分だと思ったから関数にしただけの話で。
そう? 組み込みクラスのオブジェクトの便利なメソッドを使うというのも十分にオブジェクト指向だと思うけど。
そういうネジ・クギレベルのことを超えて、ユーザー定義クラスみたいなのを作って色々やるのがいいかどうかは設計時の考え方次第だと思うよ。今回は関数で十分だと思ったから関数にしただけの話で。
872デフォルトの名無しさん
2026/08/25(火) 15:02:38.17ID:59HjenUa873デフォルトの名無しさん
2026/08/25(火) 15:23:05.74ID:oT3TaD7S >>868
その変換表をどうやって作るつもりなんだよw
その変換表をどうやって作るつもりなんだよw
874デフォルトの名無しさん
2026/08/25(火) 15:34:02.59ID:FPo7YXHj875デフォルトの名無しさん
2026/08/25(火) 15:39:14.70ID:oT3TaD7S >>874
1万までの数字すべての期待結果がドキュメントに逐一書かれてるといいねw
1万までの数字すべての期待結果がドキュメントに逐一書かれてるといいねw
876デフォルトの名無しさん
2026/08/25(火) 15:45:57.28ID:V26zP6ij >>872
ユーザー定義関数もオブジェクトだし、words.appendとか、''.joinとかは普通にメソッド呼び出しだけど。forループやリスト内包では、内部的にiteratorオブジェクトのメソッド呼び出しがされているわけだし。
インスタンスの生成構文みたいなのがないとオブジェクト指向ではないという感覚なの?
ユーザー定義関数もオブジェクトだし、words.appendとか、''.joinとかは普通にメソッド呼び出しだけど。forループやリスト内包では、内部的にiteratorオブジェクトのメソッド呼び出しがされているわけだし。
インスタンスの生成構文みたいなのがないとオブジェクト指向ではないという感覚なの?
877デフォルトの名無しさん
2026/08/25(火) 15:47:28.12ID:FPo7YXHj878デフォルトの名無しさん
2026/08/25(火) 16:34:19.36ID:92tTKry8 >>877
自分のバカさ加減にようやく気付いたようで何よりですww
自分のバカさ加減にようやく気付いたようで何よりですww
879デフォルトの名無しさん
2026/08/25(火) 16:34:41.01ID:59HjenUa880デフォルトの名無しさん
2026/08/25(火) 16:50:03.91ID:kmT7Vw9O >>872
C言語に備わっていたらオブジェクト指向じゃないといつから錯覚していた?
C言語に備わっていたらオブジェクト指向じゃないといつから錯覚していた?
881デフォルトの名無しさん
2026/08/25(火) 16:53:27.38ID:kmT7Vw9O オブジェクト指向とはプログラムをわかりやすくする営みと知れ
882デフォルトの名無しさん
2026/08/25(火) 17:04:08.80ID:XljZ4S3B オブジェクトを作ってそこへメッセージを投げることで動いていく
そのためのメッセージ送受をコーディングしていく
それがオブジェクト指向プログラミング
>>866は今回の目的のためにオブジェクトすら作っていない
そのためのメッセージ送受をコーディングしていく
それがオブジェクト指向プログラミング
>>866は今回の目的のためにオブジェクトすら作っていない
883デフォルトの名無しさん
2026/08/25(火) 17:15:06.41ID:kmT7Vw9O884デフォルトの名無しさん
2026/08/25(火) 17:16:01.79ID:kmT7Vw9O オブジェクトを最小限にすることもオブジェクト指向である
885デフォルトの名無しさん
2026/08/25(火) 17:16:52.90ID:kmT7Vw9O Pythonは数値さえもオブジェクトだったりするんだよな
Pythonで書かれたプログラムはすべてオブジェクト指向の賜物
Pythonで書かれたプログラムはすべてオブジェクト指向の賜物
886デフォルトの名無しさん
2026/08/25(火) 17:24:18.32ID:kmT7Vw9O メッセージパッシングがーと言ってるやつは自分で書いてみろ
できないんだったらメッセージパッシングによるオブジェクト指向は
現実では使い物にならないことの証拠である
できないんだったらメッセージパッシングによるオブジェクト指向は
現実では使い物にならないことの証拠である
887デフォルトの名無しさん
2026/08/25(火) 17:37:38.64ID:1v+8FLb+ オブジェクト指向でプログラミングすること
言語の機能やライブラリがオブジェクト指向で実装されていること
この二つは異なる
違いがわからない人はいないと思うが
言語の機能やライブラリがオブジェクト指向で実装されていること
この二つは異なる
違いがわからない人はいないと思うが
888デフォルトの名無しさん
2026/08/25(火) 17:43:28.83ID:kmT7Vw9O >>887
同じですね、オブジェクト指向エアプか?
同じですね、オブジェクト指向エアプか?
889デフォルトの名無しさん
2026/08/25(火) 17:44:24.87ID:kmT7Vw9O オブジェクト指向がなかったらライブラリも構築できないんだから
オブジェクト指向のライブラリを使うこともオブジェクト指向プログラミングだよ
オブジェクト指向のライブラリを使うこともオブジェクト指向プログラミングだよ
890デフォルトの名無しさん
2026/08/25(火) 17:48:20.35ID:kmT7Vw9O オブジェクト指向で構築されたライブラリを使ってプログラム書いてオブジェクト指向ではありませんは無理がある
濃厚セックスしておきながら私エッチなことに興味ありませんけどみたいな顔してる女みたいなもの
濃厚セックスしておきながら私エッチなことに興味ありませんけどみたいな顔してる女みたいなもの
891デフォルトの名無しさん
2026/08/25(火) 17:54:21.90ID:kmT7Vw9O オブジェクト指向以前からベテランの開発者は優れたデータ構造を選んでコードがシンプルにせよと言ってたんだよな
そのように考えるとオブジェクトは言語機能の代替と考えてそれらを使ってロジックを手続き型や関数型でシンプルに書くのがオブジェクト指向の良いプログラムといえるのではないだろうか
そのように考えるとオブジェクトは言語機能の代替と考えてそれらを使ってロジックを手続き型や関数型でシンプルに書くのがオブジェクト指向の良いプログラムといえるのではないだろうか
892デフォルトの名無しさん
2026/08/25(火) 17:55:18.50ID:kmT7Vw9O 誤:コードがシンプルにせよ
正:コードをシンプルにせよ
正:コードをシンプルにせよ
893デフォルトの名無しさん
2026/08/25(火) 17:57:28.72ID:r1bVOdaF >>866はオブジェクト指向プログラミングの要素が1つもないな
894デフォルトの名無しさん
2026/08/25(火) 18:00:20.67ID:kmT7Vw9O895デフォルトの名無しさん
2026/08/25(火) 18:02:14.96ID:gX3JeEsp 手段の目的化の極み
896デフォルトの名無しさん
2026/08/25(火) 18:10:28.36ID:a1NtL2p3 >>866
読んでみた
糞コードだと思った点の一つはCallable
それは非常に古い使い方でオブジェクト指向に対応していないC言語などで用いる方法
オブジェクト指向プログラミングに対応した言語はその点を解決している
読んでみた
糞コードだと思った点の一つはCallable
それは非常に古い使い方でオブジェクト指向に対応していないC言語などで用いる方法
オブジェクト指向プログラミングに対応した言語はその点を解決している
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】 高市首相 「円安ホクホク」発言に、米国が「What the fuck 」と日本に通知したことが判明 [お断り★]
- 外務省がアメリカ側に強く抗議したと発表 沖縄・那覇市の強盗殺人事件で海兵隊の男逮捕 [少考さん★]
- 「運動音痴にとって、体育の授業は『公開処刑』」 運動嫌いを生みだす日本の教育の問題点★2 [征夷大将軍★]
- 【沖縄】米海兵隊の20歳男を強盗殺人容疑で逮捕 那覇市のホテルで女性殺害し財布など奪った疑い 「私は知りません」容疑否認 [ぐれ★]
- 【速報】高市首相の「寝てない」にSNS賛否「命がけで頑張っている」「アピールはもうけっこう」 海外メディアも注目 (共同通信) [少考さん★]
- 【アジア大会】大村秀章知事が会見 「アジア版五輪」の成功を強調「やり切ることができた」 [首都圏の虎★]
- 2026 MotoGP Lap70【日本GP】
- ハム戦ファーム日本選手権3
- とらせん 連覇 大祝勝会 13
- 巨専】
- 東京競馬4回2日目
- 【ATP】テニス総合実況スレ2026 Part 104【WTA】
- 一人当たりGDPが35年も下がり続けてる国って世界にほぼ存在しないんだってな…日本凄すぎるだろ [819729701]
- 【朗報】日本、少なくとも2045年までは中国に一人あたりGDPを抜かれない事が発覚するWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW(ソースai) [509448172]
- 【トランプ、オワタァ!】高市、遺憾砲発射!「極めて遺憾」 [219241683]
- 日本料理、アジアで一番不味いとの評価頂く。→日本人なぜか発狂 [668024367]
- 【悲報】日本人、気づき始める「あれ?俺たちなんか貧しくなってね?」wwwwwwwwwwwwwwwwwwwwwwww [379664288]
- 



ハズレのお🏡