Gopher Academy
3.34K subscribers
920 photos
40 videos
280 files
2.02K links
🕸 Gopher Academy

🔷interview golang
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
در حال حاضر ار کدوم پایگاه داده توی گولنگ استفاده می کنید؟
Final Results
33%
MongoDB
55%
PostgreSQL
23%
other
😁در حاضر به کدوم درجه رسیدی توی گولنگ?😁
Final Results
5%
🔵 Senior 🔵
30%
🔴 Mid-Level 🔴
67%
🟢 Junior 🟢
💔1
یکی از کانال داره دوره پیشرفته برنامه نویسی وب با زبان گولنگ رو ریکورد میکنه
اگه کسی توانایی چسبوندن صدا و ویدئو رو داره بیاد کمک @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
در واقع Strong typing معنی کلی‌اش این میشه که شما در زبان برنامه نویسی موردنظرتون باید مشخص کنید که متغیرها، ورودی/خروجی توابع، آرگومان‌ها و ... دقیقاً از چه نوعی هستند؛ یعنی کامپایلر در چنین زبان‌های برنامه‌نویسی، کدهای برنامه شما رو قبل از اینکه به مرحله Runtime برسه، بررسی می‌کنه و مطمئن میشه که شما نوع‌ها رو بصورت کامل مشخص کردید و نمی‌ذاره شما دادۀ بدون نوع داشته باشید

در واقع Weak typing با خیال راحت، هرجوری حال می‌کنید! می‌تونید از تعریف متغیر بدون نوع استفاده کنید، تو این نوع زبان‌ها، کامپایلر همه کار رو خودش می‌کنه و اصلاً کار نداره که شما برای متغیری نوع تعریف کنید، برای همین بسیار تنبل‌پرور هستند؛

🔰 @gopher_academy
generic collections
یعنی هر نوع دادهای را می توانید ذخیره کنید
🔹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
Gopher Academy
Slices آرایه ها به دلیل اندازه ثابت بسیار محدود هستند. اما Slices ها خیلی جالب ترند. شما می توانید Slices ها را به عنوان آرایه های پویا در نظر بگیرید. بهتره بجای array از Slices استفاده کنید توی پروژه هاتون به دلیل کنترل gerber collector 🔰 @gopher_academy
👆🏻👆🏻توضیحات بیشتر👆🏻👆🏻
از طرف دیگر ، Slices ها بسیار انعطاف پذیر ، قدرتمند و راحت تر از آرایه ها هستند. بر خلاف آرایه ها ، می توان Slices ها را با استفاده از تابع ضمیمه داخلی تعبیه کرد. بعلاوه ، Slices از نوع مرجع یا refrence هستند ، بدین معنی که اختصاص آنها کم هزینه است و می توانند بدون نیاز به ایجاد نسخه جدیدی از آرایه اصلی آن ، به سایر توابع منتقل شوند. سرانجام ، توابع موجود در کتابخانه استاندارد Go ، همه از Slices به جای آرایه ها در API های عمومی خود استفاده می کنند.

🔰 @gopher_academy
Gopher Academy
Arrays آرایه ها مجموعه هایی با اندازه ثابت از عناصر یک نوع هستند. 🔰 @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
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
الو، Docker؟ (ارتباط GoLang با api داکر)
.
https://vrgl.ir/Qm3pE
.

🔰 @gopher_academy
🎯ویژگی های شی گرایی در گولنگ 🎯

🔹Struct
🔹Method
🔹Embedding
🔹Encapsulation
🔹Interface
🔹Inheritance
🔹Polymorphism
🔹Conclusion


🔰 @gopher_academy
🔴آکادمی علی‌بابا، در سری برنامه‌‌های علی‌بابا تاک، به بیان چالش‌ها و تجربیات علی‌بابایی‌ها می‌پردازه. این بار، رضا کمالی‌فرد، از تیم فنی شرکت سفر‌های علی‌بابا، در مورد سیستم ریت لیمیتر و پیاده‌سازی اون در علی‌بابا صحبت می‌کنه.

🔴علی‌بابا بزرگ‌ترین ارائه‌دهنده خدمات گردشگری در ایران هست و ای پی آی ‌هایی داره که در اون‌ها اطلاعات مربوط به بلیت‌های سفر رو نگه می‌داره. توی این تاک، داستان دوباره ساختن ملوان زبل،ریت لیمیتر علی بابا، که به جنگ بات‌ها و درخواست‌های مخربی که به سمت این ای پی آی‌ها میان، رفته و اون‌ها رو از سر راه برداشته، بیان میشه.
https://m.youtube.com/watch?v=y6y7h8nYDj8


🔰 @gopher_academy
🔸استخدام Back-end Developer(Go Lang) در شرکت boomerang
🔹تمام‌وقت
🔹ارشد (Senior)

🔗 https://quera.ir/r/G5qHpd

🔰 @gopher_academy
Clean architecture #نشست دهم در گولنگ

محمد صباغ
پنجشنبه ۹ بهمن ساعت ۱۹ از
یوتوب:
https://youtu.be/bQepxgcBdTI

🔰 @gopher_academy