Gopher Academy
🎯آموزش Regular Expressions در گولنگ🎯 ✅Understanding Regular Expressions 🔴 https://t.me/gopher_academy/593 ✅Dealing With Special Characters 🔴 https://t.me/gopher_academy/599 ✅ Using Boundaries 🔴 https://t.me/gopher_academy/606 ✅Using Classes 🔴 https:/…
🔴Using Boundaries🔴
✅خط ۵
پیدا کردن کلمه father در رشته
✅خط ۸
انتهای رشته کلمه father باشد
✅خط ۱۱
شروع رشته کلمه Hello باشد
✅خط ۱۳
پیدا کردن کلمه kill در رشته
✅خط ۱۶
جست و جوی بخشی از جمله killed در رشته
✅خط ۱۹
ادامه کلمه kill نباید چیزی باشد
✅خط ۲۲
قبل و بعد kill نباید چیزی باشد
✅خط ۲۵
قبل و بعد killed نباید چیزی باشد
✅خط ۲۸
قبل Montoya چیزی نباید باشد اما بعدش باید یه ویرگول باشد
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅خط ۵
پیدا کردن کلمه father در رشته
✅خط ۸
انتهای رشته کلمه father باشد
✅خط ۱۱
شروع رشته کلمه Hello باشد
✅خط ۱۳
پیدا کردن کلمه kill در رشته
✅خط ۱۶
جست و جوی بخشی از جمله killed در رشته
✅خط ۱۹
ادامه کلمه kill نباید چیزی باشد
✅خط ۲۲
قبل و بعد kill نباید چیزی باشد
✅خط ۲۵
قبل و بعد killed نباید چیزی باشد
✅خط ۲۸
قبل Montoya چیزی نباید باشد اما بعدش باید یه ویرگول باشد
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👀1
Gopher Academy
🔴Using Classes🔴 ✅انواع الگو ها جهت استفاده در کد ➖➖➖➖➖➖➖➖➖ 🔰 @gopher_academy
👆🏻👆🏻👆🏻👆🏻
✅توی خط ۳ دنبال رشته ACGTمیگرده که بعدش دنباله ای داشته باشه
✅توی خط ۶ هم دیگه واضح هست
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅توی خط ۳ دنبال رشته ACGTمیگرده که بعدش دنباله ای داشته باشه
✅توی خط ۶ هم دیگه واضح هست
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🎯آموزش Regular Expressions در گولنگ🎯 ✅Understanding Regular Expressions 🔴 https://t.me/gopher_academy/593 ✅Dealing With Special Characters 🔴 https://t.me/gopher_academy/599 ✅ Using Boundaries 🔴 https://t.me/gopher_academy/606 ✅Using Classes 🔴 https:/…
🔴Compiling Your Regex🔴
✅برای اینکه بخواییم چندین الگو رو توی یه رشته به کار ببریم از کد فوق استفاده می کنیم
✅ با استفاده از MustCompile
✅ دقت کنبد که فقط کافی هست یکی از الگو ها با رشته ما صدق کند
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅برای اینکه بخواییم چندین الگو رو توی یه رشته به کار ببریم از کد فوق استفاده می کنیم
✅ با استفاده از MustCompile
✅ دقت کنبد که فقط کافی هست یکی از الگو ها با رشته ما صدق کند
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴بقول Uncle Bob، سیستمهایی که مدیریت وابستگی(SOLID) در آن رعایت نمیشود این ۴ بو (Smell) را همراه خود خواهند داشت:🔴
✅سختی یا Rigidity
سختی یا Rigidity یعنی ناتوانی در تغییر. / اگر برای تغییر دادن بخش کوچکی از کد مجبور شویم کل سیستم را مجددا rebuild کنیم، آنوقت آن سیستم سخت شده یا دچار Rigidty شده است.
✅شکنندگی یا Fragility
مفهوم Fragility و Rigidity بسیار بهم نزدیک اند. درواقع شکنندگی و سختی، علت و معلول یکدیگر هستند. شکنندگی یا Fragility اشاره دارد به اینکه هر موقع تغییری در سیستم ایجاد میکنید در بخش (یا بخشهای) دیگری از سیستم - که حتی هیچ ربطی با آن قسمت ندارد - با خطا و مشکل مواجه میشوید.
✅عدم تحرک یا Immobility
نتوانیم آن قسمت از کد یا کامپوننت را در دیگر بخشهای سیستم استفاده کنیم.
✅چسبناکی یا Viscosity
چسبناکی، ویسکوزیته یا Viscosity مقاومت در مقابل تغییر است. وقتی که ساخت مجدد و تست سیستم برای ما سخت میشود و ترجیح بدهیم از خیر تغییرات آن قسمت بگذریم، آنگاه کد ما viscous یا چسبناک است.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅سختی یا Rigidity
سختی یا Rigidity یعنی ناتوانی در تغییر. / اگر برای تغییر دادن بخش کوچکی از کد مجبور شویم کل سیستم را مجددا rebuild کنیم، آنوقت آن سیستم سخت شده یا دچار Rigidty شده است.
✅شکنندگی یا Fragility
مفهوم Fragility و Rigidity بسیار بهم نزدیک اند. درواقع شکنندگی و سختی، علت و معلول یکدیگر هستند. شکنندگی یا Fragility اشاره دارد به اینکه هر موقع تغییری در سیستم ایجاد میکنید در بخش (یا بخشهای) دیگری از سیستم - که حتی هیچ ربطی با آن قسمت ندارد - با خطا و مشکل مواجه میشوید.
✅عدم تحرک یا Immobility
نتوانیم آن قسمت از کد یا کامپوننت را در دیگر بخشهای سیستم استفاده کنیم.
✅چسبناکی یا Viscosity
چسبناکی، ویسکوزیته یا Viscosity مقاومت در مقابل تغییر است. وقتی که ساخت مجدد و تست سیستم برای ما سخت میشود و ترجیح بدهیم از خیر تغییرات آن قسمت بگذریم، آنگاه کد ما viscous یا چسبناک است.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴یه کتاب خوب برای درک بهتر اصول مهندسی نرم افزار🔴
✅ Fundamentals of Software Architecture: An Engineering Approach
✅ لینک دانلود
❌ https://b-ok.cc/book/5407664/01e173
✅ فایل پسوند epub هست که با استفاده از سایت زیر اون رو به pdf تبدیل کنید
❌ https://www.zamzar.com
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅ Fundamentals of Software Architecture: An Engineering Approach
✅ لینک دانلود
❌ https://b-ok.cc/book/5407664/01e173
✅ فایل پسوند epub هست که با استفاده از سایت زیر اون رو به pdf تبدیل کنید
❌ https://www.zamzar.com
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🎯آموزش Regular Expressions در گولنگ🎯 ✅Understanding Regular Expressions 🔴 https://t.me/gopher_academy/593 ✅Dealing With Special Characters 🔴 https://t.me/gopher_academy/599 ✅ Using Boundaries 🔴 https://t.me/gopher_academy/606 ✅Using Classes 🔴 https:/…
🔴Finding🔴
✅از سمت چپ شروع به تگاه کردن می کنه تا الگوی مانند الگوهای خط دو را پیدا کند و بعدش به انتها جمله همون الگوی رو که پیدا کرد رو بزاره
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅از سمت چپ شروع به تگاه کردن می کنه تا الگوی مانند الگوهای خط دو را پیدا کند و بعدش به انتها جمله همون الگوی رو که پیدا کرد رو بزاره
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🎯آموزش Regular Expressions در گولنگ🎯 ✅Understanding Regular Expressions 🔴 https://t.me/gopher_academy/593 ✅Dealing With Special Characters 🔴 https://t.me/gopher_academy/599 ✅ Using Boundaries 🔴 https://t.me/gopher_academy/606 ✅Using Classes 🔴 https:/…
🔴Replacing🔴
✅ همان طور که از کد فوق معلوم هست در خط ۳۳ ما یه تابع داریم به نام ReplaceAllStringFunc که کارش اینه یه تکست میگیره و یه الگو که به صورت map در آوردیم و رشته مدنظر رو باهاش تطبیق میده و جایگذین می کنه
به همین راحتی
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅ همان طور که از کد فوق معلوم هست در خط ۳۳ ما یه تابع داریم به نام ReplaceAllStringFunc که کارش اینه یه تکست میگیره و یه الگو که به صورت map در آوردیم و رشته مدنظر رو باهاش تطبیق میده و جایگذین می کنه
به همین راحتی
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Forwarded from Gopher Academy
🎯آموزش Regular Expressions در گولنگ🎯
✅Understanding Regular Expressions
🔴 https://t.me/gopher_academy/593
✅Dealing With Special Characters
🔴 https://t.me/gopher_academy/599
✅ Using Boundaries
🔴 https://t.me/gopher_academy/606
✅Using Classes
🔴 https://t.me/gopher_academy/608
🔴 https://t.me/gopher_academy/609
🔴 https://t.me/gopher_academy/610
✅Using Alternatives
🔴 https://t.me/gopher_academy/611
✅Compiling Your Regex
🔴 https://t.me/gopher_academy/612
✅Finding
🔴 https://t.me/gopher_academy/617
✅Replacing
🔴 https://t.me/gopher_academy/618
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅Understanding Regular Expressions
🔴 https://t.me/gopher_academy/593
✅Dealing With Special Characters
🔴 https://t.me/gopher_academy/599
✅ Using Boundaries
🔴 https://t.me/gopher_academy/606
✅Using Classes
🔴 https://t.me/gopher_academy/608
🔴 https://t.me/gopher_academy/609
🔴 https://t.me/gopher_academy/610
✅Using Alternatives
🔴 https://t.me/gopher_academy/611
✅Compiling Your Regex
🔴 https://t.me/gopher_academy/612
✅Finding
🔴 https://t.me/gopher_academy/617
✅Replacing
🔴 https://t.me/gopher_academy/618
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔺دوستانی که میخوان PDF های داخل کانال رو به صورت کتابی (جلدی) داشته باشن به یکی از آی دی های زیر پیام بدن 🔺
@Skybooks_ir
@Rezacisco2007
#book
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
@Skybooks_ir
@Rezacisco2007
#book
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Forwarded from Bardia
Fundamentals_of_Software_Architecture_An_Engineering_Approach_by.pdf
59.3 MB
🔴یه کتاب خوب برای درک بهتر اصول مهندسی نرم افزار🔴
https://t.me/gopher_academy/616
✅ Fundamentals of Software Architecture: An Engineering Approach
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
https://t.me/gopher_academy/616
✅ Fundamentals of Software Architecture: An Engineering Approach
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴آموزش proto3 از صفر تا صد🔴
✅proto?
🔴https://t.me/gopher_academy/627
✅Defining A Message Type
🔴 https://t.me/gopher_academy/628
✅Assigning Field Numbers
🔴https://t.me/gopher_academy/629
✅Adding Comments
🔴 https://t.me/gopher_academy/630
✅Reserved Fields
🔴 https://t.me/gopher_academy/631
✅What's Generated From Your .proto?
🔴 https://t.me/gopher_academy/632
✅Scalar Value Types
🔴 https://t.me/gopher_academy/633
✅Default Values
🔴 https://t.me/gopher_academy/634
✅Enumerations
🔴 https://t.me/gopher_academy/636
✅Using Other Message Types
🔴 https://t.me/gopher_academy/638
✅Nested Types
🔴 https://t.me/gopher_academy/639
✅Updating A Message Type
🔴 https://t.me/gopher_academy/641
✅Any
🔴 https://t.me/gopher_academy/642
✅Oneof
🔴 https://t.me/gopher_academy/643
✅Maps
🔴 https://t.me/gopher_academy/647
✅Packages
🔴 https://t.me/gopher_academy/648
✅Defining Services
🔴 https://t.me/gopher_academy/649
🔴 https://t.me/gopher_academy/650
✅JSON Mapping
🔴 https://t.me/gopher_academy/664
🔴 https://t.me/gopher_academy/665
🔴 https://t.me/gopher_academy/666
✅JSON options
🔴 https://t.me/gopher_academy/667
✅Options
🔴
✅Generating Your Classes
🔴
#proto3
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅proto?
🔴https://t.me/gopher_academy/627
✅Defining A Message Type
🔴 https://t.me/gopher_academy/628
✅Assigning Field Numbers
🔴https://t.me/gopher_academy/629
✅Adding Comments
🔴 https://t.me/gopher_academy/630
✅Reserved Fields
🔴 https://t.me/gopher_academy/631
✅What's Generated From Your .proto?
🔴 https://t.me/gopher_academy/632
✅Scalar Value Types
🔴 https://t.me/gopher_academy/633
✅Default Values
🔴 https://t.me/gopher_academy/634
✅Enumerations
🔴 https://t.me/gopher_academy/636
✅Using Other Message Types
🔴 https://t.me/gopher_academy/638
✅Nested Types
🔴 https://t.me/gopher_academy/639
✅Updating A Message Type
🔴 https://t.me/gopher_academy/641
✅Any
🔴 https://t.me/gopher_academy/642
✅Oneof
🔴 https://t.me/gopher_academy/643
✅Maps
🔴 https://t.me/gopher_academy/647
✅Packages
🔴 https://t.me/gopher_academy/648
✅Defining Services
🔴 https://t.me/gopher_academy/649
🔴 https://t.me/gopher_academy/650
✅JSON Mapping
🔴 https://t.me/gopher_academy/664
🔴 https://t.me/gopher_academy/665
🔴 https://t.me/gopher_academy/666
✅JSON options
🔴 https://t.me/gopher_academy/667
✅Options
🔴
✅Generating Your Classes
🔴
#proto3
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴پروتوباف🔴
✅اگر میخواید بدونید پروتوباف چیه بهتره اول انواع ساختار مرسوم دیتا چیه، در مرحله اول CSV وجود داشت که یک سری ستون تعریف میکردید و برای اون ستون ها ردیف اضافه میکردید.
✅میشد راحت ساختش، راحت خوندش، راحت درکش کرد ولی نمیشد نوع دیتاهارو تعریف کرد، وقتی توی دیتاتون ویرگول داشته باشید کارِتون خیلی سخت میشه، نمیتونید مطمئن باشید دارید دیتارو توی ستون درست ذخیره میکنید یا نه.
✅در مرحله بعد XML داشتیم که فکر نمیکنم دیگه هیچجایی استفاده بشه پس توضیح نمیدم ولی توی وب خیلی کاربرد داشت تا اینکه جیسون معرفی شد.
✅جیسون هر نوع دیتایی تو خودش جا میداد (آرایه، آبجکت، تو در تو)، تو اپلیکیشنهای وب خیلی محبوب بود، با تمام زبانهای برنامه نویسی سازگار بود، به راحتی توی شبکه انتقال داده میشد. ولی چندتایی مشکل داشت، برای مثال الگویی نداشت و توی هر ریکوئست میتونست شکل متفاوتی داشته باشه، چون کلیدهارو هر دفعه تکرار میکنه حجم بزرگتری داشت، همچنین هیچ داکیومنت یا کامنتی همراشون ندارن.
✅و اما پروتوباف (protocol buffers) در سال ۲۰۰۸ توسط گوگل ایجاد شد (که در اون تاریخ SPDY نام داشت)، یک استاندارده که بیشتر برای ارتباط داخلی (ارتباط سرویسها با یکدیگر) استفاده میشه اما این روزها دارن تلاش میکنند که این استاندارد سمت کاربر هم قابل استفاده باشه که فعلا در اندروید امکان پذیره و نمونههایی هم برای مرورگر آماده شده، به علت باینری بودن قابل استفاده در HTTP/2 است از همین جهت سرعت و پرفورمنس خیلی بهتری داره.
✅مزیتهای پروتوباف: تایپ دیتاها تعریف شدس، دیتاها بصورت اتوماتیک کمپرس میشن، تمام مسیجهای ارسالی و دریافتی ساختار (schema) دارن (توی فایل proto تعریف میشن و بعدا توسط جنریتور کد مخصوص زبان شما جنریت میشه)، داکیومنت میتونه توی فایل proto نوشته بشه، دیتاها میتونه توی هر زبان برنامه نویسیای خونده بشه، ساختار (schema) میتونه هرزمانی توسعه پیدا کنه، حدود ۷ برابر سریعتر از جیسونه، کدها بصورت اتوماتیک برای زبان شما جنریت میشه.
✅و معایب پروتوباف: ممکنه کد جنریتورش بعضی از زبانها رو ساپورت نکنه، نمیتونید دیتاهارو موقع انتقال با تکست ادیتور باز کنید (چون باینتریه).
#proto3
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅اگر میخواید بدونید پروتوباف چیه بهتره اول انواع ساختار مرسوم دیتا چیه، در مرحله اول CSV وجود داشت که یک سری ستون تعریف میکردید و برای اون ستون ها ردیف اضافه میکردید.
✅میشد راحت ساختش، راحت خوندش، راحت درکش کرد ولی نمیشد نوع دیتاهارو تعریف کرد، وقتی توی دیتاتون ویرگول داشته باشید کارِتون خیلی سخت میشه، نمیتونید مطمئن باشید دارید دیتارو توی ستون درست ذخیره میکنید یا نه.
✅در مرحله بعد XML داشتیم که فکر نمیکنم دیگه هیچجایی استفاده بشه پس توضیح نمیدم ولی توی وب خیلی کاربرد داشت تا اینکه جیسون معرفی شد.
✅جیسون هر نوع دیتایی تو خودش جا میداد (آرایه، آبجکت، تو در تو)، تو اپلیکیشنهای وب خیلی محبوب بود، با تمام زبانهای برنامه نویسی سازگار بود، به راحتی توی شبکه انتقال داده میشد. ولی چندتایی مشکل داشت، برای مثال الگویی نداشت و توی هر ریکوئست میتونست شکل متفاوتی داشته باشه، چون کلیدهارو هر دفعه تکرار میکنه حجم بزرگتری داشت، همچنین هیچ داکیومنت یا کامنتی همراشون ندارن.
✅و اما پروتوباف (protocol buffers) در سال ۲۰۰۸ توسط گوگل ایجاد شد (که در اون تاریخ SPDY نام داشت)، یک استاندارده که بیشتر برای ارتباط داخلی (ارتباط سرویسها با یکدیگر) استفاده میشه اما این روزها دارن تلاش میکنند که این استاندارد سمت کاربر هم قابل استفاده باشه که فعلا در اندروید امکان پذیره و نمونههایی هم برای مرورگر آماده شده، به علت باینری بودن قابل استفاده در HTTP/2 است از همین جهت سرعت و پرفورمنس خیلی بهتری داره.
✅مزیتهای پروتوباف: تایپ دیتاها تعریف شدس، دیتاها بصورت اتوماتیک کمپرس میشن، تمام مسیجهای ارسالی و دریافتی ساختار (schema) دارن (توی فایل proto تعریف میشن و بعدا توسط جنریتور کد مخصوص زبان شما جنریت میشه)، داکیومنت میتونه توی فایل proto نوشته بشه، دیتاها میتونه توی هر زبان برنامه نویسیای خونده بشه، ساختار (schema) میتونه هرزمانی توسعه پیدا کنه، حدود ۷ برابر سریعتر از جیسونه، کدها بصورت اتوماتیک برای زبان شما جنریت میشه.
✅و معایب پروتوباف: ممکنه کد جنریتورش بعضی از زبانها رو ساپورت نکنه، نمیتونید دیتاهارو موقع انتقال با تکست ادیتور باز کنید (چون باینتریه).
#proto3
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 ✅proto? 🔴https://t.me/gopher_academy/627 ✅Defining A Message Type 🔴 https://t.me/gopher_academy/628 ✅Assigning Field Numbers 🔴https://t.me/gopher_academy/629 ✅Adding Comments 🔴 https://t.me/gopher_academy/630 ✅Reserved Fields…
🔴Defining A Message Type🔴
✅ نحوه تعریف فایل protoبه صورت شکل فوق هست یعنی در گام اول ورژن سینتکس فایل protoخودتون رو مشخص می کنید
✅اگر مشخص نکنید به صورت پیش فرض روی ورژن ۲ تنظیم می شود
✅ما اینجا یه message داریم که تشکیل شده از یه سری فیلد هست
✅و این فیلد ها از type و name و number تشکیل شده
✅که تایپ ها نوع های ما هستن
✅و numberها شماه های ما هستن که از ۱ تا ۱۵ ✅هستن در ادامه در موردشون صحبت می کنیم
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅ نحوه تعریف فایل protoبه صورت شکل فوق هست یعنی در گام اول ورژن سینتکس فایل protoخودتون رو مشخص می کنید
✅اگر مشخص نکنید به صورت پیش فرض روی ورژن ۲ تنظیم می شود
✅ما اینجا یه message داریم که تشکیل شده از یه سری فیلد هست
✅و این فیلد ها از type و name و number تشکیل شده
✅که تایپ ها نوع های ما هستن
✅و numberها شماه های ما هستن که از ۱ تا ۱۵ ✅هستن در ادامه در موردشون صحبت می کنیم
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 ✅proto? 🔴https://t.me/gopher_academy/627 ✅Defining A Message Type 🔴 https://t.me/gopher_academy/628 ✅Assigning Field Numbers 🔴https://t.me/gopher_academy/629 ✅Adding Comments 🔴 https://t.me/gopher_academy/630 ✅Reserved Fields…
🔴Assigning Field Numbers🔴
✅در پروتوبافر اسم فیلدها مهم نیستند (البته منظورمون بعد از بیلد هست، وگرنه موقع دولوپ خیلی هم مهمه!)،
✅چیزی که مهمه تگها هستند، منظورمون همون عدادی هستند که در انتهای هر فیلد به ترتیب ۱ ۲ ۳ مینویسیم،
✅در پروداکشن برای شناسایی فیلدها از اسمشون استفاده نمیشه بلکه از تگشون استفاده میشه، پس هر فیلد باید یک تگ منحصر به فرد داشته باشه،
✅کوچیکترین تگی که میتونید استفاده کنید ۱ هست و بزرگترین ۵۳۶،۸۷۰،۹۱۱ هستش، اگر فکر میکنید این مقدار براتون کافی نیست احتمالا برنامهتون منطق اشتباهی داره،
✅همچنین شما نمیتونید از تگهای ۱۹۰۰۰ تا ۱۹۹۹۹ استفاده کنید، این تگها توسط گوگل برای استفادههای خاص رزرو شدن.
✅چیزی که لازمه بدونید تگهای ۱ تا ۱۵ فقط یک بایت فضا اشغال میکنند و تگهای ۱۶ تا ۲۰۴۷ دو بایت فضا اشغال میکنند.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅در پروتوبافر اسم فیلدها مهم نیستند (البته منظورمون بعد از بیلد هست، وگرنه موقع دولوپ خیلی هم مهمه!)،
✅چیزی که مهمه تگها هستند، منظورمون همون عدادی هستند که در انتهای هر فیلد به ترتیب ۱ ۲ ۳ مینویسیم،
✅در پروداکشن برای شناسایی فیلدها از اسمشون استفاده نمیشه بلکه از تگشون استفاده میشه، پس هر فیلد باید یک تگ منحصر به فرد داشته باشه،
✅کوچیکترین تگی که میتونید استفاده کنید ۱ هست و بزرگترین ۵۳۶،۸۷۰،۹۱۱ هستش، اگر فکر میکنید این مقدار براتون کافی نیست احتمالا برنامهتون منطق اشتباهی داره،
✅همچنین شما نمیتونید از تگهای ۱۹۰۰۰ تا ۱۹۹۹۹ استفاده کنید، این تگها توسط گوگل برای استفادههای خاص رزرو شدن.
✅چیزی که لازمه بدونید تگهای ۱ تا ۱۵ فقط یک بایت فضا اشغال میکنند و تگهای ۱۶ تا ۲۰۴۷ دو بایت فضا اشغال میکنند.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 ✅proto? 🔴https://t.me/gopher_academy/627 ✅Defining A Message Type 🔴 https://t.me/gopher_academy/628 ✅Assigning Field Numbers 🔴https://t.me/gopher_academy/629 ✅Adding Comments 🔴 https://t.me/gopher_academy/630 ✅Reserved Fields…
🔴Adding Comments🔴
شما میتونید کامنتاتون به فایل پروتوباف اضافه کنید تا نیازی به نوشتن داکیومنت ضافه مثل سرویسهای رستفول نباشید، شما فقط فایلهای پروتو در اختیار بقیه دولوپرها قرار میدید و اونها سرویس مورد نظر رو کال میکنند.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
شما میتونید کامنتاتون به فایل پروتوباف اضافه کنید تا نیازی به نوشتن داکیومنت ضافه مثل سرویسهای رستفول نباشید، شما فقط فایلهای پروتو در اختیار بقیه دولوپرها قرار میدید و اونها سرویس مورد نظر رو کال میکنند.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy