Ninja Learn | نینجا لرن
1.26K subscribers
96 photos
36 videos
11 files
307 links
یادگیری برنامه نویسی به سبک نینجا 🥷
اینجا چیزایی یاد میگیری که فقط نینجاهای وب‌ بلدن 🤫

📄 Send me post: https://t.iss.one/NoronChat_bot?start=sec-fdggghgebe

👥 ɢʀᴏᴜᴘ: https://t.iss.one/+td1EcO_YfSphNTlk
Download Telegram
بچه ها توی گروه حتما جوین بشید میتونید هر سوالی که دارید اونجا بپرسید یا توی بحثای جذاب شرکت کنید 🫵

لینک گروه 👀
https://t.iss.one/+td1EcO_YfSphNTlk
👍52🥰1
🔥7👍21
💎 موتور جاوااسکریپت (engine) 💎

امروز می‌خوایم بریم سراغ دو تا از مهم‌ترین مفاهیم در متور جاوا اسکریپت: Call Stack و Memory Heap. که کدای ما توی این دوتا بخش اجرا میشه.

🤔 حالا Call Stack چیه؟
تصور کنید چندتا بشقاب روی هم داریم. هر وقت یه تابع جدید صدا می‌زنیم، یه بشقاب جدید روی بشقابای قبلی میذاریم. وقتی کار تابع تموم شد، بشقاب رو برمی‌داریم. این روند همون Call Stack ماست.

چرا این مهمه؟
چون جاوا اسکریپت تک رشته ای هست (single thread) هست، یعنی هر بار فقط یه کار رو انجام میده. Call Stack به جاوا اسکریپت کمک می‌کنه بفهمه کدوم تابع باید بعد از تابع قبلی اجرا بشه.

🧐 حالا Execution Context درون call stack چیه؟
هر بار که یه تابع اجرا میشه، یه Execution Context جدید ایجاد میشه که به call stack اضافه میشه. این Context شامل دو بخش اصلی هست:

🗂Variable Environment:
جایی که متغیرهای محیطی تابع ها ذخیره میشن.
🌳Scope Chain:
زنجیره‌ای از اشیاء است که برای پیدا کردن مقدار متغیرها استفاده میشه.
حالا Scope Chain چیه؟ ⛓️
تصور کن یه درخت خانوادگی داریم. هر متغیری یه فرزند از نسل قبلی هست. Scope Chain به ما کمک می‌کنه تا از پایین به بالا در این درخت جستجو کنیم و مقدار متغیرها رو پیدا کنیم.

حالا کلمه کلیدی This چیه؟
این کلمه کلیدی به شیء جاری اشاره می‌کنه. اما مقدار دقیقش به نحوه فراخوانی تابع بستگی داره. مثلا وقتی یه تابع به عنوان متد یک شیء فراخوانی میشه، this به اون شیء اشاره می‌کنه.

حالا Memory Heap چیه؟
حالا بیایم سراغ Memory Heap. این قسمت مثل یه انبار بزرگه که همه داده‌های برنامه توش ذخیره میشه. اشیاء، آرایه‌ها و توابع همه در Heap قرار می‌گیرن.

تفاوت Call Stack و Memory Heap چیه؟

Call Stack:
برای اجرای کد استفاده میشه و بر اساس
اصل LIFO (Last In, First Out) کار می‌کنه.
Memory Heap:
برای ذخیره داده‌ها استفاده میشه و حافظه به صورت پویا تخصیص داده میشه.
جمع‌بندی
فهمیدیم Call Stack و Memory Heap دو مفهوم اساسی در جاوا اسکریپت هستن که درک عمیقشون برای نوشتن کدهای کارآمد و عیب‌یابی بسیار مهمه.


#جاوااسکریپت #callstack #memoryheap #executioncontext #scope #this
@ninja_learn_ir
👍152
دوستان براتون یه چالش خفن دارم 😁
برید درمورد DSA یا همون
Digital signature algorithm

تحقیق بکنید و بیاید چیزی که یاد گرفتید رو اینجا بگید 👇

https://t.iss.one/+td1EcO_YfSphNTlk


اگه موافقید درموردش یه پستم درست میکنم

@ninja_learn_ir
👍91👏1
#fun #meme


فایل . gitignore سال ۱۹۹۹ اختراع شد

مردم قبل ۱۹۹۹:


@ninja_learn_ir
🤣14👍41😁1
سلام رفقا 👋

یه پست اینستا گذاشتیم مخصوص پایتون کارا 😉

ممنون میشیم که از ما با لایک و کامنت گذاشتن حمایت کنید 🌹😊

https://www.instagram.com/p/C-nOBcEMQ-f/?igsh=bDRremI1a3B5dTZv
👍82
Ninja Learn | نینجا لرن pinned «سلام رفقا 👋 یه پست اینستا گذاشتیم مخصوص پایتون کارا 😉 ممنون میشیم که از ما با لایک و کامنت گذاشتن حمایت کنید 🌹😊 https://www.instagram.com/p/C-nOBcEMQ-f/?igsh=bDRremI1a3B5dTZv»
بیشتر دوستانی که پستارو میبینن نه ریکشن میزنن و نه فالو میکنن
لطفا فالو کنید ما داریم اینجا زحمت میکشیم🥲

@ninja_learn_ir
14👍3🆒2👎1🐳1
This media is not supported in your browser
VIEW IN TELEGRAM
#fun


همراه صبحانه و قهوه 😐😂

@ninja_learn_ir
🤣13
💎 دنیای رمزنگاری با DSA 💎

امروز میخوایم با هم یکی از الگوریتم‌های مهم و پرکاربرد در دنیای رمزنگاری آشنا بشیم. این الگوریتم با اسم جذاب DSA شناخته میشه که مخفف Digital Signature Algorithm هست.

حالا DSA چیه و چیکار میکنه؟ 🤔

تصور کن میخوای یه پیام خیلی مهم رو برای دوستت بفرستی. اما نگران اینی که کسی پیام رو تو راه دستکاری کنه یا به اسم تو پیام بفرسته. اینجا DSA به دادت میرسه!

خب DSA یه الگوریتم رمزنگاریه که بهت کمک میکنه تا مطمئن بشی پیامی که فرستادی دست نخورده به دست مقصد رسیده و واقعا توسط خودت ارسال شده. به عبارت دیگه، DSA مثل یه امضای دیجیتالی عمل میکنه که ثابت میکنه پیام از طرف تو ارسال شده و کسی نتونسته اون رو تغییر بده.

چطور کار میکنه؟

اینجوریه که DSA از دو کلید استفاده میکنه: یک کلید عمومی و یک کلید خصوصی.

🔑 کلید عمومی: مثل یه کارت ویزیت دیجیتالی هست که همه میتونن ببینن. این کلید برای رمزگشایی پیام استفاده میشه.

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

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

گیرنده با استفاده از کلید عمومی تو، امضای دیجیتال رو بررسی میکنه. اگر امضا معتبر باشه، مطمئن میشه که پیام از طرف تو ارسال شده و دستکاری نشده.

الگوریتم‌های استفاده شده در DSA:

خب DSA از چندین الگوریتم ریاضی پیچیده استفاده میکنه که تضمین میکنه شکستن امضای دیجیتال تقریبا غیرممکن باشه. این الگوریتم‌ها بر اساس تئوری اعداد و رمزنگاری نامتقارن طراحی شده‌اند.

کاربردهای DSA:

1⃣ امضای دیجیتال اسناد: برای اطمینان از اصالت و عدم تغییر اسناد الکترونیکی

2⃣ احراز هویت: برای تأیید هویت کاربران در سیستم‌های امنیتی

3⃣ تأمین امنیت تراکنش‌های مالی: برای محافظت از اطلاعات حساس در تراکنش‌های آنلاین

4⃣ امضای نرم‌افزار: برای اطمینان از اینکه نرم‌افزار دستکاری نشده است
مزایای DSA:

5⃣ امنیت بالا: شکستن امضای دیجیتال DSA بسیار دشوار است.

6⃣ سرعت بالا: DSA نسبت به برخی الگوریتم‌های دیگر سریع‌تر عمل میکنه.

7⃣ استاندارد بودن: DSA یک استاندارد جهانی است و در بسیاری از سیستم‌های امنیتی استفاده میشه.

جمع‌بندی:

فهمیدیم که DSA یک ابزار قدرتمند برای تأمین امنیت اطلاعات است. با استفاده از DSA میتونیم اطمینان حاصل کنیم که اطلاعات ما دست نخورده باقی میمونه و از طرف فرد مورد نظر ارسال شده است.

⭕️ نکته: DSA یکی از چندین الگوریتم امضای دیجیتال است. الگوریتم‌های دیگری مثل RSA هم وجود دارند که کاربردهای مشابهی دارند.


#امنیت_اطلاعاتDSA #رمزنگاری #امضای_دیجیتال



@ninja_learn_ir
👍131
This media is not supported in your browser
VIEW IN TELEGRAM
#fun


هممون مدیون استک اورفلوییم😂

@ninja_learn_ir
😁6🤣6👍21
📊 قالب مدیریت رایگان مگارا

💻 توسعه داده شده و ارئه شده توسط نینجالرن
19👍3