0b9f2c59

1: 仕様書無しさん 2026/05/20(水) 00:59:59.72
クラスを使わなくても、関数を使えば十分実用的なコードが書けるって
聞きましたが本当ですか?


3: 仕様書無しさん 2026/05/20(水) 23:42:51.62
私は素人ですが、クラスを使った方が分かりやすいコードになると思います

4: 仕様書無しさん 2026/05/21(木) 02:12:52.66
私も専門外ですが、クラスという形で役割や責任を明確に分割できるのはいいことだと思います
振る舞いと状態をまとめられるのもいいですね

5: 仕様書無しさん 2026/05/21(木) 06:56:01.85
クラスは害悪だから最近のプログラミング言語はクラスを持たない言語が多数派

10: 仕様書無しさん 2026/05/23(土) 14:33:09.60
>>5
「最近」世に出たものではないですが、
今もっとも使われているPythonとその次に使われているJavaScriptは
クラス機能が備わってますよね

11: 仕様書無しさん 2026/05/23(土) 19:59:40.37
>>10
だから失敗だと言われてる言語じゃん

12: 仕様書無しさん 2026/05/23(土) 23:46:44.19
>>11
PythonはともかくJSも失敗な言語なんですか?

6: 仕様書無しさん 2026/05/21(木) 18:35:14.84
純粋関数型言語が正義です

7: 仕様書無しさん 2026/05/22(金) 00:48:24.58
簡単なはずのことをひたすらややこしくしてたんな…

8: 仕様書無しさん 2026/05/22(金) 00:49:14.16
つまり変数ひとつしか返させないCこそがクソ
すべてのクソの元凶

9: 仕様書無しさん 2026/05/23(土) 13:15:30.64
継承使った多層構造にすると何故か煙たがれる

13: 仕様書無しさん 2026/05/23(土) 23:48:39.14
オブジェクト指向わからないおじさんって界隈では駆逐されていなくなったと思ってた

14: 仕様書無しさん 2026/05/23(土) 23:53:15.63
ポリモーフィズムっての?

objs = [new Car(), new Plane()]
for (obj in objs) obj.start()
startメソッドを実装してたらCarもPlaneも同じように扱えるってやつ
なんでポリモーフィズムみたいなよくわからない名前つけちゃったの?

18: 仕様書無しさん 2026/05/24(日) 00:24:24.79
>>14
ポリモーフィズムは広い概念で日本語だと多相性や多態性あるいは単に多相
これはもちろんクラスとは関係なく様々な場面で現れる
例えば関数オーバーロードなどのアドホック多相やジェネリクスなどのパラメトリック多相はクラスやオブジェクト指向と関係なく存在している
クラス継承などはサブタイプ多相の一種
このようにポリモーフィズムは広い世界

15: 仕様書無しさん 2026/05/23(土) 23:54:22.93
JSはほんま失敗
滅びないかな

25: 仕様書無しさん 2026/05/24(日) 18:46:28.60
>>15
なんてこと言うんだ

26: 仕様書無しさん 2026/05/24(日) 21:40:12.23
>>25
TSをそのまま実行できるようになってJSは消え去る
これが一番美しい未来と思うがどうか

16: 仕様書無しさん 2026/05/23(土) 23:55:22.24
クラスとはクラス継承の機能を持つものを指す
それ以外の機能はクラス以外でも有しているため唯一の区別すら点になる
例えばインスタンスやカプセル化やポリモーフィズムなどはクラス以外も持つ一般的な概念と機能なのでクラス固有のものではない
唯一のクラス固有の概念と機能としてクラスの継承がある
そしてこのクラス継承が欠陥品

20: 仕様書無しさん 2026/05/24(日) 01:33:21.22
ようするに別の型でも同じ関数名や同じメソッド名を使えることがポリモーフィズム
だからオブジェクト指向とは関係なくポリモーフィズムが使われている

21: 仕様書無しさん 2026/05/24(日) 05:14:36.44
pythonなど何でもポリモーフィズムできるやん
pythonこそがオブジェクト指向言語だった?!

22: 仕様書無しさん 2026/05/24(日) 05:26:01.22
>>21
おいおい
ポリモーフィズムとオブジェクト指向は無関係と書かれてるだろ

24: 仕様書無しさん 2026/05/24(日) 17:58:57.89
ポリモーフィズムとかいうふわっとした言葉で抽象化される同名関数呼び出しかわいそう

28: 仕様書無しさん 2026/05/25(月) 03:06:21.34
クラス継承が害悪というのはもちろん正しいけど
正確には実装継承が害悪
そして実装継承の一つとしてクラス継承やプロトタイプ継承があってどちらも害悪
TypeScriptそしてその母体のJavaScriptはこのプロトタイプ継承で出来ている
だからクラスベースの言語と同じく問題を抱えている

30: 仕様書無しさん 2026/05/25(月) 06:06:49.56
クラス継承 ←オワコン
オブジェクト指向 ←今も重要

31: 仕様書無しさん 2026/05/25(月) 07:39:31.62
オブジェクト指向の神器

カプセル化
ポリモーフィズム
継承

さて、あと一つは?

33: 仕様書無しさん 2026/05/25(月) 08:25:47.19
>>31
クラス継承は失敗作
みんなが認めている

36: 仕様書無しさん 2026/05/25(月) 12:19:27.00
有名な『デザインパターン』の著者たちもクラス継承を問題視して代わりにインターフェース継承を支持しています

37: 仕様書無しさん 2026/05/25(月) 18:17:05.19
それってまさかGOFじゃないよね?
もう20年近く前だぞ

38: 仕様書無しさん 2026/05/25(月) 18:59:05.76
>>37
令和最新版はどうなってるの?

39: 仕様書無しさん 2026/05/25(月) 19:13:20.13
>>37
デザパタはGoFだろ
んで今は継承やめてコンポジションにしようよって言ってる

40: 仕様書無しさん 2026/05/25(月) 19:24:43.29
Javaの発明者ジェームズ・ゴズリングも今ではクラス継承の反対派
もしJavaを再設計するならクラス継承は含めないと断言している

41: 仕様書無しさん 2026/05/25(月) 20:02:27.49
ラムダ式で大体できちゃうからね

42: 仕様書無しさん 2026/05/25(月) 20:32:16.47
一世代前なら普通にできてたことなのに

43: 仕様書無しさん 2026/05/25(月) 20:38:51.01
こういうコーディングが素晴らしいんだと押し付けたがった連中のせいで
簡単なことすら難しくなってしまった

44: 仕様書無しさん 2026/05/25(月) 20:53:46.92
最近のプログラミング言語
【クラス継承がない】Elixir、Go、Julia、Nim、Rust、Zig
【クラス継承がある】Kotlin(Javaの後継)、Swift(Objective-Cの後継)

つまり過去のしがらみでクラス継承を含めざるを得なかったKotlinとSwiftを除いて全ての言語にクラス継承はない

46: 仕様書無しさん 2026/05/25(月) 23:13:18.39
>>44
今はクラス自体が言語仕様に無いからね
一部にクラスという名前のものがあるけどそこに継承機能はなくて従来のクラスとは別もの

45: 仕様書無しさん 2026/05/25(月) 23:01:37.62
【悲報】スマホアプリ経験者しか理解してなかった

引用元: https://medaka.5ch.io/test/read.cgi/prog/1779206399/


応援登録のご協力のお願い


Google検索に汎用型自作PCまとめをお気に入り情報源として追加いただけますと嬉しいです!