亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

PHP To Go 轉(zhuǎn)型手記 (終)

leanxi / 2753人閱讀

摘要:本章以實(shí)戰(zhàn)方式來(lái)對(duì)比以下與的寫(xiě)法。寫(xiě)這類(lèi)的文章也遭到了很多質(zhì)疑,作為一個(gè)手記去發(fā)布僅僅為了讓想去學(xué)習(xí)其他語(yǔ)言的朋友了對(duì)新語(yǔ)言的一個(gè)認(rèn)識(shí),不是去對(duì)比其不同。

前言

作為一名PHP程序員,我感到榮幸。但在時(shí)代不斷的變遷中,要具備足夠的知識(shí)才可生存。

那就從Go語(yǔ)言學(xué)起把。

希望看到本篇文章的你可以對(duì)Go有一個(gè)基本的認(rèn)識(shí)。本系列文章與我自己學(xué)習(xí)Go語(yǔ)言的方式去描述。以PHP代碼與Go代碼的對(duì)比加以區(qū)分理解。

這是轉(zhuǎn)型手記的最后一章,在往下沒(méi)辦法再去寫(xiě)了,需要詳細(xì)的看書(shū)去了解。本章以實(shí)戰(zhàn)方式來(lái)對(duì)比以下PHP與Golang的寫(xiě)法。

這里使用Laravel與Beego(基于Go開(kāi)發(fā)的MVC框架)來(lái)演示

安裝

Laravel

// 通過(guò)composer直接安裝,簡(jiǎn)單易用
composer global require "laravel/installer"
// 創(chuàng)建一個(gè)項(xiàng)目
laravel new blog

Beego

// go自身就有包管理
go get github.com/astaxie/beego
// 創(chuàng)建項(xiàng)目也非常簡(jiǎn)單
bee api blog
目錄結(jié)構(gòu)

Laravel

// laravel 的結(jié)構(gòu)這里就不再闡述
| - app
| - bootstrap
| - config
| - database
| - public
| - resources
| - routes
| - storage
| - tests
| - vendor

Beego

// 顯而易見(jiàn),beego并沒(méi)有l(wèi)aravel那樣過(guò)度設(shè)計(jì)(雖然過(guò)度設(shè)計(jì)并非指目錄,
// 但以看目錄就知道beego真的沒(méi)有太多東西)
blog
├── conf
│   └── app.conf
├── controllers
│   └── object.go
│   └── user.go
├── docs
│   └── doc.go
├── main.go
├── models
│   └── object.go
│   └── user.go
├── routers
│   └── router.go
└── tests
    └── default_test.go
路由

Laravel

Route::get("/user", "UserController@index");

Beego

// 與laravel的使用方式差不多
// 這里為了統(tǒng)一,路由直接綁定控制器方法只有下列這種
// beego 還提供了注解方式 , 詳情見(jiàn) https://beego.me/docs/mvc/controller/router.md
beego.Router("/user",&UserController{},"get:index")
模型 (Model)

Laravel


Beego

// Beego通過(guò)結(jié)構(gòu)體名稱(chēng)作為表名,并且orm操作的所有字段都必須提前聲明
package models

import (
    "github.com/astaxie/beego/orm"
)
type User struct {
    Id       int    `json:"id"`
    Tel      string `json:"tel"`
    Password string `json:"password"`
    Status   string `json:"status"`
}

func init() {
    orm.RegisterModel(new(User))
}
控制器

Laravel

 User::findOrFail($id)]);
    }
}

Beego

package controllers

import (
    "github.com/astaxie/beego"
    "github.com/astaxie/beego/orm"
)

// 這里相當(dāng)于繼承了父類(lèi) beegoController
type MemberController struct {
    beego.Controller
}


func (c *CityController) Index() {
    var results []orm.Params

    orm.NewOrm().QueryTable("member").
        Values(&results)

    c.Data["json"] = results
    c.ServeJSON()
}
總結(jié)

學(xué)Go有1個(gè)多月的時(shí)間了。寫(xiě)這類(lèi)的文章也遭到了很多質(zhì)疑,作為一個(gè)手記去發(fā)布僅僅為了讓想去學(xué)習(xí)其他語(yǔ)言的朋友了對(duì)新語(yǔ)言的一個(gè)認(rèn)識(shí),不是去對(duì)比其不同。而找其語(yǔ)法相似點(diǎn)。

語(yǔ)言只是工具,希望各位PHP工程師不要僅限于去使用PHP,這一年看到很多寫(xiě)PHP程序員未來(lái)之路一類(lèi)的文章,但從未提出要去學(xué)習(xí)其他語(yǔ)言。

不要將自己圈在一個(gè)領(lǐng)域,不要做井底之蛙。

致謝

感謝你看到這里,希望本篇文章可以幫到你。謝謝

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/29656.html

相關(guān)文章

  • PHP To Go 轉(zhuǎn)型手記 (三)

    摘要:前言作為一名程序員我感到榮幸。但在時(shí)代不斷的變遷中,要具備足夠的知識(shí)才可生存。本系列文章與我自己學(xué)習(xí)語(yǔ)言的方式去描述。以代碼與代碼的對(duì)比加以區(qū)分理解。沒(méi)有類(lèi)的概念,本章在語(yǔ)法使用上來(lái)對(duì)比與之間的區(qū)別。 showImg(https://segmentfault.com/img/bVbi4ot?w=800&h=533); 前言 作為一名PHP程序員,我感到榮幸。但在時(shí)代不斷的變遷中,要具備...

    linkin 評(píng)論0 收藏0
  • PHP To Go 轉(zhuǎn)型手記 (一)

    摘要:前言作為一名程序員我感到榮幸。但在時(shí)代不斷的變遷中,要具備足夠的知識(shí)才可生存。那就從語(yǔ)言學(xué)起把。希望看到本篇文章的你可以對(duì)有一個(gè)基本的認(rèn)識(shí)。本系列文章與我自己學(xué)習(xí)語(yǔ)言的方式去描述。以代碼與代碼的對(duì)比加以區(qū)分理解。 showImg(https://segmentfault.com/img/bVbiKHc?w=1500&h=1000); 前言 作為一名PHP程序員,我感到榮幸。但在時(shí)代不斷...

    yexiaobai 評(píng)論0 收藏0
  • PHP To Go 轉(zhuǎn)型手記 (二)

    摘要:前言作為一名程序員我感到榮幸。但在時(shí)代不斷的變遷中,要具備足夠的知識(shí)才可生存。那就從語(yǔ)言學(xué)起把。希望看到本篇文章的你可以對(duì)有一個(gè)基本的認(rèn)識(shí)。本系列文章與我自己學(xué)習(xí)語(yǔ)言的方式去描述。以代碼與代碼的對(duì)比加以區(qū)分理解。 showImg(https://segmentfault.com/img/bVbiKHc?w=1500&h=1000); 前言 作為一名PHP程序員,我感到榮幸。但在時(shí)代不斷...

    hot_pot_Leo 評(píng)論0 收藏0
  • 【日常手記】之Laravel5.3

    摘要:個(gè)人網(wǎng)站最近剛寫(xiě)了一個(gè)手機(jī)在線播放的電影站使用日常手記更新使用的的查詢(xún)作用域的本地作用域去自定義可復(fù)用的約束集合,方便鏈?zhǔn)秸{(diào)用什么是本地查詢(xún)作用域本地作用域允許我們定義通用的約束集合以便在應(yīng)用中復(fù)用。 關(guān)于作者 程序開(kāi)發(fā)人員,不拘泥于語(yǔ)言與技術(shù),目前主要從事PHP和前端開(kāi)發(fā),使用Laravel和VueJs,App端使用Apicloud混合式開(kāi)發(fā)。合適和夠用是最完美的追求。 個(gè)人網(wǎng)站:...

    kidsamong 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<