各種言語restful比較

1402 ワード

詳細
Goスタイル:Martini
package main

import "github.com/go-martini/martini"

func main() {
  m := martini.Classic()
  m.Get("/", func() string {
    return "Hello world!"
  })
  m.Run()
}

Pythonスタイル:Flask
from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()

Javaスタイル:Spark
import static spark.Spark.*;

    public class HelloWorld {
        public static void main(String[] args) {
            get("/hello", (req, res) -> "Hello World");
        }
    }

Nodejsスタイル:Koa
var koa = require('koa');
var app = koa();
app.use(function *(){
  this.body = 'Hello World';
});
app.listen(3000);

Rubyスタイル:Sinatra
# myapp.rb
require 'sinatra'

get '/' do
  'Hello world!'
end

大同小異
その他の推奨事項:
Python: Twisted
Golang: Gorilla Pat
ref:
https://medium.com/@tschundeee/express-vs-flask-vs-go-acc0879c2122
...