Golang を学ぶための最高のリソース

王林
リリース: 2024-09-08 06:32:02
オリジナル
717 人が閲覧しました

こんにちは!自己紹介する機会がなかったのでまだ紹介していません。私の名前は Hartyun {ha.root.eeoon} です。ソフトウェア エンジニアであり、熱心な Golang 開発者です。私はこの言語が大好きで、そのツールチェーンを使って楽しく作業しています。私は過去 5 年間 Go を使って仕事をしてきました。 Golang に切り替える前、私はフルスタック開発者として働いており、メインのバックエンド言語として PHP を使用し、フロントエンドとして JS + jQuery を使用していました。

当時、多くの企業がレイテンシーを改善し、同時実行性を導入し、製品のバックグラウンド タスクの実行を可能にするために、Ruby、NodeJS、PHP から Golang に移行していることに気づきました。私が最初に見つけた記事は Shopify のブログで、Golang に切り替えることでサービスの遅延が 80% 改善されたことを説明していました。私はこの記事に魅了され、言語をより深く理解するために参考文献、言語の概念、Golang の公式ブログを読み始めました。

PHP の後、Golang は新鮮な空気の息吹のように感じられ、すべてが高速で、信じられないほど高速でした。私が最初に書いたプログラムを覚えています。それは、アポロ計画で得られたオープンソースの NASA データのファイル チェックサム バリデータでした。これには、それぞれのサイズが約 2 GB の 5 つのファイルのコレクションが含まれていました。実行時間が 1.4 秒であるのを見てびっくりしました。その瞬間、素晴らしいソフトウェアを作成、開発するにはスタックを Golang に切り替える必要があると悟りました。

この記事では、私が Golang エンジニアになるのに役立ち、最新のテクノロジーを最新の状態に保ちながら新しいスキルを開発するのに役立ついくつかのリソースを共有したいと思います。

書籍: 聖トリアダ

The Best Resources for Learning Golang

Go でプログラミングを始めよう by Nathan Youngman と Roger Peppé

Go を始めたばかりで、学習プロセスを簡単で親しみやすいものにする本が必要な場合は、Nathan Youngman と Roger Peppé 著の 『Get Programming with Go』 を強くお勧めします。この本は、一度に多すぎる情報で圧倒されることなく、基本に重点を置いているため、初心者に最適です。この本の素晴らしいところは、すべてをわかりやすく説明していることです。基礎から始めて、Go の核となる概念を段階的に説明します。変数の宣言方法、ループの使用方法、関数の作成方法などの基本を学びますが、作成者はプログラミング経験が豊富でなくても非常に理解しやすい方法で学習します。

Go が初めて、またはプログラミング全般が初めての場合は、「Go でプログラミングを始める」 が開始するのに最適な場所の 1 つです。迷ったりイライラしたりすることなく、言語の強力な基礎を構築できるように設計されており、読み終える頃には Go がどのように機能するかをしっかりと理解できるようになります。私が本当に気に入った点の 1 つは、この本が他のプログラミング言語をすでにたくさん知っていることを前提としていないことです。平易な言葉で書かれており、Go の構文と構造をシンプルかつ直接的な方法で理解できるようにすることに重点を置いています。また、エラー処理やメモリ管理などに対する Go の独自のアプローチについても説明していますが、これも非常に初心者に優しい方法です。

囲碁の学習 by Jon Bodner

すでに 「Go でプログラミングを学ぶ」 を受講済みで、Go スキルを次のレベルに引き上げたいと考えている場合は、「Go を学ぶ」 ジョン・ボドナー著。 「Get Programming with Go」ではしっかりとした基礎が得られ、非常に初心者に優しい方法で言語が紹介されていますが、「Learning Go」 では言語のより複雑な側面を深く掘り下げており、次のような場合に最適です。 Go をさらに詳しく調べる準備ができました。

この本は基本に基づいて構築されており、同時実行モデル、インターフェイス、エラー処理などの Go の複雑さを理解するのに非常に役立ちます。最初の本は入門の支援に焦点を当てていましたが、

「Go の学習」 では Go のユニークな機能をさらに深く掘り下げ、より効率的で保守しやすいコードの書き方をより明確に理解できます。説明は依然として非常に親しみやすいものですが、より包括的であり、まだ取り組んでいない可能性のある概念もカバーされています。したがって、「Get Programming with Go」を完了し、さらに深く学習する準備ができている場合は、「Learning Go」 が次のステップとして最適です。これは、Go の旅を続けて言語を本当にマスターするための素晴らしい方法です。

100 Kesilapan Pergi dan Cara Mengelakkannya oleh Teiva Harsanyi

Selepas membina asas yang kukuh dengan “Dapatkan Pengaturcaraan dengan Go” dan menyelami lebih mendalam konsep teras Go dengan “Learning Go”, langkah logik seterusnya dalam menguasai bahasa ialah “100 Kesilapan Pergi dan Cara Mengelakkannya” oleh Teiva Harsanyi. Buku ini merupakan kesinambungan sempurna bagi perjalanan Go anda kerana ia mengalihkan tumpuan daripada mempelajari bahasa kepada memperhalusi kemahiran anda dan mengelakkan masalah biasa yang dihadapi oleh pembangun berpengalaman.

Di mana dua buku sebelumnya membantu anda memahami cara Go berfungsi dan cara menggunakan cirinya, “100 Kesilapan Pergi” mengambil pendekatan yang lebih praktikal dan praktikal dengan menyerlahkan kesilapan dunia sebenar yang sering berlaku pemaju dan cara untuk mengelakkan mereka. Ia merupakan sumber yang hebat untuk pembangun yang ingin mempertajam kepakaran mereka dengan belajar daripada pengalaman orang lain. Buku ini merangkumi kesilapan merentas pelbagai topik, termasuk serentak, pengendalian ralat, ujian dan pengurusan memori, memberikan anda cerapan tentang cara menulis kod Go yang lebih mantap, cekap dan bebas pepijat. Ia bukan sahaja mengenai pengekodan amalan terbaik, tetapi tentang memahami sebab yang lebih mendalam di sebalik pendekatan tertentu mungkin kelihatan betul pada mulanya tetapi boleh membawa kepada ralat halus kemudian. Buku ini tidak ternilai untuk meningkatkan kemahiran Go anda, membantu anda berfikir dengan lebih kritis tentang kod anda dan memastikan anda mengelakkan perangkap biasa semasa anda maju ke arah menulis lebih banyak program Go peringkat profesional.

Setiap buku dibina berdasarkan buku sebelumnya, memastikan perjalanan pembelajaran yang menyeluruh daripada asas kepada menguasai selok-belok Go. Anda bermula dengan “Dapatkan Pengaturcaraan dengan Pergi” untuk mewujudkan asas yang kukuh, kerana ia memperkenalkan bahasa dengan cara yang mudah dan mesra pemula. “Learning Go” kemudian membawa anda lebih mendalam kepada ciri dan konsep teras Go, memberikan anda pemahaman yang lebih menyeluruh tentang keupayaan bahasa tersebut. Akhir sekali, “100 Kesilapan Go dan Cara Mengelakkannya” memfokuskan pada nasihat praktikal, dunia sebenar, membantu anda mengenal pasti dan mengelakkan perangkap biasa, menjadikan anda pembangun Go yang lebih cekap dan yakin.

Buku BONUS

The Best Resources for Learning Golang

Pembangunan Dipacu Ujian dalam Go oleh Adelina Simion

"Pembangunan Dipacu Ujian dalam Go" oleh Adelina Simion ialah tambahan terbaru kepada koleksi saya. Dengan perspektif baharu dan pendekatan moden terhadap TDD, buku ini akan mengukuhkan lagi keupayaan pembangun untuk menulis kod Go yang boleh dipercayai dan diuji dengan teliti sambil mengikuti amalan pembangunan terkini. Buku ini akan membimbing anda melalui penggunaan pembangunan dipacu ujian, memastikan kod Go anda bukan sahaja berfungsi tetapi juga teguh dan boleh diselenggara. Dengan memfokuskan pada menulis ujian terlebih dahulu dan menggunakannya untuk membimbing proses pengekodan anda, anda akan mendapat cerapan yang lebih mendalam untuk menghasilkan kod yang berkualiti tinggi.

Blogs: Go Wisdom and Witty Wonders

research!rsc: Pemikiran dan pautan tentang pengaturcaraan, oleh Russ Cox

https://research.swtch.com

Ia adalah blog peribadi Russ Cox, penyumbang utama kepada bahasa pengaturcaraan Go. Russ Cox ialah salah satu pembangun asal Go dan telah menulis secara meluas tentang bahasa, pembangunannya, dan konsep kejuruteraan perisian secara umum. Blognya merangkumi topik teknikal yang mendalam, terutamanya sekitar keputusan reka bentuk, perkakasan, model konkurensi dan pengoptimuman prestasi Go. Ia merupakan sumber yang sangat baik untuk mendapatkan cerapan tentang evolusi Go dan memahami rasional di sebalik banyak ciri bahasa tersebut. Cox juga menulis tentang topik yang lebih luas yang berkaitan dengan bahasa pengaturcaraan, penyusun, dan teori sains komputer. Ia adalah pilihan untuk pembangun yang ingin menyelami selok-belok Go, dan ia menawarkan perspektif unik tentang cara Go direka untuk menyelesaikan masalah praktikal.

Dave Cheney: Puncak kebodohan

https://dave.cheney.net

Dave Cheney ialah seorang tokoh terkemuka dalam komuniti Go dan telah menyumbang dengan ketara kepada bahasa, terutamanya dalam bidang seperti pengoptimuman prestasi, pengendalian ralat dan amalan terbaik. Blognya terkenal kerana memberikan nasihat praktikal yang mendalam tentang menulis kod Go yang idiomatik dan cekap. Topik yang dibincangkannya termasuk model konkurensi Go, pengurusan memori, strategi ujian dan penalaan prestasi. Dave juga terkenal kerana memecahkan topik yang rumit dengan cara yang boleh diakses, menjadikan blognya sebagai sumber yang sangat baik untuk pembangun Go pemula dan lanjutan. Dia telah menulis tentang corak reka bentuk Go yang biasa, perangkap prestasi dan cara memanfaatkan sepenuhnya ciri bahasa, menawarkan petua yang membantu pembangun menulis program Go yang lebih mantap dan boleh diselenggara. Jika anda ingin memperdalam pemahaman anda tentang Go atau meneroka teknik lanjutan, blog Dave Cheney ialah sumber yang hebat.

Blog Julia Evans

https://jvns.ca

Walaupun blog Julia bukan sahaja mengenai Go, blog ini terkenal dengan siarannya yang mudah didekati dan bernas mengenai pelbagai topik teknikal, termasuk pengaturcaraan sistem, penyahpepijatan, rangkaian dan kadangkala Go. Gaya penulisannya kasual dan sangat mudah dibaca, menjadikan subjek yang kompleks lebih mudah difahami, walaupun untuk pemula. Salah satu perkara yang membezakan Julia ialah keupayaannya untuk mengambil konsep yang rumit sama ada asas rangkaian atau cara sistem pengendalian berfungsi dan memecahkannya kepada catatan yang mudah dan mudah dihadam. Dia sering menggunakan zine dan ilustrasi untuk menjadikan kandungan teknikal lebih menarik, yang merupakan aspek unik blognya. Walaupun Go bukan fokus utama, apabila dia menulis tentang Go, ia adalah dari perspektif praktikal, peringkat sistem. Jika anda berminat dengan pengaturcaraan sistem dan ingin melihat bagaimana Go sesuai dengan dunia itu, blog Julia Evans ialah sumber yang hebat!

Blog Pergi

https://go.dev/blog/

Blog rasmi untuk bahasa pengaturcaraan Go, yang diselenggara oleh pasukan Go di Google. Blog ini merangkumi keluaran baharu, ciri, keputusan reka bentuk dan kemas kini komuniti. Ia merupakan sumber yang bagus untuk memahami Go dari perspektif pembangun teras. Ia merupakan sumber utama kemas kini, berita dan siaran mendalam tentang bahasa pengaturcaraan Go, yang diselenggara oleh pasukan pembangunan teras Go di Google. Blog ini merangkumi pelbagai topik, termasuk:

  • Keluaran Go Baharu: Penjelasan terperinci tentang perkara baharu dalam setiap versi, termasuk ciri, pembetulan pepijat dan peningkatan.
  • Keputusan reka bentuk bahasa: Cerapan tentang sebab ciri tertentu ditambahkan atau cara Go terus berkembang.
  • Amalan terbaik: Artikel tentang cara menggunakan Go dengan lebih berkesan, termasuk petua tentang pengoptimuman prestasi, pengurusan memori dan konkurensi.
  • Kemas kini komuniti dan ekosistem: Sorotan projek komuniti, persidangan Go dan alatan yang meningkatkan ekosistem Go.

Saluran Telegram yang berguna

Malangnya, ini adalah saluran Rusia sahaja, dan kebanyakan siaran datang daripada sumber Rusia, jadi ia mungkin tidak sesuai untuk ramai orang. Tetapi jika anda tahu bahasa Rusia, anda sudah bersedia!

  • @goproglib - Semua perkara yang paling berguna untuk pembangun Go dalam satu saluran.
  • @go_in_action - Segala-galanya tentang bahasa pengaturcaraan Go dalam bahasa Rusia dan Inggeris
  • @golangtests - Cabaran Golang
  • @golang_interview - Cabaran golang dan sumber persediaan temu duga

Kesimpulan

Learning Go ialah perjalanan yang memberangsangkan, dan mempunyai sumber yang betul membuat semua perbezaan. Sama ada anda baru bermula atau ingin mendalami konsep yang lebih maju, blog dan buku yang dinyatakan di sini menawarkan pandangan dan panduan yang tidak ternilai. Daripada menguasai asas kepada mengelakkan perangkap biasa, sumber ini telah disusun dengan teliti untuk memastikan anda boleh mengembangkan kemahiran Go anda dengan berkesan dan yakin.

Sambil anda meneruskan penerokaan Go, ingat bahawa kekuatan komuniti Go bukan sahaja terletak pada bahasanya yang berkuasa tetapi juga pada kesediaannya untuk berkongsi pengetahuan. Sumber yang tersedia hari ini mencerminkan kerja keras dan dedikasi penyumbang yang tidak terkira banyaknya yang ingin membantu anda berjaya. Selami, terus belajar dan nikmati prosesnya kerana dengan Go, kemungkinannya tidak berkesudahan!

Terima kasih yang tidak terhingga kepada Komuniti Go!

Saya ingin meluangkan sedikit masa untuk menyatakan penghargaan saya atas sumber luar biasa yang telah menjadikan pembelajaran Go sebagai pengalaman yang sangat menggembirakan. Daripada catatan blog yang mendalam tentang reka bentuk dan prestasi bahasa kepada nasihat praktikal tentang penulisan kod idiomatik yang cekap dan berkesan, sumbangan ramai dalam komuniti amatlah tidak ternilai. Kejelasan, semangat dan dedikasi di sebalik sumber ini telah membantu ramai pembangun, termasuk saya sendiri, bertambah baik dan berkembang.

Terima kasih kerana menjadikan Go sebagai perjalanan yang menyeronokkan dan memperkaya untuk kita semua!

以上がGolang を学ぶための最高のリソースの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート