زبان گو یا گولنگ یک زبان کامپایلری است که توسط گوگل توسعه داده شده و با هدف سادگی، کارایی و قابلیت پردازش همزمان بالا طراحی شده است. گو یک زبان برنامهنویسی مدرن است که از نظر امنیت، کارایی و سرعت اجرا عالی است و برای توسعه برنامههای وب، سروری، نرمافزارهای سیستم و بسیاری از کاربردهای دیگر مناسب است. در این دوره از نیک آموز با زبان برنامه نویسی گو آشنایی پیدا میکنید و میتوانید بهخوبی تسکها را به اجرا درآورید. اگر دنبال دوره تخصصیتر زبان گو هستید، دوره زبان برنامه نویسی Go نیک آموز ویژه شما طراحی شده.
1.100.000 تومان Original price was: 1.100.000 تومان.660.000 تومانCurrent price is: 660.000 تومان.
زبان گو یا Golang بهدلیل ویژگیها و مزیتهایی که دارد، نظر هر توسعهدهندهای را به خود جلب میکند. گولنگ زبان برنامهنویسی متنباز (Open Source) است که ساخت نرمافزار را ساده، قابل اعتماد و بهینه میکند. گو زبانی است که توسط شرکت Google طراحی گردیده و درحال حاضر، در سامانههای متفاوت اجرایی گوگل بهکار گرفته شده است.
در جلسه اول از دوره آموزش شروع کار با گو، در ابتدا به بررسی زبان برنامهنویسی و انواع آن میپردازیم؛ سپس وارد دنیای جذاب زبان گولنگ میشویم و ویژگیهای آن را بررسی میکنیم.
▪️زبان برنامهنویسی چیست؟
▪️ بررسی انواع زبانهای برنامهنویسی
▪️ زبان سطح پایین
▪️ زبان سطح میانی
▪️ زبان سطح بالا
▪️ بررسی زبان گولنگ و مروری بر ویژگیهای آن
▪️ منظور از کامپایلر چیست؟
▪️ بررسی موارد استفاده از زبان گو
▪️ مروری بر بازار کار زبان گولنگ
در اولین قدم یادگیری هر زبان برنامه نویسی، میبایست با محیط برنامه نویسی آشنا شوید و تمامی ابزارها و نیازمندیهایی که برای کار با یک زبان برنامه نویسی باید در سیستم عامل نصب شود را بررسی کنید.
در این جلسه، IDEهای مناسب زبان گولنگ را بررسی میکنیم و در ادامه، به نصب و کانفینگ VS Code بهعنوان محیط برنامهنویسی، که در این دوره بررسی میشود، میپردازیم تا شما بهراحتی VS Code را بههمراه افزونههای جانبی آن نصب کرده و آماده کدزنی و شروع یادگیری گو شوید.
▪️ منظور از محیط برنامهنویسی چیست؟
▪️ IDE چیست؟
▪️ انواع IDE قابل استفاده برای برنامهنویسی گولنگ
▪️ VS Code
▪️ LiteIDE
▪️ GoLand
▪️ Wide
▪️ Vim
▪️ IntelliJIDE
▪️ بررسی نصب کتابخانه و اجرا کامپایلر زبان گولنگ
▪️ نصب و کانفیگکردن محیط ویژوال استودیو و افزونههای جانبی
برنامههای دنیای واقعی، پیچیده هستند؛ حتی یک بازی ساده مانند شبیهساز تاس، به کد زیادی نیاز دارد. برای ساده سازی فرآیند و مؤثرتر شدن آن، توسعه دهندگان از برنامه نویسی ماژولار استفاده میکنند؛ روشی برای تقسیم وظایف بزرگ برنامه نویسی به ریز وظایف کوچکتر و قابل مدیریت؛ اما هنگام توسعه یک برنامه بزرگ، ممکن است با ماژولهای مختلفی مواجه شوید که مدیریت آنها دشوار است. در چنین حالتی، از گروهبندی و سازماندهی ماژولهای خود سود خواهید برد. آن زمان است که پکیجها به کار میافتند.
در جلسه سوم میخواهیم با این دو مفهوم مهم و کارآمد در زبان برنامهنویسی آشنا شویم و اولین پروژه را، یعنی پروژه سلام دنیا، اینبار بار زبان گولنگ پیادهسازی کنیم.
▪️ منظور از پکیج در زبان گو چیست؟
▪️ ماژول یا قطعه در زبان گولنگ چیست و چه کاربردی دارد؟
▪️ ایجاد اولین برنامه با گولنگ
▪️ ایجاد پروژه Hello World با زبان گولنگ و دریافت خروجی از آن
در زبان برنامهنویسی گولنگ، متغیرها نمایانگر نامهایی هستند که به مقادیر دادهای اشاره میکنند و میتوانند در طول اجرا، مقدارشان تغییر کند. گو یک زبان استاتیک است؛ به این معنی که تایپ دادهای هر متغیر، باید هنگام تعریف آن مشخص شود و نمیتواند در طول اجرا تغییر کند. در این قسمت از دوره آموزش زبان گو، موارد زیر را در این رابطه بررسی میکنیم:
▪️ بررسی مفهوم متغیر یا Variable
▪️ زبان استاتیک و داینامیک چیست و چطور تقسیم بندی میشوند؟
▪️ بررسی انواع متغیر در زبان گولنگ و محدوده آنها
▪️ Int و انواع آن
▪️ Uint و انواع آن
▪️ Uintptr
▪️ float32 و float64
▪️ complex64 و complex128
▪️ Bool
▪️ رشته یا String
▪️ متغیرهای سراسری و محلی در زبان گولنگ
▪️ روشهای تعریف متغیر در زبان گولنگ
▪️ تبدیل انواع تایپها به یکدیگر و استفاده از آنها
▪️ تعریف ثابتها یا Const
string یا رشته یکی از انواع داده مهم و پراهمیت در زبانهای برنامهنویسی است. درواقع، رشته یک نوع داده (Data Typte) در برنامهنویسی بهحساب میآید که توالی از کاراکترها، کلمات، عبارتها و سایر موارد را تشکیل میدهد. با استفاده از کتابخانه strings، برنامهنویسان میتوانند توابعی برای جستجو، جایگزینی، تقسیم و اتصال رشتهها را بهراحتی استفاده کنند. همچنین، امکان مستقیمی برای دسترسی و تغییر به کاراکترهای رشته وجود دارد.
گولنگ به لحاظ بهرهوری و کارایی بالا، یک انتخاب مناسب برای توسعهدهندگان است که نیاز به کار با رشتهها با استفاده از توابع پیچیده و کاربردی دارند. در این قسمت، موارد زیر را مورد بررسی قرار میدهیم.
▪️ رشته چیست؟
▪️ نحوه ذخیره رشته
▪️ بررسی توابع کار برروی رشتهها
▪️ اجرای سناریوهای عملی برای کار با توابع برروی رشتهها
شرطها الگوی رفتاری از دنیای واقعی هستند. در زبان برنامهنویسی گولنگ، ساختارهای شرطی شامل دستورات if ،else و switch استفاده میشوند. این ساختارها برای کنترل جریان اجرای برنامه و انتخاب اقدامات مناسب در وابستگی به ورودیها و شرایط مختلف بسیار مفید هستند.
در جلسه ششم یاد میگیریم چطور به کمک شرطها، رفتارهای متفاوت در برنامههایی که به کمک زبان گو مینویسیم را کنترل کنیم.
▪️ ساختار شرطی چیست؟
▪️ انواع ساختارهای شرطی در زبان گو
▪️ بررسی دستور شرطی IF
▪️ بررسی دستور شرطی SWITCH CASE
حلقهها بهمعنی تکرار یک دستور به اندازه مشخص و شرط مشخص است. در زبان برنامهنویسی گولنگ، برای تکرار عملیات، از ساختار حلقه استفاده میشود. حلقهها در گولنگ به دو نوع for و range دارند. در این قسمت آموزش زبان گو، ساختارهای تکرار و حلقه را بهطور کامل زیر ذرهبین میبریم و موارد زیر را بررسی میکنیم:
▪️ حلقه و تکرار چیست؟
▪️ بررسی انواع ساختارهای تکرار در زبان گو
▪️ FOR{}
▪️ For con {}
▪️ FOR stsrt ; con ; ++
آرایه یعنی مجموعهای از عناصر همنوع در زبان برنامهنویسی. در زبان برنامهنویسی گولنگ، آرایهها از مجموعهای از عناصر با اندیسهای مشخص تشکیل شدهاند که اندازه آنها در زمان تعریف ثابت است. اسلایسها نیز بهعنوان یک نسخه داینامیکتر از آرایهها عمل میکنند و میتوانند در طول اجرا، تغییر اندازه دهند.
مپها بهصورت جفتهای کلید، مقدار عمل میکنند و برای دسترسی سریع به مقادیر با استفاده از کلیدها مناسب هستند که این ویژگیها، آنها را برای مدیریت دادههای پویا و انعطافپذیر، کاربردی میسازد که در این قسمت از دوره گو، آنها را بررسی میکنیم.
▪️ آشنایی با آرایهها در زبان گو
▪️ آشنایی با اسلایس در زبان گو
▪️ آشنایی با مپ در زبان گو
در زبان برنامهنویسی گولنگ، توابع مهمترین واحدهای ساختاری هستند که برنامهنویسان برای اجرای کد و انجام عملیاتهای خاص استفاده میکنند. توابع میتوانند با و بدون بازگشتی باشند. توابع بدون بازگشتی فقط یک مقدار برمیگردانند. این قسمت آموزش گو، موارد زیر را از توابع بررسی میکنیم:
▪️ تابع و مفهوم آن در زبان گو
▪️ بررسی انواع تابع د رزبان گو
▪️ Normal funection: توابع با قالب استاندارد
▪️ Multiple results: توابع با برگشت چند مقدار
▪️ Named Return Values: توابع و نامگذاری مقادیر برگشتی
▪️ Variadic Functions: توابع بدون محدودیت ورود
▪️ Anonymous Functions: توابع بدون نام
▪️ Function closure: کلوژرها
▪️ پیادهسازی تابع و ساختار آنها در زبان گو
در زبان برنامهنویسی گولنگ، Struct (ساختار) یک نوع دادهساختاری است که به برنامهنویسان این امکان را میدهد تا گروهی از متغیرها را در یک واحد تشکیل دهند. مزیت اصلی استفاده از Struct در گولنگ این است که اجازه میدهد تا دادههای مرتبط را بهصورت منطقی و یکپارچه دستهبندی کرده و عملیات مرتبط با آنها را انجام دهیم. بررسی این نوع داده، موضوع این قسمت از دوره گو است:
▪️ STRUCT چیست و کاربرد آن در زبان گو کجاست؟
▪️ پیادهسازی STRUCT در زبان گو
▪️ بررسی نحوه اجرا Type User Struct{} بهصورت کار عملی
اینترفیس در زبان گولنگ یک مجموعه از امضای توابع است که برای یک نوع خاص تعریف میشود و به برنامهنویس این امکان را میدهد که رفتار مشخصی را برای انواع مختلف دادهها تعریف کند؛ بدون ارتباط مستقیم با نوع خاص دادهها.
جنریک در گولنگ به برنامهنویس این امکان را میدهد که کدهایی را نوشته و استفاده کند که برروی انواع دادههای مختلف کار کنند؛ بدون نیاز به نوشتن کد مجدد برای هرنوع داده.
استفاده از این دو ویژگی که در این قسمت بررسی میشوند، کمک میکند تا کدهای مقیاسپذیر، قابل استفاده مجدد و قابل توسعهای ایجاد شود که این مسئله برای توسعهدهندگان، بسیار حیاتی است.
▪️ تعریف اینترفیس و کاربرد آن در زبان گو
▪️ تعریف جنریک و کاربرد آن در زبان گو
▪️ پیادهسازی اینترفیس در زبان گو
▪️ پیادهسازی Generic در زبان گو
در جلسه سوم با مفهوم پکیچ و ماژول در زبان گو آشنا میشویم و قصد داریم با توجه به دانشی که تا به اینجا از برنامهنویسی و این زبان جذاب کسب کردهایم، به بررسی عمیقتر و حرفهایتر این دو مفهوم کارآمد و مهم بپردازیم و مثالهای جامعتری را پیادهسازی کنیم.
▪️ تعریف پکیج و ماژول
▪️ پیادهسازی آن
در جلسه سیزدهم قصد داریم به مبحث مهم مدیریت خطاها یا error-handling در زبان گو بپردازیم و ببینید چطور میتوانید خیلی ساده، خطاها را مدیریت کنید. مدیریت خطا در زبان گو با سایر زبانها متفاوت است. مدیریت خطا و لاگ و استفاده از defer ,panic و recovery به توسعهدهندگان امکان میدهد تا کدهای خود را قابل اعتمادتر و قابل اطمینانتر کنند.
▪️ خطا چیست؟
▪️ لاگ چیست؟
▪️ Defer ,panic ,recovery
▪️ پیادهسازی
در زبان گولنگ، همروندی بهمعنای اجرای چندین فعالیت بهصورت همزمان است که این امکان بااستفاده از گوروتینها و کانالها فراهم میشود. استفاده از همروندی در گولنگ، به برنامهنویسان این امکان را میدهد که برنامههایی با عملکرد بهتر و موازی اجرا شوند که این امر، برای بهبود کارایی و پاسخگویی برنامهها بسیار مفید است. در این بخش از دوره، موارد زیر را بررسی میکنیم:
▪️ همروندی چیست؟
▪️ تفاوت همروندی با موازیسازی
در قسمت پایانی دوره، به بررسی هرآنچه که در دوره آموخته شده است، میپردازیم. در این دوره با ساختار کلی و دستورات اولیه زبان گو آشنا شدید؛ ضمن مروری بر توابع مهم و کاربردی، به ارائه و حل تمرینهای مختلف برای تثبیت مفاهیم آموزشی میپردازیم.
اکبر رضاییان قانع مدرس و مدیر فنی پروژههای نرمافزاری و معمار پروژه و مشاور در شرکتهای داخل و خارج کشور (IBM , Akila, وزارت بهداشت، وزارت ارتباطات، بورس، انتشارات گاج و…) و همچنین تدریس برنامهنویسی پیشرفته در ۸ زبان مطرح و پرکاربرد دنیا. ترجمه و تألیف چند کتاب در حوزه برنامهنویسی و هوش مصنوعی
این دوره به صورت دانلودی و دارای لایسنس پخش میباشد. شما میتوانید این دوره را در پلیر اختصاصی مجموعه، با نام اسپات پلیر مشاهده کنید. توجه کنید که پس از تهیه این دوره، یک کلید لایسنس منحصر به فرد در پنل کاربری شما قرار میگیرد. در صورتی که به لایسنسهای بیشتری نیاز داشته باشد، میتوانید با پرداخت هزینه آن از این مزیت برخوردار شوید. توجه کنید که تمام فایلهای مربوط به دوره، شامل سورس کدها و جزوات، همگی در اسپات پلیر قابل دسترس شما هستند. برای اطلاعات بیشتر، به مقاله «راهنمای مشاهده محصولات آموزشی محافظت شده نیکآموز» مراجعه کنید.
بله، شما میتوانید از طریق اسنپ پی، این دوره آموزشی را تهیه کنید. کافیست در اسنپ پی حساب کاربری ایجاد کرده و پس از ورود به صفحه نیک آموز، دوره مورد نظر را تهیه کنید. اگر بخواهید از خرید اقساطی به عنوان روش پرداخت هزینه استفاده کنید، تنها یک چهارم آن را در ابتدا پرداخت خواهید کرد. شما میتوانید با مطالعه «راهنمای خرید اقساطی دوره آموزشی با اسنپ پی» با مراحل آن آشنا شوید.
بله، هدف ما در مجموعه نیک آموز، فراهم کردن دوره های آموزشی به روز و مطابق با آخرین تغییرات است. علاوه بر این، بر اساس اینکه در طول زمان چه میزان تغییراتی در محتوای دوره آموزشی ایجاد شود، تخفیف های مناسبی ( ۵۰٪ الی ۱۰۰٪) به خریداران دوره های پیشین تعلق میگیرد. در شرایطی که بروزرسانی دوره، به افزایش مثالها یا Feature های خاصی محدود شود، این موارد به صورت رایگان در اختیار شما قرار خواهد گرفت تا شما بتوانید دورهای که از قبل تهیه کردهاید را به بهترین شکل ممکن درک کنید و مهارتهای خود را مطابق با آپدیتها گسترش دهید. ضمن اینکه میتوانید تا مدت زمان شش ماه از پشتیبانی برخوردار شوید.
رضایت شما از دوره آموزشی و کمک به رفع مشکلات احتمالی، برای ما اهمیت زیادی دارد. به همین دلیل، یک گروه پشتیبانی در تلگرام ایجاد شده است تا شما بتوانید درصورت نیاز، مسائل خود را در این بستر مطرح کنید. تا حداکثر ۴۸ ساعت کاری پس از ثبت نام در دوره، با شما تماس گرفته میشود و فرآیند عضویت شما در گروه تلگرام نهایی خواهد شد. توجه شود که در آینده، سیستم تیکتینگ راهاندازی میشود و فرآیند پشتیبانی از گروه تلگرامی به آن جا منتقل خواهد شد.
شما میتوانید با مراجعه به فرم درخواست مشاوره تخصصی از متخصصان نیک آموز مشاوره دریافت کنید.
بله؛ در نیک آموز امکان برگزاری دورههای سازمانی بهصورت تخصصی فراهم شده است. به منظور ثبت درخواست، کافی است اطلاعات خود و دوره سازمانی مدنظر را در فرم درخواست آموزش سازمانی ثبت کنید تا ما با شما تماس بگیریم.
برای اینکه بتوانید در ارتباط با برنامهنویسی، مشاوره / تدریس خصوصی بگیرید، لطفاً فرم درخواست مشاوره مدرسین را تکمیل نمایید تا کارشناسان ما با شما تماس بگیرند.
بله؛ شما میتوانید از مشاورههای نیکآموز بهعنوان راهنما در مسیر خود استفاده کنید. برای این منظور، لطفاً شماره خود را در فرم مشاوره صفحه دوره وارد کنید تا مشاوران نیک آموز با شما تماس بگیرند.
Δ
ذخیره نام، ایمیل و وبسایت من در مرورگر برای زمانی که دوباره دیدگاهی مینویسم.
سلام و تشکر فراوان از سایت خوب نیک اموز دوره های استاد رضاییان بی همتا هستند من دوره دواپس ایشون و دیدم و همچنین اموزشهای دیگشون رو میشه یه خواهش کنم برای ارتقا سطح فنی دواپس یک کلاس حضوری صفر تا صد دواپس با ایشون برگزار کنید
سلام و عرض ادب ، وقت شما بخیر و شادی از لطف شما سپاسگزاریم حتما موردی که فرمودین بررسی خواهد شد .
ممنون از سایت شما تعریف استاد رضاییان قانع رو زیاد شنیدم تو سازمانهای بزرگ ایشون رو خوب میشناسن هشت ماهه دارم گولنگ کار میکنم با یه شرکت تو دبی مصاحبه کردم و استاد قانع رو نام برد که معماری پروژه شون رو ایجاد کرده تو حوزه ارز دیجتال بودن و خیلی از استاد تعریف کرد الان که دورشون رو دیدم کلی ذوق کردم سپاس از نیک اموز بخاطر استادای خوبی که میاره
سلام و عرض ادب ، وقت شما بخیر و شادی از لطف شما سپاسگزاریم همواره تلاش تیم نیک آموز در راستای آموزش باکیفیت با بهترین اساتید هستش که بتونیم دوره آموزشی خوبی رو در اختیارتون قرار بدیم .
خیلی ممنون از سایت نیک اموز بابت سایت خوبتون و دستمریزاد به خاطر اوردن یکی از بهترین اساتید برنامه نویسی ایران استاد قانع هم استاد بزرگی هستند هم برنامه نویس بزرگی هستن هم مرد بزرگی هستن
از نیک اموز ممنونیم شرکت ما از اقای مهندس قانه برای مشاوره معماری و DDD کمک گرفت و با چند جلسه چندین جلسه اموزش سطح برنامه نویسها تو معماری و بخصوص DDD خیلی بالا رفت خواهش میکنم دوره DDD ایشون رو منتشر کنید بخصوص برای ماهایی که قصد مهاجرت داریم
با سلام و تشکر از سایت نیک اموز و استاد قانع تو رو خدا یک دوره جاوا و اسپرینگ بوت از پایه با استاد قانع برگزار کنید
سلام و عرض ادب ، وقت شما بخیر و شادی سپاس از محبت شما ، بله حتما در اینده آموزش جاوا با تدریس استاد رضائیان بزرگوار خواهیم داشت .
من تو یک پروژه برای خارج کشور افتخار این رو داشتم نیروی اقای رضاییان قانع بودم تاره فهمیدم معماری و برنامه نویسی یعنی چی یه ادم جدی و دلسوز نن هر چی تو جاوا بلدم رو از مهندس یاد گرفتم خیلی مردی
با سلام و تشکر از استاد رضاییان قانع و مجموعه نیک اموز لطفا در صورت امکان با استاد رضاییان امکان کلاس حضوری هم ایجاد کنید
عالی عالی عالی از نیک اموز ممنونم که از استاد قانع دوره پخش کردن
سلام . ببخشید میخواستم بدونم امکانش هست بابت خرید دوره تخفیف بدید؟
عرض سلام و ادب
دوره قسمت پروژه پایانی هنوز تکمیل نشده است؟
این دوره با استاد رضاییان عالیه دمتون گرم
این دور با استاد رضاییان عالیه
سلام و عرض ادب امیدوارم حالتان خوب باشد. جلسه ششم این دوره به پروژه اختصاص داده شده است.