以前キミがやろうとしていた事は概略以下の通りだと思う。

目的:OOできない技術者にOOの真似事をさせる
前提:業務分析とドメインモデリングをしない
    画面中心設計、DB中心設計、構造化プログラミングを温存
方針:業務アプリを、次の要素で記述する。
    ・画面中心設計 (画面と処理、データを適切に分離しない)
    ・DBエンティティをマッピングした
     静的なドメイン・オブジェクト
    ・アドホックなドメインスクリプトで処理を記述
結果:・不適切な設計方針により、画面に強く型依存した
     大量のデータオブジェクト、処理オブジェクトが発生し
     再利用や共通化の支障となった
    ・マルチスレッド処理を考慮しなかったため
     問題点の抽出と手直しに時間がかかった

強い型付けを持つ言語から学ぶべきポイント
・型の依存関係について、適切な見通しを立てる能力が身につく。
・この結果、クラスを型でがんじがらめにせず、
 適切に疎結合を導入する必要性や、
 総称的プログラミング手法で逃げるべきポイント
 を理解できるようになる。

純関数型言語から学ぶべきポイント
・処理の副作用を除去する事で、
 関数プログラミングは極めて見通しが良くなる。
・逆に副作用を持つ言語では、
 副作用(内部状態等)を持つ範囲を限定する事で、
 見通しの良いプログラミングが可能になる。
・それはマルチスレッドを含む分散トランザクション処理を
 記述する上で重要なスキルとなる。