


AI telah menyumbang kepada perubahan dan peningkatan kecekapan dalam kerja harian saya
Sebagai pembangun, membina perkhidmatan pemprosesan pesanan kadangkala boleh berasa sukar apabila anda mempunyai tempoh masa yang terhad. Walau bagaimanapun, dengan kuasa alat pembangunan dipacu AI seperti ChatGPT, anda boleh mempercepatkan proses dengan ketara dengan menjana kod, mereka bentuk entiti dan menyelesaikan masalah langkah demi langkah. Dalam artikel ini, saya akan membimbing anda melalui cara saya menggunakan ChatGPT untuk membina perkhidmatan pemprosesan pesanan berfungsi sepenuhnya hanya dalam 2 hari, daripada mengumpul keperluan sehingga selesai.
Sejujurnya, terdapat banyak benang kecil dan gesaan untuk tugasan kecil yang berbeza yang tidak dapat saya rumuskan menjadi projek yang lengkap, tetapi secara keseluruhannya... ia membantu saya 70 - 80%. Selain itu, berikut ialah beberapa kod asal, selepas saya menyemaknya, ia mungkin telah diubah suai dengan tangan, jadi anda mungkin tidak menemui fungsi ini pada github yang saya kongsikan.
Hari 1: Memahami Keperluan dan Menyediakan
Langkah 1: Kumpul dan Jelaskan Keperluan
Perkara pertama yang saya lakukan ialah menyenaraikan ciri teras yang diperlukan untuk perkhidmatan tersebut. Berikut ialah fungsi utama yang saya perlukan:
- Pendaftaran Pengguna: Benarkan pengguna mendaftar menggunakan nombor mudah alih dan alamat mereka.
- Carian Lokasi Francais: Membolehkan pelanggan melihat dan mencari francais kopi berdekatan.
- Peletakan Pesanan: Pelanggan boleh membuat pesanan dengan berbilang item daripada menu.
- Pengurusan Baris Gilir: Jejaki kedudukan pelanggan dalam baris gilir dan sediakan jangkaan masa menunggu.
- Pembatalan Pesanan: Pelanggan boleh keluar dari baris gilir dan membatalkan pesanan mereka pada bila-bila masa.
Langkah 2: Jana Titik Akhir API dengan ChatGPT
Saya meminta ChatGPT untuk membantu saya mereka bentuk struktur API untuk keperluan. Berikut ialah contoh gesaan pertama yang saya gunakan:
Prompt:
Buat titik akhir API untuk sistem pendaftaran pengguna menggunakan Spring Boot, di mana pengguna boleh mendaftar dengan nama, nombor mudah alih dan alamat mereka.
Keputusan: ChatGPT menjana beberapa titik akhir:
- POST /users/register: Untuk mendaftarkan pengguna baharu.
- DAPATKAN /francais/berdekatan: Untuk mencari francais kopi berdekatan berdasarkan latitud dan longitud.
- POS /pesanan: Untuk membuat pesanan dengan berbilang item.
- DAPATKAN /orders/{orderId}/queue-position: Untuk menyemak kedudukan pengguna dalam baris gilir.
- PADAM /orders/{orderId}: Untuk membatalkan pesanan dan keluar dari baris gilir.
Langkah 3: Reka Bentuk Entiti
Untuk perkhidmatan pemprosesan pesanan, kami memerlukan entiti untuk Pengguna, Francais, Pesanan, Baris Gilir dan Item Pesanan. Saya menggunakan ChatGPT untuk mentakrifkan entiti ini dengan medan yang diperlukan.
Prompt:
Reka bentuk entiti Pengguna untuk sistem. Pengguna boleh mempunyai nombor mudah alih, alamat dan peranan (seperti PELANGGAN).
Keputusan: ChatGPT menyediakan entiti Pengguna yang mudah menggunakan JPA:
@Entity public class User { @Id @GeneratedValue(strategy = GenerationType.AUTO) private UUID id; @Column(nullable = false, unique = true) private String username; @Column(nullable = false) private String password; private String mobileNumber; private String address; private UserRole role; // CUSTOMER, ADMIN }
Saya mengulangi proses ini untuk entiti Francais, Pesanan dan Baris Gilir.
Hari 2: Melaksanakan Logik Perniagaan
Langkah 4: Logik Peletakan Pesanan
Setelah API dan entiti asas disediakan, saya beralih kepada melaksanakan logik perniagaan untuk penempatan pesanan. Ini adalah bahagian kritikal perkhidmatan kerana ia perlu mengendalikan berbilang item daripada menu dan mengurus kedudukan baris gilir.
Prompt:
Laksanakan logik untuk membuat pesanan dengan berbilang item, di mana setiap item dipautkan ke menu tertentu dalam Francais.
Hasil: ChatGPT membimbing saya melalui mereka bentuk OrderService untuk mengendalikan perkara ini. Berikut ialah sebahagian daripada pelaksanaan:
public Order createOrder(UUID customerId, UUID franchiseId, List<orderitemdto> items) { Order order = new Order(); order.setCustomer(userRepository.findById(customerId).orElseThrow()); order.setFranchise(franchiseRepository.findById(franchiseId).orElseThrow()); List<orderitem> orderItems = items.stream() .map(itemDto -> new OrderItem(menuItemRepository.findById(itemDto.getMenuItemId()), itemDto.getQuantity())) .collect(Collectors.toList()); order.setItems(orderItems); order.setQueuePosition(findQueuePositionForFranchise(franchiseId)); return orderRepository.save(order); } </orderitem></orderitemdto>
Langkah 5: Pengurusan Baris Gilir
Seterusnya, saya meminta ChatGPT untuk membantu saya mereka bentuk logik untuk meletakkan pelanggan dalam baris gilir dan menjejaki kedudukan mereka.
Prompt:
Bagaimanakah saya boleh mengira kedudukan baris gilir dan masa menunggu untuk pesanan dalam sistem francais kopi?
Keputusan: ChatGPT mencadangkan membuat QueueService yang menjejak pesanan dan memberikan mereka kedudukan berdasarkan cap masa. Saya melaksanakannya seperti berikut:
public int findQueuePositionForFranchise(UUID franchiseId) { List<customerqueue> queue = customerQueueRepository.findAllByFranchiseId(franchiseId); return queue.size() + 1; } </customerqueue>
Ia juga memberikan panduan tentang menganggarkan masa menunggu berdasarkan purata masa pemprosesan pesanan.
Langkah 6: Pembatalan Pesanan
Akhir sekali, saya melaksanakan logik untuk membenarkan pelanggan membatalkan pesanan mereka dan keluar dari baris gilir:
public void cancelOrder(UUID orderId) { Order order = orderRepository.findById(orderId).orElseThrow(); queueService.removeFromQueue(order.getQueue().getId(), order.getId()); orderRepository.delete(order); }
Finalizing the Project
By the end of Day 2, I had a fully functional service that allowed customers to:
- Register using their mobile number and address.
- View nearby franchises.
- Place orders with multiple items from the menu.
- Check their queue position and waiting time.
- Cancel their order at any time.
Key Takeaways
- Leverage AI for Routine Tasks: ChatGPT sped up repetitive tasks like designing APIs, generating boilerplate code, and implementing common business logic patterns.
- Divide and Conquer: By breaking the project into small, manageable tasks (such as user registration, queue management, and order placement), I was able to implement each feature sequentially.
- AI-Assisted Learning: While ChatGPT provided a lot of code, I still had to understand the underlying logic and tweak it to fit my project’s needs, which was a great learning experience.
- Real-Time Debugging: ChatGPT helped me solve real-time issues by guiding me through errors and exceptions I encountered during implementation, which kept the project on track.
I have a few more steps to create the documentation, use liquidbase and have chatGPT generate sample data for easier testing.
Conclusion
Building an order processing system for a coffee shop in 2 days may sound daunting, but with AI assistance, it’s achievable. ChatGPT acted like a coding assistant, helping me transform abstract requirements into a working system quickly. While AI can provide a foundation, refining and customizing code is still an essential skill. This project taught me how to maximize the value of AI tools without losing control of the development process.
By following the steps I took, you can speed up your own projects and focus on higher-level problem-solving, leaving the routine code generation and guidance to AI.
Full source Github
Atas ialah kandungan terperinci Membina Perkhidmatan Pemprosesan Pesanan dengan ChatGPT (usaha menyumbang) dan Selesai dalam ays. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel ini menganalisis empat kerangka JavaScript teratas (React, Angular, Vue, Svelte) pada tahun 2025, membandingkan prestasi, skalabilitas, dan prospek masa depan mereka. Walaupun semuanya kekal dominan kerana komuniti dan ekosistem yang kuat, popul mereka yang relatif

Artikel ini menangani kelemahan CVE-2022-1471 dalam Snakeyaml, kecacatan kritikal yang membolehkan pelaksanaan kod jauh. Ia memperincikan bagaimana peningkatan aplikasi boot musim bunga ke snakeyaml 1.33 atau lebih lama mengurangkan risiko ini, menekankan bahawa kemas kini ketergantungan

Kelas kelas Java melibatkan pemuatan, menghubungkan, dan memulakan kelas menggunakan sistem hierarki dengan bootstrap, lanjutan, dan pemuat kelas aplikasi. Model delegasi induk memastikan kelas teras dimuatkan dahulu, yang mempengaruhi LOA kelas tersuai

Artikel ini membincangkan pelaksanaan caching pelbagai peringkat di Java menggunakan kafein dan cache jambu untuk meningkatkan prestasi aplikasi. Ia meliputi persediaan, integrasi, dan faedah prestasi, bersama -sama dengan Pengurusan Dasar Konfigurasi dan Pengusiran PRA Terbaik

Node.js 20 dengan ketara meningkatkan prestasi melalui penambahbaikan enjin V8, terutamanya pengumpulan sampah yang lebih cepat dan I/O. Ciri -ciri baru termasuk sokongan webassembly yang lebih baik dan alat penyahpepijatan halus, meningkatkan produktiviti pemaju dan kelajuan aplikasi.

Iceberg, format meja terbuka untuk dataset analitik yang besar, meningkatkan prestasi data dan skalabiliti. Ia menangani batasan parket/orc melalui pengurusan metadata dalaman, membolehkan evolusi skema yang cekap, perjalanan masa, serentak w

Artikel ini meneroka kaedah untuk berkongsi data antara langkah -langkah timun, membandingkan konteks senario, pembolehubah global, lulus argumen, dan struktur data. Ia menekankan amalan terbaik untuk mengekalkan, termasuk penggunaan konteks ringkas, deskriptif

Artikel ini meneroka mengintegrasikan pengaturcaraan berfungsi ke dalam Java menggunakan ekspresi Lambda, API Streams, rujukan kaedah, dan pilihan. Ia menyoroti faedah seperti kebolehbacaan dan kebolehkerjaan kod yang lebih baik melalui kesimpulan dan kebolehubahan


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Dreamweaver CS6
Alat pembangunan web visual

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),
