2019-08-01から1ヶ月間の記事一覧

Goでis-a関係を作る

Go

Goには継承はなく、実装の再利用は構造体の埋め込みで行う。じっさいは委譲だが、見た目はオブジェクト指向言語で継承した場合のように使える。 package main type Super struct {} func (super Super) SuperMethod() {} type Sub struct {Super} func main(…

PHPで例外を出力するときにわざわざgetMessage()を使う必要はない

PHP

たまに見かけるので。 こんな感じにすれば__toString()が自動的に呼ばれる。エラーメッセージとスタックトレースの両方がついたいい感じの出力になる。

Nginxで権限があるはずなのにポートをバインドできない

ちょっと必要があって、Nginxを8000番で動かそうとしたらなぜかエラーが出た。1023までのポートならともかく8000だし、そもそもroot権限で動かしてるのに。 nginx: [emerg] bind() to 0.0.0.0:8000 failed (13: Permission denied) Permission deniedと来た…