رقصنده با کد – Telegram
رقصنده با کد
784 subscribers
1.69K photos
850 videos
207 files
665 links
Here are some interesting things I've come across during my learning process. That's it. Admin ID:
@alithecodeguy
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
چه قدر منطقی

این آقا کیه؟
Forwarded from Books
Books
The_Secret_Life_of_Programs_Understand_Computers_Craft_Better_Code.pdf
احتمالا یکی از بهترین کتابهاییه که به عنوان یک عاشق کامپیوتر می‌تونید بخونید.
درک مفهوم thread و تفاوت انجین‌ها توی مرورگر ، خیلی توی پیاده‌سازی وپ اپلیکیشن‌ها توی سطح حرفه‌ای کمکتون میکنه.

توی مرورگرهای امروزی ، هر tab دیگه یک thread نیست. مرورگرها از مدل‌های چندپردازشی استفاده میکنن. به این شکل که هر tab ، یک پروسس مخصوص خودش رو داره ولی هر پروسس شامل چندین thread هستش. مثل:

Main thread, UI thread , Raster thread, Compositor thread, Worker thread, GPU thread , ...

@AliTheCodeGuy
https://news.1rj.ru/str/danceswithcode
امروز سومین چپتر جدید فرانت این ماه اخیر رو دیدم.

به عنوان کسی که از سال ۹۲ ویدیوی آموزشی تهیه کرده و چندین سال پیوسته دورهمی آنلاین و سریالی برگزار کرده و به عنوان کسی که با کنفرانس‌های حضوری هم غریبه نیست ، برای بار هزارم (احتمالا) میگم که اگر واقعا دنبال یادگیری هستید ، وقت خودتون رو با دورهمی و چپتر و کنفرانس و این چرندیات تلف نکنید. (۹۹٪ اوقات هدف اصلی چیز دیگه‌ایه)

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

بهتره غیر فعال نشه ولی اینکه همه چی رو دوبار رندر میکنه واقعا یه جاهایی اذیت کنندس مخصوصا توی کنسول.

با گزینه‌ای که توی تصویر میبیند از طریق react-dev-tools راحت می‌تونید اوکیش کنید.

@AliTheCodeGuy
https://news.1rj.ru/str/danceswithcode
فایل‌هایی با پسوند .d.ts چی هستن؟

فایل‌های ‎.d.ts‎ در TypeScript نقش فایل‌های تعریف نوع (Type Definition Files) رو دارن — یعنی خودشون کد اجرایی ندارن، بلکه فقط توضیح می‌دن که شکل و نوعِ داده‌ها و توابع و ماژول‌ها چطوریه.

فایل‌های .d.ts به TypeScript می‌گن:

“من اینجا یه کتابخونه یا فایل جاوااسکریپت دارم؛ اینم توضیحش که چه چیزهایی صادر می‌کنه و چه نوع‌هایی دارن.”

به زبان ساده‌تر:
این فایل‌ها به TypeScript یاد می‌دن چطوری با کد JavaScript یا محیط‌های بیرونی کار کنه.

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



// math.js
export function sum(a, b) {
return a + b;
}



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



// math.d.ts
export function sum(a: number, b: number): number;



حالا TypeScript می‌فهمه که sum دو عدد می‌گیره و یه عدد برمی‌گردونه

حالا فایل vite-env.d.ts چیه؟

وقتی یک پروژه TypeScript با Vite می‌سازی (مثلاً با npm create vite@latest my-app -- --template react-ts)، در پوشه src/ معمولاً این فایل ساخته می‌شود:



/// <reference types="vite/client" />



این یک Type Reference Directive است که به TypeScript می‌گه:

لطفاً تمام typeهایی که Vite برای محیط توسعه ارائه می‌کنه (مثل import.meta.env) رو بشناس.

چرا نیاز داریم؟

چون به‌صورت پیش‌فرض TypeScript از وجود import.meta.env خبر نداره و اگر این فایل (vite-env.d.ts) وجود نداشته باشه، TypeScript ارور می‌ده.

نکته :
-تایپ‌اسکریپت به‌صورت خودکار تمام .d.tsها رو می‌خونه (نیازی به import کردن نداره).
- اگر کتابخانه‌ای مثل lodash از نوع تعریف نشده باشه، با نصب پکیج types/lodash در واقع داری فایل‌های .d.ts اون کتابخونه رو نصب می‌کنی.

@AliTheCodeGuy
https://news.1rj.ru/str/danceswithcode
من خیلی old school رفتار میکنم توی کار. همیشه از روش‌های سنتی برای پیشبرد کارهام استفاده میکنم ولی خب نباید جلوی ابزار خوب مقاومت کرد.

اگر با noscript زیاد سروکار دارید و نیاز دارید کاستمشون کنید ، از کتابخانه noscriptr استفاده کنید. تمام فرآیند تبدیل noscript به کامپوننت رو خودکار براتون انجام میده و از طریق props می‌تونید کاستمش کنید.

@AliTheCodeGuy
https://news.1rj.ru/str/danceswithcode
زن و مرد براب...

(هیچ کدوم بالاتر از اون یکی نیست ولی برابر هم نیستن چون کلا دوتا موضوع متفاوتن. باید این نابرابری رو قبول کرد و عادلانه رفتار کرد.)
کاری با وجهه مذهبیش ندارم ولی واقعا همینا دهن آدم رو سرویس میکنه.

متاسفانه وقتی متوجهش میشی که تا گردن توشی.
آپدیت مطالعه زبان C89 برای نفراتی که هم مسیریم:

از کتابی که براتون گذاشتم ، ۵۹ صفحه رسیدم بخونم (از ۸۱۳ صفحه) ولی خب فقط مطالعه نبود. بخش زیادیش شناخت سیستم و اجرای کامپایلر و محیط توسعه و ... بود.

یه بخشیش هم صرف این میشه که هی ذهن پرش میکنه روی جاوااسکریپت و با سینتکس‌های اون قاطی میشه. مخصوصا موقع اجرا میبینید دارید کد جی‌اس رو توی سی میزنید.

علاوه بر اون از اون موقع تا الان ۲ تا رمان فارسی ، کتاب Linux for hackers و داکیومنت‌های چندتا لایبرری رو مطالعه کردم که خودم فکر میکنم اشتباهه.

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

من چیزی نمیگم. شما هم چیزی نگید که احتمالا هر نظری دارید درسته.
20 Essential Typenoscript Tips.pdf
3.9 MB
نکات تایپ اسکریپتی

البته نکته ۱۶ و ۱۷ برای جاوااسکریپته
در اغلب کشورها، هدف از تعلیم و تربیت ، جلوگیری از رشد افکار است و کسانی که از بیان عقاید بی‌اساس (عقاید آزاد) خودداری می‌کنند ، برای تربیت جوانان مناسب تشخیص داده می‌شوند.

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

یه کمم من ادایی بشم ، جای دوری نمیره 😅
انسان از ابتدای تاریخ بین دو گزینه اخلاقی تاب میخورده :

۱- انجام کار درستی که ضررش به انسان می‌رسه.
۲- انتخاب کار غلطی که فایده‌اش به انسان می‌رسه.

اساسا این موضوع ، یکی از پایه‌های اساسی فلسفه و در نتیجه یکی از عوامل تغییر حکومت‌ها و تشکیل جوامع هستش.

افراد مختلفی در طول تاریخ در موردش صحبت کردن:

- کانت به وظیفه گرایی معتقد بود. یعنی کاری که درسته رو باید انجام داد. فارغ از نتیجه.

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

- ارسطو ، فضیلت گرایی رو مطرح کرد. به عبارت ساده یعنی یکی به نعل بزن و یکی به میخ و تعادل بین درست و غلط رو حفظ کن.

- ماکیاولی و نیچه هم اساسا با خود خوب بودن یا بد بودن مشکل داشتن و میگفتن نسبیه. یعنی اگر از کار غلطی ، فایده بزرگتری برسه ، پس اون کار درستیه.

حالا نظر من چیه؟ هیچ کدوم. (برای محیط کار)

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

به عبارت خیلی ساده ، یا باید گوسفند باشی یا گرگ.

توی محیط کار ، مایی که نمیخوایم گوسفند باشیم ، آیا گزینه‌ای جز گرگ شدن داریم؟
کم کم صداش داره درمیاد ، هنوز وقت هست