TG Telegram Group Link
Channel: Easy Microservices
Back to Bottom
اگر تغییراتی رو فرستادید بالا و میخواهید کدهاتون مجدد رویو بشه از دکمه های درخواست مجدد برای Review توی پول رکوئست میتونید استفاده کنید.
👍2
امروز با تغییراتی که با چندتا از بچه ها که زحمت زیادی کشیدن روی DevOps تونستیم فرایند پابلیش پکیج رو اتوماسیون کنیم.
با توجه به تغییرات و پول رکوئست هایی که بچه ها توی این یکی دو هفته دادن پروژه ی Serialization با حدود 21 فورک و 25 تا پول رکوئست مرج شده و 11 تا Issue داره میترکونه.
در حال حاضر پکیج های زیر در nuget پابلیش شدن و قابل استفاده توی زبان برنامه نویسی سی شارپ هستند:
EasyMicroservices.Serialization.YamlDotNet
EasyMicroservices.Serialization.System.Text.Xml
EasyMicroservices.Serialization.System.Text.Json
EasyMicroservices.Serialization.Newtonsoft.Json
EasyMicroservices.Serialization.MessagePack
EasyMicroservices.Serialization.MemoryPack
EasyMicroservices.Serialization.BinaryGo


بدون تعارف ترکوندید.
بچه های بخش Go هم دارن به سمت جلو میان و پول رکوئست میزنن.
منتظریم بچه های بخش های دیگه و زبان های دیگه جوین شن و حسابی این کامیونیتی رو توی دستشون بگیرن.
واقعا خیلی هیجان انگیزه. به کامیونیتی جوین شید بچه ها، به زودی پکیج ها و ریپازیتوری های جدیدی رو معرفی میکنیم که روی همین ساختار اونارو پیاده سازی و منتشر میکنیم.
سورس این پکیج:
https://github.com/EasyMicroservices/Serialization
👏61
سلام دوستان روز بخیر...
یک مرحله جدیدتر و جلوتر نیاز داریم تا بچه‌هایی که توی کد هنوز دستشون روون نشده شروع کنن روش کار کردن.
ما کنار src یه پوشه میخوایم به نام samples توی این پوشه هم قراره به ازای هر زبان جدا باشه برای مثال samples/CSharp بعد توی پوشه ی سی شارپ یا هر زبانی، میخوایم در واقع مثال هایی از استفاده از این پکیج هارو توی معماری های مختلف در قالب پروژه پیاده سازی کنیم تا برنامه نویس هایی که میخوان از این پکیج ها استفاده کنن مثال هاش رو اینجا پیدا کنن.
چندتا نمونه من میزنم که میتونید issue هاش رو بزنید و توی issue هم میتونید بگید من روش کار میکنم تا من issue رو به شما asign کنم.
چندتا نمونه که میتونید مثال هاش رو بزنید و شروع کنید به پیاده سازی کردن مثال ها برای استفاده از پکیج ها :
1.AspCore
2.ConsoleApp
3.WPF
4.XamarinAndroid
5.XamarinIOS
6.XamarinForms
7.Unity

برای مشاهده‌ی پکیج های Easymicroservices جهت نصب و استفاده توی سمپل ها میتونید به آدرس زیر برید:
https://www.nuget.org/packages?q=easymicroservices
👍1
دوستان عزیزم حتما از جدیدترین نسخه‌ی تلگرام استفاده کنید تا از قابلیت تاپیک های گروه بهرمند بشید و براتون مطالب و مسائل شلوغ نباشه.
برای ساختن یک Issue در گیتهاب کافیه وارد صفحه‌ی هر ریپازیتوری بشید و در تب Issue روی گزینه ی new issue کلیک کنید.
هرگونه فیچر یا باگ و مسئله‌ای که بهش برخورد می‌کنید رو میتونید توی بخش Issue ها بزنید.
در صفحه‌ی باز شده، شما یک تیتر برای Issue می‌زنید و سپس متن کامل مسئله رو توی توضیحات پر می‌کنید.

#Issue
توی شماره‌ی 1 تیتر مسئله رو بزنید.
توی شماره‌ی 2 با توجه به توضیحات می‌تونید قالب رو رعایت کنید و توضیحات مسئله رو بیان کنید.
توی شماره‌ی 3 در صورتی که دسترسی‌های لازم رو داشته باشید می‌تونید مشکل رو به یک شخص برای انجام Asign کنید یا برچسب های مورد نظر برای باگ و فیچر و ... رو بزنید.
و بعد از اینکه کارتون تموم شد روی دکمه‌ی submit new issue در مرحله‌ی 4 کلیک کنید.
مسئله‌ی شما ثبت میشه، شما یک contribution دریافت می‌کنید و مسئله میره تا توسط ادمین‌ها بررسی و توسعه داده بشه.
Easy Microservices
توی شماره‌ی 1 تیتر مسئله رو بزنید. توی شماره‌ی 2 با توجه به توضیحات می‌تونید قالب رو رعایت کنید و توضیحات مسئله رو بیان کنید. توی شماره‌ی 3 در صورتی که دسترسی‌های لازم رو داشته باشید می‌تونید مشکل رو به یک شخص برای انجام Asign کنید یا برچسب های مورد نظر برای…
هر issue یک شماره داره، برای اینکه کامیت هاتون رو به یک issue متصل کنید میتونید با استفاده از شماره‌ی issue کامیتتون رو بزنید.
مثلا اگر شماره‌ی issue عدد 4 باشه.
کامیت مسج شما به این شکل میشه:

Add support for #4 red buttom.

قبل عدد یک # میذاریم.
سلام بچه‌ها چندتا ایده برای پروژه ی فایل منیجر ارائه میکنم اگر دوست داشتید issue اش رو بزنید هر کدومو که دوست داشتید شروع کنید روش کار کردن.
برای بچه های سی شارپ:
1.File Manager for android (Xamarin and MAUI)
2.Directory Manager for android (Xamarin and MAUI)
3.File Manager for IOS (Xamarin and MAUI)
4.Directory Manager for IOS (Xamarin and MAUI)
5.File Manager for UWP
5.Directory Manager for UWP

برای بچه های فلاتر:

1.File Manager for android (Flutter)
2.Directory Manager for android (Flutter)
3.File Manager for IOS (Flutter)
4.Directory Manager for IOS (Flutter)
5.File Manager for Dart (Windows or linux)
5.Directory Manager for Dart (Windows or linux)

برای بچه های جاوا:
1.File Manager for android (Java or katlin)
2.Directory Manager for android (Java or katlin)
3.File Manager for Java (Windows or linux)
4.Directory ManagerJava (Windows or linux)

و بقیه ی زبان های برنامه نویسی مثل javascript برای react native و swift و ... هم میتونید از این ساختار و issue ها ایده بگیرید و شروع کنید به پیاده سازی کردن.
❤️😉
👍2
چون بچه‌ها خیلی زودتر از موعدی که انتظار داشتم وارد پروژه‌ی FileManager شدن من یه توضیحاتی در مورد این پروژه بدم و اینکه قراره چه نیازی رو از ما برطرف کنه تا بقیه‌ی دوستان هم جوین شن.

هدف این پروژه اینه که بتونه کار با فایل و فولدر رو برای شما آسون کنه.
چالش های پیش رو چیا هستن؟
1.مهمترین چالش سیستم عامل های مختلف هستند، برای مثال سیستم عامل ویندوز توی حالت عادی (غیر UWP) برای کار با پوشه و فایل از نرم افزار دسترسی نمیگیره ولی توی سیستم عامل های گوشی به این شکل نیست بلکه نیاز به دسترسی کاربر هست برای همین براحتی نمیتونید از Api های ساخت فایل و پوشه مثل همیشه استفاده کنید.
2.چالش بعدی عدم یکپارچگی مدیریت فایل ها بین دیسک و مموری و Api ها و سایت های مدیریت فایل هست. برای مثال Azure و Amazon و ... از نمونه سایت هایی هستند که به شما این امکان رو میدن که بتونید مدیریت فایل رو در بستر cload یا هاست اونها انجام بدید ولی ما میخوایم طوری FileManager رو پیاده سازی کنیم که کسی که میخواد از Api های مدیریت فایل هم استفاده کنه نیاز نباشه تا دانش زیادی از اون api ها بدونه و بره کلی مطالعه کنه که بفهمه مثلا برای ساخت فایل توی Amazon S3 باید چه api ای رو صدا بزنه (در حد همون secret هاش بدونه کافیه). ما این بستر رو براش فراهم میکنیم و مثل همیشه یک Interface برای انجام اینکار براش کافیه.
3.تست پذیر بودن این نوع پروژه، سخته که یک کتابخانه بنویسید که براحتی بتونید بین کتاب خانه های مختلف سوییچ کنید، ما یک معماری و راه ساده پیدا کردیم پس با استفاده از یک پیاده سازی Memory میتونید حتی فایل ها و پوشه هاتون رو توی حافظه بسازید و بدون درگیر بودن با مسائل مثلا دسترسی ها توی Android میتونید ابتدا با این حرکت فرایند اپتون رو تست کنید. سپس که دیدید فرایند درست کار میکنه سوییچ میکنید روی دیسک و دسترسی هاشو اوکی میکنید.


بنابراین ما در پروژه‌ی FileManager یک interface داریم و یک داکیومنت یکسان برای همه‌ی کتابخانه ها مینویسم که هرکسی این داکیومنت رو بخونه میتونه از هر Api ای که توی این بستر پیاده سازی بشه استفاده کنه.

میشه همون هلو بره تو گلوی خودمون 😄

آدرس ریپازیتوری:
https://github.com/EasyMicroservices/FileManager
👍21
آماده‌اید جمعه میتینگ دوم رو بریم؟ در مورد نقشه‌های بعدی‌مون حرف میزنیم.
بچه‌هایی که مشهد هستید بهم پیام بدید توی گروه اگر حضوری هم میتونید بیایید آدرس میدم تشریف بیارید.

https://hottg.com/easymicroservices
👍9
چطوری #فورک خودمون رو با سورس اصلی سینک کنیم.
حتما براتون پیش اومده که وقتی فورک خودتون رو پول می‌کنید تغییرات سورس اصلی رو دریافت نمی کنید بلکه فقط تغییرات فورک خودتون رو پول می کنید، در ادامه در چند مرحله توضیح میدم که چطوری فورک خودتون رو با سورس اصلی سینک کنید که گاها اگر کانفیلیت دارید بتونید رفعش کنید.
یکی از روش‌ها استفاده از خود گیتهاب هست، همونطور که در تصویر می‌بینید می‌تونید وارد فورک خودتون بشید و روی گزینه‌ی Sync fork کلیک کنید سپس Update branch رو بزنید.
یکی از روش‌های Sync# کردن فورک خودتون با سورس اصلی استفاده از ابزار git هست.
دوتا مفهوم برای این موضوع در گیت وجود داره:
1.Origin
2.Upstream

ابزار cmd رو کنار سورستون اجرا کنید و دستور زیر رو توش بنویسید:
git remote -v

این دستور نسخه های موجود از درس های اون سورس رو روی کامپیوترتون به شما میده برای مثال نمونه‌اش رو در تصویر می‌بیینید که برای من آدرس upstream و آدرس origin تنظیم شده.
برای شما شاید فقط origin تنظیم شده باشه.
در صورتی که میخواید upstream یا origin رو حذف و اضافه کنید می‌تونید از دستورات زیر استفاده کنید.

برای مثال:
git remote add upstream gitRemoteAddress

به جای gitRemoteAddress آدرس گیت سورس اصلی رو بذارید.

اگر خواستید origin رو اضافه کنید به این شکل:
git remote add origin gitRemoteAddress

برای حذف origin هم میتونید از دستور زیر استفاده کنید:
git remote remove origin

برای حذف upstream:
git remote remove upstream

در نهایت همه‌ی این تنظیمات در پوشه‌ی .git که کنار پوشه‌ی سورس ساخته میشه توی فایل config هست.
👍1
سلام دوستان عزیز.
روز بخیر.
میتینگ امروز ساعت 12 توی تلگرام.
Live stream started
Live stream finished (3 minutes)
جلسه‌ی ضبط شده‌ی امروز👆
HTML Embed Code:
2025/07/08 15:35:54
Back to Top