「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Claude Sonnet による C# から Python への移行。

Claude Sonnet による C# から Python への移行。

2024 年 11 月 3 日に公開
ブラウズ:376

Migrating C# to Python with Claude  Sonnet.

かなり難しい仕事に挑戦しました。つまり、醜いエンタープライズ C# コードを Python に変換します。深く掘り下げる前に、いくつか説明する必要があると思います。

この C# プロジェクトは、一部の機械学習モデルのデータ配管レイヤーとして機能します。データを聞くと、最初に思い浮かぶのは Python です。残念ながらこれは当てはまりませんでした。改善するために、Apache Spark の .NET 拡張機能が使用されています。 Python に移行することは理にかなっています。なぜなら、Python ではこの問題に対してかなり非標準的なテクノロジーが使用されており、将来の人材の雇用がかなり困難になるからです。また、他のエンタープライズ OOP 言語にも共通する、複数レベルの抽象化、あらゆる場所での継承、制御の反転など、これもデータ プラミングでは行われない明らかな問題があります。そしてさらに悪魔に餌を与えるために、請負業者/コンサルタントの元のチーム (エンタープライズ コンサルタント以外に C# を使用する人がいないため) が来月退職する予定です。

ところで、私は Neovim を使用しており、Github Copilot を 2 年近く使用しており、プレビュー バージョンを手に入れてから Copilot Chat (技術的には ChatGPT) も使用しているので、まったくの初心者ではありません。 LLM とコードについて説明します。

肉!

Claude 3.5 でコーディングするのはどのような感じですか。良い部分、悪い部分、醜い部分がいくつかあります。しかし、たとえ同じ機能を最初から書くことができたとしても、ほとんどの場合、何が起こっているのかわかりません。

良いところ

Claude 3.5 は驚くほど正しい結果を生成する傾向がありますが、賢く使おうとして失敗する場合もありますが、問題を修正するようにガイドすることができます。全体として、質問するのに適したツールです。私にとっては、厳密なワークフローを使用し、多くの例とエッジケースを使用して洗練されたプロンプトを作成することに多大な努力を費やしたので、満足以上でした。 C# のクラスを受講して重要な部分を Python に翻訳することができ、追加の指示はほとんど必要ありませんでした。

悪い点

通常は 12 時間コードを書き続けられますが、時々トイレ休憩を挟んだり、水筒に水を補充したりすることもあります。そして、はい、本当に夢中になると空腹を感じません。クロードのときは流れに乗れたけど、3時間くらい経つともう死んでる感じがした。この 3 時間の間に私は大量のコードを作成し、生産性を感じましたが、ノンストップでコード レビューを行ったり、変更を求めたり、生成されたものが有効かどうかドキュメントを調べたりしなかったりすることがほとんどでした。

醜い

あなたがプログラマーであれば、おそらく自分が書いたコードにある程度は精通しているでしょう。この親しみやすさは時間の経過とともに薄れていく傾向がありますが、コードベースを十分に長く扱っていれば、やり方がわかってきます。 LLM で生成されたコードでは、このようなことは起こりません。何が起こっているのかほとんど理解できませんでした。何日もの間、私は大量のコードを作成し、すべての行をレビューし、時々変更を要求しましたが、結局のところ、実際に何が起こっているのかほとんどわかりませんでした。最終的には、コードベースが見知らぬもの、私が書いたものではないもののように感じられました。さらに悪いことに、実際のコード スタイルは一貫性がなく、同じ日にどのファイルがどこに書かれたのかが一目瞭然で、まるで別の人が書いたように感じられました。

テイクウェイ

この本格的な LLM コーディング アプローチのレビュー、再検討、微調整に多くの時間を費やしましたが、ほとんどの場合、結果として得られるのは単なるコードであり、多少は機能しますが、その理由や方法はわかりません。大きな質問は次のとおりです:

ほとんど思い入れのないコードベースを手に入れる価値はあるでしょうか。1 年前にかつて架空の同僚と書いたような気分になるものです。

要約すると、より多くのコードを作成したと感じましたが、品質は通常より低かったです。場合によっては、特に気にしない場合には、この低品質が正当化されることがあります。しかし、私が恐れているのは、あらゆるコードベースが記録的な速さで「レガシー」になる時代が近づいているということです。

リリースステートメント この記事は次の場所に転載されています: https://dev.to/n1o_c0rtx/migrated-c-to-python-with-claude-35-sonnet-4676?1 侵害がある場合は、削除するために[email protected]に連絡してください。それ
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3