Selama beberapa bulan terakhir, kami mendapat kesempatan untuk berbicara dengan banyak orang teknis, insinyur, dan manajer top dari berbagai perusahaan teknologi besar berkat Disrupt dan acara teknologi lainnya di Bay Area. Cukup banyak orang dari masyarakat umum yang akrab dengan istilah generasi kode sumber dan bagaimana perangkat lunak biasanya dibangun. Tetapi ketika kami berbicara dengan orang-orang teknologi, terutama mereka yang melacak pengembangan perangkat lunak modern, kami mendapatkan pertanyaan tentang bagaimana AppMaster berbeda dari GitHub Copilot. Itu pertanyaan yang cukup menarik.
Jika Anda membaca posting saya, Anda mungkin pernah mendengar tentang Copilot - alat AI untuk penyelesaian dan pembuatan kode sumber tingkat lanjut. Copilot sudah menjadi alat yang cukup bagus untuk pemrograman bantu ketika pengembang menulis hanya sebagian dari kode sumber, dan AI menawarkan penyelesaian kode, bahkan seluruh fungsi. Copilot yang sangat baik dalam menyelesaikan pola dan kamus: tulis beberapa item, dan sisanya akan dibuat secara otomatis. Menurut umpan balik komunitas dan posting CEO GitHub baru-baru ini, Copilot tumbuh dengan kecepatan yang baik.
Tidak seperti Copilot, AppMaster berfokus pada menghasilkan proyek perangkat lunak yang lengkap, bukan potongan-potongan. AppMaster mengumpulkan persyaratan untuk seluruh proyek: aplikasi server (backend), aplikasi web, aplikasi seluler, dan semua hal pelengkap. Secara umum, kami mengumpulkan dari skema model data engineer, logika aplikasi, titik akhir, elemen UI, dan semua persyaratan standar untuk aplikasi masa depan dalam format visual drag-and-drop. Pendekatan all-in-one memungkinkan insinyur perangkat lunak melakukan lebih sedikit untuk mendapatkan lebih banyak.
Untuk mendapatkan pemahaman yang lebih baik, saya akan memberikan contoh kecil.
Membuat panggilan API dari web atau aplikasi seluler ke server/backend adalah salah satu tugas yang paling umum. Biasanya, insinyur harus melihat ke dalam dokumentasi API server dan membuat struktur permintaan/tanggapan dan semua kode yang sesuai. Tugas yang sama dapat dicapai dengan satu tindakan dran&drop di AppMaster. Karena platform mengetahui segalanya tentang model data dan titik akhir, platform ini secara otomatis membuat blok visual untuk membuat permintaan API yang mudah, termasuk struktur objek yang sesuai. Dan terlebih lagi: setelah setiap perubahan model data, logika bisnis atau platform titik akhir secara otomatis memperbarui elemen UI yang bergantung tanpa campur tangan teknisi.
Dari samping sepertinya AppMaster dan Copilot mencoba memecahkan masalah yang berbeda, kami sedang mengerjakan masalah rekayasa perangkat lunak yang sama, tetapi pendekatan kami sangat berbeda. Sementara Copilot memutuskan untuk membantu insinyur perangkat lunak menulis lebih banyak kode dengan lebih cepat dan lebih mudah, kami berfokus pada pergeseran paradigma pengembangan perangkat lunak dari membuat perangkat lunak dengan menulis kode program menjadi hanya mendefinisikan persyaratan tingkat tinggi. Memiliki persyaratan memberi kami manfaat besar dari kemampuan untuk membuat ulang seluruh basis kode proyek dari awal. Kami dapat melakukan regenerasi untuk alasan apa pun: ketika persyaratan diubah, ketika algoritma pembuatan kode yang ditingkatkan tersedia, untuk memperbarui versi bahasa pemrograman atau pustaka, atau bahkan untuk mengubah seluruh tumpukan teknologi!
Kami percaya di masa depan dengan pendekatan " Jangan sentuh kode sumber " dan persyaratan tingkat tinggi untuk rekayasa perangkat lunak.
Bagaimana menurutmu? Terlalu bagus untuk menjadi kenyataan? Utopia?
PS Jika tertarik dengan bidang ini, periksa podcast Lex Fridman terbaru dengan Andrei Karpathy, mantan Direktur AI Tesla, tentang Perangkat Lunak 2.0 dan pembuatan kode.