Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
ویندوز آرم هم اکنون بواسطه Qemu/KVM بر روی پارچ آرم اجرا می‌شود.



ما در تلاشیم تا این فرآیند را برای کاربر نهایی ساده‌تر کنیم.


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


@ParchLinux
معرفی AxonJs: فریمورک مدرن Node.js برای API RESTful ها
امروز خوشحالم که اولین مقالهٔ جامع خودم رو درباره‌ی AxonJs روی Medium.com و Dev.to منتشر کردم!
فریمورک AxonJs (که البته هنوز درحال توسعه است) با معماری ماژولار، پشتیبانی از TypeScript و CLI اختصاصی، توسعه‌ی RESTful API رو سریعتر و لذتبخش‌تر میکنه. طبق بنچمارک‌ها، سرعتش تا دو برابر Express.js بالاتره و با سیستم پلاگین و اعتبارسنجی سریع، نیاز به کتابخانه‌های اضافی رو حذف میکنه.

اگر دنبال فریمورکی هستید که هم ساده باشه و هم قدرت بالا، حتماً نگاهی به AxonJs بندازید. نظرات و مشارکت شما برای توسعهی این پروژهٔ متن‌باز ارزشمنده!

خواندن مقاله در Medium.com:
https://mr-mkz.medium.com/meet-axonjs-the-express-slayer-that-doubles-your-api-speed-b99a4aac7f83

خواندن مقاله در Dev.to:
https://dev.to/mrmkz/meet-axonjs-the-express-slayer-that-doubles-your-api-speed-3a03

GitHub:
https://github.com/AxonJsLabs/AxonJs


@DevTwitter | <Erfan Karimi/>
اینکه با حضور در یک برنامه طنز و فان، دم از «فناوری‌های نوین» و «صداقت با مردم» می‌زنید؛ حتما انتخاب درستی هست.
صداقت در رفتار است. نه گفتار!

© yasharsoltani

🔍 ircf.space
@ircfspace
Forwarded from Linuxor ?
به Svelte خیلی کم لطفی شده، Svelte یه فریم‌ورک مدرن برای توسعه رابط کاربری (UI) هستش که برخلاف فریم‌ورک‌هایی مثل React یا Vue، به جای اجرای عملیات توی runtime، توی زمان ساخت (build time) کدهاتون رو به جاوااسکریپت بهینه تبدیل می‌کنه. این باعث می‌شه برنامه‌ها سریع‌تر بارگذاری بشن و حجم فایل‌های نهایی کاهش پیدا کنه :

svelte.dev/docs/svelte/overview

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

ایشون البته بعد از تشریح مشکل و مرثیه سرایی، اشاره‌ای به راه‌حل و زمان رفع مشکل نکرده!

🔍 ircf.space
@ircfspace
Forwarded from Mr Python | مستر پایتون (حسین)
🟣 آموزش کتابخانه Libnet - قسمت ۱ : نصب و مفاهیم اولیه

به اولین قسمت از آموزش کتابخانه Libnet در زبان C خوش آمدید . این کتابخانه به ما اجازه میده تا بسته های دلخواه در شبکه تزریق کنیم . به عبارتی بسته هایی با header های مختلف و مقادیر دلخواه بسازیم و اونا رو در شبکه ارسال کنیم . این باعث میشه بتونیم طیف وسیعی از حملات و ابزار های تحت شبکه رو بنویسیم .


Aparat : https://www.aparat.com/v/vluz625
Youtube : https://youtu.be/5izrtZqUBNE

#Network #Libnet

🆔 : @MrPythonBlog | BOOST
Forwarded from Ninja Learn | نینجا لرن (Denver)
b
Forwarded from Ninja Learn | نینجا لرن (Denver)
خب خب خب، انواع کلید توی دیتابیس های رابطه ای🔑
کلید ها توی دیتابیس ها نقش حیاتی ای توی تضمین یکپارچگی و سازماندهی داده ها دارن. شاید تا الان موقع طراحی دیتابیس به این فکر کرده باشین که مثلا Primary Key چیه؟ چطوری تعیین میشه؟ یا اینکه اصلا Foreign Key چیه؟ توی این پست مهم ترین کلیدهای دیتابیس رو باهم مرور میکنیم.

1. کلید اولیه یا اصلی (Primary Key):
هر جدول یک کلید اولیه داره که رکوردها رو به‌صورت یکتا شناسایی می‌کنه. مقادیر این کلید باید منحصربه‌فرد و غیر NULL باشن.
مثال: توی جدول کاربران، user_id به عنوان کلید اولیه عمل می‌کنه. نمیتونه NULL باشه و حتما باید منحصر به فرد باشه.

2. کلید خارجی (Foreign Key):

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

3. کلید ترکیبی (Composite Key):

کلیدی که از ترکیب چند ستون ساخته می‌شه و برای شناسایی یکتا به کار میره. معمولاً زمانی که یک ستون به تنهایی کافی نیست از کلید ترکیبی استفاده می‌شه.
مثال: در جدول ثبت‌نام‌ها، ترکیب student_id و course_id یک کلید ترکیبی ایجاد می‌کنه.

4. کلید کاندید (Candidate Key):

هر ستون یا ترکیبی از ستون‌ها که بتونه به عنوان کلید اصلی استفاده بشه، کلید کاندید نامیده میشه. هر جدول می‌تواند چندین کلید کاندید داشته باشه، اما فقط یکی از اونها به عنوان کلید اصلی انتخاب می‌شن. خیلی ساده تر بخوام بگم ستون یا ستون هایی که میتونستند به عنوان کلید اصلی انتخاب بشن.
مثال: توی جدول محصولات، ستون‌های product_code و product_name می‌تونن به عنوان کلید کاندید عمل کنن.

5. سوپر کلید (Super Key):

سوپر کلید، هر مجموعه‌ای از ستون‌هاست که میتونه هر رکورد توی جدول رو به‌طور یکتا شناسایی کنه. همه کلیدهای کاندید و کلید اصلی، سوپر کلید هستند، ولی هر سوپر کلیدی کاندید نیست.
مثال: ستون user_id یا ترکیب user_id و email در جدول کاربران می‌تواند سوپر کلید باشد.
برای این میگیم هر سوپر کلیدی، کلید کاندید نیست که یه سوپر کلید ممکنه از ترکیب یه کلید اصلی و یه کلید کاندید ایجاد شده باشه(مثلا user_id+user_email) ولی چون فقط با یکی از اینها(user_id) میتونیم یه رکورد رو به صورت یکتا شناسایی کنیم و کلید دومی(user_email) یه جورایی اضافه هست، دیگه این ترکیب کاندید نیست بلکه این فیلد ها هرکدوم یه کلید کاندید به حساب میان.


7. کلید جایگزین (Alternate Key):

زمانی که یک کلید کاندید به عنوان کلید اولیه انتخاب نمیشه، بهش کلید جایگزین میگن. این کلید هنوز قابلیت شناسایی یکتا را داره،ولی به عنوان کلید اصلی انتخاب نشده.
مثال: اگر توی جدول کاربران هم user_id و هم email کلید کاندید باشن و user_id به عنوان کلید اصلی انتخاب بشه، email کلید جایگزین خواهد بود.

8. کلید منحصر به فرد (Unique Key):

مثل کلید کاندیده با این تفاوت که کلید منحصر به فرد می‌تونه مقدار NULL داشته باشه (در بیشتر پایگاه‌داده‌ها حتی چند مقدار NULL مجازه)، ولی مقادیر غیر NULL نباید تکراری باشن. کلید منحصر به فرد در تضمین یکتایی داده‌ها موثر هست.
مثال: توی جدول کاربران، email میتونه یک کلید منحصر به فرد باشه، به این صورت که مقادیر ایمیل نباید تکراری باشن، اما میتونن NULL باشند.

جمع بندی
✍️
این کلیدها به شما کمک می‌کنن تا وابستگی‌های تابعی رو بهتر بشناسید و ساختار دیتابیس‌تون رو اصولی و منظم طراحی کنید. همچنین باعث می‌شن دیتابیس‌تون هم مقیاس‌پذیرتر باشه و هم برای تغییرات آینده آماده‌تر.

#️⃣ #programming #db


🥷🏻 CHANNEL | GROUP
Forwarded from Philocode
دارم یه CDN ساده با Go می‌نویسم.
فایده‌اش اینه که کارکردن با هدرها، کشینگ (اگه خواستید Redis)، فشرده‌سازی (برای من gzip) و کلی چیزهای دیگه رو یاد می‌گیرید.
https://github.com/muhammadmp97/TinyCDN
سال‌ها با jQuery زندگی کردیم.
هر افکتی می‌خواستیم، هر eventی، هر manipulation عجیبی… اون همیشه آماده بود.

ولی پروژه‌های مدرن نیاز به چیزی بیشتر از «کنترل DOM» دارن؛
نیاز به تعامل هوشمند با داده‌ها، ساختار تمیز، و سرعت بالا دارن.

همینجا بود که Alpine.js وارد شد:
نه مثل Vue یا React سنگین،
و نه مثل jQuery خطی و procedural.

یه ابزار سبک، مستقیم، و دقیقاً هم‌مسیر با فلسفه‌ی Laravel و Blade.
نصب خاصی نمیخواد، ساختار جدید نمیخواد، فقط تو HTML خودت کدت رو زنده میکنی!

ابزار Alpine کاری میکنه که تجربه کاربر سریعتر و تمیزتر بشه — بدون اینکه بار اضافه به پروژهات وارد بشه.

و از اون مهمتر:
نگاهت به تعامل با فرانت‌اند رو عوض میکنه.

اگه تا حالا Alpine رو تست نکردی، پیشنهاد میکنم فقط یک فایل blade باز کن و امتحانش کن.
باور نمیکنی چقدر تمیز و لذتبخشه!

@DevTwitter | <Mohammad asadi/>
👍1
Forwarded from Syntax | سینتکس (alireza-fa)
کلمه پر کاربر Bottleneck به چه معنیه؟

تصور کن یه بطری آب داری (bottle)، و می‌خوای خیلی سریع آب داخلش رو خالی کنی.

اما چون دهانه‌ی بطری باریکه (neck)، سرعت خالی شدن آب کم می‌شه.
این قسمت باریک شده که جلوی سرعت رو می‌گیره، می‌گن bottleneck.


تو برنامه‌نویسی:

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

با Instrumentation می‌فهمی Bottleneck کجاست

مثلاً با Tracing:

می‌بینی یه درخواست API کل سیستم رو سریع رد می‌کنه، ولی توی مرحله‌ی `FindUser()`، یهو ۸ ثانیه مکث می‌کنه → Bottleneck همینه!

یا با Metrics:

نمودار نشون می‌ده که وقتی درخواست‌ها زیاد می‌شن، مصرف CPU می‌ره بالا، اما فقط برای یه سرویس خاص.


چرا باید Bottleneck رو پیدا کنی؟


چون بهت می‌گه:

* کجا باید بهینه‌سازی کنی
* کدوم سرویس باید scale بشه
* چه منابعی داری هدر می‌دی

#Bottleneck

@Syntax_fa
Forwarded from Gopher Academy
🔵 عنوان مقاله
Fx 36.0: A Command-Line JSON Processing Tool

🟢 خلاصه مقاله:

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

🟣لینک مقاله:
https://golangweekly.com/link/169225/web


👑 @gopher_academy
Forwarded from Linuxor ?
این فونتو برای کد زدن خیلیا دنبالشن :)

github.com/tonsky/FiraCode

@Linuxor
لیستی از پروژه‌های پیشنهادی GenAI که می‌تونه بهتون کمک کنه رزومه بهتری در این حوزه داشته باشید، از دستش ندید!
https://github.com/aishwaryanr/awesome-generative-ai-guide/blob/main/resources/60_ai_projects.md

@DevTwitter | <Reza Jafari/>
حداقل سیستم مورد نیاز برای Windows 11 :
* 1 GHz or faster with 2+ core 
* 4 GB RAM
* 64+ GB disk space
* TPM 2 must

حداقل سیستم مورد نیاز برای لینوکس :
🔥 برق 😎
@MehrdadLinuxchannel
اگه از hyprland استفاده میکنید، حتما این کانفیگ رو ببینید که میتونه زیباترین و پرکاربرد ترین دسکتاپ عمرتون رو بسازه!
من هرچی خودم کانفیگ کرده بودم ریختم دور...
https://github.com/end-4/dots-hyprland

@DevTwitter | <Mohsen Khodabakhshi/>
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱)
🔶 به نظر می‌رسد بازی‌های سوپرسل مانند کلش آو کلنز از فهرست تحریم‌ها خارج شده‌اند و اکنون با IP ایران قابل اجرا هستند.

#خبر

@TheRaymondDev