dns.py
2 KB
با پایتون dns های مناسب واسه بازیو استخراج کن 🔥
برای استفاده از برنامه اول کتابخونه هاش رو نصب کنید
بعد از نصب کتاب خونه ها شماره کشور مورد نظر خودتون رو وارد کنید
بعد صبر کنید که برنامه پیغام END رو به شما نشون بده
شما میتونین DNS رو انتخواب کنید که پینگ پایین تری داره
برای استفاده از DNS ها رقم آخر هرچی بود شما یکی بش اضافه کنین و وارد کنید
31.210.69.163
31.210.69.164
موفق باشید
[ارسالی توسط یکی از ممبرای کانال]
@khat_academy
برای استفاده از برنامه اول کتابخونه هاش رو نصب کنید
بعد از نصب کتاب خونه ها شماره کشور مورد نظر خودتون رو وارد کنید
بعد صبر کنید که برنامه پیغام END رو به شما نشون بده
شما میتونین DNS رو انتخواب کنید که پینگ پایین تری داره
برای استفاده از DNS ها رقم آخر هرچی بود شما یکی بش اضافه کنین و وارد کنید
31.210.69.163
31.210.69.164
موفق باشید
[ارسالی توسط یکی از ممبرای کانال]
@khat_academy
❤9👍2
چرا کروم کلی پراسس ایجاد میکنه!؟
خیلیا از کروم ایراد میگیرن و یا کلا ازش استفاده نمی کنن و فکر می کنن خیلی گنگ هستن.
اما خوبی هایی که کروم داره رو در نظر نگرفتن که قراره با هم بررسیش کنیم
برای هر چیز، پراسس جداگونه:
کروم اولین پراسسی که باز میکنه Browser هستش که کاملا مشخصه چیه.
بعدی GPU process که از کارت گرافیک برای کار های گرافیکی استفاده می کنه.
پراسس بعدی Storage service هستش که ذخیره سازی دیتا رو به عهده داره.
همچنین برای هر extension که دارید و new tab که باز میکنید یه پراسس جداگونه هم باز می کنه.
خب سوال اینه همه اینکارا واسه چیه؟
اولین دلیل امنیت هستش
مثلا اگه تو یکی از تب ها شما لینک مخربی رو باز کردید فقط اون پراسس دچار مشکل میشه و اگه بخوان به مثلا پسورد های شما دسترسی پیدا کنن کارشون خیلی سخت میشه چون توی پراسس جدا قرار داره.
دلیل دیگه که میتونم بگم استفاده از چند core هستش که باعث speed up و افزایش سرعت برنامه میشه. در واقع یه برنامه مالتی پراسس رو اجرا می کنه.
#note
@khat_academy
خیلیا از کروم ایراد میگیرن و یا کلا ازش استفاده نمی کنن و فکر می کنن خیلی گنگ هستن.
اما خوبی هایی که کروم داره رو در نظر نگرفتن که قراره با هم بررسیش کنیم
برای هر چیز، پراسس جداگونه:
کروم اولین پراسسی که باز میکنه Browser هستش که کاملا مشخصه چیه.
بعدی GPU process که از کارت گرافیک برای کار های گرافیکی استفاده می کنه.
پراسس بعدی Storage service هستش که ذخیره سازی دیتا رو به عهده داره.
همچنین برای هر extension که دارید و new tab که باز میکنید یه پراسس جداگونه هم باز می کنه.
خب سوال اینه همه اینکارا واسه چیه؟
اولین دلیل امنیت هستش
مثلا اگه تو یکی از تب ها شما لینک مخربی رو باز کردید فقط اون پراسس دچار مشکل میشه و اگه بخوان به مثلا پسورد های شما دسترسی پیدا کنن کارشون خیلی سخت میشه چون توی پراسس جدا قرار داره.
دلیل دیگه که میتونم بگم استفاده از چند core هستش که باعث speed up و افزایش سرعت برنامه میشه. در واقع یه برنامه مالتی پراسس رو اجرا می کنه.
#note
@khat_academy
👍15🔥5👏2❤1
قانون امدال:
بنظرتون اگه بی نهایت core داشته باشیم، می تونیم اجرا شدن یک برنامه رو از مثلا 100 ساعت به یک ساعت برسونیم؟
قانون امدال (AMDAHL) بهمون کمک میکنه تا به جوابمون برسیم.
قبلش بصورت خلاصه بگم serial چیه:
به قسمتی از کد که اصلا توانایی این رو نداره مالتی پراسس بشه رو serial میگیم.
فرمول امدال:
speedup ≤ 1 / (S + ((1 - S) / N) )
S:
عددی بین 0 تا یک که بر اساس حالا بگیم درصد کد های serial هستش.
N:
تعداد core ها.
مثال:
خب بیاید در نظر بگیریم که بیست درصد از کد های ما serial هستش و چهار تا core داریم.
در این صورت میشه:
1 / (0.2 + ((1 - 0.2) / 4)) = 2.5
در این صورت speed up ما میشه دو و نیم برابر و کد ما دو و نیم برابر سریع تر شده.
اما حالا در نظر بگیرید ما 40 تا core داریم، فکر میکنید سرعتمون چقدر افزایش پیدا می کنه؟؟
خب بیاید که حساب کنیم:
1 / (0.2 + ((1 - 0.2) / 40)) = 4.5
بله! speedup ما میشه 4.5 برابر!
احتمالا بر خلاف تصورتون، با افزایش تعداد پراسس ها سرعت ما همش بصورت صعودی افزایش پیدا نمیکنه. در واقع بر اساس درصد serial کد های ما از یه جایی به بعد دیگه سرعت بالا نمیره و فقط بار اضافی بوجود میاد
پست بعدی با نمودار یه سری توضیحات بیشترو میدم
پس قانون امدال چیه؟
قانون Amdahl یک فرموله که بهبود احتمالی عملکرد رو که با اضافه کردن پراسس های بیشتر به یک برنامه که شامل بخشهای ترتیبی (غیرموازی) و موازی است رو میده.
#note
@khat_academy
بنظرتون اگه بی نهایت core داشته باشیم، می تونیم اجرا شدن یک برنامه رو از مثلا 100 ساعت به یک ساعت برسونیم؟
قانون امدال (AMDAHL) بهمون کمک میکنه تا به جوابمون برسیم.
قبلش بصورت خلاصه بگم serial چیه:
به قسمتی از کد که اصلا توانایی این رو نداره مالتی پراسس بشه رو serial میگیم.
فرمول امدال:
speedup ≤ 1 / (S + ((1 - S) / N) )
S:
عددی بین 0 تا یک که بر اساس حالا بگیم درصد کد های serial هستش.
N:
تعداد core ها.
مثال:
خب بیاید در نظر بگیریم که بیست درصد از کد های ما serial هستش و چهار تا core داریم.
در این صورت میشه:
1 / (0.2 + ((1 - 0.2) / 4)) = 2.5
در این صورت speed up ما میشه دو و نیم برابر و کد ما دو و نیم برابر سریع تر شده.
اما حالا در نظر بگیرید ما 40 تا core داریم، فکر میکنید سرعتمون چقدر افزایش پیدا می کنه؟؟
خب بیاید که حساب کنیم:
1 / (0.2 + ((1 - 0.2) / 40)) = 4.5
بله! speedup ما میشه 4.5 برابر!
احتمالا بر خلاف تصورتون، با افزایش تعداد پراسس ها سرعت ما همش بصورت صعودی افزایش پیدا نمیکنه. در واقع بر اساس درصد serial کد های ما از یه جایی به بعد دیگه سرعت بالا نمیره و فقط بار اضافی بوجود میاد
پست بعدی با نمودار یه سری توضیحات بیشترو میدم
پس قانون امدال چیه؟
قانون Amdahl یک فرموله که بهبود احتمالی عملکرد رو که با اضافه کردن پراسس های بیشتر به یک برنامه که شامل بخشهای ترتیبی (غیرموازی) و موازی است رو میده.
#note
@khat_academy
👍7🔥2🥰1
Syntax | سینتکس
قانون امدال: بنظرتون اگه بی نهایت core داشته باشیم، می تونیم اجرا شدن یک برنامه رو از مثلا 100 ساعت به یک ساعت برسونیم؟ قانون امدال (AMDAHL) بهمون کمک میکنه تا به جوابمون برسیم. قبلش بصورت خلاصه بگم serial چیه: به قسمتی از کد که اصلا توانایی این رو نداره…
توضیح:
در این نمودار y مساویه با speedup و x مساویه با تعداد هسته ها.
ایده آل ترین حالت ممکن اینه که توی کد های ما اصلا serial کد وجود نداشته باشه. در این صورت سرعت برنامه ما با اضافه شدن هسته بیشتر و بیشتر تر میشه.
اگه فقط ده درصد serial داشته باشیم توی شونزده هسته سرعت ده برابر میشه و از اون به بعد تفاوت آنچنانی نمیکنه.
اگه پنجاه درصد کد serial باشه از دو برابر بیشتر نمیشه
پس قبل از هر چیزی شما باید بررسی کنید ایا برنامه ی شما اصلا مناسب مالتی پراسس بودن هست یا خیر.
#note
@khat_academy
در این نمودار y مساویه با speedup و x مساویه با تعداد هسته ها.
ایده آل ترین حالت ممکن اینه که توی کد های ما اصلا serial کد وجود نداشته باشه. در این صورت سرعت برنامه ما با اضافه شدن هسته بیشتر و بیشتر تر میشه.
اگه فقط ده درصد serial داشته باشیم توی شونزده هسته سرعت ده برابر میشه و از اون به بعد تفاوت آنچنانی نمیکنه.
اگه پنجاه درصد کد serial باشه از دو برابر بیشتر نمیشه
پس قبل از هر چیزی شما باید بررسی کنید ایا برنامه ی شما اصلا مناسب مالتی پراسس بودن هست یا خیر.
#note
@khat_academy
👍8
۵ لایسنس متن باز محبوب:
1.MIT:
این لایسنس به توسعهدهندگان اجازه میدهد کدهای منبع را بازنشر کرده و تغییراتی روی آنها اعمال کنند، حتی بدون اینکه اون کدو اپن سورسش کنن. این لایسنس محدودیتهای کمتری نسبت به سایر لایسنسها دارد.
2.GNU General Public License (GPL):
تفاوتی که این لایسنس با MIT دارد این است که اگر کدی تحت لایسنس GPL استفاده شود، کدهای منبع تغییر داده شده نیز باید تحت GPL منتشر شوند.
3.Apache:
به توسعهدهندگان اجازه میدهد کدهای خود را بازنشر کرده و تغییراتی روی آنها اعمال کنند. همچنین این لایسنس حقوق برند را نیز حفظ میکند و لایسنسی است که برای پروژههای تجاری نیز مناسب است.
4.BSD:
به توسعهدهندگان اجازه میدهد کدهای خود را بازنشر کرده و تغییراتی روی آنها اعمال کنند. شرایط این لایسنس بسیار ساده و کوتاه است و برخی نسخههای آن حقوق برند را نیز حفظ میکنند.
5.Creative Commons:
این لایسنس بیشتر برای محتوایی مانند مقالات، موسیقی و ... استفاده میشود. این لایسنس به صاحبان حقوق اجازه میدهد تا محتوای خود را با محدودیتهایی مانند نام برده شدن و عدم استفاده تجاری به اشتراک بگذارند.
@khat_academy
1.MIT:
این لایسنس به توسعهدهندگان اجازه میدهد کدهای منبع را بازنشر کرده و تغییراتی روی آنها اعمال کنند، حتی بدون اینکه اون کدو اپن سورسش کنن. این لایسنس محدودیتهای کمتری نسبت به سایر لایسنسها دارد.
2.GNU General Public License (GPL):
تفاوتی که این لایسنس با MIT دارد این است که اگر کدی تحت لایسنس GPL استفاده شود، کدهای منبع تغییر داده شده نیز باید تحت GPL منتشر شوند.
3.Apache:
به توسعهدهندگان اجازه میدهد کدهای خود را بازنشر کرده و تغییراتی روی آنها اعمال کنند. همچنین این لایسنس حقوق برند را نیز حفظ میکند و لایسنسی است که برای پروژههای تجاری نیز مناسب است.
4.BSD:
به توسعهدهندگان اجازه میدهد کدهای خود را بازنشر کرده و تغییراتی روی آنها اعمال کنند. شرایط این لایسنس بسیار ساده و کوتاه است و برخی نسخههای آن حقوق برند را نیز حفظ میکنند.
5.Creative Commons:
این لایسنس بیشتر برای محتوایی مانند مقالات، موسیقی و ... استفاده میشود. این لایسنس به صاحبان حقوق اجازه میدهد تا محتوای خود را با محدودیتهایی مانند نام برده شدن و عدم استفاده تجاری به اشتراک بگذارند.
@khat_academy
👍4❤2🔥1
Django Jwt
مشکلات سینتکسی و امنیتی پروژه جنگویی زیر رو پیدا کنید و توی کامنت بگید:
https://github.com/alireza-fa/django-jwt-auth
توضیح:
این یک پروژه با تمرکز بر روی پیاده سازی یک سیستم احراز هویت امن jwt در جنگو هست که در حال توسعه دادنه.
توکن ها انکریپت شده(AES) سمت فرانت اند ارسال میشوند
وریفای اکانت با ارسال otp کد انجام میشود.
کاربر ها فقط با وارد کردن شماره موبایل و دریافت کد شش رقمی عملیات لاگین رو انجام میدن
#django
@khat_academy
مشکلات سینتکسی و امنیتی پروژه جنگویی زیر رو پیدا کنید و توی کامنت بگید:
https://github.com/alireza-fa/django-jwt-auth
توضیح:
این یک پروژه با تمرکز بر روی پیاده سازی یک سیستم احراز هویت امن jwt در جنگو هست که در حال توسعه دادنه.
توکن ها انکریپت شده(AES) سمت فرانت اند ارسال میشوند
وریفای اکانت با ارسال otp کد انجام میشود.
کاربر ها فقط با وارد کردن شماره موبایل و دریافت کد شش رقمی عملیات لاگین رو انجام میدن
#django
@khat_academy
👍6😱1
اگر توی یک تیم کار میکنید و میخواید اکستنشن هایی که پروژه ی شما داره، بقیه ی تیم هم نصب کنن، یا اگر میخواید پروژه ی گیتهابتون اکستنشن های شما رو هم به برنامه نویس ها پیشنهاد کنه...
فایل
.vscode/extensions.json
رو بسازید و داخلش اسم اکستنشن هایی که برای اون پروژه نیازه رو بنویسید.
وقتی یکی پروژه رو توی vscode باز میکنه، vscode ازش میخواد که این اکستنشن ها رو نصب کنه.
#python
#اکستنشن
@khat_academy
فایل
.vscode/extensions.json
رو بسازید و داخلش اسم اکستنشن هایی که برای اون پروژه نیازه رو بنویسید.
وقتی یکی پروژه رو توی vscode باز میکنه، vscode ازش میخواد که این اکستنشن ها رو نصب کنه.
#python
#اکستنشن
@khat_academy
👍19🔥2
دوستان منبعی میشناسید که تمرینات مقدماتی تا پیشرفته پایتون رو بذاره ؟
اگه میشناسین توکامنتا معرفی کنین
اگه میشناسین توکامنتا معرفی کنین
👀3🌚1
♨️ کتابخانه پایتون چیست؟
📌 کتابخانه پایتون مجموعهای از کدها و توابع از پیش نوشته شده است که مجموعهای از ابزارهای مفید و قابلاستفاده را برای وظایف و اهداف مختلف به کاربران ارائه میدهد.
💢 این کتابخانهها توسط توسعهدهندگان ایجادشدهاند تا با ارائه توابع، کلاسها و ماژولهای از پیش پیادهسازیشده، به سادهسازی و تسریع فرآیند کدنویسی کمک کنند.
📌 کتابخانه های پایتون طیف گستردهای از حوزهها و برنامههای کاربردی را پوشش میدهند، ازجمله موارد زیر:
▪️تجزیهوتحلیل و دستکاری دادهها
▫️محاسبات علمی
▪️یادگیری ماشین و هوش مصنوعی
▫️مصورسازی دادهها
▪️توسعه وب
▫️پردازش زبان طبیعی
▪️توسعه بازی
▫️شبکه و خدمات وب
▪️پایگاههای داده
▫️تست و تضمین کیفیت
#python
#معرفی_کتابخانه
@khat_academy
📌 کتابخانه پایتون مجموعهای از کدها و توابع از پیش نوشته شده است که مجموعهای از ابزارهای مفید و قابلاستفاده را برای وظایف و اهداف مختلف به کاربران ارائه میدهد.
💢 این کتابخانهها توسط توسعهدهندگان ایجادشدهاند تا با ارائه توابع، کلاسها و ماژولهای از پیش پیادهسازیشده، به سادهسازی و تسریع فرآیند کدنویسی کمک کنند.
📌 کتابخانه های پایتون طیف گستردهای از حوزهها و برنامههای کاربردی را پوشش میدهند، ازجمله موارد زیر:
▪️تجزیهوتحلیل و دستکاری دادهها
▫️محاسبات علمی
▪️یادگیری ماشین و هوش مصنوعی
▫️مصورسازی دادهها
▪️توسعه وب
▫️پردازش زبان طبیعی
▪️توسعه بازی
▫️شبکه و خدمات وب
▪️پایگاههای داده
▫️تست و تضمین کیفیت
#python
#معرفی_کتابخانه
@khat_academy
👍12
⌨️ میدونستید VS Code یه مرورگر تو خودش داره؟!
برنامه محبوب VS code یه مرورگر داخلی تو خودش داره که بعضی مواقع میتونه کار راه انداز باشه.
فعالسازیش هم کاری نداره فقط کافیه کلید های زیر رو همزمان باهم بگیرید
Ctrl + Shift + P
بعدش سرچ کن Simple browser و تماام ، آدرس سایت مدنظرتون رو وارد کنید ؛)
#vscode
#python
@khat_academy
برنامه محبوب VS code یه مرورگر داخلی تو خودش داره که بعضی مواقع میتونه کار راه انداز باشه.
فعالسازیش هم کاری نداره فقط کافیه کلید های زیر رو همزمان باهم بگیرید
Ctrl + Shift + P
بعدش سرچ کن Simple browser و تماام ، آدرس سایت مدنظرتون رو وارد کنید ؛)
#vscode
#python
@khat_academy
👏8😱3👍2
چه زمانی از جنگو استفاده کنیم؟
https://virgool.io/liara-ir/%DA%86%D9%87-%D8%B2%D9%85%D8%A7%D9%86%DB%8C-%D8%A7%D8%B2-django-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%DA%A9%D9%86%DB%8C%D9%85-xvqjw5tdzlq5
#Django
@khat_academy
https://virgool.io/liara-ir/%DA%86%D9%87-%D8%B2%D9%85%D8%A7%D9%86%DB%8C-%D8%A7%D8%B2-django-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%DA%A9%D9%86%DB%8C%D9%85-xvqjw5tdzlq5
#Django
@khat_academy
ویرگول
چه زمانی از Django استفاده کنیم؟
انتخاب یک زبان برنامهنویسی و فریمورک برای یک پروژه به دلیل اینکه آخرین پروژه شما با آن زبان و فریمورک انجام شده است و یا حتی به این دلیل…
👍4👎1
چند تا از بهترین کتاب ها درباره ساختمان داده و الگوریتم.
خودم دارم introduction to algorithms رو شروع می کنم
نکات و مطالب جالبش رو براتون پست میکنم(با هشتگ data_structure).
اگه کتاب فارسی میخواید بخونید این دوتا کتابای خوبی هستن:
دادهساختارها و مبانی الگوریتمها
ساختمان داده دکتر ابراهیمی مقدم
#book
@khat_academy
خودم دارم introduction to algorithms رو شروع می کنم
نکات و مطالب جالبش رو براتون پست میکنم(با هشتگ data_structure).
اگه کتاب فارسی میخواید بخونید این دوتا کتابای خوبی هستن:
دادهساختارها و مبانی الگوریتمها
ساختمان داده دکتر ابراهیمی مقدم
#book
@khat_academy
👍4🔥1
دوستان لینک گروهمونه جوین شید
_انتقادات و پیشنهاداتونو بگید
_سوالی داشتین بپرسین و همدیگه رو راهنمایی کنید
https://news.1rj.ru/str/Syntax_fa_group
_انتقادات و پیشنهاداتونو بگید
_سوالی داشتین بپرسین و همدیگه رو راهنمایی کنید
https://news.1rj.ru/str/Syntax_fa_group
Telegram
Syntax group
Syntax group
Channel:
https://news.1rj.ru/str/Syntax_fa
Channel:
https://news.1rj.ru/str/Syntax_fa
🔥6👍1🎉1
Syntax | سینتکس pinned «دوستان لینک گروهمونه جوین شید _انتقادات و پیشنهاداتونو بگید _سوالی داشتین بپرسین و همدیگه رو راهنمایی کنید https://news.1rj.ru/str/Syntax_fa_group»
ساختمان داده (Data Structure) چیست؟
توضیحات کمی زیاده ولی بنظرم جذابه و برای همه افراد این کانال پیشنهاد میشه حتما تا آخرشو بخونن
تا الان هممون حداقل یک مفهوم سطحی از data structure رو یاد گرفتیم.
توی ویکی پدیا و اکثر وب سایت ها همون توضیح کوتاه رو میده.
اما بیاید یکم عمیق تر شیم
دیتا (Data) چیه؟
خب Structure که مشخصه یک آرایش، ساختار، سازمان دهی کردن هستش.
برای درک دیتا بهتره کمی درباره ساز و کار کامپیوتر بدونیم:
قلب تپنده کامپیوتر CPU هستش
سی پی یو یک چیزی داره به اسم ALU کار اصلی ایشون در واقع انجام محاسبه ها و انجام عملیات های منطقی روی داده ها توی پردازنده اصلی یا همون CPU هستش.
داده ها از کجا میان ؟
داده ها از main memory یا همون رم سیستم میان.
تا اونجا که خودتون در جریانید کامپیوتر ها باینری هستن پس اینطور در نظر بگیرید ما کلی صفر و یک توی رم داریم.
نکته ای که باید توجه کنید اینه کامپیوتر ذاتا فقط عدد میفهمه
اگه شما با هر زبان برنامه نویسی کار کرده باشید یک چیزی وجود داره به اسم انواع داده (data types)
هر زبان برنامه نویسی یک سری انواع داده اصلی رو میده.
اولین نوع داده ای که میشه اشاره کرد Boolean هستش. اینطوریه که اگه صفر بود false هستش و اگه غیر صفر بود true مثلا یک باشه true هستش
کامپیوتر هم اینو خیلی راحت میفهمه، بیسیک ترین نوع داده هستش که با یه بیت هم میشه نمایشش داد
انواع اعداد رو داریم مثلا int، short, long
اعداد اعشاری رو داریم مثل float و double
#data_structure
@khat_academy
توضیحات کمی زیاده ولی بنظرم جذابه و برای همه افراد این کانال پیشنهاد میشه حتما تا آخرشو بخونن
تا الان هممون حداقل یک مفهوم سطحی از data structure رو یاد گرفتیم.
توی ویکی پدیا و اکثر وب سایت ها همون توضیح کوتاه رو میده.
اما بیاید یکم عمیق تر شیم
دیتا (Data) چیه؟
خب Structure که مشخصه یک آرایش، ساختار، سازمان دهی کردن هستش.
برای درک دیتا بهتره کمی درباره ساز و کار کامپیوتر بدونیم:
قلب تپنده کامپیوتر CPU هستش
سی پی یو یک چیزی داره به اسم ALU کار اصلی ایشون در واقع انجام محاسبه ها و انجام عملیات های منطقی روی داده ها توی پردازنده اصلی یا همون CPU هستش.
داده ها از کجا میان ؟
داده ها از main memory یا همون رم سیستم میان.
تا اونجا که خودتون در جریانید کامپیوتر ها باینری هستن پس اینطور در نظر بگیرید ما کلی صفر و یک توی رم داریم.
نکته ای که باید توجه کنید اینه کامپیوتر ذاتا فقط عدد میفهمه
اگه شما با هر زبان برنامه نویسی کار کرده باشید یک چیزی وجود داره به اسم انواع داده (data types)
هر زبان برنامه نویسی یک سری انواع داده اصلی رو میده.
اولین نوع داده ای که میشه اشاره کرد Boolean هستش. اینطوریه که اگه صفر بود false هستش و اگه غیر صفر بود true مثلا یک باشه true هستش
کامپیوتر هم اینو خیلی راحت میفهمه، بیسیک ترین نوع داده هستش که با یه بیت هم میشه نمایشش داد
انواع اعداد رو داریم مثلا int، short, long
اعداد اعشاری رو داریم مثل float و double
#data_structure
@khat_academy
👍8❤2
خب تا اینجا هر نوع تایپی که اشاره کردیم عدد بود و همچنین کل چیزی که CPU میفهمه اعداد هستش
ولی خب سوال اینجاست. ما که فقط اعداد نداریم مثلا چیزی به اسم رشته (String) رو داریم. پس چطور باهاش کار می کنیم؟
رشته چطوری ساخته میشه؟
رشته به این شکل ساخته میشه که میایم بر اساس هر حرف عددی رو تعریف میکنیم. اگه یادتون باشه چیزی به اسم جدول ascii codes داریم که توی این جدول مشخص شده مثلا A میشه 65
پس چیزی که توی حافظه برای رشته نوشتیم در واقع عدد هستش
اگه همه چی عدد هستش. چجوری داده های پیچیده تر رو میسازیم؟
اینجا از Composition استفاده میکنیم. یعنی میایم چند تا نوع داده رو با هم ترکیب میکنیم یک نوع داده پیچیده تر رو میسازیم. مثلا دانش آموز رو میسازیم
دانش آموز خودش مثلا از
name: str
Student code: int
age: int
تشکیل شده.
#data_structure
@khat_academy
ولی خب سوال اینجاست. ما که فقط اعداد نداریم مثلا چیزی به اسم رشته (String) رو داریم. پس چطور باهاش کار می کنیم؟
رشته چطوری ساخته میشه؟
رشته به این شکل ساخته میشه که میایم بر اساس هر حرف عددی رو تعریف میکنیم. اگه یادتون باشه چیزی به اسم جدول ascii codes داریم که توی این جدول مشخص شده مثلا A میشه 65
پس چیزی که توی حافظه برای رشته نوشتیم در واقع عدد هستش
اگه همه چی عدد هستش. چجوری داده های پیچیده تر رو میسازیم؟
اینجا از Composition استفاده میکنیم. یعنی میایم چند تا نوع داده رو با هم ترکیب میکنیم یک نوع داده پیچیده تر رو میسازیم. مثلا دانش آموز رو میسازیم
دانش آموز خودش مثلا از
name: str
Student code: int
age: int
تشکیل شده.
#data_structure
@khat_academy
👍10❤1