Code Module | کد ماژول
1.91K subscribers
357 photos
42 videos
6 files
355 links
Hello World 🌎

<> Earth is programmable if you code it </>

Group 👇🏻
@CodeModuleGap

Contact Us 👇🏻
@MrShahiin
@neoMahan
Download Telegram
داده چیه؟ 💀

ما به عنوان برنامه نویس و یک انسان که در دنیای مدرن زندگی میکنیم، همیشه با هر نوع داده ای سروکار داریم. پس باید قبل از اینکه بدونیم نوع اون داده چیه، باید بدونیم اصلا خود داده یعنی چی.

اصطلاح "داده" از کلمه لاتین *datum* به معنای "چیزی داده شده" گرفته شده. با گذشت زمان، این کلمه بسته به زمینه ای که در اون استفاده میشه، به تعاریف مختلفی تبدیل شده و منابع مختلف این واژه رو به روش های مختلف تعریف میکنن که چند تاشون رو بررسی میکنیم:

🔺 بر اساس فرهنگ لغت بین‌المللی جدید وبستر(Webster)، داده عبارت است از «چیزی داده شده یا پذیرفته شده؛ حقایق یا اصول ارائه شده یا ارائه شده؛ آن چیزی که یک استنتاج یا استدلال بر اون استوار هست، یا از اون یک سیستم ایده‌آل از هر نوع ساخته شده هست». این تعریف بر ماهیت بنیادی داده ها تأکید میکنه، به این معنی که داده ها نقطه شروع هر فرآیند منطقی، چه در علم، چه در فلسفه و چه در استدلال روزمره هستن.
به طور مشابه، فرهنگ لغت انگلیسی دایره‌المعارف آکسفورد، داده‌ها رو به عنوان «حقایق یا چیزهایی شناخته شده که به عنوان مبنایی برای استنتاج یا محاسبه استفاده می‌شوند» تعریف میکنه. این امر بر استفاده از داده ها به عنوان ورودی برای قضاوت، محاسبات یا نتیجه گیری تاکید میکنه.
اگرچه "داده" شکل جمع "datum" هست. اما معمولاً در زبان مدرن به عنوان یک اسم مفرد در نظر گرفته میشه. در حالی که شکل جمع از نظر فنی صحیح هست، استفاده مفرد به طور گسترده پذیرفته شده هست.

- سازمان آموزشی، علمی و فرهنگی ملل متحد (یونسکو) داده ها رو به عنوان «حقایق، مفاهیم یا دستورالعمل ها به شیوه ای رسمی مناسب برای ارتباط، تفسیر یا پردازش به وسیله انسان یا خودکار» تعریف میکنه. این نشان میده که داده‌ها باید ساختاریافته یا سازمان‌دهی بشن تا مفید باشن، به‌ویژه در زمینه سیستم‌های رایانه‌ای که در اون داده‌ها پردازش و منتقل میشن.

‏- *Dictionary of Modern Economics* داده ها رو به عنوان "مشاهدات در مورد بزرگی عددی پدیده های اقتصادی مانند درآمد ملی، بیکاری، یا قیمت خرده فروشی" توصیف میکنه. در اقتصاد، داده ها معمولاً به اندازه گیری ها یا مشاهدات قابل اندازه گیری اشاره دارن که برای تجزیه و تحلیل روندهای اقتصادی و تصمیم گیری آگاهانه استفاده میشن.

- در علوم، داده ها اغلب به عنوان مجموعه ای از «مقادیر عددی یا کیفی حاصل از آزمایش های علمی» توصیف میشن. بر اساس *دایره المعارف علم و فناوری مک گراو هیل*، این داده ها نتیجه مشاهده و آزمایش هست و اساس دانش علمی رو تشکیل میدن.

🔻 به صورت کلی داده ها، در شکل خام خود، تا زمانی که پردازش و تفسیر نشن، فاقد معنا هستن. در علم اطلاعات، اصطلاح «symbolization of knowledge» به این اشاره داره که چگونه داده‌ها باید در چارچوبی خاص برای به دست آوردن ارتباط و انسجام، زمینه‌سازی و درک بشن. این به ویژه در زمینه هایی که از داده ها برای نتیجه گیری یا پیش بینی استفاده میشن، صادقه. در عصر دیجیتال مدرن، داده‌ها به دلیل پیشرفت‌های فناوری، از جمله گسترش استفاده از اینترنت، هوش مصنوعی و تجزیه و تحلیل داده‌های بزرگ، با سرعت بی‌سابقه‌ای در حال گسترش هستن. در نتیجه، داده ها به منبعی ارزشمند برای تصمیم گیری، نوآوری و توسعه اقتصادی تبدیل شدن. اما به نظر شما ما به عنوان یک برنامه نویس با چه نوع "داده" ای سروکار داریم؟

برای اطلاعات بیشتر، این PDF ارزشمند رو مطالعه کنید.
#data
@CodeModule
🔥142
دورهمی های کدماژول، قسمت نهم

موضوع: معرفی لینوکس، فلسفه توزیع‌ها و مهاجرت به آنها 🪴

مهمان گفتگو: آقای زانیار حسینی

زمان برگزاری: پنجشنبه (۳ آبان)، ساعت ۹

توی این میتینگ قراره درباره‌ی سیستم‌عامل لینوکس صحبت کنیم و به این بپردازیم که اصلاً لینوکس چیه، از کجا اومده، و چرا این‌قدر معروف شده. انواع توزیع هاش رو بررسی و مشخص میکنیم که به عنوان دولوپر تو هر حوزه، چه توزیعی برای ما مناسب تره. همچنین، مزایا و محدودیت های لینوکس نسبت به سایر سیستم عامل ها رو مشخص و ...


فردا شب ساعت 9 این گفتگو و دورهمی رو از دست ندید‌(لینک میت رأس ساعت قرار میگیره)

@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👌3❤‍🔥2
Code Module | کد ماژول
دورهمی های کدماژول، قسمت نهم موضوع: معرفی لینوکس، فلسفه توزیع‌ها و مهاجرت به آنها 🪴 مهمان گفتگو: آقای زانیار حسینی زمان برگزاری: پنجشنبه (۳ آبان)، ساعت ۹ توی این میتینگ قراره درباره‌ی سیستم‌عامل لینوکس صحبت کنیم و به این بپردازیم که اصلاً لینوکس چیه، از…
کلی یاد گرفتیم در کنار ماژولیتیا💙

یه چنل میزنم(لینکش رو به زودی میزارم) ریکورد میتینگ های چند وقت اخیر رو اونجا قرار میدم.
به هر دلیل اگر نتونستید حضور پیدا کنید نگران نباشید.

امیدوارم که میتینگ های آینده هم مارو همراهی کنید تا بتونیم از تجربیات همدیگه استفاده کنیم🔥🙌🏻

@CodeModule
@CodeModuleGap
❤‍🔥143👌2
اگه برای تمرین و کدنویسی دنبال ui خاصی میگردید، این طرح فیگما رو به هیچ وجه از دست ندید 💀

🔗 Link

#figma
@CodeModule
🔥11
اینم از برنامه روزانه Rest من 😂😂

#fun
@CodeModule
😁18👌1
درود ماژولیتیای گل💙

دوستان گروه از چنل بنا به یک سری دلایل جدا شده. دلیل اصلیش هم نظم دادن به گروه بود و الان با داشتن تاپیک‌های لازم، دیگه سوال کسی این وسط گم نمیشه و دسترسیتون به پیام ها خیلی راحت تر خواهد بود.

در صورت داشتن هر گونه سوال، انتقاد و ... میتونید توی گروهمون جوین باشید👇🏻

@CodeModuleGap
🔥151
‏Analysis of Algorithms چیه؟ 🩸

تحلیل الگوریتم یک کانسپت کلیدی در نظریه پیچیدگی محاسباتی( computational complexity theory) هست که منابع نظری مورد نیاز یک الگوریتم رو برای حل یک مسئله محاسباتی معین تخمین میزنه. نقش مهمی در تعیین میزان کارآمدی یک الگوریتم، به ویژه از نظر زمان و مکان داره.

بیشتر الگوریتم ها برای مدیریت ورودی های با طول دلخواه طراحی شدن، به این معنی که الگوریتم باید بدون توجه به اندازه داده ها کار کنه. تجزیه و تحلیل الگوریتم‌ها به ما کمک میکنه تا عملکردشون رو برای اندازه‌های ورودی مختلف درک کنیم و بینشی در مورد مقیاس‌پذیری و کارایی یک الگوریتم ارائه کنیم. کارایی یک الگوریتم معمولاً به صورت زیر بیان میشه:

- پیچیدگی زمانی(Time Complexity): این نشان میده که چگونه زمان اجرا یک الگوریتم با افزایش اندازه ورودی تغییر میکنه. اغلب با نماد Big-O نشون داده میشه، که یک upper bound در زمان لازم برای اجرای الگوریتم بر اساس اندازه ورودی ارائه میده. البته نمادهای دیگه‌ای مثل Θ (theta) و Ω (omega) هم وجود دارن که به ترتیب برای توصیف محدودیت‌های متوسط و پایین‌تر استفاده میشن. به این صورت:

‏Big-O — نشان‌دهنده بیشترین تعداد عملیات مورد نیاز در بدترین حالت.
‏Omega — نشان‌دهنده کمترین تعداد عملیات مورد نیاز در بهترین حالت.
‏Theta — نشان‌دهنده تعداد عملیات در حالت متوسط، وقتی که تعداد دقیق گام‌ها شناخته شده باشد.

- پیچیدگی فضایی: این مقدار حافظه یک الگوریتم رو نسبت به اندازه ورودی اندازه میگیره. برای درک میزان فضای ذخیره اضافی در هنگام اجرای الگوریتم بسیار مهم هست.


انواع Analysis of Algorithms 🌋

چهار نوع اصلی تحلیل الگوریتم وجود داره:

‏1. Worst-Case Analysis:

- این به حداکثر تعداد مراحل یا منابعی اشاره داره که یک الگوریتم برای هر ورودی با اندازه «n» نیاز داره. تجزیه و تحلیل بدترین حالت برای حصول اطمینان از اینکه الگوریتم در سخت ترین شرایط کارآمد عمل میکنه، مهم هست.
- مثال: در یک الگوریتم جستجوی خطی(linear search algorithm)، بدترین سناریو زمانی رخ میده که عنصر مورد نظر در انتهای لیست باشه، و لازم است الگوریتم قبل از یافتن هر عنصر رو اسکن کنه.

‏2. Best-Case Analysis:

- این حداقل تعداد مراحل مورد نیاز الگوریتم رو برای هر ورودی با اندازه "n" محاسبه میکنه. در حالی که مفید هست، تجزیه و تحلیل بهترین حالت در برنامه های کاربردی دنیای واقعی اهمیت کمتری داره زیرا فقط مطلوب ترین سناریو ورودی رو منعکس میکنه.
- مثال: در همون الگوریتم جستجوی خطی، بهترین حالت زمانی هست که عنصر هدف اولین عنصر باشه، یعنی جستجو پس از یک مقایسه به پایان میرسه.

‏3. Average-Case Analysis:

- این میانگین تعداد مراحلی رو که الگوریتم برای ورودی تصادفی با اندازه «n» انجام میده محاسبه میکنه. تجزیه و تحلیل میانگین مورد انتظار واقعی تری از عملکرد رو در مقایسه با بهترین و بدترین سناریو ارائه میده.
- مثال: در الگوریتم‌های مرتب‌سازی مانند quicksort، حالت متوسط ​​ممکنه سفارش‌های ورودی تصادفی رو در نظر بگیرد و تعداد مورد انتظار مقایسه رو استخراج کنه.

‏4. Amortized Analysis:

- به دنباله ای از عملیات روی یک ساختار داده نگاه میکنه و عملکرد متوسطی رو در طول زمان ارائه میده. این به ویژه زمانی مفیده که برخی از عملیات ممکنه گران باشن، اما هزینه آنها با بسیاری از عملیات ارزان تر "Amortized" میشن.
- مثال: در تغییر اندازه آرایه پویا، در حالی که تغییر اندازه میتونه گران باشه، به ندرت اتفاق میفته، بنابراین میانگین هزینه هر insertion در هنگام در نظر گرفتن درج های متعدد(multiple insertions) کم هست.


اهمیت تحلیل الگوریتم؟

تجزیه و تحلیل الگوریتم به شناسایی کارایی یک الگوریتم از نظر زمان CPU، استفاده از حافظه، استفاده از دیسک و استفاده از شبکه کمک میکنه. در این میان، زمان CPU (پیچیدگی زمانی) معمولاً مهمترین عامل هنگام ارزیابی الگوریتم ها هست.

به صورت کلی تحلیل الگوریتم به ما کمک میکنه که بهترین الگوریتم رو با توجه به شرایط و پروژه ای که داریم انتخاب کنیم. برای اطلاعات بیشتر به این مقالات مراجعه کنید.

#algorithms
@CodeModule
🔥91
یه مشت ابزار کاربردی که احتمالا از اونها بی خبر بودی 💀🔥

در حوزه فرانت‌اند روزانه ابزارهای زیادی پا به عرصه رقابت میزارن و همه اونها یک هدف دارن، راحتیه دولوپر!
مقاله زیر چندین ابزار و سایت کاربردی معرفی کرده که ارزش دیدن داره و پیشنهاد میکنم از دستشون ندید.

🔗 Link

#article #tools
@CodeModule
🔥13❤‍🔥3
شرایط تحت کنترله دوستان🌝😂

#fun
@CodeModule
😁37
اگر به دنبال یک رودمپ جامع و کلی برای حوزه بک اند هستید، این رودمپ به صورت کامل از پایه تا پیشرفته، قدم به قدم راهنمایی کرده و در مورد هرکدوم توضیحاتی تکمیلی ارائه داده🌋

#roadmap
@CodeModule
10
دیگه وقتت رو برای نوشتن کاستوم هوک‌ها هدر نده🩸

پکیج usehooks-ts مجموعه‌ای از هوک‌های آماده و کاربردی برای پروژه‌های ریکتی هست که خوشبختانه با تایپ اسکریپت هم سازگاره. در این مجموعه، هوک های مختلفی برای انواع کارها مانند مدیریت ایونت‌ها، مدیریت لوکال استوریج، مدیریت تایمرها، دسترسی به اطلاعات مرورگر و ... پیدا میشه، که باعث ساده‌تر شدن کدنویسی، سرعت بیشتر و همچنین کاهش نیاز به نوشتن کد تکراری میشه.

🔗 Link

#react
@CodeModule
12🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
جدی خیلی زندگیشون روی رواله🥹

#fun
@CodeModule
😁29👌1💔1
دورهمی های کدماژول، قسمت دهم

موضوع: چطور به برنامه نویس بهتری تبدیل بشیم؟ 🧑🏻‍💻

مهمان گفتگو: آقای علیرضا صفائی‌راد

زمان برگزاری: پنجشنبه (۲۴ آبان)، ساعت ۱۰

در این میتینگ قراره درباره مسیرهایی که می‌تونن به رشد و توسعه مهارت‌های برنامه‌نویسی کمک کنن، صحبت کنیم. با هم بهترین روش ها برای آموزش و پیشرفت رو بررسی کنیم، و به این مسئله بپردازیم که چه زمان آماده ورود به بازار کار هستیم. همچنین درباره این که ...


فردا شب ساعت ۱۰ این گفتگو و دورهمی رو از دست ندید‌(لینک میت رأس ساعت قرار میگیره)

@CodeModule
1🔥133👌2
Code Module | کد ماژول
دورهمی های کدماژول، قسمت دهم موضوع: چطور به برنامه نویس بهتری تبدیل بشیم؟ 🧑🏻‍💻 مهمان گفتگو: آقای علیرضا صفائی‌راد زمان برگزاری: پنجشنبه (۲۴ آبان)، ساعت ۱۰ در این میتینگ قراره درباره مسیرهایی که می‌تونن به رشد و توسعه مهارت‌های برنامه‌نویسی کمک کنن، صحبت…
بنا به استقبال شما عزیزان، در هفته آینده پارت دوم این میتینگ رو خواهیم داشت و با هم قراره سوالات بیشتری رو بررسی میکنیم :))

امیدوارم که میتینگ دیشب برای شما دوستان مفید واقع شده باشه و بابت این که یکسری سوالات پاسخ نگرفتن عذرخواهی میکنم (وقت کم بود)

هرگونه انتقاد یا پیشنهادی هم در خصوص میتینگ یا محتوای چنل دارید، توی گروه با بنده در میون بزارید💙

@CodeModuleGap
17