私が取り組んでいるソフトウェアプロジェクトには、私と別のプログラマが関わっています。プロジェクトには、MVCフロントエンドを備えたエンジンバックエンドが含まれていました。最初はプロジェクトで多くの作業を行っていたので、主に抽象化とテンプレート戦略を取り巻くいくつかの簡単な設計方法論をセットアップしました。
かなり長い間、私はエンジンのバックエンドを離れて、ウェブサイトで働いていました。しかし、いつかエンジンに戻る可能性があるとの情報を得たので、私はまだエンジンに興味を持っています。
プロジェクトは非常に厳しい締め切りにあるので、私たちは皆、フロントエンドとバックエンドの両方で完成させるために作られたように急いでいます。
私は自分が優れたプログラマであるとは思っていません。そのため、特定のデザインや方法論を人々に強制したり、実行したりすることはありません。より良いソリューションを考え出す。しかし、私はこのエンジンコードに変更が加えられていることに気づきました。私が開発者に別の方法で作業を提案するよう提案したとき、厳しい締め切りを考慮してもメリットはほとんどないため、彼はポイントを理解していないと述べました。
彼が入れたハックはリリース後にさらなる開発を意味する可能性があることを試して説明する必要があり、今すぐ修正できるときに他の人にスラックを拾わせるのは公平ではないと思いました。私は自分がやったことを30分ほどかけて過ごしましたが、その最後に、彼はコードをほとんど書いて、コピーできるようにしてほしいと頼みました。
私が最初に設定したものの基礎は:
- 抽象クラスx
- xの具象インスタンスを作成するための抽象ファクトリクラス
何が起こったのかというと、抽象クラスにvirtual / abstraceメソッドとして簡単に配置でき、それに応じて新しい変更が抽象クラスの他のメソッドと同じ原則に従っているので、それに応じて実装できるifステートメントをいくつか置いていました。
これは私には取るに足らないことのように思えますが、関連するクラスを見せても、彼はこれを理解することさえできませんでした。
今私の質問は:
- 彼がこの概念を理解していたはずであると想定するのは、これは不公平ですか?私たちは厳しい締め切りにあることを理解していますが、それは取るに足らないことだと思いました。プログラマーは、少なくとも中間レベルであることが想定されています。
- これは多くの場所で起こっており、私は常に彼に変化を起こさせようとしましたが、彼はそうではありません。無視してもいいですか?
- この問題を別の場所で提起するのか、それとも吸うだけでいいのか、プロジェクトを再開するときは、これらすべての変更を行ってみてください。
プロジェクトの彼の部分は完成しないので、私は戻って彼を助けなければなりません。私はあまり望んでいません。なぜなら、彼は素晴らしいとは言えないが、まあまあのアーキテクチャでプロジェクトを実行していて、達成しようとしていることを頻繁にフォローしていなかった多くの厄介なコードを実際に配置したからです。
質問が曖昧または不満である場合は、お知らせください。それに応じて編集します。
編集済み:計画されているフォローアップ作業と、私たちが当てはまらなかった作業が後で実施されることに同意されているため、プロジェクトは最初の締め切り後に続行される予定です。