返事が遅れますが、受け入れられた答えがまだないので、試してみます。私はそれを2つの質問として受け止め、別々に答えようとします。
マネージャーはどのようにプログラミング言語を選択しますか?
組織の規模と管理者の経験に大きく依存しますが、通常は現在の状況と将来のシナリオと要件の評価を伴います。これは通常、PESTLEまたは同様の分析を通じて行われ、各カテゴリにいくつかのサンプルを提供するだけです。
- 政治的
- 「IBMの購入で解雇された人はいません」-安全な選択。
- CEOはJavaがクールだと聞いた-誇大宣伝。
- チーフアーキテクトは.NET-ペットプロジェクトが大好きです。
- 言語は敵対的な競合他社によって制御されています-GoogleがC#に依存していない理由。
- 経済的
- ライセンス費用。
- 開発者トレーニングのコスト。
- コードベースの移行コスト。
- ソーシャル
- チームからのバイイン。
- 社内でのスキルの可用性(トレーニングニーズ、継続性)。
- 市場でのスキルの可用性。
- 開発チーム内の既存の現状に対する脅威。
- 十分な規模の実践コミュニティの可用性。
- 技術的
- 生産性の向上。
- 品質の向上。
- 既存のコードベースと相互運用する機能。
- 標準の順守。
- 成熟。
- 法的
- ライセンス条項。
- 技術管理(技術を所有および管理しているのは誰ですか?将来のライセンス戦略はどうなるでしょうか?)
- 法規制の順守。
- 環境
- 企業内の既存のインフラストラクチャ。
- 企業内の既存のスキル。
- 外部パートナーとの統合。
- より広い環境による技術サポートのレベル。
その後、SWOT、費用便益分析などを使用して、基準に一致する言語の束をさらに評価できます。
全体のプロセスはかなり複雑になる可能性がありますが、最終的な結果として、ほとんどの企業またはプロジェクトチームは、必要な機能を提供できる現在の状況を考えると、最も安全なオプションを選択します。かなり頻繁に、現在のプラットフォームに長くとどまることを意味するかもしれません。
プロジェクトに適したプログラミング言語が選択されていることをプログラマがどのように確認できるか
願わくば、典型的なプログラマーは通常、意思決定プロセスへの総入力のわずか6分の1しか持っていないことを実証してきました。そして、原則として、彼女または彼は主に言語能力だけに興味があります!
さて、決定に影響を与える最良の方法は、選択プロセスの全体像を把握し、チームの内外で同盟を結び、物事の技術的側面について適切なブリーフを作成し、言語能力だけに集中しないようにすることです。
そして、もちろん、プロジェクトまたは開発マネージャー(または他の担当者)が評価プロセス全体を通過することの利点を認識し、別のものに切り替えることのリスクと不確実性を検討する準備ができたら、立場を取る必要がありますそもそも言語。これを実現するには、次のことを実証する必要があります。
- 現在のプラットフォームでは不十分です。
- 新しいプラットフォームは、手間をはるかに上回る利点を約束します。
ただし、「職場で好きな言語を使用するための最良の方法は何ですか」と尋ねた場合、おそらくその答えは「既に言語を使用している会社に入社するか、独自の言語を始める」でしょう。