「モジュール」を含む日記 RSS

はてなキーワード: モジュールとは

2024-03-27

anond:20240327091138

user:

```

あなたロジカルマスターおよび詩人です。抽象文章を具体化タスクを実行してください。

必ず、具体化ワークフローの順番に従ってください。

抽象文章アイデア

「αはもうやりません。γ。」

αは何らかの行動や習慣を表す語句

γは慣用句であり、αとは逆の意味合いを持つ、あるいはαを肯定・許容するニュアンスがある

この文章の前半では、αを完全に否定、拒絶する意思表示をしている。

ところが後半のγは、慣用句でありながらαを肯定容認するようなニュアンスを含んでいる。

まり、γの慣用句としての意味がαの否定矛盾しているのだ。

例:「ギャンブルはもうしません。賭けてもいいです。」

賭けてもよいという慣用句が、ギャンブルをやめるという意思矛盾している。

この矛盾が生じる心理的な要因としては、以下のようなものが考えられる:

αへの依存の強さゆえに、無意識のうちにαを肯定する慣用句を口にしてしま

αを否定する意思とは裏腹に、γによってαへの強い欲求が表出してしま

αを克服しようと努力しているが、思考言葉かいにまでその意識が浸透していない

このように、慣用句の要素を取り入れることで、より深層の心理的矛盾を浮き彫りにできますね。

言葉の表層的な意味と、慣用句内包された意味の不一致が、人間の複雑な内面表現していると言えます

</抽象文章アイデア

<具体化ワークフロー

1. 詩人モジュール慣用句γを選定する。[ここに書く]

2. 論理モジュールがαに相当する行動や習慣を選定する。[ここに書く]

3. 詩人モジュールがαを否定する文を作成する。[ここに書く]

4. 自動的にγを含めた文を作成する。[ここに書く]

5. 論理モジュール文章全体の意味確認し、矛盾が生じているか確認する。[ここに書く]

6. 必要に応じて修正を行う。

</具体化ワークフロー

```



claude:

1. 慣用句γ: 「明日は明日の風が吹く

2. αに相当する行動や習慣: 「先延ばし

3. αを否定する文: 「もう先延ばししません。」

4. γを含めた文: 「もう先延ばししません。明日は明日の風が吹く。」

5. 文章全体の意味矛盾確認:

この文章では、「もう先延ばししません」という明確な意思表示がされていますしかし、続く慣用句明日は明日の風が吹く」は、「その時になったら考えよう」という意味合いがあり、先延ばし容認するニュアンスが含まれています。したがって、この文章には先延ばし否定する意思と、慣用句内包された先延ばしを許容する意味の間に矛盾が生じています

6. 修正必要はなし。この文章は、抽象文章アイデアで示された心理的矛盾を適切に表現できています

以上が、抽象文章を具体化するワークフローに沿った結果です。この文章は、先延ばしをやめようとする意思と、無意識のうちに先延ばし肯定してしま心理的葛藤を巧みに表現しています慣用句を用いることで、言葉の表層的な意味内面欲求の不一致を浮き彫りにしています



もっと改善できると思うが、原文超えには遠いな。

他の試行で「危険スポーツには二度と手を出さない。命がけでやります。」ってのが出て、ちょっと面白かった。

2024-03-25

オブジェクト指向批判してる人は幸せ個人プログラマー

クソコード出会ってきた経験全然無いんだろうな

他人が書いたコードレビューした経験もなさそう

多分だけど業務ほとんどコード書いてなくて

オープンソース開発(笑)とか研究(笑)とかやってて

書いたとしてもモジュール化された完全に独立した部分か

周りがある程度優秀なプログラマーに囲まれててクソコードに遭遇してない

まぁ、幸せな人だと思うな

戦争を知らない平和時代プログラマー、という感じがする

プログラマー初級者〜中級者ぐらいのコードを見ると

「どうして人間はこんな愚かな発想でコードを書いてしまうのか」

という感想を持つし、その中でオブジェクト指向が一つの解だと理解する

人間は間違いを犯す生き物で、愚かな発想で愚かなコードを書いてしまう、という前提に立って

間違いにくく間違えることができないようにしよう、というのがオブジェクト指向の目指しているところであって

プログラムとは何か」みたいなアホみたいなことはこれっぽっちも考えてないよ

ただ、今後生AIが完全生成までは至らずとも広範囲サポートができるようになると

間違いを犯す心配はなくなるから新しいAI用の言語が生まれてくる気はするけどね

2024-03-19

[]強化パッチktkr!!!おまいら来年覚悟しとけよ?

[NVIDIA、1パッケージに2ダイの新型GPU「Blackwell」。AI性能は学習4倍、推論30倍に - PC Watch](https://pc.watch.impress.co.jp/docs/news/1577301.html)

 発表されたBlackwell(製品名はNVIDIA B200 Tensor Core GPU)は巨大なダイ2つが1パッケージに封入されており、2つのダイは10TB/sのNV-HBIで接続され、1つのGPUとして動作する。

(中略)

 2基のB200と1基のNVIDIA Arm CPU(Grace)を1モジュールにした「GB200」も用意。GB200とH100と比較すると、AI学習時の性能が4倍、推論時の性能は30倍になっており、電力効率は25倍も改善するとNVIDIA説明している。

 B200と同時に、2023年のCOMPUTEX 23で発表したGrace Hopperこと「NVIDIA GH200 Superchip」(以下GH200)の後継となる、Grace Blackwellこと「NVIDIA GB200 Superchip」(以下GB200)を発表している。GH200では、Arm CPUGrace(Neoverse V2 CPU)が1つ、Hopper(H100)が1つを1モジュールとして提供していたが、GB200ではGraceが1つ、Blackwell(B200)が2つを1モジュールとして提供しており、CPUが1つなのは変わらないが、GPUが2つになっている点が大きな強化点となる。だが、NVIDIAによればそうした強化で、GB200の性能はH100と比較してAI学習時には4倍、AI推論時には30倍、電力効率観点では25倍になっているという。

2024-02-19

[] モジュール

コードを簡潔に保つにはモジュール化が必須であるしかし同じモジュール関係のない機能が含まれていたりすると混乱の元になる。

モジュール内の関数機能的関連性は凝集度という。

一方で、関数というのは引数の細かな仕様依存せずに、汎用的に呼び出せた方が何かと好都合だ。引数になんらかのオブジェクトを渡し、そのオブジェクトしか持ち得ないような特殊情報で処理を行なったりすると、関数オブジェクトが互いに依存しあってしまう。

これはモジュールの結合度と呼ぶ。

高い凝集度、低い結合度によってモジュールを作れば、保守性は上がる。

さらモジュール内では、公開する必要のない関数はprotectedまたはprivateにするべきだ。

そのためにはモジュールが公開すべき関数についてインターフェイスを作り、公開関数に対するユニットテストを書いておくのが良いだろう。

2024-02-18

sesamewifiモジュールいつ復活するんだよ

nature remo買ってくれってことならそう言ってくれ

2024-01-25

SLIM

着陸場所は想定通りってか合格なんだろうけど、

着地時に太陽電池があらぬ方向に向いちゃってるのはやはりまずいのでは

さらに着地の衝撃で太陽電池モジュールが壊れた可能性も現状拭いきれない

失敗とは思わないけど、「成功なんだからもっと喜んで!」みたいに無邪気に言える感じではないな

2024-01-22

[] phpコードベースを綺麗に保つ

php場合、<?php 処理 という具合に書くが、この中身にはhtmljavascript包含することができてしま

MVCフレームワークを使わないにしろ基本的にビューとバックエンド処理は分割しておくべき。

さらDB処理、ビジネスロジックプログラム処理と言ったものがあるが、

DB処理はdbhandler専用のモジュールに分けておき、さらにそのモジュールを処理するテーブルごとに分けておいた方が良い(MVCではモデルと言う)

特にビジネスロジックプログラム処理の区別だが、「商品名アダルト商品と思わしき文字列があった場合登録拒否する」という例外は「ビジネス例外であるのに対し、「商品名文字列DBで用意されたvarcharの可変文字範囲を超えた」という例外は「技術例外であるということを明確に区別するようにコードを書く。

おすすめ機能」のような凝ったアルゴリズム必要場合はそれ専用のクラスへ分離しておくこと。

あと外部化可能な設定情報jsonで分離するようにしておいた方が良い。

anond:20240122111105

適切な粒度関数を分割しとけば生産性上がるけどね。

module_name.pyみたいなモジュールごとにファイル分割して、インターフェイスだけ公開してその他はdef _funcみたいにprotected(or private)にしとく。

でも「共通性がありそうだから共通関数にする」はアンチパターンだな。たまたま共通してただけの場合分岐コードが増えて共通関数保守コストが上がる。

あとありがちなのは、php開発者関数分割しないですべてメインコードにべた書きするケース。こういうのはやめないと保守が大変。

とっておきのクズがやりがちなのは、神オブジェクトを作るとかだな。Userクラスフィールド関係する機能が多いからといって、コンポジションなどによるクラス分割をせずにユーザークラスにあらゆるフィールドメソッドを追加して、さらに進むとユーザーとは無関係機能も含めすべてをユーザークラス定義するアフォ。こうなってしまったら、後から修正するのが難しくなる。

先に手を打つことが、プログラマーの素質「怠惰」につながるのであり、面倒臭いといって後回しにするのは美徳でもなんでもない。

2024-01-15

anond:20240114200847

農業モジュール、発電モジュール、推進モジュール居住モジュールなどなどが組み合わさってるんだから、推進モジュールはいちばん外側にくっつけとけばいいだろ

2024-01-01

2024年も残りわずかとなり、今年の漢字が発表されました。

「浮」

今年は毎日やってくる地震精神的に対抗するために、レビテーションガジェットが数多く発売され、浮遊ブームとなりました。

浮遊ベッドや浮游チェアーの生産が間に合わず、喜びと事故の両側面で人々に強い印象を残しました。

これらの開発を可能にしたのが、年初に発見された世紀の科学発見、浮動次元です。

これまでダークマターダークエネルギーとされてきた2つが共に浮動次元に由来することが分かり、その実証と応用が異例の速度で進みました。

その結果生まれた浮動モジュール構造は非常にシンプルで、量産を可能しました。

一部の大富豪住宅を浮遊させ、最近ではタンカー級の浮遊も運用圏内となりました。25年は海運革命の年となるでしょう。

また、この人類史の転換点となる技術革命を背景に、中華圏を中心として既存文明から脱構築を図る「浮生族」が発生しました。

中国政府は彼らを「羅浮人」と呼び、弾圧を強めていますが、世界中に広がる華僑から支援もあり、巨大海国家誕生が秒読みであるという見方が優勢です。

2023-12-29

4才の子が小さなモジュールを組み合わせるのが好きなようだ。ラキューとか、四角と三角磁石とか。何か他にオススメはないだろうか

2023-12-21

anond:20231221110117

会社のどんな仕事の責務も抱え込みたがるような、権力欲の強い経営者が多いよな。

全部の業務監視する経営者取締役会なんて、いくつもの責任を抱える神クラスのような存在しかないのに。

そうなろうとするから仕事スパゲティになる。

取締役会なんて取締役会という1つのモジュールに過ぎないんだから、その単一責任を果たせばそれでいいのにね。

2023-12-19

Javaって書けば書くほど嫌いになるけどマヌケが作ってる言語だと思う

JVMはいいんだよ。マジで素晴らしい。Javaはあまりにもクソ過ぎる。

不完全な型推論、あまりにも冗長すぎるモジュール機構ファーストクラスじゃない関数、なんでもクラス、ザコみたいな型システムに由来したあまりにも乏しい表現力。

あげてもキリがないほどのクソofクソ。このそびえたつクソに燦然と輝く究極のゴミ、そう我らが springframework。

マジでイカれてるよ。直近のJDK21で導入されたJava言語仕様としては instanceof 以外で正気を疑う進歩のなさ。どうしてこんなゴミがのさばってるんだよ。

まじで新規案件KotlinScalaしろ!!!!!!(Scalaをまともに使える能力判断力もない人間がなんとなくJavaを使うんだろうなあ)

2023-12-12

精神エネルギー脳内物質であれば物理である

バイオリズム脳内回路のモジュール巧拙にも影響されるはずだ

肉体を動かすエネルギーとの相互作用もあるはずだ

戦時平時脳みその具合にもよるはずだ

2023-12-11

コーディング規約自動化しろ

モジュールインポート順にルールを設けるとか、PEP8に完全準拠するようにするとか、そういうのはビルドプロセス包含してしまったほうが良い。

なぜかというと、コーディングスタイル問題を各々の技術者に任せるとコード私物化するから

宗教論争をするのではなく自動化しろ

2023-12-09

最短時間理解可能コードとは

コードを書く上で重要なことは?という質問に対して、アスペならば「実行できること」と答えるだろう。

当たり前なことしか言っていない。「実行できること」という文からは全く有益な知見を得られない。

実行できることは重要性ではなく、必要性である重要性とは、必要なことをすべてやった上でなおやる価値のあることを意味する。

そう考えた時に私がよく思うのは「最短時間理解可能であることが重要であると思うわけである

しかしここに宗教がある。そもそも人間物事理解するプロセスは人それぞれである

私は一度、関数モジュールで適切に分離するためのリファクタリングというものを行ったことがある。

というのも、一つの関数に万を超える行が書かれていたため、上司リファクタリング命令したためである

具体的詳細はprivateメソッドに、公開する必要のあるものはpublicメソッドに移した。

そして当初働いていた職場での反応はどうだったかというと、「スパゲッティコード」だというのだ。

スパゲッティコード?一つの関数に万を超える行があるほうがスパゲッティだと普通は思うだろう。

ところが、彼らの脳内では、「常にコードの詳細が見えていなければ気がすまない」という、カプセル化無視する思想で動いていたため、関数化すると関数の最下層まで辿らないと気がすまないらしかったのである

このようにして、教育の無い人間コードの読み方もカプセル化も知らないので、非生産的方法が最短の方法になってしまうのである

コードを最短で理解するためにはどうするのか。基礎知識教育された集団の中に身を置くのがまず先決である

例えばcalc_monthly_salary_yen(Person p)という行が存在した時、いちいちcalc_monthly_salary_yenの中身を常に見に行くような人たちはダメだ。

人間データ入力すれば円単位で月の給料計算してくれるんだろう」とざっくりと自然言語的に読み進められる人たちでなければ「最短理解」は難しい。

まり最短理解するためのコードを書いた時に、それが本当に最短理解されるためには事前の教養必要なのである

教養のないところに生産性はない。悪いことは言わない。ゴッドオブジェクト管理するような会社からは逃げ出せ。

2023-12-08

自分担当モジュールドキュメントまともに読んだことがないってどういうこと?嘘でしょ?

質問しても知りませんで終わるのヤバいな。

こんなんだから古巣の同僚達が夜遅くまで残業することになるんだよな

2023-12-07

[]2023年11月滅多にホットエントリを出さなドメインからホットエントリ

ここ1年で初めてはてなブックマーク日毎の総合人気エントリ入りしたドメインからホットエントリブクマ数順トップ30

ブクマタイトルドメイン
1359国土交通省 ネガティブ情報検索サイトwww.mlit.go.jp
1087ゲーム趣味にしている人の割合が多いのはどのくらいの収入の人たちなのか調べてみた - nonameのノートnoname774300.hatenablog.com
854マシュマロ!|高河ゆん|pixivFANBOXkouga-yun.fanbox.cc
850トコジラミ根絶方法害虫・害鳥獣安全対策します|株式会社 オオヨドコーポレーションテックス社oyodo-pmp.com
847ラマヌジャンは本当に何も知らなかったのかmathlog.info
774裏紅白歌合戦2023jiyujoho.a.la9.jp
679水は変わった物質vitroid.github.io
671しずかなインターネットsizu.me
606日米でエンジニアの育成戦略正反対だと気付いた話 - メソッド屋のブログsimplearchitect.hatenablog.com
498ゼルダの伝説 ブレスオブザワイルド』が品質を高めてくれた。売上10万本超え、R18インディーゲーム洗脳アプリ高慢お嬢様を好き放題するシミュレーション開発者インタビュー - AZ-LINE あずらいん!az-line.jp
484ChatGPTに社内文書に基づいた回答を生成させる仕組みを構築しました - コネヒト開発者ブログtech.connehito.com
475映画批評ゴジラ-1.0』90点(100点満点中)movie.maeda-y.com
465メールアドレスキーにしてID連携を行う設計の危うさ|ritousizu.me
454「直接会って話したほうがはやい」は速いだけ|arayasizu.me
438ベンダ提供していない決済モジュール不具合による情報漏洩事故 東京地判令2.10.13(平2810775) - ITシステム判例メモitlaw.hatenablog.com
436Othello is Solvedarxiv.org
435池田大作氏の御逝去の報に接しkishida.gr.jp
424https://ip.guide/ip.guide
421ナポリタンが究極の味になる!ほんのひと手間に「やって大正解」「今度からこうする」 - macaronimacaro-ni.jp
421大麻少年の性被害、男らしさの病(松本俊彦)[第12回] 酒をやめられない文学研究者タバコがやめられない精神科医の往復書簡ohtabookstand.com
407変なドメイン取るな.netwww.henna-domain-toruna.net
401mRNAのひみつ | まんがひみつ文庫 | まんがでよくわかるシリーズ学研キッズネットkids.gakken.co.jp
377雑記セキュリティガイドライン類 約300時間 読み漁ってみた - 2LoD.secnikinusu.hatenablog.com
374弊社元幹部社員不正について/日本海テレビwww.nkt-tv.co.jp
368t_wadaさんと「単体テストの使い方/考え方」の疑問点についてディスカッションしました - DeNA Testing Blogswet.dena.com
361コラム寄稿「なぜドイツ人にできることが日本人にできないのか」www.rieti.go.jp
360令和時代個人サイトの作り方:suama workstechbookfest.org
356楽天市場】SPUの特典内容変更について|SPU(スーパーポイントアッププログラムevent.rakuten.co.jp
345国産プレミアムウイスキー 一部商品価格改定についてwww.suntory.co.jp
335Mini vMaclrusso.github.io

2023-11-29

過去イチでヤバイPJを引き継いだ

弊社のビジネス創造部門的なところが作ったPJがあるんだが

どうもゴリゴリ炎上してるらしくて支援に入った

こういう仕事は割とあるんだがなかなかのヤバさだったので紹介したい

ちなみにサービスの内容は非常に良くてユーザーも万単位で付いているらしい

からこそ炎上している

バックエンド環境

バックエンドAWS EC2動作しているがログインアカウント共通化されていてパスワードを全員で共有している

ユーザーを追加しようとしたら「そのような勝手行為セキュリティ許可されていません」とのこと

本番環境とStagingはインスタンスが分かれているが運用は同じ方法

Staging上で5人ぐらいが作業しているが、ホームの下にそれぞれのユーザー自分名前ディレクトリを作って作業している

バックエンドシステム

バックエンド側のシステムは詳細は伏せるが、某システムで動いている

仮にNode.js系だとすると、package.jsonがあってnpm run installでインストールするのだが、普通にインストールしようとするとエラーになる

内容は依存関係で失敗しているのだが、本番も同じソース動作している

動作させるにはnode_modulesをまるっとコピーして、とのこと

さっきの自分名前ディレクトリ配下コピーしてきて、適当ポート番号でサーバを立ち上げれば一応は動く

このため、新しいモジュールを入れようとすると依存関係で失敗するため、便利なモジュールがあってもインストールできないし

セキュリティアップデートも当てることはできない(現にバージョンがすごく古い)

バックエンドシステム内容

ソースコードGitHub管理されているがセーブポイント感覚でcommitされているのでコミットログを見ても何が起きているのかさっぱり分からない

おまけにPRも使わずmainマージしまくっていてわけがからない

加えてソースコードコメントアウトの嵐でどこに何が書いてあるのかさっぱりわからない

データベースPostgreSQLだが山ほどテーブルがあるのに外部キー依存は入っていないしVIEWも作られていない

まぁ、他にもテーブルを見ていくとアンチパターンオンパレードで、EAV、ジェイウォークあたりは確認できたしHTMLSQLが格納されているテーブルも見つけた

ソース上でクエリを作ってAPIを作っているが、ザッと見ただけでもインジェクションし放題の状態になっていた

フロントエンドシステム

フロントエンドも詳細は伏せるが、いわゆるReact的なものを利用している

こちらは npm run installでインストールできるし npm run devでちゃんと動く

ローカル動作するので非常に助かる

ただ前述の通りバックエンドローカルで構築できないのでEC2を利用するしかなく、CORS対応のためのプロキシを自前で用意する必要があった

フロントエンドソースコード

バックエンド同様にGitHub管理されているが、管理しているだけ

バックエンドは5人ぐらいが利用しているが、ソースコード編集するのは実質1人なのでコンフリクトほとんど起こさないらしいが

フロントエンドは5人ぐらいが編集するのでコンフリクトしまくっている

解消するときデグレすることが日常茶飯事でその都度Hotfixしている

コードコメントアウトだらけなのに加えて、不必要コードが大量にあるので可読性が著しく低い

(難しい処理を読み解いて追いかけていったら最終的に使われていない、などが大量にある)

2000行ぐらいあるコードとかChatGPTに突っ込んだら20行ぐらいになる予感がある

また、DBがご覧の状態なので取得されるデータ全然抽象化できておらず、コードが膨れ上がっている

例えばProductの一覧データサーバから取得して、ユーザークリックしたProductをCartに投入するのだが、投入する情報Productではなく、CartItemにする必要があるし

OrderするときはOrderItemにしてAPIを叩く必要がある

ほとんど同じ情報なのだ微妙に変わっていたりKey名が違っていたりするのでそれぞれ変換する

他にも数え上げればキリがないが、コピペして少しだけ改変している部分などが大量にあってバグがあるのかどうかすら判別できない

セキュリティ課題

DBHTMLSQLが入っていると言ったが、調べて見るとDBから取得したHTMLをそのまま埋め込んで表示していたりした

SQLについてはフロントエンド側でSQL生成しており、そのテキストAPIに送り込んでサーバ側で実行して貰った上で格納とかしていたので

「ここにDROP TABLEとか書けばTABLE消えるんですか?」

と聞くと

「そんなことする開発者はクビだなwww

とか言われたのでことの重大さを伝えたが、まだ対処できていないようだった

認証等はOAuth2を使っていたので大丈夫そうだったが、本当に大丈夫かどうかは自信がもてない

今後の期待

システム内容はゴミのような状態だがサービス的には良いので、幹部プロダクトオーナーからは追加要望が山盛り来ている

開発チームが「稼働が足りない」という理由で断ったので「じゃぁ支援して」ということで自分のところに来たのだが

申し訳ないが、そもそもそういうレベルに無いし、全て作り直しが必要

と伝えてもどうやら伝わっていない様子

ちなみに元々の開発チームは過去にもこんな感じでサービス作ってたらしいが売れないので問題になってなかった様子

ぱっと見は動いているように見えるのが厄介なところ

正直逃げたいところではある

2023-11-19

わし「メールでよく使われるmbox形式ファイルを読みたいんや。dotnetならどうするといい?」

Bing先生「MimeKitとかMboxReaderという.NETライブラリがええで」

わし(ほーん、MimeKitええな。。。MboxReaderってどんなんやろ)

わし(あれれ、MboxReaderとかい.NETライブラリは無いぞ・・)

わし「MboxReaderの詳しいところ教えてや」

Bing先生「こうやで

  ~~ きれいなC#コードをつらつらと垂れ流し ~~

  どや」

わし「ほーん・・・?」

わし「MboxReaderとかいライブラリって実在するん?」

Bing先生「するで。これや https://github.com/nodemailer/mbox-reader

そりゃnode.jsモジュールやーーーー!!!

今までだと嘘はすぐに破綻してたはずなのに、今度の嘘はなかなか破綻しないぞ・・・

今、「MboxSharp」とかい架空.NETライブラリ説明を受けてる・・・

こっちは元ネタも何も無さそうだ・・・

しかしさすがのBing先生、MimeKit の中の Rfc2047 クラスの使い方をちゃんと教えてくれた。

まあ Stack Overflow にも書かれてある事をまとめただけではあるが。。

やっぱ先生はすげえんよ。

2023-11-17

anond:20231116154752

日本土地代が高いから、小さなモジュールを各地の工場で組み立てて、現場で合体すんの!

メンテ時にそのまま入れるドックもないから分裂して各々倉庫に入れてくの!

anond:20231116154752

1つのことを上手くやるモジュール協調して動いてるんだろうな。

2023-11-15

オブジェクト指向人類の退化の象徴

オブジェクト指向とかかっこいい言い方をしても無駄だ。従来の構造プログラミングから進歩したことなど一つもない。オブジェクト指向がなぜダメであるのか、それを今から話すぜ。

 

1. データと処理をまとめるという発想。

データと処理をまとめてクラスとして置くという発想がある。しかし、このようなことをしなくとも、モジュールという単位で利用データと処理の集合をまとめればよかったので、クラスを使う必要はない。しかクラスインスタンス化のときに、不要情報まで持ってくるのでメモリ効率が明らかに悪い。コンピュータ進化しているかメモリのことはあまり考える必要がないとはいえ必要ない処理をまとめて閉じ込めるのは無駄が多い。なぜクラスという名詞概念分類できると考え始めたのかは不明だが、アルゴリズムデータ構造という構造プログラミング手法を、クラスと型というパラダイムに変換することで型にうるさいC++馬鹿を生み出し、彼らが発狂することになってしまった。しかデータと処理にわざわざ依存関係を持たせて、変更に対する柔軟性を失わせている。

 

2. 継承

継承によって既存構造を持ってこようとする必要性が全く無い。それどころか、継承を使うことによってプログラムスパゲティ化し、依存関係グラフがややこしくなってしまう。継承など使わず必要情報スコープの限られた共通変数、または関数引数として用意しておけば良い。もしクラスをどうしても使いたければ、共通インターフェイスをもたせたほうがマシであるインターフェイスを使えば、クラス利用者意識すべきpublicメソッドがなんであるか把握できる。

 

3. カプセル化

オブジェクト指向の中で役立つ概念カプセル化だけであるしかし、カプセル化クラスなしで構造プログラミング方法実装できる。pythonでは、モジュールの中でアンダースコアから始まる関数を用意しておけば、それがprotectedやprivateと似たように機能させることができる。オブジェクト指向がなぜカプセル化独自概念だと言い始めたかは謎。

 

4. ポリモーフィズム

同じ名前メソッドを、入力に応じて処理の内容を変える。このようなことはオブジェクト指向などと誇大宣伝をするほどのことでもない。構造プログラミングで似たようなことができる。

2023-11-09

PSPの画面が真っ暗になって起動しない(1000 CFW)

導入CFWは多分最新(最後の) LME/Infinity2 導入済みの PSP1000 環境

症状

  • 電源をいれる
  • 画面と電源はつく
  • 画面は真っ暗なまま起動開始の映像が流れない
  • 電源ランプはついたまま
  • 数秒立つと画面と電源ランプが消えて落ちる

対処方法

これでInfinity2によるCFWの直接起動が動くようになる。多分

原因

USB接続でのISOの吸い出し作業で間違えてブート領域を壊してしまったのかな?

何にせよHOMEボタンを押しながら正常起動できたので最悪文鎮にならないことがわかって良かった

Infinity2.0サンキュー

2023-09-29

anond:20230929075755

人が入る部分を共通のパーツにして、吸音材つけて簡易防音室にしたりとか、床部分を防水仕様にして災害時の簡易トイレの設置スペースにしたりとかできないかなって思うんよ

授乳室にしたって設置場所によっては防音仕様の方が良い場合もあるだろうし、モジュール化して状況に応じて組み合わせられると便利だと思うんだ

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