【Go言語(Golang)の概要と特徴】実際にWEBサービス開発で使用した感想!

古賀正雄 エンジニアマインド
5 Oct 202212:03

Summary

TLDRこの動画スクリプトでは、Go言語の概要、特徴、フレームワーク、ORM、そして実際にWebサービス開発で使用した感想について紹介されています。Go言語は2009年にGoogleが開発し、Webサービスやマイクロサービス開発などで利用されています。性的片付け言語であり、コンパイル言語で、シンプルで高速なコードを書くことができるという特徴があります。また、平行処理が容易で、エラーハンドリングが見やすいです。代表的なフレームワークはGin、Echo、Aero、Levelなどがあり、ORMにはGORM、XORM、sqlxなどがあります。Go言語を使用した開発者は給料単価が高い傾向にありますが、情報量は少ないため、調べる力が求められます。Go言語は初心者には難しい場合もあるが、勉強になる言語であることが述べられています。

Takeaways

  • 🌟 Go言語はGoogleが開発した言語で、Webサービスやmicroサービス、ドローン、IoT開発などで広く使用されています。
  • 📈 Go言語の特徴として、性的片付け言語であり、コンパイル言語で、コードがシンプルになりやすいことが挙げられます。
  • 🚀 栄光処理が楽にかけるエラーハンドリングや、給料単価が高めな傾向があること、そして平行処理が手軽に実装できることが挙げられます。
  • 🛠️ Go言語はコンパイル言語であり、実行速度が早く、パフォーマンス面を気にする場合は選択肢として考えることができます。
  • 📚 標準機能がシンプルで、誰が書いてもコードが統一されていると言われていますが、標準で提供されていない機能もあるため、代わりの手段を探ることが必要です。
  • 📈 Go言語の経験者はまだ多くないため、需要が高まっており、給料や単価が高い傾向にあります。
  • 🛠️ Go言語のフレームワークはジンエコーやエアロレベルなどがあり、代表的なフルスタックフレームワークは決まっていません。
  • 🔍 ORMにはGORM、SQLボイラー、xorm、sqlxなどがあり、情報量が多く、使いやすいものを選ぶことが重要です。
  • 🔑 Go言語にはポインタの概念があり、メモリの有効利用やコンピュータにかけるコストを減らすことができます。
  • 📖 Go言語は初心者向けではない言語であり、Webの知識や情報量、ポインタなどが必要になるため、経験を積むことで理解が深まります。
  • 🎯 Go言語を学ぶことで、C#などの他言語の知識も活かせるし、将来のキャリアにおいて高い単価を目指すことができるため、興味を持っている場合は学ぶことを検討しましょう。

Q & A

  • Go言語はどのような背景で開発されましたか?

    -Go言語はGoogleが開発した言語で、Webサービスやmicroサービス、ドローン、IoT開発などで使用されています。リリースされたのは2009年で、比較的新しい言語です。

  • Go言語の特徴として挙げられるものは何ですか?

    -Go言語の特徴としては、性的片付け言語であること、コンパイル言語であること、シンプルなコードが書きやすく、効率的なエラーハンドリング、並行処理が楽に実装できること、給料単価が高めな傾向にあることなどが挙げられます。

  • Go言語の標準機能はどのような印象を与えますか?

    -Go言語の標準機能はシンプルで、誰が書いてもコードが統一的に感じられると言われています。しかし、必要な機能が標準機能に含まれていない場合もあります。

  • Go言語での並列処理にはどのような課題がありますか?

    -Go言語での並列処理は、単純な場合であれば関数を実行するときに`GO`をつけるだけで簡単に実装できます。しかし、複雑な並列処理を行う場合は、チャネル管理が必要になり、難易度が上がります。

  • Go言語のエラーハンドリングはどのように行われますか?

    -Go言語のエラーハンドリングは、各関数やメソッドがエラー型を返却し、呼び出し側でエラー処理を行う方式です。エラーが起きない処理についてはエラー型を返却しませんが、ほとんどの処理はエラー型を返却することが推奨されています。

  • Go言語のフレームワークとして有名なものは何ですか?

    -Go言語のフレームワークとしては、gin、echo、aero、leveldbなどがあります。これらのフレームワークの利用率が高い中、ginとechoがフルスタックフレームワークではないことが特徴的です。

  • Go言語のORMとして利用できるものは何ですか?

    -Go言語のORMとして利用できるものには、gorm、sqlboiler、xorm、sqlxなどがあります。これらのORMは一般的なORMの機能を持ち、標準ドキュメントの読みやすさやテーブルを生成するオートマイグレーションなどの機能があります。

  • Go言語を学ぶための情報量は多いですか?

    -Go言語を学ぶための情報量は、他の言語と比べると少なめです。しかし、選択したフレームワークやORMによって情報量が変わってきます。また、日本語のページではなく英語のページを調べることもあるかもしれません。

  • Go言語は初心者におすすめな言語ですか?

    -Go言語は標準機能がシンプルで情報量は少なめため、勉強にはなりますが、初心者には向いている言語ではないかもしれません。Webの知識やポインタの概念など、プログラミング以外の個人の力量が必要になるためです。

  • Go言語を学ぶための動機は何ですか?

    -Go言語を学ぶための動機としては、C#以外の使える言語を増やし、サービスを作りたかったこと、今後の単価を挙げていきたいという需要を見越してなどが挙げられます。また、Go言語はGoogleが開発した言語であり、Webサービスやmicroサービス、ドローン、IoT開発などで広く使用されています。

  • Go言語を使った開発の感想はどのようなものですか?

    -Go言語を使った開発の感想としては、標準機能がシンプルでコードが統一的であることが感じられます。また、並行処理が比較的簡単に実装できることや、エラーハンドリングが効率的に行えることがメリットと言えます。一方で、情報量が少なめであるため、調べるスキルが問われ、初心者には少し難しい言語である可能性もあります。

Outlines

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Mindmap

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Keywords

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Highlights

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Transcripts

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن
Rate This

5.0 / 5 (0 votes)

الوسوم ذات الصلة
Go言語Web開発並列処理エラーハンドリング初心者向け技術解説プログラミングフレームワークORMキャリア
هل تحتاج إلى تلخيص باللغة الإنجليزية؟