Awesome Docker Compose samples
مجموعهای از داکرکامپوزهای آماده برای اپلیکیشنهای پرکاربرد
#docker #compose #awesome #list
https://github.com/docker/awesome-compose
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
مجموعهای از داکرکامپوزهای آماده برای اپلیکیشنهای پرکاربرد
#docker #compose #awesome #list
https://github.com/docker/awesome-compose
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍1🔥1
❎یه مقاله خوب در مورد نحوه نوشتن کامنت
❎ https://stackoverflow.blog/2021/12/23/best-practices-for-writing-code-comments/
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❎ https://stackoverflow.blog/2021/12/23/best-practices-for-writing-code-comments/
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔥1
✅ A package for building progressive web apps (PWA) with the Go and WebAssembly (Wasm).
#golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
#golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔥1
A curated list of awesome actions to use on GitHub
لیستی از پرکاربردترین action های قابل استفاده در سایت github
#github #action #awesome #list #curated #actions
https://github.com/sdras/awesome-actions
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
لیستی از پرکاربردترین action های قابل استفاده در سایت github
#github #action #awesome #list #curated #actions
https://github.com/sdras/awesome-actions
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔥1
آشنایی با سایت Codewars
سایت Codewars از طریق یک سری چالشها، زبانهای برنامه نویسی مورد نظر را به شما آموزش میدهد. این چالشهای کدنویسی از هنرهای رزمی ناشی میشود، زیرا از هر چالش به عنوان کاتا یاد میشود.
هدف از هر چالش این است که به شما کمک کند مهارتهای خود را با یک زبان برنامه نویسی خاص ارتقا دهید یا یک مهارت جدید را از ابتدا یاد بگیرید.
هرچه در هر کاتا پیشرفت کنید، چالشها سختتر و سختتر میشوند. هنگامی که یک چالش کامل شد، میتوانید ببینید که راه حل شما در کدنویسی چقدر از دیگران بهتر است. این متد آموزشی، روشهای مختلفی را برای حل برخی از مشکلات توسعه به شما نشان میدهد.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
سایت Codewars از طریق یک سری چالشها، زبانهای برنامه نویسی مورد نظر را به شما آموزش میدهد. این چالشهای کدنویسی از هنرهای رزمی ناشی میشود، زیرا از هر چالش به عنوان کاتا یاد میشود.
هدف از هر چالش این است که به شما کمک کند مهارتهای خود را با یک زبان برنامه نویسی خاص ارتقا دهید یا یک مهارت جدید را از ابتدا یاد بگیرید.
هرچه در هر کاتا پیشرفت کنید، چالشها سختتر و سختتر میشوند. هنگامی که یک چالش کامل شد، میتوانید ببینید که راه حل شما در کدنویسی چقدر از دیگران بهتر است. این متد آموزشی، روشهای مختلفی را برای حل برخی از مشکلات توسعه به شما نشان میدهد.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❤1
سلام همگی دوستان ، اگه کانال رو دنبال کرده باشید ما یک برنامه قرار شد شروع بکنیم برای چهارشنبه هر هفته ، جلسه اول که برگزار شد بعدش صحبت کردیم تصمیم گرفتیم بجای یه دوره ای باشه که سینتکس گو رو بخوایم یاد بدیم ، پروژه محور جلو بریم به شکلی که یک پروژه واقعی تعریف بکنیم ، تسک های برای یک هفته تعریف بکنیم و همگی بریم انجامشون بدیم و چهارشنبه هفته بعدش سر بهترین راه حل بحث و گفتگو بکنیم تا بهترین رو انتخاب و مرج بکنیم به پروژه
نکته ای اهمیت داره قرار نیست اصلا وقت زیادی ازمون بگیره ، تسک ها باید کوچیک باشن و جلسه هامون یک بار در هفته و تلاش می کنیم نزدیک یک ساعت باشه
پروژه ها ، سعی می کنیم پروژه های بیزنسی و مشابه پروژه های که داخل شرکت ها نوشته می شن باشند که بتونیم کمک بکنیم نیرو های جونیور گو وارد بازار کار بشن و برای نیرو های که الان دارن کار می کنن نکات جدید و روش های بهینه تر یاد بگیرن
نکته بعد اینکه دوره منتور یا مدرس خاصی نداره ،هزینه ای هم نداره ، ورود برای همه ازاد هست و قراره خودمون به همدیگه آموزش بدیم
جلسه فردا استثنا ساعت ۱۱ ظهر می باشد در کانال دیسکورد ولی از هفته های بعد جلسه ساعت ۶ عصر هست
لینک کانال دیسکورد:
https://discord.gg/dJjasrmF
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
نکته ای اهمیت داره قرار نیست اصلا وقت زیادی ازمون بگیره ، تسک ها باید کوچیک باشن و جلسه هامون یک بار در هفته و تلاش می کنیم نزدیک یک ساعت باشه
پروژه ها ، سعی می کنیم پروژه های بیزنسی و مشابه پروژه های که داخل شرکت ها نوشته می شن باشند که بتونیم کمک بکنیم نیرو های جونیور گو وارد بازار کار بشن و برای نیرو های که الان دارن کار می کنن نکات جدید و روش های بهینه تر یاد بگیرن
نکته بعد اینکه دوره منتور یا مدرس خاصی نداره ،هزینه ای هم نداره ، ورود برای همه ازاد هست و قراره خودمون به همدیگه آموزش بدیم
جلسه فردا استثنا ساعت ۱۱ ظهر می باشد در کانال دیسکورد ولی از هفته های بعد جلسه ساعت ۶ عصر هست
لینک کانال دیسکورد:
https://discord.gg/dJjasrmF
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Discord
Discord - A New Way to Chat with Friends & Communities
Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.
👍1🔥1
🎉1
Gopher Academy pinned «چنل دیسکورد کانال ما رو حمایت کنید https://discord.gg/dJjasrmF ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy»
این بلاگ russ cox هست که خیلی مطالب مفیدی داره
https://research.swtch.com/
مثلا اینجا در مورد go data structures توضیح داده
https://research.swtch.com/godata
یا اینجا در مورد interface ها گفته
https://research.swtch.com/interfaces
یا اینجا کلا در مورد versioning مفصل تو چند بخش صحبت شده
https://research.swtch.com/vgo
یا این مقاله در مورد CSP خیلی خوبه
https://swtch.com/~rsc/thread/
اینجا هم مقالات متفرقه خوبی هست
https://swtch.com/~rsc/
Tnx: @lifography
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
https://research.swtch.com/
مثلا اینجا در مورد go data structures توضیح داده
https://research.swtch.com/godata
یا اینجا در مورد interface ها گفته
https://research.swtch.com/interfaces
یا اینجا کلا در مورد versioning مفصل تو چند بخش صحبت شده
https://research.swtch.com/vgo
یا این مقاله در مورد CSP خیلی خوبه
https://swtch.com/~rsc/thread/
اینجا هم مقالات متفرقه خوبی هست
https://swtch.com/~rsc/
Tnx: @lifography
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❤2
❎ 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
❎ یه سری قراردادهای کاربردی و سبک برای متن 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
✅ جنریک ها خیلی کاربردی هست و تو کاهش کدها , عملکرد , خوانایی کد تاثیر بسزایی میزاره
https://go.dev/doc/tutorial/generics
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❤1👍1
⭕️ نکته مهم در خصوص استفاده از جنریک ها
دقت کنید تو جنریک از اینترفیس comparable به عنوان تایپ یک متغیر عادی نمی توانید استفاده کنید و فقط به عنوان parameter constraint باید استفاده شود.
اما در عوض شما می توانید از any یک نام مستعار برای اینترفیس هست در جنریک هاتون استفاده کنید و هر دیتا تایپی رو می توانید داخل جنریک هندل کنید.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
دقت کنید تو جنریک از اینترفیس 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
❎اگه حال و حوصله خوندن کتاب عموباب رو ندارین میتونین از این gist یه خلاصه مفید و جمع و جور ازش رو داشته باشید.
#clean #refactor #uncle #bob #architecture #cleancode #book #summary #gist
❎ https://gist.github.com/wojteklu/73c6914cc446146b8b533c0988cf8d29
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍6
💙GopherCon 2021: Robert Griesemer & Ian Lance Taylor - Generics!👇🏾👇🏾
❤️ https://www.youtube.com/watch?v=Pa_e9EeCdy8&list=PL2ntRZ1ySWBfulCVQD6EaU8c-GM56aUU7
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❤️ https://www.youtube.com/watch?v=Pa_e9EeCdy8&list=PL2ntRZ1ySWBfulCVQD6EaU8c-GM56aUU7
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
YouTube
GopherCon 2021: Robert Griesemer & Ian Lance Taylor - Generics!
With the upcoming 1.18 Go release, Go will officially support generic functions and types, and will come with a set of new packages providing common generic functionality. Generics add significant expressive power to Go, and with these generic powers come…
🔥3👍1
Forwarded from Mohammad Hoseini Rad
توی این مقاله در مورد جنریک ها که یکی از پرتقاضا ترین فیچرهای گو بوده صحبت میکنیم و با بنچ مارک گرفتن و مقایسه کردن توابعی که ازش استفاده میکنن با حالت های قبلی متوجه پرفورمنسشم میشیم.
https://vrgl.ir/AhNne
https://vrgl.ir/AhNne
ویرگول
جنریک ها در گو و بررسی پرفورمنس آنها با گرفتن بنچ مارک
جنریک ها یکی از فیچر های بسیار درخواست شده گوفر ها بود که بزودی قراره در تاریخ فبریه به صورت رسمی در ریلیز به گو اضافه بشه
👍5🎉3
جلسه امروز ساعت 6 عصر داخل دیسکورد فراموش نکنید.
https://discord.gg/287hZW8b
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
https://discord.gg/287hZW8b
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Discord
Discord - A New Way to Chat with Friends & Communities
Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.
👍3🔥3🎉1
♻️ نحوه بک اپ گیری از repository های گیت هابتون
https://threkk.medium.com/how-to-back-up-your-git-repositories-1298a4487a31
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
https://threkk.medium.com/how-to-back-up-your-git-repositories-1298a4487a31
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Medium
How to back up your Git repositories
Making backups is important, and that also affects your code and git repositories.
👍4❤2
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
شیوه ای که 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
Google Docs
Design by Contract in Golang
Design by Contract in Golang شیوه ای که گولنگ در کتابخانه های استانداردش به خوبی ازش بهره برده تا قرارداد های ساده ای رو تنظیم کنه و ماهم باید تو نوشتن سرویس هامون بهش توجه ویژه ای کنیم. داشتم مقاله اصلی Design by Contract رو میخوندم. نکته خیلی جالبش این…
👍2🎉1