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

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

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

ادمین:
@mrbardia72
Download Telegram
The Conventional Commits specification is a lightweight convention on top of commit messages. It provides an easy set of rules for creating an explicit commit history.

یه سری قراردادهای کاربردی و سبک برای متن commit که بشه هم خواناتر و هم با قابلیت بیشتری برای automated tools ها به همراه پیروی از semantic versioning این متن‌ها رو ساخت.

#git #commit #convention #message #best_practice #best #practice

conventionalcommits.org/en/v1.0.0


🔰 @gopher_academy
2
آموزش استفاده از جنریک ها به داکیومنت سایت go.dev اضافه شد.

جنریک ها خیلی کاربردی هست و تو کاهش کدها , عملکرد , خوانایی کد تاثیر بسزایی میزاره

https://go.dev/doc/tutorial/generics


🔰 @gopher_academy
1👍1
⭕️ نکته مهم در خصوص استفاده از جنریک ها

دقت کنید تو جنریک از اینترفیس comparable به عنوان تایپ یک متغیر عادی نمی توانید استفاده کنید و فقط به عنوان parameter constraint باید استفاده شود.

اما در عوض شما می توانید از any یک نام مستعار برای اینترفیس هست در جنریک هاتون استفاده کنید و هر دیتا تایپی رو می توانید داخل جنریک هندل کنید.


🔰 @gopher_academy
1🔥1
Summary of ‘Clean code’ tips by Robert C. Martin.

اگه حال و حوصله خوندن کتاب عموباب رو ندارین میتونین از این gist یه خلاصه مفید و جمع و جور ازش رو داشته باشید.

#clean #refactor #uncle #bob #architecture #cleancode #book #summary #gist

https://gist.github.com/wojteklu/73c6914cc446146b8b533c0988cf8d29


🔰 @gopher_academy
👍6
👍15🔥72👎1
#linux #happy_birthday

🔰 @gopher_academy
🎉109🔥8
Forwarded from Mohammad Hoseini Rad
توی این مقاله در مورد جنریک ها که یکی از پرتقاضا ترین فیچرهای گو بوده صحبت میکنیم و با بنچ مارک گرفتن و مقایسه کردن توابعی که ازش استفاده میکنن با حالت های قبلی متوجه پرفورمنسشم میشیم.
https://vrgl.ir/AhNne
👍5🎉3
Forwarded from Go Casts 🚀
Design by Contract
شیوه ای که golang بخش مهمی از simplicityش رو مدیونشه

همون اول کار بگم که این ادعا یک برداشت شخصیه که هیچ منبع و مرجع خارجی ای نداره. فعلا یه draft از مقاله آماده شده، اما چون ممکنه اصل تحقیقات طولانی تر بشه بهتر دیدم که نسخه draftش رو هم در اختیار شما بذارم. این نوید رو هم بدم که با خوندن همین draft میتونید concept کلی رو متوجه بشید و بهش فکر کنید!!

آشنایی با DBC کمک میکنه خیلی عمیق تر interface های تعریف شده در کتابخونه های استاندارد گولنگ رو متوجه بشیم، و قطعا کمک میکنه ما هم قراردادهای بهتری برای سرویس و ماژول هامون تعریف کنیم.
نکته خیلی مهم DBC اینه که اگه خوب متوجه ش باشیم، نه تنها فهم ابزارهای موجود که یکیش میشه کتابخونه های استاندارد گولنگ رو بهتر متوجه بشیم و ما هم بهتر در گولنگ کد بزنیم. بلکه میشه به خیلی لایه های بالاتر تعمیمش داد. اگه داریم سرویسی مینویسیم که قراره یه apiی ارائه بده به یه سری کلاینت، که میتونه شامل همه rest api هایی که مینویسیم هم باشه، خیلی کمک میکنه طراحی بهتری برای api ها داشته باشیم، حتی و اگه داریم در شرکت های بزرگ کار میکنیم میتونیم تعامل بین تیمی رو تقویت کنیم و تعامل خیلی سازنده تری داشته باشیم.

این لینک draft مقاله، ببخشید که خیلی خامه، ولی مطمئن هستم اگه با دقت همین draft رو مطالعه کنید متوجه منظورم خواهید شد.
https://docs.google.com/document/d/11_Tj46PiJ0OK_smYr6wKYyRVMDCVzgqCzBgVjqtwwvo/edit?usp=sharing

قطعا ممکنه خود من هم کامل DBC رو متوجه نشده باشم، اما در حدی که متوجه شدم متقاعد شدم که بخشی از simplicity گولنگ مدیون اجرای صریح یا ضمنی این شیوه است و به خودمون هم خیلی میتونه کمک کنه.

منابع
برای اینکه با design by contract آشنا بشید اصل مقاله رو میتونید اینجا بخونید
http://se.inf.ethz.ch/~meyer/publications/old/dbc_chapter.pdf

همچنین خوندن فلسفه let it crash هم در اینجا توصیه میشه
https://media.pragprog.com/titles/jaerlang2/errors.pdf

و اگه بتونید قسمت Design by Contract از کتاب The Pragmatic Programmer, 20th Anniversary Edition رو هم بخونید که چه عالی
https://pragprog.com/titles/tpp20/the-pragmatic-programmer-20th-anniversary-edition/


@gocasts

#design_by_contract #golang #simplicity #let_it_crash #joe_armstrong
👍2🎉1
Deep Dive into Go Generics

https://www.meetup.com/Triangle-Golang-Meetup/events/282745041/

Thursday, January 27, 2022
3:30 AM to 5:30 AM IRST

Video call link:
https://meet.google.com/qnv-xogq-juy


🔰 @gopher_academy
1👍1
پکیج Scheduler

دوستان بعد از مدتها پکجی در خصوص زمانبندی تسک توسعه دادم که باهاش می توانید همزمان چندین هزار Job را زمانبندی و بصورت همزمان اجرا کنید.


ویژگی ها پکیج :
- اجرای همزمان ۱۰ هزار جاب در یک اینستنس زمانبندی
- اجرای همزمان چندین اینستنس زمانبندی
- دارای قابلیت اجرای امن برای زمانیکه امکان وجود خطای پنیک هست و اگر رخ دهد جاب از بین نمیرود مجدد بازیابی می شود و در کنسول به شما گزارش می دهد
- اجرای جاب ها با پترن مختلف زمان

https://github.com/Ja7ad/Scheduler


🔰 @gopher_academy
🔥112👍1🎉1
🔸استخدام Golang Intern #تهران
🔹تمام‌وقت
🔹کارآموز (Intern)

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

🔰 @gopher_academy
1🎉1
آشنایی با سایت Code Conquest برای یادگیری برنامه نویسی

سایت Code Conquest یک بستر عالی است که به شما کمک می‌کند اصول کدنویسی را یاد بگیرید. حتی اگر در زندگی خود هرگز یک خط کدنویسی نکرده باشید، این سیستم به شما کمک می‌کند تا از اول یادگیری کدنویسی را آغاز کنید.
این وب‌سایت شما را در موارد زیر راهنمایی می‌کند:
1 اینکه کدگذاری چیست.
2 انتخاب اینکه کدام زبان‌ها را یاد بگیرید.
3 دانستن اینکه چگونه دانش و مهارت خود را ارتقا دهید.
4 اینکه چگونه از این مهارت‌ها در زندگی واقعی خود استفاده کنید.

🌐مرجع تخصصی برنامه نویسان

🆔 @Barnamenevisan_org
👍1🔥1
گروه golang-nuts

این گروه کاملا رسمی تیم برنامه نویسی زبان گو هستش که می توانید سوالات خود را مطرح کنید یا سوالات دیگران را ببینید و پاسخ دهید.

در این گروه برخی توسعه دهندگان زبان گو فعالیت میکنن و به سوالات پاسخ می دهند.

https://groups.google.com/g/golang-nuts


🔰 @gopher_academy
👍32🔥1
🔸استخدام Senior GoLang Developer در شرکت Remote Work Studio
🔹حقوق ۲۵,۰۰۰,۰۰۰ تا ۳۰,۰۰۰,۰۰۰ 🔹تمام‌وقت 🔹ارشد (Senior) 🔹امکان دورکاری

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



🔰 @gopher_academy
🎉2
دعوت به همکاری
💪Golang Developer

@alex_parv

🔰 @gopher_academy
🎉2
وقتی دستور زیر رو برای Cover Profile میزنید
🛑go test -coverprofile profile.out
🟦یه فایل به نام مثلن profile.out میسازه که شرح محتویات این فایل توی شکل بالا توضیح داده هر قسمت چیه

🔰 @gopher_academy
👍2
Slice internal representation

🔰 @gopher_academy
👍3