😁در حاضر به کدوم درجه رسیدی توی گولنگ?😁
Final Results
5%
🔵 Senior 🔵
30%
🔴 Mid-Level 🔴
67%
🟢 Junior 🟢
💔1
یکی از کانال داره دوره پیشرفته برنامه نویسی وب با زبان گولنگ رو ریکورد میکنه
اگه کسی توانایی چسبوندن صدا و ویدئو رو داره بیاد کمک @mrViam
این دوره رایگانه
اگه کسی توانایی چسبوندن صدا و ویدئو رو داره بیاد کمک @mrViam
این دوره رایگانه
Final Results
97%
آره این دوره ضبط شه
3%
نه نیار نیست ضبط شه
Gopher Academy
🎯نگاهی عمیق به تایپ های گولنگ🎯 🔹Type Aliases 🔹Basic Types 🔹Strings 🔹Pointers 🔹Pointers 🔹Interfaces 🔹Structs 🔹Type Assertions 🔹Reflection 🔹Functions 🔹Channels 🔹Collections 🔹Arrays 🔹Slices 🔹Maps 🔹Zero Values ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
❌Channels❌
😜Channels are an unusual data type😉
کانال ها یک نوع داده غیرمعمول هستند. شما می توانید آنها را به عنوان صف های پیام در نظر بگیرید که برای ارسال پیام بین گورتین استفاده می شود. درضمن کانال ها strongly typed می باشند.
آنها همگام سازی شده اند و از پشتیبانی از نحو اختصاصی برای ارسال و دریافت پیام برخوردارند. هر کانال می تواند فقط دریافت ، ارسال و یا دو جهته باشد.
در اینجا یک مثال معمولی وجود دارد که در آن مجموع مربعات لیستی از اعداد صحیح به طور موازی توسط دو گورتین محاسبه می شود ، هر کدام نیمی از لیست را تشکیل می دهند. عملکرد اصلی منتظر نتیجه هر دو برنامه هست و سپس نتیجه این دو را نمایش می دهد.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
😜Channels are an unusual data type😉
کانال ها یک نوع داده غیرمعمول هستند. شما می توانید آنها را به عنوان صف های پیام در نظر بگیرید که برای ارسال پیام بین گورتین استفاده می شود. درضمن کانال ها strongly typed می باشند.
آنها همگام سازی شده اند و از پشتیبانی از نحو اختصاصی برای ارسال و دریافت پیام برخوردارند. هر کانال می تواند فقط دریافت ، ارسال و یا دو جهته باشد.
در اینجا یک مثال معمولی وجود دارد که در آن مجموع مربعات لیستی از اعداد صحیح به طور موازی توسط دو گورتین محاسبه می شود ، هر کدام نیمی از لیست را تشکیل می دهند. عملکرد اصلی منتظر نتیجه هر دو برنامه هست و سپس نتیجه این دو را نمایش می دهد.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
در واقع Strong typing معنی کلیاش این میشه که شما در زبان برنامه نویسی موردنظرتون باید مشخص کنید که متغیرها، ورودی/خروجی توابع، آرگومانها و ... دقیقاً از چه نوعی هستند؛ یعنی کامپایلر در چنین زبانهای برنامهنویسی، کدهای برنامه شما رو قبل از اینکه به مرحله Runtime برسه، بررسی میکنه و مطمئن میشه که شما نوعها رو بصورت کامل مشخص کردید و نمیذاره شما دادۀ بدون نوع داشته باشید
➖➖➖➖➖➖➖➖➖
در واقع Weak typing با خیال راحت، هرجوری حال میکنید! میتونید از تعریف متغیر بدون نوع استفاده کنید، تو این نوع زبانها، کامپایلر همه کار رو خودش میکنه و اصلاً کار نداره که شما برای متغیری نوع تعریف کنید، برای همین بسیار تنبلپرور هستند؛
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
➖➖➖➖➖➖➖➖➖
در واقع Weak typing با خیال راحت، هرجوری حال میکنید! میتونید از تعریف متغیر بدون نوع استفاده کنید، تو این نوع زبانها، کامپایلر همه کار رو خودش میکنه و اصلاً کار نداره که شما برای متغیری نوع تعریف کنید، برای همین بسیار تنبلپرور هستند؛
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌generic collections❌
یعنی هر نوع دادهای را می توانید ذخیره کنید
🔹arrays
🔹slices
🔹maps
🔹Channels
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
یعنی هر نوع دادهای را می توانید ذخیره کنید
🔹arrays
🔹slices
🔹maps
🔹Channels
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🎯نگاهی عمیق به تایپ های گولنگ🎯 🔹Type Aliases 🔹Basic Types 🔹Strings 🔹Pointers 🔹Pointers 🔹Interfaces 🔹Structs 🔹Type Assertions 🔹Reflection 🔹Functions 🔹Channels 🔹Collections 🔹Arrays 🔹Slices 🔹Maps 🔹Zero Values ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
❌ Slices ❌
آرایه ها به دلیل اندازه ثابت بسیار محدود هستند. اما Slices ها خیلی جالب ترند. شما می توانید Slices ها را به عنوان آرایه های پویا در نظر بگیرید.
بهتره بجای array از Slices استفاده کنید توی پروژه هاتون به دلیل کنترل gerber collector
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
آرایه ها به دلیل اندازه ثابت بسیار محدود هستند. اما Slices ها خیلی جالب ترند. شما می توانید Slices ها را به عنوان آرایه های پویا در نظر بگیرید.
بهتره بجای array از Slices استفاده کنید توی پروژه هاتون به دلیل کنترل gerber collector
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
❌ Slices ❌ آرایه ها به دلیل اندازه ثابت بسیار محدود هستند. اما Slices ها خیلی جالب ترند. شما می توانید Slices ها را به عنوان آرایه های پویا در نظر بگیرید. بهتره بجای array از Slices استفاده کنید توی پروژه هاتون به دلیل کنترل gerber collector ➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
👆🏻👆🏻توضیحات بیشتر👆🏻👆🏻
از طرف دیگر ، Slices ها بسیار انعطاف پذیر ، قدرتمند و راحت تر از آرایه ها هستند. بر خلاف آرایه ها ، می توان Slices ها را با استفاده از تابع ضمیمه داخلی تعبیه کرد. بعلاوه ، Slices از نوع مرجع یا refrence هستند ، بدین معنی که اختصاص آنها کم هزینه است و می توانند بدون نیاز به ایجاد نسخه جدیدی از آرایه اصلی آن ، به سایر توابع منتقل شوند. سرانجام ، توابع موجود در کتابخانه استاندارد Go ، همه از Slices به جای آرایه ها در API های عمومی خود استفاده می کنند.
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
از طرف دیگر ، Slices ها بسیار انعطاف پذیر ، قدرتمند و راحت تر از آرایه ها هستند. بر خلاف آرایه ها ، می توان Slices ها را با استفاده از تابع ضمیمه داخلی تعبیه کرد. بعلاوه ، Slices از نوع مرجع یا refrence هستند ، بدین معنی که اختصاص آنها کم هزینه است و می توانند بدون نیاز به ایجاد نسخه جدیدی از آرایه اصلی آن ، به سایر توابع منتقل شوند. سرانجام ، توابع موجود در کتابخانه استاندارد Go ، همه از Slices به جای آرایه ها در API های عمومی خود استفاده می کنند.
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
👆🏻👆🏻توضیحات بیشتر👆🏻👆🏻 از طرف دیگر ، Slices ها بسیار انعطاف پذیر ، قدرتمند و راحت تر از آرایه ها هستند. بر خلاف آرایه ها ، می توان Slices ها را با استفاده از تابع ضمیمه داخلی تعبیه کرد. بعلاوه ، Slices از نوع مرجع یا refrence هستند ، بدین معنی که اختصاص آنها…
👆🏻👆🏻👆🏻👆🏻
❌ این Slices ها را می توان با استفاده از نحوهای زیر ایجاد کرد:
🔹make([]Type, length, capacity)
🔹make([]Type, length)
🔹[]Type{}
🔹[]Type{value1, value2, ..., valueN}
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌ این Slices ها را می توان با استفاده از نحوهای زیر ایجاد کرد:
🔹make([]Type, length, capacity)
🔹make([]Type, length)
🔹[]Type{}
🔹[]Type{value1, value2, ..., valueN}
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
❌Arrays❌ آرایه ها مجموعه هایی با اندازه ثابت از عناصر یک نوع هستند. ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
👆🏻👆🏻👆🏻👆🏻
❌ این Arrays ها را می توان با استفاده از نحوهای زیر ایجاد کرد:
🔹[N]Type
🔹[N]Type{value1, value2, ..., valueN}
🔹[...]Type{value1, value2, ..., valueN}
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌ این Arrays ها را می توان با استفاده از نحوهای زیر ایجاد کرد:
🔹[N]Type
🔹[N]Type{value1, value2, ..., valueN}
🔹[...]Type{value1, value2, ..., valueN}
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌کارگاه برنامهنویسی وب دانشگاه صنعتی شریف❌
🥳حتما به نگاهی کنید جالبه
🔹Angular
🔹CI-CD
🔹CSS
🔹ChartJS
🔹Docker
🔹Flutter
🔹GraphQl
🔹HTML
🔹JavaScript
🔹Kubernetes
🔹React
🔹Redux
🔹Restful-API
🔹Statics
🔹TypeScript
🔴 https://github.com/mostafaghadimi/web_workshop
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🥳حتما به نگاهی کنید جالبه
🔹Angular
🔹CI-CD
🔹CSS
🔹ChartJS
🔹Docker
🔹Flutter
🔹GraphQl
🔹HTML
🔹JavaScript
🔹Kubernetes
🔹React
🔹Redux
🔹Restful-API
🔹Statics
🔹TypeScript
🔴 https://github.com/mostafaghadimi/web_workshop
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy pinned «🎯 درود دوستان بنده قصد دارم توی ریپوی زیر از تجربیاتی که دیگران توی مصاحبه گولنگ داشتن رو جمع آوری کنم.🎯 🎯 پس دوستانی که مصاحبه گولنگ داشتن برامون توی ریپوی زیر pull request بزنن تا به اشتراک بزاریم برای سایر افراد ی که وارد این حوزه میشن🎯 🙏🏿❤️🙏🏿 🔗 ht…»
🤔🎯new() vs make()🎯🤔
🔹تابع make یک توابع داخلی است (special built-in function) که برای مقداردهی اولیه Slices ها ، map ها و channel ها استفاده می شود.
🔹توجه داشته باشید که از make فقط می توان برای مقداردهی اولیه Slices ها ، map ها و channel ها استفاده کرد و برخلاف new ، این make اشاره گر را بر نمی گرداند.
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔹تابع make یک توابع داخلی است (special built-in function) که برای مقداردهی اولیه Slices ها ، map ها و channel ها استفاده می شود.
🔹توجه داشته باشید که از make فقط می توان برای مقداردهی اولیه Slices ها ، map ها و channel ها استفاده کرد و برخلاف new ، این make اشاره گر را بر نمی گرداند.
➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🎯نگاهی عمیق به تایپ های گولنگ🎯 🔹Type Aliases 🔹Basic Types 🔹Strings 🔹Pointers 🔹Pointers 🔹Interfaces 🔹Structs 🔹Type Assertions 🔹Reflection 🔹Functions 🔹Channels 🔹Collections 🔹Arrays 🔹Slices 🔹Maps 🔹Zero Values ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
❌Maps❌
درواقع map ها مجموعه ای از جفت های مقدار-کلید هستند.
🔴کلید نمیتونه هر نوعی باشه
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
درواقع map ها مجموعه ای از جفت های مقدار-کلید هستند.
🔴کلید نمیتونه هر نوعی باشه
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🎯نگاهی عمیق به تایپ های گولنگ🎯 🔹Type Aliases 🔹Basic Types 🔹Strings 🔹Pointers 🔹Pointers 🔹Interfaces 🔹Structs 🔹Type Assertions 🔹Reflection 🔹Functions 🔹Channels 🔹Collections 🔹Arrays 🔹Slices 🔹Maps 🔹Zero Values ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
❌ zero values: ❌
🔹 0 for all integer types,
🔹 0.0 for floating point numbers,
🔹 false for booleans,
🔹 "" for strings,
🔹 nil for interfaces, slices, channels, maps, pointers and functions.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔹 0 for all integer types,
🔹 0.0 for floating point numbers,
🔹 false for booleans,
🔹 "" for strings,
🔹 nil for interfaces, slices, channels, maps, pointers and functions.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🎯ویژگی های شی گرایی در گولنگ 🎯
🔹Struct
🔹Method
🔹Embedding
🔹Encapsulation
🔹Interface
🔹Inheritance
🔹Polymorphism
🔹Conclusion
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔹Struct
🔹Method
🔹Embedding
🔹Encapsulation
🔹Interface
🔹Inheritance
🔹Polymorphism
🔹Conclusion
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴آکادمی علیبابا، در سری برنامههای علیبابا تاک، به بیان چالشها و تجربیات علیباباییها میپردازه. این بار، رضا کمالیفرد، از تیم فنی شرکت سفرهای علیبابا، در مورد سیستم ریت لیمیتر و پیادهسازی اون در علیبابا صحبت میکنه.
🔴علیبابا بزرگترین ارائهدهنده خدمات گردشگری در ایران هست و ای پی آی هایی داره که در اونها اطلاعات مربوط به بلیتهای سفر رو نگه میداره. توی این تاک، داستان دوباره ساختن ملوان زبل،ریت لیمیتر علی بابا، که به جنگ باتها و درخواستهای مخربی که به سمت این ای پی آیها میان، رفته و اونها رو از سر راه برداشته، بیان میشه.
https://m.youtube.com/watch?v=y6y7h8nYDj8
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴علیبابا بزرگترین ارائهدهنده خدمات گردشگری در ایران هست و ای پی آی هایی داره که در اونها اطلاعات مربوط به بلیتهای سفر رو نگه میداره. توی این تاک، داستان دوباره ساختن ملوان زبل،ریت لیمیتر علی بابا، که به جنگ باتها و درخواستهای مخربی که به سمت این ای پی آیها میان، رفته و اونها رو از سر راه برداشته، بیان میشه.
https://m.youtube.com/watch?v=y6y7h8nYDj8
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
YouTube
Alibaba Talk: Alibaba Rate-limiter - Reza KamaliFard
آکادمی علیبابا، در سری برنامههای علیبابا تاک، به بیان چالشها و تجربیات علیباباییها میپردازه. این بار، رضا کمالیفرد، از تیم فنی شرکت سفرهای علیبابا...
🔸استخدام Back-end Developer(Go Lang) در شرکت boomerang
🔹تماموقت
🔹ارشد (Senior)
🔗 https://quera.ir/r/G5qHpd
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔹تماموقت
🔹ارشد (Senior)
🔗 https://quera.ir/r/G5qHpd
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Clean architecture #نشست دهم در گولنگ
❌محمد صباغ
❌پنجشنبه ۹ بهمن ساعت ۱۹ از
یوتوب:
https://youtu.be/bQepxgcBdTI
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌محمد صباغ
❌پنجشنبه ۹ بهمن ساعت ۱۹ از
یوتوب:
https://youtu.be/bQepxgcBdTI
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🎯ویژگی های شی گرایی در گولنگ 🎯 🔹Struct 🔹Method 🔹Embedding 🔹Encapsulation 🔹Interface 🔹Inheritance 🔹Polymorphism 🔹Conclusion ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
❌Structs❌
ساختار یا Structures برای نشان دادن مجموعه ای از فیلد ها به کار میروند
با استفاده از این دستور می توانید مجموعه ای از فیلد های با تایپ مختلف ایجاد کنید
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
ساختار یا Structures برای نشان دادن مجموعه ای از فیلد ها به کار میروند
با استفاده از این دستور می توانید مجموعه ای از فیلد های با تایپ مختلف ایجاد کنید
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy