Saeed Heydari
Saeed Heydari
خواندن ۲ دقیقه·۳ سال پیش

آموزش golang – قدم اول:‌ گو چیه؟

سلام دنیا! من برگشتم!

بالاخره بعد از ماه ها، سرم کمی خلوت شده. برای همین تصمیم گرفتم یه آموزش مقدماتی برای golang داشته باشم.

تو این سری آموزشی، قراره از صفر صفر golang رو یاد بگیریم و در نهایت یه پروژه ی ساده در حد یه مشاور املاک داشته باشیم.

شاید با خودتون بپرسید چرا golang؟ به دلایل زیر:

۱. Go سریع است

Go یک زبان واقعا سریعه. از اونجایی که Go به کد ماشین کامپایل میشه، به طور طبیعی اجرای اون از زبان‌هایی که تفسیر می‌شن یا دارای محیط اجرای مجازی هستن، سریعتره. برنامه‌های Go بسیار سریع کامپایل می‌شن و نتایج باینری اون بسیار سبک هستن.

۲. یادگیری آسان

سینتکس Go در مقایسه با بقیه ی زبان‌ها ساده تره و یادگیری اون ساده است. شما می‌تونید بیشتر مطالب اون رو خیلی سریع یاد بگیرید و تو حافظه تون داشته باشید. از طرفی سینتکس خیلی شفاف و خوانایی داره. اگه قبلا c یا زبان مشابهی کار کردید، یادگیری go برای شما خیلی ساده تره.

۳. یک زبان Static Typing است

Go یک زبان قوی و statically typed هست. نوع‌های اصلی (primitive) مثل int، byte و string تو اون وجود دارن. همچنین با داشتن structها می تونید نوع های پیشرفته تری متناسب با نیاز پروژه تون بسازید. Go همچنین نوع های از پیش ساخته شده برای listها و mapها داره و استفاده از اون ها ساده است.

۴. انواع اینترفیس

Go از اینترفیس‌ها را پشتیبانی می کنه و هر struct می‌تونه به سادگی متدهای اینترفیس را پیاده‌سازی و از اون استفاده کنه. این امر به شما اجازه می‌ده وابستگی‌ها رو در کد خودتون جدا کنید و خیلی راحت وابستگی‌ها را در تست‌های خودتون بررسی کنید. با استفاده از اینترفیس می‌تونید کدهای ماژولارتر و قابل تست بنویسید. Go همچنین دارای توابع first-class هست که امکان نوشتن کد های کارآمدتری رو فراهم می‌کنه.

۵. مدل Concurrency (هم‌زمانی) آسان‌تر

این چیزیه که واقعا من عاشقش هستم. هرچند برنامه‌نویسی هم‌زمان به هیچ وجه ساده نیست، Go اون را نسبت به سایر زبان‌ها آسان تر‌ کرده. برای این کار کافیه ،goroutine را فراخوانی کنید و از طریق channel با اون ارتباط برقرار کنید.

به دلایل بالا چندین دلیل دیگه اضافه کنید! من که عاشق golang شدم. کدنویسی باهاش خیلی حس خوبی میده. پس شما هم با من همراه بشید تا یه سفر جذاب به دنیای golang داشته باشم!

تو این سفر قراره ما به دنیای golang سفر کنیم و موارد زیر رو کشف و درک کنیم و با هم یاد بگیریم.

  • نصب golang در سیستم عامل های ویندوز و لینوکس
  • ساختار برنامه در golang
  • نوشتن اولین برنامه (Hello World معروف!)
  • متغیرها و انواع داده
  • بررسی عملگرها و کنترلرها
  • بررسی آرایه ها و اسلایس ها
  • کار با رشته ها
  • پوینترها
  • متودها
  • ایجاد یک برنامه تحت وب ساده

برای دیدن بقیه ی نوشته های من می تونید به سایت من بیاید :)

لیست نوشته های این دوره:

https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%85%D9%82%D8%AF%D9%85%D8%A7%D8%AA%DB%8C-golang-%D8%A8%D8%AE%D8%B4-%D8%AF%D9%88%D9%85-wyvs1idjyan2
https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D8%B3%D9%88%D9%85-e3mxmjr1mp74
https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%DA%86%D9%87%D8%A7%D8%B1%D9%85-ydltpxgtgdlj
https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%BE%D9%86%D8%AC%D9%85-regehw9odr8y
https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D8%B4%D8%B4%D9%85-k6cpaqgybxz2
https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%87%D9%81%D8%AA%D9%85-jf9cn4h6fgri
https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%87%D9%81%D8%AA%D9%85-%D9%85%D8%AA%D8%BA%DB%8C%D8%B1%D9%87%D8%A7-%D9%88-constant-oqvlbp5q2hg6
https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%86%D9%87%D9%85-%D8%AA%D8%A7%D8%A8%D8%B9-nat6a2yfyqe3


golanggoآموزشیادگیریبرنامه نویسی
من سعید حیدری،برنامه نویس و طراح وب و از علاقه مندان دنیای گنو/لینوکس هستم. بک اند با لاراول وGolang و فرانت اند با vuejs, nuxtjs کار می کنم. همچنین به بلاکچین، هوش مصنوعی و اینترنت اشیا علاقه مندم.
شاید از این پست‌ها خوشتان بیاید