プログラミング言語 Go は Google が 2009 年秋にオープンソースで公開した新しいプログラミング言語です。C や C++ のようなコンパイル言語の良さをもちつつ、Python のような動的言語でのプログラムの書き易さを兼ねそなえた特徴をもっています。クラスを使わないオブジェクト指向の言語で、コンカレントに実行するための仕組みもそなえています。 プログラミングをより速く、より生産的に、そしてより楽しくしてくれる新しいプログラミング言語 Go について説明します。
1 of 43
Downloaded 24 times
More Related Content
Google Developer Day 2010 Japan: プログラミング言語 Go (鵜飼 文敏)
11. 入力: bufio
http://golang.org/pkg/bufio/#Reader.ReadBytes
func (*Reader) ReadBytes
func (b *Reader) ReadBytes(delim byte) (line []byte, err os.Error)
ReadBytes reads until the first occurrence of delim in the input, returning a string containing the data up to and
including the delimiter. If ReadBytes encounters an error before finding a delimiter, it returns the data read
before the error and the error itself (often os.EOF). ReadBytes returns err != nil if and only if line does not end in
delim.
import ("bufio"; "os")
in := bufio.NewReader(os.Stdin)
line, err := in.ReadBytes('n')
if err != nil { ... }
12. 出力: fmt
http://golang.org/pkg/fmt/#Printf
func Printf
func Printf(format string, a ...interface{}) (n int, errno os.Error)
Printf formats according to a format specifier and writes to standard output. It returns the number of bytes written and
any write error encountered.
import "fmt"
fmt.Printf("> ")
fmt.Printf("%d", i)
fmt.Printf("%#v", v)
18. Read: getSymbol
func getSymbol(buf []byte) (sym string, nbuf []byte) {
var i int
for i = 0; i < len(buf); i++ {
if !isAlpha(buf[i]) && !isDigit(buf[i]) {
break
}
}
return string(buf[0:i]), buf[i:]
}