آموزش گو (GO)

دسته بندی: آموزش طراحی وب

آموزش گو

در این صفحه می خوانید :

معرفی زبان GO

Go، همچنین با نام Golang شناخته می شود، یک زبان برنامه نویسی با استاتیک تایپ شده و طراحی شده در گوگل توسط رابرت گریسمر، راب پیک و کن تامپسون است. Go از لحاظ نحو شبیه سی است، اما با امنیت حافظه، زباله روبی، تایپ ساختاری، و همزمانی با سبک CSP همراه است.

دو پیاده سازی اصلی وجود دارد:

  • مجموعه ابزارهای میزبانی گوگل، چندین سیستم عامل، دستگاه های تلفن همراه و WebAssemble را هدف قرار داد.
  • gccgo، یک فرانت اند GCC.

انتقال دهنده شخص ثالث GopherJS کد های گو را برای توسعه فرنت اند جاوااسکریپت کامپایل می کند. زبان برنامه نویسی Go یک پروژه اوپن سورس برای برنامه نویسان است.

گو رسا، مختصر، تمیز و کارآمد است. مکانیسم های هم زمان آن نوشتن برنامه هایی را که بیشترین بهره را از ماشین های چند هسته ای و شبکه ای می گیرند، آسان می سازد، در حالی که سیستم نوع جدید آن ساخت برنامه های انعطاف پذیر و مدولار را امکان پذیر می کند. کاملاً سریع به کد ماشین کامپایل می شوید اما راحتی زباله روبی و قدرت بازتاب ران تایم را دارد. یک زبان سریع، کاملاً تایپ شده و کاملاً متناسب است که مانند یک زبان تفسیر شده پویا، عمل می کند.

هیچ چیز برنامه نویس را هیجان زده تر از یک زبان برنامه نویسی جدید نمی کند. با بررسی وضعیت فعلی نرم افزار و سخت افزار کامپیوتر متوجه میشویم که چرا باید به زبان جدیدی مانند GO برویم در طول یک دهه گذشته قدرت پردازش خام رشد کمی داشته و عملکرد فرکانس پردازنده تقریبا دریک دهه ثابت باقی مانده است. اگر فکر می کنید که اضافه کردن ترانزیستور بیشتر راه حل است، اشتباه می کنید. به این دلیل است که در مقیاس کوچکتر، خواص کوانتومی شروع به ظهور می کنند و هزینه های بیشتری برای تولید ترانزیستورها وجود دارد. برای حل مشکل تولید کنندگان شروع به اضافه کردن هسته های بیشتر به پردازنده کردند. امروزه پردازنده های چهار و هشت هسته ای موجود است. همچنین بیش از حد Threading معرفی شده و برای افزایش عملکرد مخزن بیشتری به پردازنده اضافه شده است. اما راه حل ها نیز محدودیت های خود را دارند.

ما نمی توانیم Cache بیشتری به پردازنده اضافه کنیم تا عملکرد را افزایش دهیم زیرا Cache دارای محدودیت های فیزیکی است. اضافه کردن هسته بیشتر به پردازنده نیز هزینه بر است. بنابراین، اگر ما نمیتوانیم به پیشرفت های سخت افزاری تکیه کنیم، تنها راه رفتن به نرم افزار کارآمدتری برای افزایش کارایی است. از سوی دیگر GO در سال 2009 هنگامی که پردازنده های چند هسته ای در دسترس بودند، منتشر شد. به همین دلیل GO با در نظر گرفتن هماهنگی ساخته شده است. مکانیسم های همزمان آن، نوشتن برنامه هایی را که بیشتر از سیستم های چند هسته ای و شبکه ای استفاده می کنند، آسان می کند. در حالی که نوع جدید سیستم GO ساخت برنامه های انعطاف پذیر و مدولار را امکان پذیر می سازد و به جای تمرکز بر نظریه های علمی و فکری، بر شیوه های دنیای واقعی جهت ساختن برنامه های نسل بعدی در ابر و همچنین محاسبات توزیع شده و محاسبات همزمان و برنامه ریزی سیستم است.

تاریخچه زبان GO

GO یک زبان برنامه نویسی رویه ای است که در سال 2007 توسط رابرت گریسمر، راب پایک و کن تامپسون در شرکت Google توسعه داده شد و در سال 2009 به عنوان زبان برنامه نویسی اوپن سورس راه اندازی شد. در حال حاضر در چند سامانه اجرایی گوگل استفاده می‌شود. کامپایلر GO از لینوکس، مک اواس، ویندوز و انواع سیستم‌های عامل BSD مانند FreeBSD پشتیبانی می‌کند. از لحاظ معماری پردازنده نیز معماریX86، معماری X64، معماری ARM و معماری Power که مخصوص به شرکت IBM است، توسط مترجم GO پشتیبانی می‌شوند.

معماری زبان GO

GO دارای ابزار تجزیه و تحلیل استاتیک چندگانه و قوی است. یکی از آن موارد go fmt است، که کد شما را براساس سبک پیشنهادی Go طراحی می کند. این می تواند بسیاری از نظرات را در یک پروژه عادی را حذف کند و تیم شما را به تمرکز بر روی کد ترغیب کند. زبان برنامه نویسی ساخته شده بومی و جمع آوری شده که عمدتا متعلق به خانواده زبان C از نظر سینتکس پایه است.

مانند C و ++C به کد ماشین کامپایل می شود، به طوری که ما نیازی به محیط هایی مانند CLR و JVM برای اجرای برنامه های Go نداریم. این به ویژه در هنگام کامپایل برنامه های بزرگ کمک می کند. زبان ساده و مینیمالیستی با طراحی واقع بینانه GO به جای Thread به goroutines پرداخته است. در Go محدودیت حداقل اندازه پشته زمانی که یک goroutine ایجاد می شود از 4KB به 8KB برداشته شده است.

ویژگی های زبان GO

ویژگی زبان گو

GO مانند زبان های سطح پایین مانند C++ / C کد را کامپایل می کند. به این معنی است که عملکرد تقریبا نزدیک به زبان های سطح پایین دارد. همچنین برای جمع آوری و حذف شی از زباله روبی استفاده می کند.

ویژگی گو

گراف بالا نشان می دهد که Go تقریبا همانند C++ / C کارآمد است، در حالی که سینتکس کد را ساده مانند روبی، پایتون و دیگر زبان ها نگه می دارد. این یک موقعیت برنده برای انسان و پردازنده است! کارایی بالا مانند C++ / C و جاوا هماهنگ سازی فوق العاده موثر و برای کد کردن شرایط سرگرم کننده ای مانند Python و پرل (Perl) را فراهم می کند. نرم افزار بهینه شده می تواند بر روی سخت افزار ارزان تر و کندتر مانند دستگاه های اینترنت اشیا عمل کند و به طور کلی تاثیر بیشتری بر تجربه کاربر نهایی داشته باشد. مدل حافظه Go یک قانون جدید در مورد ارسال و دریافت کانال های بافر اضافه می کند تا بطور صریح بیان کند که یک کانال بافر می تواند به عنوان یک سمپاور ساده استفاده شود.

قبل از اینکه به ویژگی های خاص بپردازیم، در اینجا مروری گسترده از ویژگی های اصلی این زبان ارائه شده است:

کامپایل

ژنراتور گو باینری کامپایل را برای برنامه های شما با تمام وابستگی ها ایجاد می کند. هیچ مترجمی یا نصب زمان اجرا لازم نیست.

زباله روبی

برای جمع آوری زباله های با تأخیر کم ورزش را برای مدیریت خودکار حافظه بروید که هم کارآمد و هم همزمان باشد.

ایمن

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

سینتکس مشابه C

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

چند پارادایم

Go از چندین الگوی برنامه نویسی از جمله برنامه نویسی ضروری، شی گرا (OOP) بدون ارث و برنامه نویسی تابعی پشتیبانی می کند.

کتابخانه استاندارد

Go دارای یک کتابخانه استاندارد قدرتمند از بسته ها برای پشتیبانی از توسعه برنامه های Go است.

مستندات ساده

GoDoc یک ابزار تجزیه و تحلیل کد استاتیک است که اسناد استاندارد ساده شده را مستقیماً از طریق کد شما ایجاد می کند.

پشتیبانی تست

پشتیبانی تست در کتابخانه استاندارد ساخته شده است. نیازی به وابستگی اضافی وجود ندارد اگر یک فایل با نام thing.go داشته باشید، تست های خود را در فایل دیگری با نام thing_test.go بنویسید و «go test » را اجرا کنید.

زباله روب

مدیریت حافظه در Go عمدا ساده تر از C و ++C می باشد. اشیاء اختصاص داده شده به صورت پویا درحال جمع آوری زباله هستند.

ابزار های زبان GO

توزیع اصلی Go شامل ابزارهایی برای ساخت، تست و تجزیه و تحلیل کد است:

  • go build: تنها با استفاده از فایل های منبع خود باینری را ایجاد میکند.
  • go test: برای تست واحد و microbenchmarks استفاده می شود.
  • go fmt: برای قالب بندی کد استفاده میشود.
  • go get: برای بازیابی و نصب بسته های راه دور استفاده می شود.
  • go vet: یک تحلیلگر استاتیک به دنبال خطاهای احتمالی در کد است.
  • go run: یک میانبر برای ساخت و اجرای کد است.
  • go doc: برای نمایش اسناد و یا ارائه آن از طریق HTTP
  • go rename: برای تغییر نام متغیرها، توابع و غیره در type-safe استفاده میشود.
  • go generate: یک روش استاندارد برای فراخوانی ژنراتور کد

همچنین شامل پشتیبانی از پروفایل و دیباگینگ، ابزار سنجش ران تایم می باشد.اکوسیستم ابزارهای شخص ثالث به توزیع استاندارد اضافه شده از جمله gocode که امکان تکمیل خودکار کد را در بسیاری از ویرایشگر های متن فراهم میکند. goimports (توسط عضو تیم Go) که به طور خودکار و در صورت نیاز پکیج را حذف یا اضافه میکند و errcheck که خطاهای کد را شناسایی می کند و ممکن است اشتباهات را نادیده بگیرد. پلاگین هایی برای اضافه کردن پشتیبانی از زبان در چند ویرایشگر متن وجود دارد. چند IDE در دسترس هستند، از جمله LiteIDE و " cross-platform Go IDE " و GoLand، که ادعا می کند توانمند و راحت است.

کاربرد زبان GO

Go به طور خاص به عنوان یک زبان برنامه نویسی برای سیستم های بزرگ، توزیع شده و سرورهای شبکه بسیار مقیاس پذیر طراحی شده است. در همین راستا، آن را جایگزین++ C و جاوا در پشته نرم افزار Google می کند. بسیاری از تیم ها به دنبال ایجاد سرورهای جدید در Go هستند. برخی حتی در حال مهاجرت پایگاه های کد موجود هستند. برخی از فناوری های Google که هر روز از آنها استفاده می کنید دارای مؤلفه هایی هستند که در Go نوشته شده اند.

از آنجا که این زبان برنامه نویسی نسبتاً جدید است، بسیاری سؤال می کنند برای چه چیزی مناسب است؟ اجازه دهید نگاهی به برخی از مزایای آن بیاندازیم:

  • عالی برای توسعه وب
  • عالی برای اسکریپت نویسی خط فرمان
  • قابل استفاده برای برنامه های سرور شبکه
  • می تواند برای توسعه فرانت اند استفاده شود.

توسعه دهندگان از استفاده از Go لذت می برند زیرا محیط توسعه کاملی دارد، و یادگیری Go حتی برای توسعه دهندگان که تجربه زیادی ندارند، بسیار ساده است. یکی از دلایل این امر به دلیل داشتن اکوسیستم وسیع ابزار است، بنابراین این امر را برای پروژه های بزرگ و مشترک بسیار مفید می کند. این باعث می شود آن را به یک انتخاب عالی برای برنامه نویسی یک نرم افزار اختصاصی تبدیل کنید. اگر به دنبال مزایای بیشتر هستید، Go ایجاد شد و در حال حاضر توسط Google پشتیبانی می شود، که یکی از مهمترین زیرساخت های ابری در جهان را دارد و می تواند مقیاس گسترده ای داشته باشد.

علم داده (Data Science) و زبان GO

علم داده (Data Science)

یک علم چند رشته ای است که از روش های علمی، فرآیندها، الگوریتم ها و سیستم ها برای استخراج دانش و بینش از داده های ساختاری و بدون ساختار استفاده می کند. علم داده به منظور فهم و تحلیل پدیده های واقعی با داده ها مفهومی برای متحد کردن آمار، تحلیل داده، یادگیری ماشین و روش های مرتبط با آنها است. تکنیک ها و تئوری هایی را استخراج می کند که از بسیاری زمینه ها در چارچوب ریاضیات، آمار، علوم کامپیوتر و علوم اطلاعات به دست آمده است. جیم گری برنده جوایز تورینگ، علم داده را به عنوان "الگوی چهارم" علم (تجربی، نظری، محاسباتی و اکنون داده محور) تصور می کند و ادعا می کند که "همه چیز در مورد علم به دلیل تأثیر فن آوری اطلاعات تغییر می کند". انجمن آماری آمریكا مدیریت پایگاه داده، آمار و یادگیری ماشینی را مشخص كرد و سیستم های توزیع و موازی را به عنوان سه انجمن حرفه ای بنیادی در حال ظهور معرفی كرد. اکنون اغلب با مفاهیم قبلی مانند آنالیز تجارت، هوش تجاری، مدل سازی پیش بینی و آمار به صورت متقابل مورد استفاده قرار می گیرد. در حالی که اکنون بسیاری از برنامه های دانشگاهی دارای مدرک علوم داده هستند، در مورد تعریف محتوای برنامه درسی مناسب اجماع وجود ندارد. با این وجود، بسیاری از پروژه های علوم داده و داده های بزرگ نتوانسته اند نتایج مفیدی را بدست آورند، که غالباً به دلیل عدم مدیریت و استفاده از منابع است.

Go به طور فزاینده ای اثبات سریعتر، کدگذاری آسان به زبان های برنامه نویسی بسیار کارآمد و همزمان را نشان می دهد. این زبان به طور کلی نسل بعدی علوم داده، یادگیری ماشین و هوش مصنوعی است، زیرا توازن زیادی بین بهره وری و حفظ کد وجود دارد. بسیاری از دانشمندان داده های نمونه مدل های اولیه، که سپس توسط شخص دیگری به تولید منتقل می شود، Go به شما امکان می دهد هر دو را انجام دهید!

مقایسه پایتون و گو (GO)

پایتون (Python)

پایتون توسط Guido van Rossum ساخته شده و اولین بار در سال 1991 منتشر شد و از جهت فلسفه طراحی تاکید بر قابلیت خواندن کد و رویکرد شی گرا به منظور کمک به برنامه نویسان جهت نوشتن کد واضح و منطقی برای پروژه های کوچک و بزرگ دارد. Python زبان برنامه نویسی سطح بالا، تفسیر شده، تعاملی و شی گرا است. به شدت قابل خواندن است و غالبا پایتون از کلمات کلیدی انگلیسی استفاده می کند در حالیکه زبان های دیگر از روش های نقطه گذاری استفاده می کنند. همچنین python دارای ساختارهای syntactical کمتری نسبت به سایر زبان ها است. پایتون مفسر است بدین معنی که در زمان اجرا توسط مترجم پردازش می شود و لازم نیست قبل از اجرای آن برنامه خود را کامپایل کنید. این شبیه به PERL و PHP است. همچنین پایتون تعاملی است بنابراین می توانید به طور مستقیم با مترجم ارتباط برقرار کنید تا برنامه های خود را سریعا بنویسید. پایتون از سبک یا تکنیک برنامه نویسی شی گرا پشتیبانی می کند که کد را در داخل آبجکت قرار می دهد. بر روی هر سیستم عامل و پلتفرم عمده و همچنین موارد جزئی آن اجرا می شود. بسیاری از کتابخانه های مهم و خدمات مبتنی بر API دارای پیوندهای پایتون یا پلاگین هایی هستند که اجازه می دهد رابط پایتون به طور رایگان با این سرویس ها یا به طور مستقیم از آن کتابخانه ها استفاده کند. پایتون ممکن نیست سریعترین زبان باشد، اما سرعت آن بسیار بالاست.

تفاوت های اساسی بین پایتون و GO

  1. پایتون که یک زبانی است باید تفسیر شود در حالی که GO از آنجایی که مجبور نیست چیزی را در ران تایم در نظر بگیرد، سریع تر است.
  2. پایتون یک زبان با نحوی عالی است که به راحتی قابل درک است و از این رو قابل خواندن، انعطاف پذیر است، در حالی که Go نیز در ترکیب برترین ها قرار دارد که صفت اجزای غیر ضروری را در اختیار دارد.
  3. پایتون مکانیزم همزمانی داخلی را فراهم نمی کند در حالی که Go دارای مکانیزم همزمانی داخلی است.
  4. وقتی ایمنی به میان می آید، پایتون یک زبان کاملاً تایپ شده است که کامپایل می شود، از این رو اضافه کردن لایه ای از امنیت مشکل است در حالی که Go بسیار مناسب است از آنجا که هر متغیر باید یک نوع مرتبط با آن داشته باشد. این بدان معناست که توسعه دهنده نمی تواند جزئیاتی را که منجر به بروز اشکالات می شود، رها کند.
  5. پایتون نسبت به Go دارای تعداد زیادی کتابخانه است اما به تدریج این وضعیت با Go در حال بهبود است.
  6. پایتون هنوز هم هنگامی که نحو و در نتیجه کاربر پسند باشد، دست بالایی را به دست می آورد.
  7. پایتون هنوز هم یک زبان مورد علاقه برای حل مشکلات علوم داده است در حالی که Go برای برنامه نویسی سیستم ایده آل تر است.
  8. پایتون به صورت پویا تایپ می شود، در حالی که Go یک زبان استاتیک است، که در واقع به گرفتن اشکالات در زمان کامپایل کمک می کند که می تواند اشکالات جدی را بعدا در تولید کاهش دهد.
  9. پایتون برای برنامه نویسی اساسی بسیار عالی است، اگر کسی بخواهد سیستم های پیچیده ای بسازد، می تواند پیچیده باشد، در حالی که با Go می توان همان کار را به سرعت انجام داد بدون آنکه به ظرافت های زبان برنامه نویسی بپردازد.
  10. پایتون مختصر تر از Go است. تایپ پویا کمک می کند اما به طور کلی، می توان کد بسیار کامپکت را با Go نوشت.

برخی از برنامه های محبوب توسعه یافته در زبان GO

برخی از برنامه های اوپن سورس در Go عبارتند از:

  • Caddy: وب سرور HTTP 2 اوپن سورس با قابلیت HTTPS خودکار
  • CockroachDB: یک پایگاه داده SQL اوپن سورس، مقیاس پذیر و سازگار
  • داکر (Docker): مجموعه ای از ابزارهای استقرار لینوکس را شامل می شود.
  • Ethereum: پیاده سازی Go-Ethereum, دستگاه بلاکچین ماشین مجازی, Ethereum مجازی برای Cryptocurrency اتر
  • Hugo: یک ژنراتور سایت استاتیک
  • InfluxDB: پایگاه داده اوپن سورس برای رسیدگی به داده های سری زمانی با دسترسی بالا و الزامات عملکرد بالا
  • InterPlanetary File System: پروتکل آدرس دهی محتوا و نقطه به نقطه مدیا
  • Juju: یک ابزار ارزیابی خدمات توسط Canonical، پکیج های لینوکس اوبونتو.
  • کوبرنتیز (Kubernetes): سیستم مدیریت کانتینر
  • Lightning Network: یک شبکه بیت کوین که برای معاملات سریع Bitcoin است.
  • Mattermost: یک سیستم teamchat است.
  • OpenShift: یک پلتفرم محاسبات ابری که به عنوان یک سرویس توسط Red Hat ارائه شده است.
  • Snappy: یک مدیر پکیج برای Ubuntu Touch توسط Canonical توسعه یافته است.
  • Syncthing: نرم افزار اوپن سورس کلاینت/سرور هماهنگ سازی فایل است.
  • Terraform: یک ابزار اوپن سورس برای زیر ساخت چندرسانه ای ابر که توسط HashiCorp ارائه شده است.

دیگر شرکت های قابل توجه و سایت هایی که از GO استفاده کرده اند (به طور کلی همراه با زبان های دیگر، نه منحصرا) عبارتند از :

  • Cacoo: برای رندر صفحات داشبورد کاربر و میکرو سرویس ها با استفاده از Go و gRPC.
  • Chango: یک شرکت تبلیغاتی برنامه ای از سیستم های قیمت گذاری زمان واقعی خود استفاده می کند.
  • Cloud Foundry : یک پلتفرم به عنوان یک سرویس.
  • CloudFlare : برای Delta-coding proxy Railgun، سرویس DNS توزیع شده خود و همچنین ابزارهای رمزنگاری، ورود به سیستم، پردازش جریان و دسترسی به سایتهای SPDY استفاده شده است.
  • CoreOS: یک سیستم عامل مبتنی بر لینوکس است که از مخزن Docker و مخزن rkt استفاده می کند.
  • Dropbox: که تعدادی از اجزای حیاتی خود را از پایتون به GO مهاجرت داده است.
  • Ethereum : یک ارز دیجیتال
  • Google: در برای بسیاری از پروژه ها، از جمله شامل سرور دانلود (dl.google.com) استفاده کرده است .
  • Hyperledger Fabric : یک پروژه اوپن سورس،منحصر به فرد سازمانی است.
  • مانگودی بی (MongoDB): ابزار برای مدیریت نمونه های MongoDB
  • Netflix: برای دو بخش معماری سرور خود استفاده کرده است.
  • Novartis: برای سیستم موجودی داخلی
  • Nutanix : برای انواع میکرو سرویس در شرکت Cloud OS خود استفاده کرده است.
  • Plug.dj : یک وب سایت تعاملی در رابطه با جریان موسیقی اجتماعی آنلاین است.
  • SendGrid: یک بولدر، خدمات تحویل ایمیل و سرویس مدیریت معاملات مبتنی بر کلرادو.
  • SoundCloud: برای "dozens of systems" استفاده کرده است.
  • Splice: برای کل backend (API و parsers) در پلتفرم همکاری آنلاین موسیقی خود استفاده کرده است.
  • ThoughtWorks: برخی از ابزارها و برنامه های کاربردی برای تحویل مداوم و پیام های فوری (CoyIM).
  • Twitch.tv : برای سیستم چت مبتنی بر IRC (مهاجرت از پایتون).
  • Uber: برای رسیدگی به حجم زیادی از پرسش های مبتنی بر geofence

نمونه کدهای GO

نمایش !Hello World

package main
import "fmt"
func main() {
    fmt.Println("Hello, world")
}

برنامه ساده زیر ویژگی های همگرا Go برای اجرای یک برنامه ناهمزمان را نشان می دهد. این دو موضوع " goroutines " را راه اندازی می کند.

package main

import ( "fmt" "time" )

func readword(ch chan string) { fmt.Println("Type a word, then hit Enter.") var word string fmt.Scanf("%s", &word) ch <- word }

func timeout(t chan bool) { time.Sleep(5 * time.Second) t <- false }

func main() { t := make(chan bool) go timeout(t)

ch := make(chan string) go readword(ch)

select { case word := <-ch: fmt.Println("Received", word) case <-t: fmt.Println("Timeout.") } }

آیا این نوشته را دوست داشتید؟
packtpub-hands-on-fundamentals-of-data-science-with-go

آموزش اصول علم داده با Go


این دوره شما را راهنمایی می کند تا پروژه هایی مانند twitter bot را ایجاد کنید، تحلیل احساسات در مورد بررسی فیلم با استفاده از Naïve Bayes و درختان تصم...

1398/05/30 2150 بازدید
packtpub-go-building-devops-tools

آموزش Go - ساخت ابزارهای DevOps


در این دوره، ابتدا با REST APIs شروع خواهید کرد. سپس، شما یک کتابخانه کلاینت REST در طول دوره ایجاد می کنید و مفاهیم جدید آن را فرا می گیرید. در آخر، ...

1398/05/21 2998 بازدید
packtpub-advanced-go-programming-in-7-days

آموزش پیشرفته برنامه نویسی Go در هفت روز


زبان GO زبانی مدرن، متن باز و استاتیک است و به زبان C شباهت دارد. ویژگی های زبان GO خصوصا در توسعه اپلیکیشن های cloud-native سودمند هستند زیرا کار با ...

1398/03/02 5387 بازدید
packtpub-getting-started-with-go-programming-language

شروع کار با برنامه نویسی به زبان GO


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

1398/02/26 3819 بازدید
packtpub-building-restful-apis-with-go

ساخت RESTful API با Go


در این آموزش تصویری با ساخت API با معماری REST به کمک زبان برنامه نویسی Go آشنا می شوید. استفاده از معماری RESTful برای حل چالش های اپلیکیشن های مقیا...

1398/02/07 4008 بازدید
addison-wesley-ultimate-go-programming-second-edition

آموزش برنامه نویسی با زبان Go - نسخه دوم


این دوره یک دیدگاه فشرده، جامع و اصیل از زبان برنامه نویسی Go را فراهم می کند. این دوره تمرکز بر خصوصیات و پیاده سازی زبان، از جمله موضوعاتی مانند سین...

1397/10/06 2981 بازدید
manning-publications-go-in-action-video-edition

آموزش کاربردی Go - نسخه ویدئویی


این دوره زبان Go را معرفی می کند و شما را  از برنامه نویس کنجکاو به Go guru هدایت می کند. در این دوره با ویژگی ها و مفاهیم منحصر به فرد Go، نوشتن اپلی...

1397/10/06 1855 بازدید
packtpub-go-standard-library-solutions-video

آموزش راه حل های کتابخانه استاندارد Go 


زبان Go یک کتابخانه استاندارد کامل دارد که نیاز به کمی از کتابخانه های شخص ثالث برای چیزهایی مانند دستکاری رشته، فایل و شبکه I / O، تست، سرورهای HTTP ...

1397/08/02 1510 بازدید
packtpub-functional-programming-in-go-video

دوره برنامه نویسی تابعی در زبان Go 


Go به عنوان یک زبان ثابت کرده است که یک ابزار عالی برای مهندسی پروژه های نرم افزاری بزرگ است. آنچه که باعث اهمیت این زبان می شود سادگی، بهره وری و کار...

1397/08/01 1569 بازدید
packtpub-hands-on-serverless-computing-with-go-video

آموزش محاسبات Serverless با Go 


در این دوره با ایجاد اپلیکیشن های serverless با AWS، صرفه جویی در زمان، تلاش و هزینه با حذف نیاز به مدیریت سرورهای خود با Go، معرفی AWS، نوشتن توابع L...

1397/06/08 1488 بازدید
pluralsight-learn-to-program-with-go

آموزش برنامه نویسی با زبان Go


زبان Go راه جدیدی برای نگاه کردن به چگونگی ساخت یک زبان برنامه نویسی ارائه می دهد. هر ساختار زبان در نظر می گیرد که چگونه طراح و کامپایلر باید با آن ت...

1397/05/22 2158 بازدید
pluralsight-the-go-cli-playbook

آشنایی با Go CLI


زبان Go نامی را برای خودش با در نظر گرفتن سادگی به عنوان مفهوم طراحی ایجاد کرده است. در این دوره با ابزار خط فرمان Go، بازیابی بسته های شخص ثالث، ایجا...

1397/05/17 1371 بازدید
pluralsight-debugging-go-applications-with-delve

آموزش اشکال زدایی اپلیکیشن Go با Delve


هنگامی که Go برای اولین بار در سال 2012 منتشر شد، گزینه های اشکال زدایی Go Code محدود بودند. بیشترین کار اشکال زدایی توسط debugger متن باز GDB انجام م...

1397/05/12 1041 بازدید
teamtreehouse-go-language-overview-course

آموزش ویژگی های زبان Go 


زبان برنامه نویسی Go برای توسعه دهندگان طراحی شده است که از قبل با زبان دیگری آشنا هستند.  این یک دوره از ویژگی های اصلی زبان مانند رابط ها و goroutin...

1397/05/07 1276 بازدید
packtpub-hands-on-with-go-video

آموزش کار با Go 


زبان برنامه نویسی Go همانند زبان C ساده و سریع می باشد که شمار دامنه های برنامه نویسی سطح سیستم ها را افزایش می دهد و آن را برای برنامه نویسانی که با ...

1397/04/10 1284 بازدید
packtpub-network-programming-with-go-video

آموزش برنامه نویسی شبکه با Go


زبان برنامه نویسی Go به دلیل سادگی، کارایی و سهولت استفاده در سال های اخیر محبوبیت زیادی به دست آورده است. این دوره به شبکه سازی API در زبان Go می پرد...

1397/03/02 2490 بازدید
learning-go-programming-in-one

آموزش کامل برنامه نویسی GO در یک ویدئو


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

1397/01/30 1751 بازدید
1396/11/08 1380 بازدید زیرنویس دارد
1396/10/28 1279 بازدید