Gopher Academy
3.34K subscribers
918 photos
40 videos
279 files
2K links
🕸 Gopher Academy

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

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

ادمین:
@mrbardia72
Download Telegram
Gopher Academy
gRPCurl امروز میخوام در مورد یه ابزاری cli مخصوص ارتباط با grpc رو بهتون معرفی کنم 👇🏻👇🏻توضیحات در ادامه👇🏻👇🏻 🔰 @gopher_academy
🎯واسه شروع کار ابتدا وارد دایرکتوری که فایل proto هست برید و دستور زیر رو بزنید. با زدن این دستور یه فایل با پسوند protosetایجاد میشه در واقع توی این فایل تمام سرویس ها و مسیج هاتون رو توی یه قالب خاض خودش لیست می کنه . جهت ارتباط کامندهای grpcurl با فایل protoشما🎯

protoc --proto_path=./ --descriptor_set_out=client.protoset --include_imports ./client.proto


🔰 @gopher_academy
Gopher Academy
gRPCurl امروز میخوام در مورد یه ابزاری cli مخصوص ارتباط با grpc رو بهتون معرفی کنم 👇🏻👇🏻توضیحات در ادامه👇🏻👇🏻 🔰 @gopher_academy
🎯جهت نمایش تمام RPC متدهای که داخل سرویسAuthorizedClient تعریف کردیم 🎯

در کامند زیر بجای aa.bb نام پکبجی که برای فایل proto رو گذاشتید رو بنویسید

grpcurl -protoset ./client.protoset list aa.bb.AuthorizedClient


🔰 @gopher_academy
Gopher Academy
gRPCurl امروز میخوام در مورد یه ابزاری cli مخصوص ارتباط با grpc رو بهتون معرفی کنم 👇🏻👇🏻توضیحات در ادامه👇🏻👇🏻 🔰 @gopher_academy
🎯برای بدست آوردن یه اطلاعات کامل از متد ما از دستور زیر استفاده می کنیم. این دستور به ما میگه که متدی که داریم استفاده می کنیم از چه نوعی هست🎯

نوع های مختلف ارتباط
🟦 Unary RPC
🟦 Server streaming RPC
🟦 Client streaming RPC
🟦 Bidirectional streaming RPC

در دستور زیر zz نام متد ما هست

grpcurl -protoset ./client.protoset describe aa.bb.UnauthorizedClient.zz


🔰 @gopher_academy
These are the officially supported gRPC language, platform and OS versions:

🔰 @gopher_academy
coming soon:
Flutter
iOS – docs coming soon

Supported platforms
✔️Android
—Java
—-Kotlin
✔️Web

🔰 @gopher_academy
🎯پیادسازی grpc-errors برای ده زبان توی ریپوی زیر🎯
https://github.com/avinassh/grpc-errors


🔰 @gopher_academy
This media is not supported in your browser
VIEW IN TELEGRAM
🔸استخدام Golang Developer در شرکت تجارت بین الملل رابین #تهران
🔹تمام‌وقت 🔹ارشد (Senior)

🔗 https://quera.ir/r/asNt7p
.
#job
.
🔰 @gopher_academy
به ساختار فوق توی گولنگ میگن Flat Structure

این ساختار یه ساختار بدون پوشه می باشد
این ساختار برای شروع ایده آل هست هم در
میکروسرویس های کوچیکی که دارن تازه شروع میشن به توسعه و
همچنین ابزارها و کتابخانه های کوچک که ابزارهای خط فرمان یا کتابخانه های کوچکی که تمرکز آنها بر انجام یکسری وظایف بسیار خوب هستند متمرکز می شوند
مانند دو کتابخانه زیر که جزو این ساختار هستن
https://github.com/tidwall/gjson
https://github.com/go-yaml/yaml



🔰 @gopher_academy
درآمد دلاری
زبان های برنامه نویسی در سال ۲۰۲۰

🔹 این آمار در سایت Jobzey منتشر شده است.
2⃣ Golang ------- $140.000
🔰 @gopher_academy
Kubernetes Learning Path _ Version 2.0.pdf
2.6 MB
مسیر یادگیری کوبرنتیز از دید مایکروسافت.

در عرض 50 روز، مباحث مهم و بیسیک کوبرنیتز رو با استفاده از کورس های مایکروسافت یاد بگیرید!

اطلاعات بیشتر در ریپازیتوری زیر:

https://github.com/microsoft/kubernetes-learning-path


🔰 @gopher_academy
در حال حاضر از کدام سرویس های ابری زیر استفاده می کنید؟
Anonymous Poll
52%
Amazon Web Services
35%
Google Cloud Platform
16%
Microsoft Azure
🎯آشنایی با قوانین GRASP در برنامه نویسی شیء گرایی🎯

🔺 https://vrgl.ir/Qbhry

🔰 @gopher_academy
🎯نگاهی عمیق به تایپ های گولنگ🎯

🔹Type Aliases
🔹Basic Types
🔹Strings
🔹Pointers
🔹Pointers
🔹Interfaces
🔹Structs
🔹Type Assertions
🔹Reflection
🔹Functions
🔹Channels
🔹Collections
🔹Arrays
🔹Slices
🔹Maps
🔹Zero Values


🔰 @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
🔹گولنگ سیستم بسیار جالبی دارد. این امر به نفع رابط ها و ترکیبات از کلاس ها و وراثت قرار می گیرد ، اما از طرف دیگر ژنریک ندارد.

🔹در این آموزش با جزئیات تایپ سیستم Go و چگونگی استفاده موثر از آن برای نوشتن کد آشنا خواهید شد.

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

🔺هیچ نوع استثنائی وجود ندارد زیرا مدیریت خطاهای Go بر اساس کدهای بازگشت و رابط خطا است.
🔺بیش از حد عملگر وجود ندارد.
🔺هیچ بار اضافی در عملکرد وجود ندارد (همان نام عملکرد با پارامترهای مختلف).
🔺پارامترهای عملکرد اختیاری یا پیش فرض وجود ندارد.
🔺این موارد حذف شده همه با توجه به طراحی انجام می شود تا Go هرچه ساده تر شود.

🔰 @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
Type Aliases

می توانید alias types را در Go ایجاد کرده با تایپ های مختلف
اما بدون تبدیل ، نمی توانید مقداری از نوع اساسی را به یک نوع مستعار اختصاص دهید.
به عنوان مثال در تصویر فوق ، انتساب var b int = a در برنامه زیر باعث خطای تلفیقی می شود
زیرا نوع Age نام مستعار int است ، اما int نیست:

🔰 @gopher_academy