Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pembelajaran Golang pembangunan aplikasi web berdasarkan Ruby on Rails

Pembelajaran Golang pembangunan aplikasi web berdasarkan Ruby on Rails

王林
王林asal
2023-06-24 09:43:401362semak imbas

Dalam beberapa tahun kebelakangan ini, bahasa Go (Golang) telah menjadi sangat popular dalam bidang pembangunan aplikasi web. Artikel ini akan memperkenalkan cara menggunakan bahasa Go untuk membangunkan aplikasi web dalam persekitaran Ruby on Rails.

Pengenalan kepada Ruby on Rails

Ruby on Rails, atau ringkasnya Rails, ialah rangka kerja pembangunan aplikasi web berdasarkan bahasa Ruby. Ia mengguna pakai konsep Konvensyen atas Konfigurasi supaya pembangun boleh lebih menumpukan pada logik perniagaan aplikasi dan bukannya isu konfigurasi yang berlebihan. Rails menyokong seni bina MVC (Model-View-Controller), di mana Model mewakili model data, View mewakili antara muka pengguna dan Pengawal bertanggungjawab untuk menjadualkan interaksi antara logik perniagaan dan antara muka pengguna.

Kelebihan Golang dalam pembangunan aplikasi Web

Bahasa Go ialah bahasa pengaturcaraan yang dihimpun, serentak, dikumpul sampah. Ia mempunyai sintaks yang ringkas, kebolehbacaan tinggi, pengurusan memori yang cekap dan sokongan coroutine Ia juga merupakan bahasa pembangunan yang dilancarkan oleh Google. Dalam pembangunan aplikasi web, bahasa Go mempunyai kelebihan berikut:

  1. Kecekapan: Bahasa Go meningkatkan kecekapan pelaksanaan program dengan menyusunnya ke dalam kod mesin, dan sintaks ringkasnya juga boleh mengurangkan jumlah kod dan meningkatkan kecekapan pembangunan.
  2. Concurrency: Bahasa Go sememangnya menyokong coroutine dan pengaturcaraan serentak, menjadikannya mudah untuk menulis aplikasi web yang sangat serentak.
  3. Merentas platform: Bahasa Go juga boleh disusun ke dalam fail binari untuk platform yang berbeza, menjadikannya mudah untuk dijalankan pada sistem pengendalian yang berbeza dan memudahkan pembangun menerbitkan projek.
  4. Berorientasikan objek: Walaupun bahasa Go bukan bahasa berorientasikan objek semata-mata, ia masih mempunyai ciri berorientasikan objek, yang memudahkan pembangun melaksanakan pengaturcaraan modular.
Golang digabungkan dengan Ruby on Rails

Terdapat banyak rangka kerja yang tersedia untuk membangunkan aplikasi web menggunakan bahasa Go, seperti Gin, Echo dan Beego. Di sini kami telah memilih untuk menggunakan rangka kerja Gin untuk pembangunan aplikasi dan menggabungkannya dengan Ruby on Rails.

Sebelum bermula, anda perlu memasang persekitaran pembangunan bahasa Go pada mesin tempatan anda dan memasang rangka kerja Gin. Perintahnya adalah seperti berikut:

$ go get -u github.com/gin-gonic/gin

Selepas pemasangan selesai, kita boleh membenamkan kod bahasa Go dalam aplikasi Ruby on Rails .

Benamkan kod Golang dalam aplikasi Ruby on Rails

Mari kita lihat contoh mudah untuk menunjukkan cara membenamkan kod bahasa Go dalam kod aplikasi Ruby on Rails.

  1. Buat modul bahasa Go untuk aplikasi Ruby on Rails

Pertama, kita perlu mencipta folder go dalam direktori lib aplikasi Ruby on Rails dan Cipta Go kami modul bahasa dalam folder ini. Contohnya, contoh aplikasi berikut:

package main

import (
    "fmt"

    "github.com/gin-gonic/gin"
)

func main() {
    fmt.Println("Hello, world!")

    router := gin.Default()

    router.GET("/", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "Hello, world!",
        })
    })

    router.Run(":8080")
}

Aplikasi sampel ini menggunakan rangka kerja Gin dan mencipta pelayan HTTP lalai. Apabila pelayan menerima permintaan URL akar, ia mengembalikan respons JSON yang mudah.

  1. Memuatkan modul bahasa Go dalam aplikasi Ruby on Rails

Dalam aplikasi Ruby on Rails kami, kami perlu menggunakan Ruby untuk memanggil modul bahasa Go supaya kod bahasa Go digunakan bersama dengan kod Rails kami.

Berikut ialah contoh pengawal Ruby on Rails ringkas yang memanggil modul bahasa Go yang ditakrifkan di atas:

class GolangController < ApplicationController
  def index
    # 运行Go语言模块
    output = `go run #{Rails.root.join('lib/go/main.go')}`
    render plain: output
  end
end

Pengawal akan dijalankan dalam Ruby menggunakan perintah luaran operator ``, melepasi laluan ke modul bahasa Go kami sebagai hujah.

  1. Jalankan aplikasi Ruby on Rails dan lihat output

Kini kami boleh mengakses kawalan kami dengan menaip http://localhost:3000/golang/index dalam penyemak imbas pengkompil dan lihat output modul bahasa Go.

Apabila kami membuka URL dalam penyemak imbas, pengawal akan menjalankan modul bahasa Go dan menghantar output kepada penyemak imbas. Dalam aplikasi contoh ini, kita akan melihat rentetan JSON dikembalikan oleh modul bahasa Go.

Kesimpulan

Artikel ini memperkenalkan cara membangunkan aplikasi web menggunakan bahasa Go dalam persekitaran Ruby on Rails. Walaupun Golang mempunyai banyak kelebihan dalam bidang aplikasi web, ia bukanlah penyelesaian mujarab. Untuk senario aplikasi yang berbeza, kita perlu menimbang kelebihan dan kekurangan Golang dan bahasa lain mengikut situasi tertentu, untuk memilih bahasa pembangunan yang paling sesuai.

Atas ialah kandungan terperinci Pembelajaran Golang pembangunan aplikasi web berdasarkan Ruby on Rails. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn