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

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

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

ادمین:
@mrbardia72
Download Telegram
What data types can you use "for - range" statement?
Anonymous Quiz
18%
array, slice, map
79%
array, slice, map, string, channel
4%
slice, map, string
0%
slice, map
🎯ویژگی های نسخه Go1.15.6🎯

🔺cmd/link

🔹cmd/link: PE linker segfaults in addpersrc when cross-compiling

🔹Fix segfault adding resource section

🔹debug_line can contain multiple entries for the same PC address in Go 1.15.4 [1.15 backport]

🔹 [release-branch.go1.15] do not emit an extra debug_line entry for the end of seq addr

🔹unexpected bindingNone in '_go.buildid'

🔹 [release-branch.go1.15] recompute heapPos after copyHeap

🔺io

🔹Copy leaves file zero bytes in Azure AKS with CIFS — Go1.15 regression [1.15 backport]

🔹 [release-branch.go1.15] use copy_file_range only on Linux kernel >= 5.3

🔺net/http

🔹race in http2Transport [1.15 backport]

🔺runtime

🔹infinite loop in lockextra on linux/amd64 [1.15 backport]


🔰 @gopher_academy
#موقعیت_شغلی

🔰 @gopher_academy
Gopher Academy
🎯نفشه یادگیری زبان برنامه نویسی گولنگ🎯 🔺این ویدیو رو خودم ضبط کردم امیدوارم خوشتون بیاد 🔵 https://youtu.be/l-NzizHAEco . 🔰 @gopher_academy
👆دوستانی که قصد یادگیری گولنگ رو دارن این ویدیو رو حتما ببین توی یوتوب هست همراه با لینک👆
🎯هر زمان از توسعه دهنده ها در مورد علت انتخاب زبان برنامه نویسی Go برای یادگیری یا توسعه در پروژه ها سوال می شه پاسخ هایی بعضا ساده، گاه بلند در توصیف نقاط قوت این زبان می شنویم.

🎯در تمامی این پاسخ ها همیشه دو مورد مشترک وجود داره که همه توسعه دهنده ها به اون اشاره می کنن: Concurrency و Performance. شاید ساده ترین و در عین حال کامل ترین پاسخ به این سوال یک جمله ساده باشه:
🔹چون زبان برنامه نویسی Go سریعه.🔹

🎯فاکتورهای متنوعی رو میشه به عنوان علل سریع بودن زبان برنامه نویسی Go مطرح کرد که مهمترین و جذاب ترین اون قابلیت ذاتی concurrency در این زبان هستش.

🎯این قابلیت توسط سه تفنگدار concurrency در این زبان برآورده میشه. در واقع مثلث goroutine، channel و sync package نقش اصلی و در واقع ابزار دستیابی به concurrency در این زبانه

🔰 @gopher_academy
🎯Golang for Microservices: Build Clean Architecture🎯
.
👇Some of the popular ones are:👇
.
🔺gomicro
🔺gokit
🔺 Gizmo
.
🔰 @gopher_academy
Gopher Academy
🎯Golang for Microservices: Build Clean Architecture🎯 . 👇Some of the popular ones are:👇 . 🔺gomicro 🔺gokit 🔺 Gizmo . 🔰 @gopher_academy
👇gomicro👇

🎯یکی از محبوب ترین فرم ورک های RPC می باشداین فرم وروک .

و از حالت ارتباط asynchronous و synchronous استفاده میکند و فراهم کننده خاصیت balancing برای سرویس های مختلف هست
این فرم وروک سه لایه هست
🔹Service absorption
🔹Client server model
🔹 plugins.
.
🔰 @gopher_academy
Gopher Academy
🎯Golang for Microservices: Build Clean Architecture🎯 . 👇Some of the popular ones are:👇 . 🔺gomicro 🔺gokit 🔺 Gizmo . 🔰 @gopher_academy
👇gokit👇

این فرم وروک هم یکی دیگر از فرم ورک های RPC هست با ویژگی های متعدد در کتابخانه مانند
🔹Authentication
🔹Transport
🔹Logging
🔹tracing
🔹Service discovery
.
🔰 @gopher_academy
Gopher Academy
🎯Golang for Microservices: Build Clean Architecture🎯 . 👇Some of the popular ones are:👇 . 🔺gomicro 🔺gokit 🔺 Gizmo . 🔰 @gopher_academy
👇Gizmo👇
توسط نیورک تایمز ارائه شده
و دارای کتابخانه های از جمله
server and pubsub 
می باشد
🔰 @gopher_academy
🎯REST API Versioning🎯

👇URI Versioning👇
🔹http://api.example.com/v1
🔹http://apiv1.example.com

👇Versioning using Custom Request Header👇
🔹Accept-version: v1
🔹Accept-version: v2

👇Versioning using Accept header👇
🔹Accept: application/vnd.example.v1+json
🔹Accept: application/vnd.example+json;version=1.0


🔰 @gopher_academy
This media is not supported in your browser
VIEW IN TELEGRAM
🎯چطوری یک معماری خوب واسه اپلیکیشنم داشته باشم🎯
👇👇👇👇👇

🔰 @gopher_academy
🎯خوب قدم اول یه پوشه دورس کنید اسمش رو هر چی خواستید بزاربد
مثل 🎯
🔻Pkg/user or services/user

🔹service.go
🔹Repository.go
🔹Mongodb.go
🔹entity.go

👇👇👇👇👇

🔰 @gopher_academy
شمای یک entity.go
👇👇👇👇👇

🔰 @gopher_academy
شمای یک repository
👇👇👇👇👇

🔰 @gopher_academy
شمای یک mongodb
👇👇👇👇👇

🔰 @gopher_academy
شمای یک service
که مربوط به authentication میشه
👇👇👇👇👇

🔰 @gopher_academy
ارتباط یا هسته اصلی برنامه جهت برقرار با مانگو و یه سرویس ابری(البته دلخواه ) و بعد ش استفاده از repository و service ها
👇👇👇👇👇

🔰 @gopher_academy
This media is not supported in your browser
VIEW IN TELEGRAM
🎯وقتی شما یه کانال از نوع بافر شده میسازید دقیقا پشته صحنه این اتقاقات بالا می افته🎯
🔺هربخش رو توی ادامه توضیح میدم
🔹ch := make(chan int, 3)
.
🔰 @gopher_academy