カラス-golang関数マルチパラメータ戻り(良好な体験)
Goの表示
Javaソリューション
従来,JavaソリューションはMap.を用いた欠点である.戻りパラメータ個数不確定 戻りパラメータタイプ不確定 戻りパラメータ名は文字列形式が存在し、IDEは検出できず、文字列は局所形式が存在しない.
ここでは、「パラメータ名」という文字列が、2つの関数に存在する.関数の局所性に合致しない.
考える
Javaの観点から考えると,マルチパラメータはこのように表現すべきである.
しかし、ここの欠陥は:は、すべてのパラメータ を返す必要があります.は、 を初期化する必要があります.
Goの改善点は、タイプの初期化を関数にして、以上の問題を解決することです.
func getRequest(conn net.Conn) //
(rawaddr []byte, host string, err error)//
{
}
Javaソリューション
従来,JavaソリューションはMap.を用いた欠点である.
void method1(){
method2().get(" ");
}
Map method2(){
Map map=...;
map.put(" ")
}
ここでは、「パラメータ名」という文字列が、2つの関数に存在する.関数の局所性に合致しない.
考える
Javaの観点から考えると,マルチパラメータはこのように表現すべきである.
func getRequest(conn net.Conn) ( []byte, string, error) {
//
return rawaddr, host ,err;
}
しかし、ここの欠陥は:
Goの改善点は、タイプの初期化を関数にして、以上の問題を解決することです.
func getRequest(conn net.Conn) (rawaddr []byte, host string, err error) {
}