プログラミングのための正式な方法(FM)の使用に関するトレーニングを受けている場合:
- あなたはそれをどれほど便利に見つけましたか?
- FMトレーニングには何が含まれていましたか(コース、本など)。
- どのFMツールを使用していますか?
- FMを使用しない場合と比べて、速度/品質の面でどのような利点がありますか?
- FMでどのようなソフトウェアを作成しますか?
- そして、FMを直接使用しない場合、少なくとも学ぶ価値はありましたか??
私はこのコミュニティで見られるようなFMに関する多くの経験/意見を聞きたいです。私はそれについて読み始めており、もっと知りたいです。
バックグラウンド
プログラミングとソフトウェア開発/エンジニアリングは、地球上の最新の人間のスキル/職業の一部です。そのため、当然のことながら、フィールドは未熟です。これは、通常遅れてエラーが発生しやすいコードとしてフィールドのメイン出力に表示されます 業界の未熟さは、平均的なコーダーとトップのコーダーの間の生産性の大きなマージン(少なくとも10:1)によっても示されます。そのような陰惨な事実は文献で十分にカバーされており、Steve McConnellのCode Completeなどの本で紹介されています。
エラーの根本的な原因(プログラミングの数学的厳密性の欠如)の1つに対処するために、ソフトウェア/ CSの主要人物(E.ダイクストラなど)によって正式な方法(FM)の使用が提案されています。たとえば、ダイクストラは、プログラムとその証明を一緒に開発する学生を提唱しました。
FMは、米国に比べてヨーロッパのCSカリキュラムではるかに普及しているようです。しかし、過去数年間で、新しい「軽量」FMアプローチと合金のようなツールが注目を集めています。それでも、FMは業界で一般的な使用法とはほど遠いので、ここでその理由についてのフィードバックを期待しています。
更新
現在(2010年10月14日)、以下の6つの回答のうち、「現実の世界」でのFMの使用について明確に主張している人はいません。誰かができるかどうか、私は本当に興味があります。あるいは、FMは、学界(FMは未来です!)と産業(FMはほとんど役に立たない)の違いを実際に示しています。