KATUBLO
2019年06月06日

【GO言語】golangの関数の引数が多いから整理して解説

こんにちは。KATUOです。今回はgolangにおける関数の書き方について紹介していきたいと思います。

 

謎の多数の引数に遭遇

初めて、goで書かれた関数をみたときに戸惑いました。

 

 

まず「どれが引数?」「*ってなに」等知らないことのコンボで困った… なので1つずつ整理していくことにしました。

 

GOの関数の書き方を整理

 

GOの関数の書き方

これがGOの関数の基本形となります。レシーバ型は馴染みがないワードですね。

 

引数はcount

GetTitles(c)のcは引数として、GetTitles(count int)のcountに渡されます。つまりこの場所で引数を受け取っているんです。

 

戻り値の型

Goは戻り値の型を指定できるんです。
(*[]response.Title, error)
は通常時は*[]response.Titleの型、エラー時はerrorの型で書くと定義しています。

 

Implの意味

implementationの略
implementation:ほのめかす

Implをつける意味

・インターフェイスを使わせるのが目的。実装クラスは直接さわってほしくない
・クラスがインターフェイスを実装させるのを目的にしていることを明示したい

ここではあるインターフェイスを実装したクラスにつけたと考察。

 

 

参考サイト
http://d.hatena.ne.jp/Kazzz/20061209/p2
https://qiita.com/suin/items/00656d9dbd2f26dd8b91
https://qiita.com/pei0804/items/2a3010df39623fadc3c6

 

 

最後まで読んで頂き、ありがとうございました。
SNS等でのシェアが頂ければ幸いです!

プロフィール

@KATUO

現在都内私立大学に通う大学4年生。大学では電気電子工学を専攻。大学2年の夏頃に、プログラマーの長期インターン募集の広告が目に止まり、独学でプログラミングの学習をスタート。この時期からプログラミングにどハマりし、現在までに「AIスタートアップ」「Webマーケティング会社」でエンジニアとしての業務に没頭してきた。

スポンサードリンク

大学生必見就活イベント