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
✅ 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
✅ 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
دوستان بعد از مدتها پکجی در خصوص زمانبندی تسک توسعه دادم که باهاش می توانید همزمان چندین هزار Job را زمانبندی و بصورت همزمان اجرا کنید.
ویژگی ها پکیج :
- اجرای همزمان ۱۰ هزار جاب در یک اینستنس زمانبندی
- اجرای همزمان چندین اینستنس زمانبندی
- دارای قابلیت اجرای امن برای زمانیکه امکان وجود خطای پنیک هست و اگر رخ دهد جاب از بین نمیرود مجدد بازیابی می شود و در کنسول به شما گزارش می دهد
- اجرای جاب ها با پترن مختلف زمان
https://github.com/Ja7ad/Scheduler
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
GitHub
GitHub - Ja7ad/Scheduler: Scheduler package is a zero-dependency scheduling library for Go
Scheduler package is a zero-dependency scheduling library for Go - GitHub - Ja7ad/Scheduler: Scheduler package is a zero-dependency scheduling library for Go
🔥11❤2👍1🎉1
🔸استخدام Golang Intern #تهران
🔹تماموقت
🔹کارآموز (Intern)
🔗 https://quera.ir/r/NwiISz
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔹تماموقت
🔹کارآموز (Intern)
🔗 https://quera.ir/r/NwiISz
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❤1🎉1
Forwarded from برنامه نویسان | Barnamenevisan
آشنایی با سایت Code Conquest برای یادگیری برنامه نویسی
سایت Code Conquest یک بستر عالی است که به شما کمک میکند اصول کدنویسی را یاد بگیرید. حتی اگر در زندگی خود هرگز یک خط کدنویسی نکرده باشید، این سیستم به شما کمک میکند تا از اول یادگیری کدنویسی را آغاز کنید.
این وبسایت شما را در موارد زیر راهنمایی میکند:
1 اینکه کدگذاری چیست.
2 انتخاب اینکه کدام زبانها را یاد بگیرید.
3 دانستن اینکه چگونه دانش و مهارت خود را ارتقا دهید.
4 اینکه چگونه از این مهارتها در زندگی واقعی خود استفاده کنید.
🌐مرجع تخصصی برنامه نویسان
🆔 @Barnamenevisan_org
سایت Code Conquest یک بستر عالی است که به شما کمک میکند اصول کدنویسی را یاد بگیرید. حتی اگر در زندگی خود هرگز یک خط کدنویسی نکرده باشید، این سیستم به شما کمک میکند تا از اول یادگیری کدنویسی را آغاز کنید.
این وبسایت شما را در موارد زیر راهنمایی میکند:
1 اینکه کدگذاری چیست.
2 انتخاب اینکه کدام زبانها را یاد بگیرید.
3 دانستن اینکه چگونه دانش و مهارت خود را ارتقا دهید.
4 اینکه چگونه از این مهارتها در زندگی واقعی خود استفاده کنید.
🌐مرجع تخصصی برنامه نویسان
🆔 @Barnamenevisan_org
👍1🔥1
✅ گروه golang-nuts
این گروه کاملا رسمی تیم برنامه نویسی زبان گو هستش که می توانید سوالات خود را مطرح کنید یا سوالات دیگران را ببینید و پاسخ دهید.
در این گروه برخی توسعه دهندگان زبان گو فعالیت میکنن و به سوالات پاسخ می دهند.
https://groups.google.com/g/golang-nuts
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
این گروه کاملا رسمی تیم برنامه نویسی زبان گو هستش که می توانید سوالات خود را مطرح کنید یا سوالات دیگران را ببینید و پاسخ دهید.
در این گروه برخی توسعه دهندگان زبان گو فعالیت میکنن و به سوالات پاسخ می دهند.
https://groups.google.com/g/golang-nuts
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍3❤2🔥1
🔸استخدام Senior GoLang Developer در شرکت Remote Work Studio
🔹حقوق ۲۵,۰۰۰,۰۰۰ تا ۳۰,۰۰۰,۰۰۰ 🔹تماموقت 🔹ارشد (Senior) 🔹امکان دورکاری
🔗 https://quera.ir/r/bZYDZN
➖➖➖➖➖➖➖➖➖
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔹حقوق ۲۵,۰۰۰,۰۰۰ تا ۳۰,۰۰۰,۰۰۰ 🔹تماموقت 🔹ارشد (Senior) 🔹امکان دورکاری
🔗 https://quera.ir/r/bZYDZN
➖➖➖➖➖➖➖➖➖
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🎉2
✅وقتی دستور زیر رو برای Cover Profile میزنید
🛑go test -coverprofile profile.out
🟦یه فایل به نام مثلن profile.out میسازه که شرح محتویات این فایل توی شکل بالا توضیح داده هر قسمت چیه
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🛑go test -coverprofile profile.out
🟦یه فایل به نام مثلن profile.out میسازه که شرح محتویات این فایل توی شکل بالا توضیح داده هر قسمت چیه
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍2
Forwarded from Arvancloud
دعوت از برنامهنویسان Golang
💻 اگر دستکم ۲ سال سابقهی برنامهنویسی با گولنگ را دارید، با کوبرنتیز آشنایید و دارای تجربهی کار با CI/CD در گیتلب هستید، ما در تیم کانتینر ابری آروان به Golang Developer نیاز داریم.
🔗 برای دیدت شرح انتظارات و مهارتهای این فرصت شغلی و ارسال رزومه، به لینک زیر سر بزنید:
r1c.io/naAa
#بازارکار
@ArvanCloud
💻 اگر دستکم ۲ سال سابقهی برنامهنویسی با گولنگ را دارید، با کوبرنتیز آشنایید و دارای تجربهی کار با CI/CD در گیتلب هستید، ما در تیم کانتینر ابری آروان به Golang Developer نیاز داریم.
🔗 برای دیدت شرح انتظارات و مهارتهای این فرصت شغلی و ارسال رزومه، به لینک زیر سر بزنید:
r1c.io/naAa
#بازارکار
@ArvanCloud
👍3👎2
Forwarded from Sina Gh # ___
👍2🎉1
Forwarded from Toncoin فارسی
سرویس TON Storage چیست؟
سرویس TON Storage توسط بلاک چین TON برای ذخیره سازی نسخه های آرشیو شده بلاکها استفاده خواهد شد. علاوه بر این، کاربران و سرویس های مبنی بر TON می توانند فایل های دلخواه خود را در این سیستم ذخیره کنند.
در حال حاضر، اکثر سیستم های پایگاه داده در شرکت های بزرگ فناوری متمرکز هستند.
آمازون، مایکروسافت، گوگل، علی بابا و تِنسِنت بیش از 70 درصد از بازار رایانش ابری (cloud computing) را در اختیار دارند.
این قدرتهای متمرکز به راحتی می توانند سرویسی را حذف و به دادههایی که قرار است خصوصی باشند، دسترسی پیدا کنند.
اینجاست که Web3 وارد میدان می شود.
متن کامل مقاله را اینجا به فارسی بخوانید.
سرویس TON Storage توسط بلاک چین TON برای ذخیره سازی نسخه های آرشیو شده بلاکها استفاده خواهد شد. علاوه بر این، کاربران و سرویس های مبنی بر TON می توانند فایل های دلخواه خود را در این سیستم ذخیره کنند.
در حال حاضر، اکثر سیستم های پایگاه داده در شرکت های بزرگ فناوری متمرکز هستند.
آمازون، مایکروسافت، گوگل، علی بابا و تِنسِنت بیش از 70 درصد از بازار رایانش ابری (cloud computing) را در اختیار دارند.
این قدرتهای متمرکز به راحتی می توانند سرویسی را حذف و به دادههایی که قرار است خصوصی باشند، دسترسی پیدا کنند.
اینجاست که Web3 وارد میدان می شود.
متن کامل مقاله را اینجا به فارسی بخوانید.
Telegraph
سرویس TON Storage چیست؟
اصول ذخیره سازی TON سرویس TON Storage یک فناوری ذخیره سازی فایل توزیع شده است که از طریق شبکه TON قابل دسترسی است. "بلاک چین TON از آن برای ذخیره نسخههای آرشیو شده از بلاکها و دادههای وضعیت استفاده خواهد کرد، علاوه بر این، کاربران و سرویس های مبنی بر TON…
👍4
Interactive Sha256 Algorithm Explained step by step.
سایتی که بصورت تعاملی روش کار الگوریتم SHA256 را توضیح میدهد.
#algorithm #sha #sha256 #crypto #cryptography
https://sha256algorithm.com
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
سایتی که بصورت تعاملی روش کار الگوریتم SHA256 را توضیح میدهد.
#algorithm #sha #sha256 #crypto #cryptography
https://sha256algorithm.com
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍7
پشت صحنهٔ داکر و کانتینرها چه میگذرد؟
🎥 در این قسمت از سحابتکتاک، نگاهی به پشت صحنه کانتینرها میاندازیم و بهصورت عملی اجزاء یک کانتینر را مورد بررسی قرار میدهیم.
💡 سحابتکتاک، ارائههای فنی سحابیهاست که یک هفته در میان در سحاب برگزار میشود. تصمیم گرفتیم منتخبی از این ارائهها را برای دامنه بزرگتری از مخاطبین برگزار کنیم.
👤ارائه دهنده این قسمت، سیدوحید هاشمی است که بیش از ۱۰ سال تجربه در صنعت نرمافزار و سابقه فعالیت در شرکتهای بینالمللی را دارد. وحید فارغالتحصیل مهندسی نرمافزار از دانشگاه Sheffield انگلستان و مدیر فنی(TPM) تیم SRE سحاب است.
📆 سهشنبه ۱۷ اسفند |⏱ ۱۷:۰۰ - ۱۸:۰۰
🔗 ثبتنام رایگان:
sahab.ir/stt
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🎥 در این قسمت از سحابتکتاک، نگاهی به پشت صحنه کانتینرها میاندازیم و بهصورت عملی اجزاء یک کانتینر را مورد بررسی قرار میدهیم.
💡 سحابتکتاک، ارائههای فنی سحابیهاست که یک هفته در میان در سحاب برگزار میشود. تصمیم گرفتیم منتخبی از این ارائهها را برای دامنه بزرگتری از مخاطبین برگزار کنیم.
👤ارائه دهنده این قسمت، سیدوحید هاشمی است که بیش از ۱۰ سال تجربه در صنعت نرمافزار و سابقه فعالیت در شرکتهای بینالمللی را دارد. وحید فارغالتحصیل مهندسی نرمافزار از دانشگاه Sheffield انگلستان و مدیر فنی(TPM) تیم SRE سحاب است.
📆 سهشنبه ۱۷ اسفند |⏱ ۱۷:۰۰ - ۱۸:۰۰
🔗 ثبتنام رایگان:
sahab.ir/stt
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍5❤3🎉1