آپدیت بازی: لیدربورد و یک سری تغییرات دیگه
در راستای مقیاس پذیرشدن بازی یک سری تغییرات انجام دادم که کدش رو میتونید توی گیت ببینید. به شکل خلاصه از پاب ساب ردیس و لیستها برای ارتباط بین اجزای مختلف استفاده شده و با استفاده از وب هوک هم اسکیل شده. اینطوری میتونیم سرور های جدید به بازی اضافه کنیم و اسکیل کنیم.
همچنین چند تا فیچر ساده اضافه کردم و تعدادی سوال اضافه کردم که بازی کردنه مزه بده.
@KingsCompBot
اگه پایه هستید یه تست بریم هم مطمئن شیم مقیاس پذیریش کامل داره انجام میشه و مشکل نمیخوریم هم یکم بازی کنیم :)
https://github.com/mhrlife/kingscomp
کد رو هم میتونید اینجا ببینید
در راستای مقیاس پذیرشدن بازی یک سری تغییرات انجام دادم که کدش رو میتونید توی گیت ببینید. به شکل خلاصه از پاب ساب ردیس و لیستها برای ارتباط بین اجزای مختلف استفاده شده و با استفاده از وب هوک هم اسکیل شده. اینطوری میتونیم سرور های جدید به بازی اضافه کنیم و اسکیل کنیم.
همچنین چند تا فیچر ساده اضافه کردم و تعدادی سوال اضافه کردم که بازی کردنه مزه بده.
@KingsCompBot
اگه پایه هستید یه تست بریم هم مطمئن شیم مقیاس پذیریش کامل داره انجام میشه و مشکل نمیخوریم هم یکم بازی کنیم :)
https://github.com/mhrlife/kingscomp
کد رو هم میتونید اینجا ببینید
GitHub
GitHub - mhrlife/kingscomp
Contribute to mhrlife/kingscomp development by creating an account on GitHub.
👍11
اسلایسها (Slice) توی گولنگ چطور کار میکنن؟ ( به انگلیسی)
در کنار چنل خودمون یه چنل کوچولوی انگلیسی ساختم که ویدیوهای خیلی کوتاه گولنگی که شاید توی کامیونیتی فارسی خیلی خواهان نداشته باشه رو انگلیسی بگیرم که امتحان کنم شاید جالب بود. اگه دوس داشتید و لایک و کامنت بذارید خیلی خوشحالم میکنه
https://www.youtube.com/watch?v=EzeJg36vhnw
در کنار چنل خودمون یه چنل کوچولوی انگلیسی ساختم که ویدیوهای خیلی کوتاه گولنگی که شاید توی کامیونیتی فارسی خیلی خواهان نداشته باشه رو انگلیسی بگیرم که امتحان کنم شاید جالب بود. اگه دوس داشتید و لایک و کامنت بذارید خیلی خوشحالم میکنه
https://www.youtube.com/watch?v=EzeJg36vhnw
YouTube
Slices in #Golang - Arrays on steroids!
In this video, I describe how we usually handle arrays when they reach their capacity: by allocating a new part of the memory and duplicating the last values there, with more capacity. Now, slices in Golang do this automatically for us. Then, I show that…
👍20👎6🔥4❤2
MHRCODE | برنامهنویسی با طعم توتفرنگی
اسلایسها (Slice) توی گولنگ چطور کار میکنن؟ ( به انگلیسی) در کنار چنل خودمون یه چنل کوچولوی انگلیسی ساختم که ویدیوهای خیلی کوتاه گولنگی که شاید توی کامیونیتی فارسی خیلی خواهان نداشته باشه رو انگلیسی بگیرم که امتحان کنم شاید جالب بود. اگه دوس داشتید و لایک…
اگه موافق این حرکت نیستید یک حرکت دیگه هم توی ذهنم بود که شاید بهتره. فقط ویدیوهایی که فارسیشون توی کانال هست رو انگلیسی کنم که کامیونیتی فارسی اولویت باشه مثل همیشه. این رو خودم بیشتر پایه ام. یعنی بخاطر کانال دوم چیزی کانال اول از دست نمیده
👍47❤4👎3🔥1
با Redis بازیمون رو Scale کردیم 🔥 مقیاس پذیر کردن هر پروژهای
بازی مولتی پلیر لایوی که نوشتیم رو scalable کردیم! و جای اینکه روی یک سرور بالا باشه با 3 سرور اوردیمش بالا. توی این ویدیو در مورد نیازمندی هایی صحبت میکنم که کدمون لازم داره تا بتونه scale بشه. توی یک پروژه واقعی که بازیمون بود چطور با کمک ردیس یکی یکی این مشکلات رو حل کردیم.
https://youtu.be/0F1H3qt-tNY
بازی مولتی پلیر لایوی که نوشتیم رو scalable کردیم! و جای اینکه روی یک سرور بالا باشه با 3 سرور اوردیمش بالا. توی این ویدیو در مورد نیازمندی هایی صحبت میکنم که کدمون لازم داره تا بتونه scale بشه. توی یک پروژه واقعی که بازیمون بود چطور با کمک ردیس یکی یکی این مشکلات رو حل کردیم.
https://youtu.be/0F1H3qt-tNY
YouTube
با Redis بازیمون رو Scale کردیم 🔥 مقیاس پذیر کردن هر پروژهای
بازی مولتی پلیر لایوی که نوشتیم رو scalable کردیم! و جای اینکه روی یک سرور بالا باشه با 3 سرور اوردیمش بالا. توی این ویدیو در مورد نیازمندی هایی صحبت میکنم که کدمون لازم داره تا بتونه scale بشه. توی یک پروژه واقعی که بازیمون بود چطور با کمک ردیس یکی یکی این…
🔥20👍3
هرآنچه در مورد Concurrency در Golang نیاز است بدانید 🔥
از گوروتینها گرفته تا چنلها و Select Case و Context و... سوالاتیه که این چند وقتیه دیدم خیلی ذهن هم برنامه نویسهای تازه کار گولنگ هم کسایی که چند وقتی هست کار میکنن بوجود اومده و توی این ویدیو سعی کردم به تمام این ها بپردازم. طوری که حتی اگر کسی هستید که به گولنگ آشنایی نداره و فقط براش جالبه، تا کسی که چندین وقته گو میزنه بتونه ازش استفاده کنه.
https://youtu.be/yhMXwezyVd4
از گوروتینها گرفته تا چنلها و Select Case و Context و... سوالاتیه که این چند وقتیه دیدم خیلی ذهن هم برنامه نویسهای تازه کار گولنگ هم کسایی که چند وقتی هست کار میکنن بوجود اومده و توی این ویدیو سعی کردم به تمام این ها بپردازم. طوری که حتی اگر کسی هستید که به گولنگ آشنایی نداره و فقط براش جالبه، تا کسی که چندین وقته گو میزنه بتونه ازش استفاده کنه.
https://youtu.be/yhMXwezyVd4
YouTube
هرآنچه در مورد Concurrency در Golang نیاز است بدانید 🔥
از گوروتینها گرفته تا چنلها و Select Case و Context و... سوالاتیه که این چند وقتیه دیدم خیلی ذهن هم برنامه نویسهای تازه کار گولنگ هم کسایی که چند وقتی هست کار میکنن بوجود اومده و توی این ویدیو سعی کردم به تمام این ها بپردازم. طوری که حتی اگر کسی هستید…
🔥24❤9👍2
پوینترها به زبان خیلییی ساده 🔥 Pointerها در #Golang
پوینترها یا اشارهگر ها یا همون Pointer در اصل یک ساختمان داده هست که آدرس حافظه رو توی خودش نگه میداره و با کمک dereference کردن بهمون اجازه میده به مقدار اون آدرس در حافظه دسترسی پیدا کنیم و ویرایشش کنیم. توی این ویدیو تمام اصطلاحات و پایههای که برای کار با پوینترها در گولنگ نیازدارید رو با مثال توضیح دادم. در نهایت هم به این سوال جواب دادم:
https://youtu.be/nEgf3LpZbNo
پوینترها یا اشارهگر ها یا همون Pointer در اصل یک ساختمان داده هست که آدرس حافظه رو توی خودش نگه میداره و با کمک dereference کردن بهمون اجازه میده به مقدار اون آدرس در حافظه دسترسی پیدا کنیم و ویرایشش کنیم. توی این ویدیو تمام اصطلاحات و پایههای که برای کار با پوینترها در گولنگ نیازدارید رو با مثال توضیح دادم. در نهایت هم به این سوال جواب دادم:
چرا جای اینکه مقدار متغیر رو بدیم به توابع، پوینترشون رو ندیم که سریع تر باشه و حافظه کمتری ارسال بشه؟
https://youtu.be/nEgf3LpZbNo
YouTube
پوینترها به زبان خیلییی ساده 🔥 Pointerها در #Golang
پوینترها یا اشارهگر ها یا همون Pointer در اصل یک ساختمان داده هست که آدرس حافظه رو توی خودش نگه میداره و با کمک dereference کردن بهمون اجازه میده به مقدار اون آدرس در حافظه دسترسی پیدا کنیم و ویرایشش کنیم. توی این ویدیو تمام اصطلاحات و پایههای که برای کار…
❤18🔥10👍3
سلام دوستان روز زیبایی داشته باشید
توی ویدیو بعدی میخوام حالت Q&A به سوالاتی که دارید چه در مورد برنامه نویسی، چه محیط کاری، شرکتهای که توشون بودم، اینده برنامه نویسی با وجود هوش مصنوعی و... جواب بدم
اگه هر سوالی یا دغدغه ای داشتید توی همین ترد لطفا ارسال کنید، سوال بد هم نداریم، خود سانسوری و اینا هم نکنید.😅
توی ویدیو بعدی میخوام حالت Q&A به سوالاتی که دارید چه در مورد برنامه نویسی، چه محیط کاری، شرکتهای که توشون بودم، اینده برنامه نویسی با وجود هوش مصنوعی و... جواب بدم
اگه هر سوالی یا دغدغه ای داشتید توی همین ترد لطفا ارسال کنید، سوال بد هم نداریم، خود سانسوری و اینا هم نکنید.😅
❤23👍3🔥3
MHRCODE | برنامهنویسی با طعم توتفرنگی
سلام دوستان روز زیبایی داشته باشید توی ویدیو بعدی میخوام حالت Q&A به سوالاتی که دارید چه در مورد برنامه نویسی، چه محیط کاری، شرکتهای که توشون بودم، اینده برنامه نویسی با وجود هوش مصنوعی و... جواب بدم اگه هر سوالی یا دغدغه ای داشتید توی همین ترد لطفا ارسال…
ممنون از همه تون بابت مشارکتتون، خیلییی سوالای جذاب و خوبی بودن و بهم ایده داد برای ادامه مسیر کانال چه مطالب نیاز کامیونیتی فارسی رو بیشتر رفع میکنه ♥️
❤31👍2
دوستان به لطف شما کانال اماده مانیتایز شدن هست.
شما جایی رو میشناسید که کارای ادسنس رو انجام بده؟ اگه اره ممنون میشم بهم معرفی کنید
شما جایی رو میشناسید که کارای ادسنس رو انجام بده؟ اگه اره ممنون میشم بهم معرفی کنید
❤27🔥8👎1
اصل Interface Segregation - کدت رو مجبور به کار بی ربط نکن!
یکی از جذابیتهای برنامهنویسی اینه با استفاده از Interfaceها اجزای مختلف کدمون رو به شکل extendable پیادهسازی کنیم. اما این وسط پیادهسازیهای مختلف یک Interface میتونن در بخشهای جزئی با هم تفاوت داشته باشن که اگه این منطق هارو با اینترفیس اصلی قاطی کنیم باعث میشه کلی کد داشته باشیم که اضافه هستن و مجبور به نوشتنشون شدیم. توی این ویدیو یادمیگیریم چطور با Interface Segregation جلوی این موضوع رو بگیریم.
https://youtu.be/yHsUH4kMkpM
یکی از جذابیتهای برنامهنویسی اینه با استفاده از Interfaceها اجزای مختلف کدمون رو به شکل extendable پیادهسازی کنیم. اما این وسط پیادهسازیهای مختلف یک Interface میتونن در بخشهای جزئی با هم تفاوت داشته باشن که اگه این منطق هارو با اینترفیس اصلی قاطی کنیم باعث میشه کلی کد داشته باشیم که اضافه هستن و مجبور به نوشتنشون شدیم. توی این ویدیو یادمیگیریم چطور با Interface Segregation جلوی این موضوع رو بگیریم.
https://youtu.be/yHsUH4kMkpM
YouTube
اصل Interface Segregation - کدت رو مجبور به کار بی ربط نکن!
یکی از جذابیتهای برنامهنویسی اینه با استفاده از Interfaceها اجزای مختلف کدمون رو به شکل extendable پیادهسازی کنیم. اما این وسط پیادهسازیهای مختلف یک Interface میتونن در بخشهای جزئی با هم تفاوت داشته باشن که اگه این منطق هارو با اینترفیس اصلی قاطی کنیم…
❤29👍8👎2
اسلایس Slice در گولنگ! یک بار برای همیشه!
اسلایسها آرایه نیستن. بهتره فرقشون رو زودتر یادبگیریم تا مجبور نباشیم از راه سخت (دیباگ کردن یک باگ روی پروداکشن!) یادش بگیریم. اسلایسها در گولنگ به ما اجازه میدن به شکل داینامیک سایز به آرایه ها دسترسی داشته باشیم. اما باز هم توی خودشون از آرایه استفاده میکنند. توی این ویدیو اول یکم با پایههای ارایه توی گولنگ آشنا میشیم و سعی میکنیم ساختاری مشابه Sliceها با ارایه پیاده سازی کنیم و کد اسلایس رو هم یک نگاه میندازیم.
https://youtu.be/_72DZnwRG10
اسلایسها آرایه نیستن. بهتره فرقشون رو زودتر یادبگیریم تا مجبور نباشیم از راه سخت (دیباگ کردن یک باگ روی پروداکشن!) یادش بگیریم. اسلایسها در گولنگ به ما اجازه میدن به شکل داینامیک سایز به آرایه ها دسترسی داشته باشیم. اما باز هم توی خودشون از آرایه استفاده میکنند. توی این ویدیو اول یکم با پایههای ارایه توی گولنگ آشنا میشیم و سعی میکنیم ساختاری مشابه Sliceها با ارایه پیاده سازی کنیم و کد اسلایس رو هم یک نگاه میندازیم.
https://youtu.be/_72DZnwRG10
YouTube
اسلایس Slice در گولنگ! یک بار برای همیشه!
اسلایسها آرایه نیستن. بهتره فرقشون رو زودتر یادبگیریم تا مجبور نباشیم از راه سخت (دیباگ کردن یک باگ روی پروداکشن!) یادش بگیریم. اسلایسها در گولنگ به ما اجازه میدن به شکل داینامیک سایز به آرایه ها دسترسی داشته باشیم. اما باز هم توی خودشون از آرایه استفاده…
🔥28👍5
توی بازی Glory Arena وابستگی پرفورمنس به latancy دیتابیس داشت خیلی زیاد میشد و با چند تا تغییر ساده توی Gorm، یکی از پیچیده ترین تراکنشا ( با کلی کوئری و لاجیک ) از میانگین 150ms رسید به 30ms.
خلاصه تمام این اتفاق ها رو میتونید توی یکی از ویدیوهای قدیمیم ببینید:
https://youtu.be/sUxpHdR86dM?si=TOjmMlDIhyMadGqG
خلاصه تمام این اتفاق ها رو میتونید توی یکی از ویدیوهای قدیمیم ببینید:
https://youtu.be/sUxpHdR86dM?si=TOjmMlDIhyMadGqG
👍20🔥4
سلام به همه دوستان بعد یک تاخیر طولانی
این چند وقته برای هکتون تلگرام روی یک بازی تلگرامی کار کردم که کلی تجربه جالب بدست اوردم، از اینکه چطور از صفر یک محصول رو با سرعت و انعطاف بالا با Golang توسعه بدیم، تا تجربه های جالب optimization با css.
اسم بازی Glory Arena هست و به شکل خلاصه شما یک ترکیب از کارتها دارید که هر کارت قدرت متفاوتی داره. میتونید ترکیبشون کنید و کارتهای خفنتر بسازید و رقابت کنید.
اگه دوس داشتید یک سر بهش بزنید ادرس رباتش اینه:
@GloryArenaBot
این چند وقته برای هکتون تلگرام روی یک بازی تلگرامی کار کردم که کلی تجربه جالب بدست اوردم، از اینکه چطور از صفر یک محصول رو با سرعت و انعطاف بالا با Golang توسعه بدیم، تا تجربه های جالب optimization با css.
اسم بازی Glory Arena هست و به شکل خلاصه شما یک ترکیب از کارتها دارید که هر کارت قدرت متفاوتی داره. میتونید ترکیبشون کنید و کارتهای خفنتر بسازید و رقابت کنید.
اگه دوس داشتید یک سر بهش بزنید ادرس رباتش اینه:
@GloryArenaBot
❤27👍5
همستر کوین چیه؟
▪️بعد از اینکه عید لایو بازی تلگرامی رو رفتیم من با هکتونهای تلگرام اشنا شدم و واقعا فاز اون شدم به مدت دو ماه (که تجربیات خوبی داشت ولی کم کم دارم فاصله میگیرم). جالب ترین نکتش این بود برام تلگرام چرا اینقدر داره پول مفت میده؟
▪️تلگرام یک میلیارد کاربر داره حدودا و این با راه انداختن شبکه بلاکچین اش خیلی دوست داره این کاربرا تبدیل به کاربرای بلاکچینش بشن. خب منطقی هم هست، فرصت مشابه WeChat البته برای تمام دنیا! برای همین عددهای چند میلیون دلاری هزینه هکتون هاش میکنه و خروجی سری اولش میشه Catizen، ناتکوین و Pixel.
▪️بعد از این اتفاق و کمک مالی تلگرام به نات کوین روزانه یک میلیون والت جدید ساخته شد و کاربرای تلگرام انبورد شدن روی TON.
▪️این وسط افراد زیادی سعی کردن مشابه نات کوین هایپ ایجاد کنن مثل TheYesCoin و ... که الزامی نداره تلگرام ازشون پشتیبانی کنه.
▪️اما تفاوت Hamster Kombat با اونها اینه که توسط صرافیهای بزرگ مثل بایننس پشتیبانی میشه و تلگرام از روز اول اون رو توی TON Community تبلیغ کرد و ازش قراره پشتیبانی بکنه. یعنی لیست میشه. اما لزوما هم ارزش نات کوین نخواهد بود.
@MhrCode
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
MHRCODE | برنامهنویسی با طعم توتفرنگی
اینقدر این دو ماه برای منی که هیچ دیدی نسبت به بلاکچین نداشتم موضوع جذابی بود که بعد از تسلط نسبی حتما در مورد زبون TACT برای برنامهنویسی توی اون بستر ویدیو میسازم.
شما هم اگه علاقه دارید حتما این فرصت رو از دست ندید
شما هم اگه علاقه دارید حتما این فرصت رو از دست ندید
👍17❤8
اگه میخواید جدا در موردش بخونید این لیست منابعی هست که خودم باهاش جلو رفتم:
https://stepik.org/lesson/1004958/step/1?unit=1012592
بهتون دید میده اصلا بلاکچین چطور کار میکنه، اصطلاحاتی مثل gas fee چیه و ... و زبون FunC رو اموزش میده
خیلی خوبه اول این دوره رو دید بعدش این پلی لیست یوتیوب:
https://youtube.com/playlist?list=PLOIvUFGfwP93tZI_WnaLyJsZlskU4ao92&si=5PeJDA9s8AKPrQb7
زبون Tact زبون سطح بالاتری هست و برای شروع خیلی کارو راه میندازه
https://stepik.org/lesson/1004958/step/1?unit=1012592
بهتون دید میده اصلا بلاکچین چطور کار میکنه، اصطلاحاتی مثل gas fee چیه و ... و زبون FunC رو اموزش میده
خیلی خوبه اول این دوره رو دید بعدش این پلی لیست یوتیوب:
https://youtube.com/playlist?list=PLOIvUFGfwP93tZI_WnaLyJsZlskU4ao92&si=5PeJDA9s8AKPrQb7
زبون Tact زبون سطح بالاتری هست و برای شروع خیلی کارو راه میندازه
Stepik: online education
TON Ecosystem overview
👍13❤8🔥3
سلام دوستان.
یک ویدیو دارم اماده میکنم در مورد توسعه وباپ های تلگرام شبیه همین همستر کامبت و ناتکوین.
توی این ویدیو هم یادمیگیریم مفاهیم اولیش رو هم با solidjs و گولنگ یه نیمچه UI میاریم بالا
اگه سوالی با موردی هست که دوس دارید توی ویدیو بهش بپردازیم توی کامنتهای همین پست ممنون میشم بگید
یک ویدیو دارم اماده میکنم در مورد توسعه وباپ های تلگرام شبیه همین همستر کامبت و ناتکوین.
توی این ویدیو هم یادمیگیریم مفاهیم اولیش رو هم با solidjs و گولنگ یه نیمچه UI میاریم بالا
اگه سوالی با موردی هست که دوس دارید توی ویدیو بهش بپردازیم توی کامنتهای همین پست ممنون میشم بگید
👍41❤13🔥9
ساخت اولین MiniApp تلگرام - زیرساخت پشت ناتکوین و همستر
تلگرام از خیلی وقت پیش ها مینیاپ یا WebApp رو ارائه داده بود اما اخیرا به لطف رباتهای مثل نات کوین و همستر کامبت، همه با این قابلیت آشنا شدن و فرصت خوبی برای پیادهسازی ایده های جدید هستش.
https://youtu.be/Flyd9OL3bPE
تلگرام از خیلی وقت پیش ها مینیاپ یا WebApp رو ارائه داده بود اما اخیرا به لطف رباتهای مثل نات کوین و همستر کامبت، همه با این قابلیت آشنا شدن و فرصت خوبی برای پیادهسازی ایده های جدید هستش.
توی این ویدیو با هم یادمیگیریم که این قابلیت چطور کار میکنه، با هم یک مینی اپ ساده میاریم بالا و Authorization رو براش پیادهسازی میکنیم.
https://youtu.be/Flyd9OL3bPE
YouTube
ساخت اولین MiniApp تلگرام - زیرساخت پشت ناتکوین و همستر
تلگرام از خیلی وقت پیش ها مینیاپ یا WebApp رو ارائه داده بود اما اخیرا به لطف رباتهای مثل نات کوین و همستر کامبت، همه با این قابلیت آشنا شدن و فرصت خوبی برای پیادهسازی ایده های جدید هستش.
توی این ویدیو با هم یادمیگیریم که این قابلیت چطور کار میکنه، با…
توی این ویدیو با هم یادمیگیریم که این قابلیت چطور کار میکنه، با…
❤34👍7🔥3
سلام دوستان. باز مقاله اسپانسری توی مدیوم داشتم اگه دوس داشتید خوشحال میشم یه سر بهشون بزنید.
An Introduction to Redis Sets — The Underrated Data Structure:
https://medium.com/@mhrlife/an-introduction-to-redis-sets-the-underrated-data-structure-dcb5169a8182
Redis Sorted Sets — Building Real-time Mood-Based Recommendation System:
https://medium.com/@mhrlife/redis-sorted-sets-building-real-time-mood-based-recommendation-system-0face55b4a32
به شکل خلاصه یکم با Set و Sorted Set ور رفتیم و چند تا فیچر باهاشون ساختیم و در نهایت یک سیستم که براساس Mood کاربر بهش محصول پیشنهاد میده رو نوشتیم.
اون لینک اسپانسر رو هم اگه روش کلیک کنید که خیلی خیلی لطف میکنید 😅
An Introduction to Redis Sets — The Underrated Data Structure:
https://medium.com/@mhrlife/an-introduction-to-redis-sets-the-underrated-data-structure-dcb5169a8182
Redis Sorted Sets — Building Real-time Mood-Based Recommendation System:
https://medium.com/@mhrlife/redis-sorted-sets-building-real-time-mood-based-recommendation-system-0face55b4a32
به شکل خلاصه یکم با Set و Sorted Set ور رفتیم و چند تا فیچر باهاشون ساختیم و در نهایت یک سیستم که براساس Mood کاربر بهش محصول پیشنهاد میده رو نوشتیم.
اون لینک اسپانسر رو هم اگه روش کلیک کنید که خیلی خیلی لطف میکنید 😅
Medium
An Introduction to Redis Sets — The Underrated Data Structure
Redis is a powerful, open-source, in-memory data structure store. It is widely known for its speed and efficiency. Redis supports various…
👍27