Forwarded from Anophel | آنوفل
تو جاوا اسکریپت ما سه نوع کد داریم :
1. کد Synchronous
2. کد macrotask
3. کد Microtask
نکته کلیدی سوال این سه مورد هستند.
در اولی که پیش فرض جاوااسکریپت هست کد لاین به لاین اجرا می شود و تا لاین قبلی تمام نشد لاین جدید اجرا نمیشه.
دومی : بعد از اجرای کد های Synchronou و قبل میکروتسک ها اجرا می شود مثل setTimeout و setInterval و ..
.
سومی :این بخش نیز بعد از اجرای کد های ماکروتسک اجرا می شوند. مثلا : promiseها.
بررسی مثال:
بخش Synchronous :
console.log(1); بلافاصله اجرا میشود و مقدار 1 در کنسول چاپ میشود
setTimeout یک ماکروتسک تعریف میکند، اما چون setTimeout تنها تنظیم کنندهی تاخیر است، این عملیات به تعویق میافتد. پس setTimeout هنوز چیزی چاپ نمیکند
console.log(2); نیز بلافاصله اجرا میشود و مقدار 2 در کنسول چاپ میشود
console.log(4) بلافاصله بعد از promise.then فراخوانی میشود و مقدار 4 در کنسول چاپ میشود
پس از اتمام اجرای کدهایSynchrono نیز setTimeout که یک ماکروتسک است، اجرا میشود.ابتدا مقدار "timerStart" را در کنسول چاپ میکند.سپس success فراخوانی میشود که باعث میشود promise به حالت fulfilled برسد و یک میکروتسک (یعنی promise.then) به صف میکروتسکها اضافه شود.سپس مقدار "timerEnd" را چاپ میکند.
دراخرم میکروتسک اجرا می شود. success
خروجی نهایی :
1
2
4
timerStart
timerEnd
success
آنوفل
#javanoscript #js #نکته #جاوااسکریپت
1. کد Synchronous
2. کد macrotask
3. کد Microtask
نکته کلیدی سوال این سه مورد هستند.
در اولی که پیش فرض جاوااسکریپت هست کد لاین به لاین اجرا می شود و تا لاین قبلی تمام نشد لاین جدید اجرا نمیشه.
دومی : بعد از اجرای کد های Synchronou و قبل میکروتسک ها اجرا می شود مثل setTimeout و setInterval و ..
.
سومی :این بخش نیز بعد از اجرای کد های ماکروتسک اجرا می شوند. مثلا : promiseها.
بررسی مثال:
بخش Synchronous :
console.log(1); بلافاصله اجرا میشود و مقدار 1 در کنسول چاپ میشود
setTimeout یک ماکروتسک تعریف میکند، اما چون setTimeout تنها تنظیم کنندهی تاخیر است، این عملیات به تعویق میافتد. پس setTimeout هنوز چیزی چاپ نمیکند
console.log(2); نیز بلافاصله اجرا میشود و مقدار 2 در کنسول چاپ میشود
console.log(4) بلافاصله بعد از promise.then فراخوانی میشود و مقدار 4 در کنسول چاپ میشود
پس از اتمام اجرای کدهایSynchrono نیز setTimeout که یک ماکروتسک است، اجرا میشود.ابتدا مقدار "timerStart" را در کنسول چاپ میکند.سپس success فراخوانی میشود که باعث میشود promise به حالت fulfilled برسد و یک میکروتسک (یعنی promise.then) به صف میکروتسکها اضافه شود.سپس مقدار "timerEnd" را چاپ میکند.
دراخرم میکروتسک اجرا می شود. success
خروجی نهایی :
1
2
4
timerStart
timerEnd
success
آنوفل
#javanoscript #js #نکته #جاوااسکریپت
Anophel
Anophel | Where Developers Create Their Own Path
Anophel is an ecosystem for developers—a place for those who prefer building over consuming. If you want to create tools, think differently, and forge your own path in coding, Anophel is with you.
Forwarded from ⚝
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from محتوای آزاد سهراب
https://milkv.io/ruyibook
متاسفانه اگر شرایط اینطوری نبود، میشد از توی ایران این رو پیشخرید کرد :)
ولی باید رفت یوتوب و حسرت خورد.......
@SohrabContents
متاسفانه اگر شرایط اینطوری نبود، میشد از توی ایران این رو پیشخرید کرد :)
ولی باید رفت یوتوب و حسرت خورد.......
@SohrabContents
Forwarded from محتوای آزاد سهراب
اگر بتونم فردا یک ویدئو ضبط میکنم، با این محتوا:
نصب و راهاندازی یک سرور دبیان
احتمالا دو بخش باشه، توی بخش اول راهاندازی به صورت لوکاله و بخش دوم با داکر.
@SohrabContents
نصب و راهاندازی یک سرور دبیان
احتمالا دو بخش باشه، توی بخش اول راهاندازی به صورت لوکاله و بخش دوم با داکر.
@SohrabContents
Forwarded from ⚝
Forwarded from Python BackendHub (Mani)
دیشب تو گروه بحث بود که من اینترن هستم و چیکار کنم که شغل پیدا کنم یا رزومهام بیشتر دیده بشه. تو پیوی هم خیلیا سوال میپرسن که چطور بدون تجربه کاری اولین شغلشون رو بگیرن. ببین، همه شرکتا دنبال کسی میگردن که واقعاً یک مهارت رو بلده. حالا شاید بگی من ۴ سال دانشگاه رفتم، ۱۰ تا پروژه تمرینی هم تو گیتهاب گذاشتم، پس چرا قبولم نمیکنن؟ ولی باید بدونی که تعریف "بلد بودن" اینجا متفاوته.
یه پروژه مثل فروشگاه اینترنتی شاید کمک کنه چیزای پایهای یاد بگیری، ولی نمیشه گفت واقعاً بلدی. چرا؟ چون یه نرمافزار ساده ساختی که خیلی پیچیده نیست، یه مشکلی رو حل نکردی، شاید فقط چندتا کد رو کپی پیست کردی. "بلد بودن" یعنی این که بتونی از دانشت بهصورت عملی استفاده کنی و یه مشکل واقعی رو حل کنی، اونم جوری که بفهمی چه اتفاقی داره میفته. این اتفاق تو پروژههای تمرینی که یه بار میزنی و میذاریش کنار، نمیفته.
مثلاً یه بازی بود قدیما تو ایران به اسم "تراوین". یه نقشه ۴۰۰ در ۴۰۰ داشت (مختصات منفی هم داشت) یعنی ۱۶۰۰۰ خونه. هر کاربر که ثبتنام میکرد، یه خونه تو نقشه میگرفت که میشد دهکده اصلیش. اولین شرط بازی این بود که دو دهکده نمیتونن تو یه مختصات باشن. خب، اینجا میتونستی یه تیبل با ۱۶۰۰۰ خونه بسازی و هر بار که کاربر ثبتنام کرد، یه مختصات خالی بهش بدی. به این روش میگن whitenoise sampling
تا اینجا پروژه تمرینی تموم میشه. ولی پیچیدگی از اینجا شروع میشه که بیزنس متوجه میشه کاربرا تو کل نقشه پخش شدن، بعضیا چسبیدن به هم، بعضیا دورن. حالا بیزنس میگه برای بیشتر کردن هیجان بازی، باید کاربرا رو نزدیک هم نگه داری. برای همین، مثلاً به جای ۱۶۰۰۰ خونه، ۴۰۰ خونه مرکزی رو در نظر میگیری و وقتی نصفش پر شد، میری سراغ ۱۶۰۰ خونه. به این روش میگن progressive sampling.
مشکل بعدی اینه که کاربرا خیلی بهم چسبیدن و این باعث میشه هیجان بازی زیادی زیاد شه و اول بازی همه به هم حمله کنن، که این خودش باعث میشه خیلیا همون اول بازی رو ول کنن. حالا بیزنس میخواد یه فاصله حداقلی بین دهکدهها بذاری. اینجا به روش blue sampling میرسی.
میبینی؟ یه سیستم ساده چطور با دوتا نیاز بیزنسی که اول مشخص نبود، پیچیده شد؟ این مثال رو زدم که بگم یه پروژه مثل فروشگاه زدن اصلاً چشمگیر نیست. با همونم شاید شغل بگیری، ولی اگه میخوای سریعتر شغل پیدا کنی، برو یه پروژه استارت بزن که واقعاً به دردت بخوره و یه مشکلی که داری رو حل کنه.
پس من میگم طبق قانون gall سیستم complex ای که کار کنه به دنیا نمیاد, بلکه سیستم ساده ای بود که کار میکرد و به سیستم complex بلوغ پیدا کرده. یک مقاله خیلی قشنگ راجب همین قانون.
مثال؟ یه نگاه به گیتهاب من بنداز. همه پروژههام اینطوریه. از لینکدین کراولر گرفته تا کلودفلیر کراولر و aioclock. همه برای این ساخته شدن که یه مشکلی که داشتم رو حل کنن.
@PyBackendHub
یه پروژه مثل فروشگاه اینترنتی شاید کمک کنه چیزای پایهای یاد بگیری، ولی نمیشه گفت واقعاً بلدی. چرا؟ چون یه نرمافزار ساده ساختی که خیلی پیچیده نیست، یه مشکلی رو حل نکردی، شاید فقط چندتا کد رو کپی پیست کردی. "بلد بودن" یعنی این که بتونی از دانشت بهصورت عملی استفاده کنی و یه مشکل واقعی رو حل کنی، اونم جوری که بفهمی چه اتفاقی داره میفته. این اتفاق تو پروژههای تمرینی که یه بار میزنی و میذاریش کنار، نمیفته.
مثلاً یه بازی بود قدیما تو ایران به اسم "تراوین". یه نقشه ۴۰۰ در ۴۰۰ داشت (مختصات منفی هم داشت) یعنی ۱۶۰۰۰ خونه. هر کاربر که ثبتنام میکرد، یه خونه تو نقشه میگرفت که میشد دهکده اصلیش. اولین شرط بازی این بود که دو دهکده نمیتونن تو یه مختصات باشن. خب، اینجا میتونستی یه تیبل با ۱۶۰۰۰ خونه بسازی و هر بار که کاربر ثبتنام کرد، یه مختصات خالی بهش بدی. به این روش میگن whitenoise sampling
تا اینجا پروژه تمرینی تموم میشه. ولی پیچیدگی از اینجا شروع میشه که بیزنس متوجه میشه کاربرا تو کل نقشه پخش شدن، بعضیا چسبیدن به هم، بعضیا دورن. حالا بیزنس میگه برای بیشتر کردن هیجان بازی، باید کاربرا رو نزدیک هم نگه داری. برای همین، مثلاً به جای ۱۶۰۰۰ خونه، ۴۰۰ خونه مرکزی رو در نظر میگیری و وقتی نصفش پر شد، میری سراغ ۱۶۰۰ خونه. به این روش میگن progressive sampling.
مشکل بعدی اینه که کاربرا خیلی بهم چسبیدن و این باعث میشه هیجان بازی زیادی زیاد شه و اول بازی همه به هم حمله کنن، که این خودش باعث میشه خیلیا همون اول بازی رو ول کنن. حالا بیزنس میخواد یه فاصله حداقلی بین دهکدهها بذاری. اینجا به روش blue sampling میرسی.
میبینی؟ یه سیستم ساده چطور با دوتا نیاز بیزنسی که اول مشخص نبود، پیچیده شد؟ این مثال رو زدم که بگم یه پروژه مثل فروشگاه زدن اصلاً چشمگیر نیست. با همونم شاید شغل بگیری، ولی اگه میخوای سریعتر شغل پیدا کنی، برو یه پروژه استارت بزن که واقعاً به دردت بخوره و یه مشکلی که داری رو حل کنه.
پس من میگم طبق قانون gall سیستم complex ای که کار کنه به دنیا نمیاد, بلکه سیستم ساده ای بود که کار میکرد و به سیستم complex بلوغ پیدا کرده. یک مقاله خیلی قشنگ راجب همین قانون.
مثال؟ یه نگاه به گیتهاب من بنداز. همه پروژههام اینطوریه. از لینکدین کراولر گرفته تا کلودفلیر کراولر و aioclock. همه برای این ساخته شدن که یه مشکلی که داشتم رو حل کنن.
@PyBackendHub
Signal Processing Stack Exchange
Sampling of band-limited white noise
The context is communication where we have a front-end that samples a signal and a noise (but here we focus only on the noise). My goal is to determine the noise power that I should use to simulate...
Forwarded from سید فرندز / برنامه نویسی / هک و امنیت / تکنولوژی (SeYeD.Dev)
خیلیا سوال میپرسن موقعیت کاراموز و جونیور گیر نمیاد، چطور استخدام بشیم پس
همیشه گفتم من که حتی اگر شده یکی دوماه زمان بزارید یک ایده ای مطرح کنید که بتونید بیزینس باهاش بزنید و بالا بیارید، صرفا یک وبلاگ یا فروشگاه نزنید، چیزی بزنید که یوزربیاد روش و استفاده کنه
اینجا مانی یکسری توضیحات داده که چرا پروژه های ساده نمیتونن مارو استخدام کنن :
https://news.1rj.ru/str/PyBackEndHub/1109
دوست عزیز وقتی میخوای پروژه بزنی، نگا نکن چه توانایی داری، تو باید خودت رشد بدی، فراتر از توانایی هات تصمیم بگیر، برنامه نویسی که به چالش نخوره ، کرم شب تابه با لامپ سوخته (این چه مثالیه، حداقل زنبور بی عسل رو میگفتی)
حتی با یک پروژه هم میتونید استخدام بشید، حتی میتونید استخدام کنید افرادی رو که براتون کار کنن :)
من هنوز از پروژه های ۵-۶ سال پیشم درامد دارم، اگر سپنتا خاموش نمیکردم از پروژه ده سال پیشمم هنوز درامد میتونستم داشته باشم
@SEYED_BAX
همیشه گفتم من که حتی اگر شده یکی دوماه زمان بزارید یک ایده ای مطرح کنید که بتونید بیزینس باهاش بزنید و بالا بیارید، صرفا یک وبلاگ یا فروشگاه نزنید، چیزی بزنید که یوزربیاد روش و استفاده کنه
اینجا مانی یکسری توضیحات داده که چرا پروژه های ساده نمیتونن مارو استخدام کنن :
https://news.1rj.ru/str/PyBackEndHub/1109
دوست عزیز وقتی میخوای پروژه بزنی، نگا نکن چه توانایی داری، تو باید خودت رشد بدی، فراتر از توانایی هات تصمیم بگیر، برنامه نویسی که به چالش نخوره ، کرم شب تابه با لامپ سوخته (این چه مثالیه، حداقل زنبور بی عسل رو میگفتی)
حتی با یک پروژه هم میتونید استخدام بشید، حتی میتونید استخدام کنید افرادی رو که براتون کار کنن :)
من هنوز از پروژه های ۵-۶ سال پیشم درامد دارم، اگر سپنتا خاموش نمیکردم از پروژه ده سال پیشمم هنوز درامد میتونستم داشته باشم
@SEYED_BAX
Forwarded from ⚝
Forwarded from Source Byte ( P҉d҉y҉👾)
Analysis of two arbitrary code execution vulnerabilities affecting WPS Office
(Used by APT-60)
#apt #analysis #cve
(Used by APT-60)
#apt #analysis #cve
Forwarded from Gopher Academy
🔵 عنوان مقاله
The Case of a Leaky Goroutine
🟢 خلاصه مقاله:
خلاصه مقاله: ووتر در مقالهی خود به بررسی مشکل پیچیدهای در برنامهنویسی میپردازد که او آن را "کارخانهی گوروتینهای بیپایان" مینامد. او دریافته است که این مشکل موجب خرابکاری در یک برنامه شده است. ووتر در مقاله خود تجربیات و یافتههای خود را به اشتراک گذاشته تا دیگران بتوانند از وقوع چنین سرنوشتی در پروژههای خود جلوگیری کنند. او توضیح میدهد که چگونه این گوروتینها میتوانند به صورت ناکارآمد بارها و بارها تولید شوند و باعث کندی و اختلال در عملکرد برنامه شوند. مقاله نیز به ارائه راهکارهای فنی برای شناسایی و اصلاح این مشکل پرداخته و به خوانندگان کمک میکند تا درک بهتری از نحوه مدیریت منابع در برنامهنویسی به دست آورند.
🟣لینک مقاله:
https://brainbaking.com/post/2024/03/the-case-of-a-leaky-goroutine/
➖➖➖➖➖➖➖➖
👑 @gopher_academy
The Case of a Leaky Goroutine
🟢 خلاصه مقاله:
خلاصه مقاله: ووتر در مقالهی خود به بررسی مشکل پیچیدهای در برنامهنویسی میپردازد که او آن را "کارخانهی گوروتینهای بیپایان" مینامد. او دریافته است که این مشکل موجب خرابکاری در یک برنامه شده است. ووتر در مقاله خود تجربیات و یافتههای خود را به اشتراک گذاشته تا دیگران بتوانند از وقوع چنین سرنوشتی در پروژههای خود جلوگیری کنند. او توضیح میدهد که چگونه این گوروتینها میتوانند به صورت ناکارآمد بارها و بارها تولید شوند و باعث کندی و اختلال در عملکرد برنامه شوند. مقاله نیز به ارائه راهکارهای فنی برای شناسایی و اصلاح این مشکل پرداخته و به خوانندگان کمک میکند تا درک بهتری از نحوه مدیریت منابع در برنامهنویسی به دست آورند.
🟣لینک مقاله:
https://brainbaking.com/post/2024/03/the-case-of-a-leaky-goroutine/
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Brain Baking
The Case Of A Leaky Goroutine
In the programming language Go, it’s very easy to build something using high-level concurrent …
Forwarded from کداکسپلور | CodeExplore (Koorosh)
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from DevTwitter | توییت برنامه نویسی
برسی سلامت باتری لپ تا در لینوکس
دستور
upower --enumerate
را بزنید لیست را نمایش میدهد
upower -i [یکی از ادرس های که اسم باتری شما است]
@DevTwitter | <MehrdadLinux/>
دستور
upower --enumerate
را بزنید لیست را نمایش میدهد
upower -i [یکی از ادرس های که اسم باتری شما است]
@DevTwitter | <MehrdadLinux/>
Forwarded from Go Casts 🚀
قبلا در مورد اهمیت distributed task queueها صحبت کرده بودیم، اینم یه ویدیو دیگه در همین مورد که به کمک گولنگ و temporal ارائه ش رو انجام میده
GopherCon 2022: Andrew Fitz Gibbon - Durable Executions in the Face of (some) Failures
https://www.youtube.com/watch?v=zSFkwwNClow
اینم لینک پست مربوط به جلسه تیمسازی که با بچه ها در همین مورد صحبت شد و فیلمش در یوتیوب قرار گرفته
https://news.1rj.ru/str/gocasts/417
توضیحات «دوره + تیمسازی بکند Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/491
@gocasts
#golang #temporal
GopherCon 2022: Andrew Fitz Gibbon - Durable Executions in the Face of (some) Failures
https://www.youtube.com/watch?v=zSFkwwNClow
اینم لینک پست مربوط به جلسه تیمسازی که با بچه ها در همین مورد صحبت شد و فیلمش در یوتیوب قرار گرفته
https://news.1rj.ru/str/gocasts/417
توضیحات «دوره + تیمسازی بکند Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/491
@gocasts
#golang #temporal
YouTube
GopherCon 2022: Durable Executions in the Face of (some) Failures - Andrew Fitz Gibbon
You’ve got a critical production workload up and running and everything’s fine. Until it’s not. The node crashes and you’ve lost everything! Or did you? What if that node simply picked up right where it left off? In this lightning talk, we'll explore how…
Forwarded from LearnPOV | لرن پی او وی (Mohammad hossein)
#programming #movie
The Social Network ( 2010 )
فیلم شبکه اجتماعی دربارهی رشد فیسبوک و چالشهایی که خالقان اون باهاش مواجه شدند هستش و پیچیدگیهای شروع یک کسبوکار تکنولوژی رو به تصویر میکشه.
The Imitation Game ( 2014)
این فیلم داستان آلن تورینگ و نقش اون در شکستن کد انیگمای آلمانی در طول جنگ جهانی دوم رو به تصویر میکشه.
Pirates of Silicon Valley ( 1999 )
این فیلم درواقع تاریخچهی روزهای اولیهی مایکروسافت و اپل و رقابت بین استیو جابز و بیل گیتسه و برای درک ریشههای صنعت تکنولوژی میتونه جالب باشه.
⭐ Mr. Robot (TV Series) : 2015-2019
این سریال رو احتمالا بیشترتون میشناسید، داستان سریال دربارهی یه مهندس امنیت سایبری که به یک هکر عدالتخواه تبدیل میشه و ...
Hackers ( 1995 )
گروهی از هکرهای نوجوان بهطور ناخواسته درگیر یک توطئه پیچیده میشوند. یکی از اعضای گروه بهطور تصادفی به یک سیستم حساس نفوذ میکند و ...
Who am I ( 2014 )
این فیلم داستان یک هکر جوان است که با پیوستن به گروه هکری CLAY درگیر ماجراهای خطرناکی میشود که زندگی او را به خطر میاندازد.
🆔 Channel | Group | YouTube
Forwarded from LearnPOV | لرن پی او وی (Mohammad hossein)
#golden_sentence
جمله امروز یکم متفاوته ببینم کیا نکته رو میگیرن 😁
There are 10 types of people in this world, those who understand binary and those who don’t.Anonymous
در این دنیا 10 نوع آدم وجود داره، کسانی که سیستم باینری رو میفهمند و کسانی که نمیفهمند.
🆔 Channel | Group | YouTube
Forwarded from محتوای آزاد سهراب
با موفقیت شکست خورد😂
ترکیب ویرچوال باکس + دبیان + OBS باعث خودتخریبی میشه😂
سعی میکنم qemu بزنم چارهای نیست.
@SohrabContents
ترکیب ویرچوال باکس + دبیان + OBS باعث خودتخریبی میشه😂
سعی میکنم qemu بزنم چارهای نیست.
@SohrabContents