2023-01-01から1年間の記事一覧
go言語をやってるけどサーバを良く知らない。 確かに知らなくても動かせるが基礎としては知るべきです。【結論】サーバはコンピュータの向こうにあるサービスでWebサイトなどもサーバです。【理由】私達がスマホでWebサイトを見たいとなれば 私達がクライア…
goのポインタは、メモリアドレスを格納する変数です。【結論】変数からポインタを取得する場合は変数の前に&をつけます。【どういうものか】変数の前に&をつけると変数のメモリを返します。 このような形です。 p = 21 // ポインタpを通してiへ値を代入する …
go言語の構造体とは他のプログラミング言語のクラスに相当する機能です。【結論】type 構造体名 struct {} で定義し、フィールド名と型名をすると動かせます。【理由】構造体があると良い理由は複数の値をひとまとめに出来るからです。 わざわざ一つ一つ定義…
go言語ではJavaScriptみたくwhile文はありません。while文はないけどfor文で実は同様な処理をできます。 それを実際にやってみます。【やり方】for i 処理 }forの後に条件式を入れてそれがtrueつまり真ならそれが終わるまで繰り返しwhile文と同様な動きしま…
go言語の無名関数とはその名の通り定義する名前がない関数の事です。 どのように動くかを解説します。【どのようなものか?】func(引数1, 引数2, …) 戻り値の型1, 戻り値の型2, … { 関数の本体 }書き方自体はとてもシンプルです。 関数に直接変数を入れられ…
go言語で数値を使った関数でコードを通じてどんな動きをするかをやってみました。 【数値を使った関数】基本的にgo言語の関数はfunc addOne(n int) int { return n + 2 }関数と戻り値に型をして出来ます。 このコードならaddOneが関数、nが引数、intが型です…
go言語で配列をfor文で処理する事をしてみます。今回使う処理が変数名 := [...]型{初期値1, 初期値n} for 初期化式(1.値を初期化) ; 条件式(2.条件) ; 増減式(3.値を更新) { 繰り返される箇所 }この処理を使って実際にコードを動かしてみます。 【コード】①…
go言語の真偽判定の式について解説します。【結論】== 同じ値であれば true != 異なる値であれば true 【理由】例えば 1 == 2 → false これは同じ値でないからfalseとなります。 1 == 1 → true これは同じ値だからtrueです。1 != 2 → true 1と2は違うからtru…
go言語の配列では配列を二重にしてより複雑な処理で値を取り出す事ができます。 【結論】配列名 := [サイズ] [サイズ]型{初期値1, ..., 初期値n} 【理由】a := string{ {"Hello", "Go"}, {"Hello", "Python"}, }これはstringで文字列型です。 こんな風に書い…
go言語はJavaScriptやPythonとは異なり静的型付け言語です。 この静的型付け言語は何かを解説します。 【結論】go言語は全て何らかの型に属しておりその規約は厳格に決まってる。 【理由】静的型付け言語では書き方のルールが厳格ですから例えば演算子で異な…
go言語は右から新しい型になる!go言語では決まった型を指定しないで変数宣言すると右側から型推論します。 どういう事かを解説していきます。 【結論】var i int x:= i x is an int 【理由】型を指定しないというのは:=やvar =にしてコードを書く事です。va…
go言語では型変換をする事ができます。 数値型から整数型に変換したりなどの処理が可能です。 それの基礎的な動きを見ていきましょう。 【結論】例えばintからfloat64にする場合はvar i int = 123 f64 := float64(i) 【理由】なぜ型変換が必要なのかと言えば…
go言語は戻り値に名前を付けると最初で定義した変数名として使われリターンに何も書かずに戻せます。 【結論】func 関数名(引数) 戻り値の型 { 戻り値の名前を付けた変数の処理 return } 【理由】go言語では名前を変数を使うとreturnに何も書かずに戻せます…
go言語では関数に引数を二つ持たせて同時に処理する事ができます。【結論】func 関数名(変数名 型)(戻り値の型1, 戻り値の型2){ 【具体例】実際にやってみましょう。package mainimport "fmt"func swap(x, y string) (string, string) { return y, x }func m…
go言語の関数の引数は関数の呼び出し先の値を関数に戻したモノを言います。 その引数の受け取りを見ていきましょう。【結論】関数は 0 個以上の引数を取ることができます。 【理由】func 関数名(引数 引数の型) 返り値の型 { 処理 }と書きます。 そして、型…
Go言語では最初の文字が大文字で始まるものはExported namesで参照できます。 【結論】パッケージを大文字で参照された文字は他のパッケージから見える。【具体例】実際に見てみましょう。package mainimport ( "fmt" "math" )func main() { fmt.Println(mat…
go言語のboolやfloatで実際に型の動きを見ていきましょう。【具体例】 ①package mainimport ( "fmt" "math/cmplx" )var ( ToBe bool = false MaxInt uint64 = 1 z complex128 = cmplx.Sqrt(-5 + 12i) )func main() { fmt.Printf("Type: %T value: %v\n", ToB…
go言語では複数の変数を一斉に初期化することができます。【結論】Go言語では ,で区切ることで複数の変数を同時に初期化できる。 【理由】var 変数名 データ型 = 初期値を宣言するとgo言語では複数の値を一気に初期化する事ができます。書き方は var x, y in…
今回はgo言語で円周率の計算します。【具体例】package mainimport ( "fmt" "math" )func main() { fmt.Println(math.Pi) }3.141592653589793【解説】importでmathパッケージを呼び出します。 math.PiのPiは円周率をパイの値で出す処理です。 これを動かすと…
go言語のimportとはpackageをインポートするものです。【結論】go言語でパッケージをインポートする時は import "fmt"などとします。 【理由】import を使用します。 GitHub で公開されているパッケージを直接インポートすることができます。 import ( "fmt"…
無名関数とはその名の通り関数名がない関数です。 なぜ関数名がないのでしょうか?【結論】package mainfunc main() { 変数名 := func (引数 型) 戻り値の型 { // 処理する内容 } } 【理由】通常関数はこう書きます。package mainimport "fmt"// 関数名 func…
go言語は複数の戻り値を使った計算が関数でできます。 それについて解説します。【結論】 func calculate(a int, b int) (int, int) { sum := a + b diff := a - b return A, B }Goの関数は複数の値を返すことができます。これは、一回の関数呼び出しで複数…
go言語の関数の基本的な型を解説します。【結論】func 関数名(引数 型) 戻り値の型 { 処理する内容を記述 }【理由】関数がある理由については何回も同じ処理を書かなくて良いからです。 いちいち同じ処理を書いたらコードは長いし、ミスもしやすくなります。…
go言語で繰り返しの処理の基礎をやりましょう。 繰り返しは値を指定して、それを増減させます。【結論】for 初期化式(1.値を初期化) ; 条件式(2.条件) ; 増減式(3.値を更新) { 繰り返される部分 } 【理由】package mainimport "fmt"func main() { for i := 0…
条件分岐はelse if で3つ以上にする事ができます。 実際にコードを動かしてみていきましょう。【結論】if 条件式A { 処理コードA } else if 条件式B { 処理コードB } else { 処理コードC }【コード】 ①package mainimport "fmt"func main() { age := 0 if ag…
ifを使うことで条件分岐ができます。 elseなど複数の分岐の処理を見ていきましょう。 【結論】if 条件式A { 処理コードA } else if 条件式B { 処理コードB } else { 処理コードC }Aになれば処理が終わり、 BになればBで処理が終わる。 違えばCの処理がされる…
go言語の以上と以下は=を使います。 この処理もプログラミングする上で基礎となります。 しっかりと身につけておきましょう。【結論】 >=は左の値が大きければfalse ==は左右の値が正しければtrue !=は左右の値が違えばtrue【具体例】package mainimport "fm…
go言語の演算子は基礎中の基礎であらゆる処理の場面で使います。 その基礎的な動きをやりましょう。 【結論】 - * + / %を使います。 かけ算は *(アスタリスク)、わり算は /(スラッシュ)、わり算のあまりは %(パーセント)であらわします。 【具体例】 …
配列は番号付きロッカーでその指定された番号のロッカーからモノを取り出すイメージです。【結論】変数:=[要素数]データ型{データ1,データ2} で配列の値を操作します。 【理由】番号がついたロッカーを想像して下さい。 1や2など数字が書かれていてその数…
Go言語で型を使うことで様々な数値や文字列を出力する事ができます。 その基本的な動きをみましょう。 【結論】varで変数宣言,変数名、データの種類をして fmt.Println(num)で出力ができる。【理由】Go言語はデータ型や文字型などがあります。 それを出力し…