2025-02-05

anond:20250204225533

業務システムずっとやっているが、静的型信者が言うような型違いを代入してしまバグや、関数信者が言うような変数再代入によるバグってあんまり頻繁に出会った記憶がないんだよな。

ちなみに動的型言語も静的型言語も両方実プロジェクト経験ある(その中間的なキャストだらけのC言語とかも)。

関数言語は実務では経験なくて、JSTS宣言的な書き方が増えてきたのを見てきた程度。

それよりも昔はメモリリークに悩まされたし、昔も今もロジックの間違いやレア業務考慮漏れバグほとんどという実感がある。

で、それらを防ぐために、シンプルロジックを追いやすIDEデバッガ確認やすコーディングスタイルが推奨されるようになる。

そうなると式よりも文が扱いやすく、mapよりもforだし、三項演算子よりもif文だし、メソッドチェーンのようなのもあまり使わなくなる。

静的型の人は、レア業務考慮漏れされないように代数データ型として業務定義しろって言うだろうけど、それはもう全部型ワールド設計し直すことになるので導入コストが高すぎる。

現状の言語でちょこっと今風の設計を取り入れたらバグが減りますよ、みたいな感じでは全然ない。

いつか役に立ちそうと、関数型も学び続けてはいるがいまだにバグ削減で役に立った実感がない。

記事への反応 -
  • https://gakuzzzz.github.io/slides/for_loop_to_higher_order_functions/#1 久々にアホな記事を見たので反論しておく そもそも関数型にする大きな動機は「バグを減らすため」 これはオブジェクト指向でも...

    • 業務システムずっとやっているが、静的型信者が言うような型違いを代入してしまうバグや、関数型信者が言うような変数再代入によるバグってあんまり頻繁に出会った記憶がないんだ...

      • 最近のIDEであればmapだろうと変数の中身を全部確認できるので文に分解しておこうという動機は以前と比べると激減した データを走査するのであればmapやfilterならばデータ構造を意識す...

      • プログラミングパラダイムは原理的にどうだろうと人間の認知能力にマッチしないとまともに読めない。 人間の認知能力に沿って人間の感覚で読みやすいプログラミングパラダイムを構...

        • 最近はIDEが賢いので助かる

        • Rubyは、大きくて複雑なシステムでも、ひとつひとつの処理は小さなプログラムのように書けるっていう感触がある。 具体的にどの言語機能がというわけではないけれど、標準ライブラリ...

        • 静的型で先に型を決めてしまう言語が本流だったのに、最近になって型を定義しない言語が広まって混乱してるという認識なのだが

      • 文字列に数値を入れたらバグりましたって   って問題は 静的型付けの導入コストをかけてまで改善すべき問題か?   ってのはわりとまじで思ってる テストの段階で潰せるじゃんそん...

        • 最初から入れとけば導入コストほとんどゼロなんだから、最初から入れとけばいいじゃん 途中から入れると面倒臭いのは同意する

          • 動的だからって別に楽になってないから 動的のメリットが要らんのよな

        • それよりも、prefcobeとprefcodeの違いのせいでなんか動いてるんだけどなんかおかしいい?ってのを確認して修正するのに30分とかかかる みたいなのが毎日繰り返されるのが地味に嫌だ

      • 動的型言語はバグというよりも、開発途中で「あ、これフィールド名間違ってるじゃん。対応入れとこ」みたいな「バグ未満の対応」が多々発生して開発速度が上がらないというのはあ...

    • JSにif式、switch式(文じゃなくて)ほしい!! ボロクソ言われてんのにわざわざ三項演算子の連続書くのもおそらくおんなじ理由で、 switch式さえあればおおよそ代替できるはず

    • ほぅ・・・

    • letにしたくらいでバグ作り込んで1週間も無駄にするのは流石にマヌケで能力が足りないとしか言いようがないんだが そんなやつがプロジェクトに入り込むのを避けるにはどうしたらい...

    • バグが減るっていうか半年後とかに見返したときの読みやすさの問題が大きい

    • ChatGPT 4o この文章の主張は、「バグを減らすために for 文を避け、map や filter を使うべきだ」というものだが、これは一面的な見方とも言える。 確かに、関数型プログラミングの恩恵...

    • 講釈垂れる前に、まずはもうちょっと分かりやすい日本語を勉強してから書いてくれよ

    • 副作用があるならfor、ないならmapを使え。以上。

    • というか、今どきの難しいバグって大体非同期関係でmapだろうがforだろうがあんまり関係なくね?僅差でmapが有利くらいなもんで

    • 匿名から記名へ誹謗中傷する滅多に見ないアホ「久々にアホな記事を見たので反論しておく」 碌なプログラムを書いたこともない社会性ないプログラマーがエビデンスもなしになんか言...

    • 流石にこれを反論と言われるのは厳しい…

    • バグの原因は見ず知らずの人間のコードを託されるから 一人でやればバグらない

    • C言語に無い構文は、単なるイキりで使われてるだけの紛い物。151匹以降のポケモンのようなものだ。

    • 馬鹿どもに関数型を与えるなっ!!

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん