Syntax | سینتکس – Telegram
Syntax | سینتکس
شی گرایی قراره با یه سری مثال از دنیای واقعی شی گرایی رو براتون توضیح بدم. ما موجودی داریم به اسم گربه (class) که این موجود ویژگی (Attribute) و رفتار (Method) هایی رو داره. برای مثال گربه ویژگی هایی مثل رنگ چشم، وزن و ... داره. همچنین رفتار هایی رو داره مثل…
حالا که با مثالی ساده با شی گرایی آشنا شدیم برای encapsulation و abstraction مثال های کاربردی تری رو بزنیم.

Encapsulation
بعضی وقتا نیازه که ما یک سری ویژگی ها و متد هایی رو تعریف کنیم اما از بیرون قابل دسترس نباشه.
مثلا attribute به اسم score داریم که امتیاز رو نگه میداریم. بقیه قسمت های کد نباید بصورت مستقیم بتونن مقدار score رو تغییر بدن پس میایم socre رو مخفی می کنیم تا از بیرون دسترسی نداشته باشن و برای تغییر دادن socre یک متد به اسم increase_score می نویسیم که هربار صدا زده بشه به امتیاز کاربر اضافه بشه.

مثال دوم:
فرض کن یه پکیجی رو داری مینویسی که قراره یه سری کارهایی رو انجام بده.

نمیخوای برنامه نویسی که قراره از پکیجت استفاده کنه یه سری رفتار و ویژگی هارو ببینه.

مثلا متد get_response رو داری که خود این متد چند تا متد دیگه رو صدا میزنه تا بتونه پاسخ مناسب رو نشون بده.

این متد هایی که توی get_response استفاده کردیم فقط برای استفاده داخلی نوشته شدن و نمیخوایم برنامه نویس بهشون دسترسی داشته باشه. پس میایم هاید میکنیمشون و از encapsulation استفاده می کنیم

#OOP #Encapsulation

@Syntax_fa
👍8👌2
Abstraction

هر ساله ماشین ها از نظر فنی کلی تغییر می کنن اما شخصی که با یک ماشین چند سال پیش رانندگی کرده باشه با ماشین الانم میتونه رانندگی کنه. اینجاست که abstraction باعث میشه این اتفاق بیوفته.
اومدن بصورت انتزاعی تعریف کردن که ماشین دنده داره، پدال گاز داره و فرمون داره و هر کدومشون به چه صورت عمل می کنن.

به همین دلیل با اینکه از نظر فنی و داخلی کلی تغییر میکنن اما طرز استفاده ازش تغییر خاصی نمیکنه.

بیاید یه مثال دیگه بزنیم:
فرض کنید شما یک وب سایت طراحی کردید. یه سری دکمه ها و قابلیت ها قرار دادید تا کاربر بتونه ازش استفاده کنه.
با اینکه سبد خرید برای کاربر همونه اما پشت صحنه کلی تغییر دادید و بروزرسانیش کردید.

همچنین شما هم برای طراحی وب سایت از یک سری ابزار ها استفاده کردید که این ابزار ها همش در حال بروز رسانی هستند اما نحوه استفاده شما تغییری نمیکنه.

به این مفهوم Abstraction میگن.

#OOP #Abstraction

@Syntax_fa
👍16👌4
کار گروهی و تیمی در شرکت ها

#Fun

@Syntax_fa
🤣31👍3
مینی دوره‌‌ آموزش پیشرفته جنگو

معرفی دوره:
https://youtu.be/bZacX-b_qtA?si=B8HEaettjHDQCrMZ

#Django

@Syntax_fa
🔥9👍5
مینی دوره‌‌ آموزش پیشرفته جنگو

ساختار پروژه:
https://youtu.be/hXQzbLjwCXU

#Django

@Syntax_fa
👍10
مینی دوره‌‌ آموزش پیشرفته جنگو

JWT Authentication:
https://youtu.be/ikEtYH6yy-Y

#Django

@Syntax_fa
👍9
مینی دوره‌‌ آموزش پیشرفته جنگو

Custom JSON response:
https://youtu.be/2b_5Xy5FJCA

#Django

@Syntax_fa
👍12
This media is not supported in your browser
VIEW IN TELEGRAM
شب همگی بخیر
🔥9👍3🤨2
مینی دوره آموزش پیشرفته جنگو

Log:

https://youtu.be/so_WF_AhbJs?si=joagkSZRledtsN2q

#Django

@Syntax_fa
👍5🔥2
مینی دوره آموزش پیشرفته جنگو

Interface:

https://youtu.be/KtQJUxKgcKA?si=965LNES0lc5y2hSL

#Django

@Syntax_fa
🔥4👍2
مینی دوره آموزش پیشرفته جنگو

پیاده سازی logging interface:

https://youtu.be/5FQG_qKlvwA?si=9zwVNWyCZwxUE7SS

#Django

@Syntax_fa
🔥4👍2
این بازی آنلاین جالب رو انجام بدید:
https://hamed.github.io/trust/
این بازی بر مبنای نظریه بازیها طراحی شده،
ببینید اگر در واقعیت اعتماد تکامل پیدا کنه، جامعه چجوری رشد میکنه...!
بهترین خروجی چیه؟
و اگه رو به خوبی و درستی و اعتماد پیش بریم، چه رفتارهایی در بلندمدت از بین میرن...

@Code_Crafters

#game

@Syntax_fa
👍13🌚1
مینی دوره آموزش پیشرفته جنگو

اضافه کردن seq datalust به پروژه:
https://youtu.be/TyWzBpOcNlY

#Django

@Syntax_fa
🔥6👍1
آیا زبون شما هم اینقدر عکسای باحال داره ؟

#Fun #Go

@Syntax_fa
😁14👍1