Telegram Group & Telegram Channel
#تریدآف
#Tradeoff

یکی از واژه هایی که از سنیور ها می شنوید و احتمالا خیلی زیاد به گوشتون خورده، از این واژه وقتی استفاده میشه که برنامه نویس به این باور رسیده که راه چاره ای نداره و نمیتونه دوتا چیز رو همزمان در پروژه اش داشته باشه، یکی از این مسائل پرفورمنس به همراه کد تمیزه.
برنامه نویس های مجرب به این باور رسیدن که نمیشه هم پرفورمنس بالایی داشت و هم کد تمیز داشت، من میخوام امروز به این موضوع بپردازم که چقدر این حرف درسته و آیا دلیل موجهی برای اثباتش دارم یا خیر؟
من معتقدم استفاده از کلمه ی تریدآف فقط به این معنیه که من برنامه نویس تا همینجا علمش رو داشتم، بیشتر از این نمی تونم کمکتون کنم و از نظر اعتقادی باور کرده که نمیشه این دوتا چیز رو همزمان داشت اما آیا اون اعتقاد درسته؟ همیشه یه راه سومی وجود داره و اگر به ذهنتون نرسیده دلیل بر این نیست که وجود نداره باید باور کنیم ما علامه و عالم به همه چیز نیستیم ما بر این باوریم که همیشه میشه بهتر فکر کرد و راه های بهتری پیدا کرد برای همین دیدگاه هست که علم پیشرفت میکنه چون یه عده مخالف گوشی های دکمه ای بودن و فکر میکردن که باید راه بهتری باشه پس گوشی های لمسی رو اختراع کردن. بنابراین ذهن خودتون رو بسته نگه ندارید و نذارید به این موضوع باور کنید که شما همه چیز رو درست میگید، اگر به این باور رسیدید دروازه های پیشرفت و خلاقیت رو به روی ذهن خودتون بستید.
خب بریم سراغ اینکه من چطوری میخوام این موضوع رو اثبات کنم؟
همه میدونیم grpc خیلی سریعه و messagepack هم همینطور، اما هر دوی اینها قسمتی از کدهای شمارو کثیف میکنن و وابستگی به پروژه ی شما اضافه میکنن.
چطور؟
توی grpc شما حتما باید protobuf بسازید، فایل هایی که خروجی و ورودی سرویس ها و پروپرتی مدل های شمارو برای سریالایز و دیسریالایز مشخص میکنن.پس وابستگی grpc به پروژه های شما شد این فایل هایی که همه جا همراه شما میان.چرا grpc به همچین فایل هایی احتیاج داره؟
چون grpc وقتی داده هارو سریالایز میکنه مثل json اطلاعات پروپرتی کلاس ها و نام پروپرتی ها رو و مرتب سازی اونها رو توی داده هایی که رد و بدل می کنه نگهداری نمی کنه به همین واسطه نیاز داره که از شما نحوه مرتب سازی پروپرتی ها و نام هاشون رو داشته باشه تا اگر حذفشون کردید یا تغییر نامشون دادید بتونه دیسریالایزشون کنه.
توی messagepack هم به همین شکله، چیزی به نام protobuf نداره ولی بالای پروپرتی های کلاس هاتون باید کلی اتریبیوت بذارید که ایندکسش رو مشخص کنید.
خب من پکیجی ساختم به نام BinaryGo که توی گیتهابم هست، این پکیج نه protobuf داره و نه لازمه بالای کلاسهاتون attribute بذارید در عین حال نزدیک به دوبرابر از grpc و messagepack سریعتره.این یعنی کد تمیزی برای شما به وجود میاره و در عین حال پرفورمنس بیشتری داره.
حالا از این به بعد اگر کسی به شما گفت این قضیه تریدآف داره و نمیشه کد تمیز داشت و بهینه هم باشه تنها یک جمله بهش بگید: مهندس نگو نمیشه، بگو من علمش رو ندارم یا نمی دونم.



tg-me.com/CsharpTips/345
Create:
Last Update:

#تریدآف
#Tradeoff

یکی از واژه هایی که از سنیور ها می شنوید و احتمالا خیلی زیاد به گوشتون خورده، از این واژه وقتی استفاده میشه که برنامه نویس به این باور رسیده که راه چاره ای نداره و نمیتونه دوتا چیز رو همزمان در پروژه اش داشته باشه، یکی از این مسائل پرفورمنس به همراه کد تمیزه.
برنامه نویس های مجرب به این باور رسیدن که نمیشه هم پرفورمنس بالایی داشت و هم کد تمیز داشت، من میخوام امروز به این موضوع بپردازم که چقدر این حرف درسته و آیا دلیل موجهی برای اثباتش دارم یا خیر؟
من معتقدم استفاده از کلمه ی تریدآف فقط به این معنیه که من برنامه نویس تا همینجا علمش رو داشتم، بیشتر از این نمی تونم کمکتون کنم و از نظر اعتقادی باور کرده که نمیشه این دوتا چیز رو همزمان داشت اما آیا اون اعتقاد درسته؟ همیشه یه راه سومی وجود داره و اگر به ذهنتون نرسیده دلیل بر این نیست که وجود نداره باید باور کنیم ما علامه و عالم به همه چیز نیستیم ما بر این باوریم که همیشه میشه بهتر فکر کرد و راه های بهتری پیدا کرد برای همین دیدگاه هست که علم پیشرفت میکنه چون یه عده مخالف گوشی های دکمه ای بودن و فکر میکردن که باید راه بهتری باشه پس گوشی های لمسی رو اختراع کردن. بنابراین ذهن خودتون رو بسته نگه ندارید و نذارید به این موضوع باور کنید که شما همه چیز رو درست میگید، اگر به این باور رسیدید دروازه های پیشرفت و خلاقیت رو به روی ذهن خودتون بستید.
خب بریم سراغ اینکه من چطوری میخوام این موضوع رو اثبات کنم؟
همه میدونیم grpc خیلی سریعه و messagepack هم همینطور، اما هر دوی اینها قسمتی از کدهای شمارو کثیف میکنن و وابستگی به پروژه ی شما اضافه میکنن.
چطور؟
توی grpc شما حتما باید protobuf بسازید، فایل هایی که خروجی و ورودی سرویس ها و پروپرتی مدل های شمارو برای سریالایز و دیسریالایز مشخص میکنن.پس وابستگی grpc به پروژه های شما شد این فایل هایی که همه جا همراه شما میان.چرا grpc به همچین فایل هایی احتیاج داره؟
چون grpc وقتی داده هارو سریالایز میکنه مثل json اطلاعات پروپرتی کلاس ها و نام پروپرتی ها رو و مرتب سازی اونها رو توی داده هایی که رد و بدل می کنه نگهداری نمی کنه به همین واسطه نیاز داره که از شما نحوه مرتب سازی پروپرتی ها و نام هاشون رو داشته باشه تا اگر حذفشون کردید یا تغییر نامشون دادید بتونه دیسریالایزشون کنه.
توی messagepack هم به همین شکله، چیزی به نام protobuf نداره ولی بالای پروپرتی های کلاس هاتون باید کلی اتریبیوت بذارید که ایندکسش رو مشخص کنید.
خب من پکیجی ساختم به نام BinaryGo که توی گیتهابم هست، این پکیج نه protobuf داره و نه لازمه بالای کلاسهاتون attribute بذارید در عین حال نزدیک به دوبرابر از grpc و messagepack سریعتره.این یعنی کد تمیزی برای شما به وجود میاره و در عین حال پرفورمنس بیشتری داره.
حالا از این به بعد اگر کسی به شما گفت این قضیه تریدآف داره و نمیشه کد تمیز داشت و بهینه هم باشه تنها یک جمله بهش بگید: مهندس نگو نمیشه، بگو من علمش رو ندارم یا نمی دونم.

BY C# Programming Guide


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/CsharpTips/345

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Telegram auto-delete message, expiring invites, and more

elegram is updating its messaging app with options for auto-deleting messages, expiring invite links, and new unlimited groups, the company shared in a blog post. Much like Signal, Telegram received a burst of new users in the confusion over WhatsApp’s privacy policy and now the company is adopting features that were already part of its competitors’ apps, features which offer more security and privacy. Auto-deleting messages were already possible in Telegram’s encrypted Secret Chats, but this new update for iOS and Android adds the option to make messages disappear in any kind of chat. Auto-delete can be enabled inside of chats, and set to delete either 24 hours or seven days after messages are sent. Auto-delete won’t remove every message though; if a message was sent before the feature was turned on, it’ll stick around. Telegram’s competitors have had similar features: WhatsApp introduced a feature in 2020 and Signal has had disappearing messages since at least 2016.

Dump Scam in Leaked Telegram Chat

A leaked Telegram discussion by 50 so-called crypto influencers has exposed the extraordinary steps they take in order to profit on the back off unsuspecting defi investors. According to a leaked screenshot of the chat, an elaborate plan to defraud defi investors using the worthless “$Few” tokens had been hatched. $Few tokens would be airdropped to some of the influencers who in turn promoted these to unsuspecting followers on Twitter.

telegram from ye


Telegram C# Programming Guide
FROM USA