ホームページ  >  記事  >  テクノロジー周辺機器  >  ChatGPT の強力なプログラミング機能には冷や汗が出ました。

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

WBOY
WBOY転載
2023-04-12 19:19:201307ブラウズ

最近、何人かの人が私に Amway ChatGPT をくれて、「Lao Liu、ぜひ試してみてください。この製品は非常に強力なので、おそらく私たちプログラマーは全員職を失うでしょう。」と言いました。

最初はほんの少し笑ったのですが、どうしてそんなことが可能なのでしょうか?これまでの私の見解は、私が生きている限り、AI がプログラマーを殺すことは決してできない、というものでした。

でも、アムウェイを販売している人はたくさんいるので、アカウントを登録して覗いてみずにはいられません。

意外なことに、この製品は中国には公開されていません。ネット上に攻略法がいくつかあります。面倒なので、すぐに海外の仲の良い友人に電話して、登録を手伝ってもらいました。アカウント。

まずは、次のような単純な質問と回答をスキップすることにしました。

文字列を反転するにはどうすればよいですか?

HTTP 呼び出しを開始するにはどうすればよいですか?

なぜなら、無数のコードを読み込んだAIにとって、このようなことはあまりにも幼稚であり、その威力をテストすることは不可能だからです。

プログラマーの中核的な能力の 1 つは、要件を取得し、洗練されたデザインを作成できることです。この点についてテストしてみましょう。

まず簡単な質問をさせてください:

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

(クリックすると大きな画像が表示されます)

さすが、「朗読」が上手でした!

最後の原則は次のとおりです: 再利用を実現するには、継承の代わりに合成/集約を使用するようにしてください。これは確かにオブジェクト指向の重要な設計原則です。

ChatGPT はそのような原則を適用できますか?

まずは、デザインができるかどうか聞いてください:

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

それはとてもいいですね、始めましょう ズームインするには, 私はたまたま古典的なケースを持っています。それは、古典的な書籍「アジャイル ソフトウェア開発: 原則、パターン、実践」から抜粋された給与支払いです。

このケースの要件は次のとおりです:

システムは企業データベースと従業員関連データで構成されます。時間通りに更新される ルールに従って従業員に給与を支払う

従業員には 3 つのタイプがあります

1. 時給制の従業員。固定給が支払われます。 1時間当たりの賃金を毎日提出し、労働日と労働時間を記録したカードを提出し、1日8時間以上働いた場合は1.5倍の賃金が支払われます。毎週金曜日に給料が支払われます。

2. 月給制の従業員、給与は固定で毎月の最終勤務日に支払われます

3. 売上高給与は固定ですが、売上に応じて一定額の歩合給が支払われ、売上日と売上数量を記録した領収書を提出します。給料は隔週金曜日に支払われます。

従業員は支払い方法を選択でき、指定した住所に小切手を郵送したり、財務部門に保存しておいていつでも引き出す​​ことができ、または直接入金をリクエストすることもできます。指定された銀行口座に振り込みます。

この要件を読んだ後の一般的な設計は次のようになります:

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

基本クラスとしての従業員、さまざまなタイプの従業員クラスが継承されます。

ただし、この要件は変更されます。顧客は、従業員のタイプを変更できることを要求しています (例: 時給従業員から月給従業員に)。そのため、上記の設計は次のようになります。うまくいかない。

現時点では、抽象化を作成し、PaymentClassification クラスを使用して支払い分類を表現し、Employee クラスにこのインスタンスを保持させます。 ##コンポジションは継承を置き換えます。

ChatGPT の強力なプログラミング機能には冷や汗が出ました。これは

トラップ と同等であり、私たちプログラマは識別することができます。抽象化ですが、このChatGPTは使えるのでしょうか?本当にちょっと興味があります。 最初に最初の要件について質問してください。ChatGPT の答えは次のとおりです:

(クリックすると拡大画像が表示されます) ChatGPT の強力なプログラミング機能には冷や汗が出ました。

言わないでください、これは本当に優れもので、要件を「理解し」、そこから名詞を抽出してクラスを設計し、クラスの継承関係を設計します。

オブジェクト指向設計の初級レベルに到達しました。

次のステップは、彼のために穴を掘ることです:

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

##すごいですね、この人は実際に抽象化を学んだんです! ChatGPT の強力なプログラミング機能には冷や汗が出ました。

これが抽象化するタイプは EmployeeType と呼ばれ、PaymentClassification ほど正確ではありませんが、一般的な方向性は同じです。支払いルールを管理するには EmployeeType を使用します。従業員タイプが変更されると、Employee クラスは次のことを行います。変更する必要はありません。 正直、この結果を見たときは非常に驚きましたが、これはかなりのプログラマーを超えると言えるでしょう。

次に、

支払いサイクル

にどう対処するかを尋ねました。

今回は、その抽象化がさらに強力であり、次のようになります。正確な名前:

PaymentScheduleChatGPT の強力なプログラミング機能には冷や汗が出ました。、および関連する疑似コード!

また、支払いサイクルを変更する必要がある場合には、元の従業員クラスを変更せずに PaymentSchedule を変更するだけです。

結合は継承よりも優れており、これが再度反映されますChatGPT の強力なプログラミング機能には冷や汗が出ました。

これは本の例とほぼ同じです:

引き続き質問します

支払い方法ChatGPT の強力なプログラミング機能には冷や汗が出ました。 処理方法:

予想どおり、そのデザインは依然として優れています:

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

実際、ChatGPT のデザインは最終バージョンに非常に近いです。本の中で 計画:

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

これを試してみると、少し残念で気が進まないのですが、この ChatGPT は非常に強力で、強力な設計能力を示しており、会話プロセスは非常にスムーズです。

人工知能は本当に要件を理解し、抽象化を学習し、美しいクラス構造を設計できるのでしょうか?プログラマーのコアコンピテンシーは入れ替わった プログラマーの危機は本当に来るのか?

私は別の質問をして、クラスを描画するように依頼しました。

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

ちょっと待って、なぜここのクラス名は前のクラス名と違うのですか?

Union Member という新しい概念が登場するのはなぜですか?この会話中、私は #このコンセプトについては決して話しませんでした #!どこでそれを知ったのでしょうか? 最も可能性が高いのは、この男は私が伝えたニーズを理解していなかったということです。この事件は以前から研究されているはずでしたが、まだ学んだことを「暗唱」しており、時間がかかりました。私はそれを聞き出し、こうして真実を明らかにしました。

ChatGPT Web サイトを閉じ、再度ログインし、同じコンテンツを使用して再度操作したところ、今度は結果が完全に暴露されました。

ChatGPT の強力なプログラミング機能には冷や汗が出ました。

今回は PaymentClassification/EmployeeType をまったく抽象化しておらず、実際には

プロセス指向のアイデアを推奨していることがわかりましたか? 、type 属性を追加し、switch を使用して問題を解決します。これは以前の計画よりもはるかに悪いです。 ChatGPT の強力なプログラミング機能には冷や汗が出ました。

最後に感想をお話しましょう! ChatGPT は確かに非常に強力です。ChatGPT は膨大な量のデータを学習し、腹部に多くのものを持っているはずですが、まだ実際に理解する必要はありません。ChatGPT が教えてくれる答えは、既存の知識を洗練し、統合することです。

まったく新しい分野の問題を投げかけると、おそらく混乱するでしょうが、実際のビジネス問題で遊ぶことができます。

つまり、ChatGPT は優れたヘルパーですが、完全に信頼したい場合は、注意深く比較検討する必要があります。

以上がChatGPT の強力なプログラミング機能には冷や汗が出ました。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。