یکی از بزرگترین چالش های برنامه نویسی اینه که توی جاوااسکریپت this دقیقن به چی اشاره میکنه؟😂😂😂
🤣10👍1
This media is not supported in your browser
VIEW IN TELEGRAM
سیاوش شهشهانی، استاد ریاضی دانشگاه شریف:
واقعن چقدر مهارت کلیدی برای یه توسعه دهنده ی نرم افزاره!
انشا بیشتر از ریاضی به تقویت استدلال کمک میکنه!
واقعن چقدر مهارت کلیدی برای یه توسعه دهنده ی نرم افزاره!
@purecoder_ir
❤10
Pure Coder
سیاوش شهشهانی، استاد ریاضی دانشگاه شریف: انشا بیشتر از ریاضی به تقویت استدلال کمک میکنه! واقعن چقدر مهارت کلیدی برای یه توسعه دهنده ی نرم افزاره! @purecoder_ir
مهارت انشا نوشتن به اون معنا که توی ذهنمونه (انشا های مدرسه) برای توسعه دهنده ی نرم افزار ضروری نیست.
مثل یک نویسنده که خودش رو جای شخصیت های مختلف داستان قرار میده و قصه رو از دید اونها روایت میکنه، یک توسعه دهنده وقتی میتونه استدلال قوی داشته باشه که در درجه ی اول تعامل خوبی با سایر ذینفعان پروژه داشته باشه و در درجه ی دوم بتونه از زاویه ی نگاه اونها جهان رو ببینه و داستان نرم افزار رو روایت کنه.
یک توسعه دهنده هرچقدر هم که مهارت های فنی بالایی داشته باشه و هر چقدر هم که به ابزار های مختلف مسلط باشه، تا وقتی که توی کسب و کار حل نشه و دنیا رو از دید صاحبان کسب و کار تماشا نکنه، نمیتونه نرم افزار خوبی تولید کنه.
مثل یک نویسنده که خودش رو جای شخصیت های مختلف داستان قرار میده و قصه رو از دید اونها روایت میکنه، یک توسعه دهنده وقتی میتونه استدلال قوی داشته باشه که در درجه ی اول تعامل خوبی با سایر ذینفعان پروژه داشته باشه و در درجه ی دوم بتونه از زاویه ی نگاه اونها جهان رو ببینه و داستان نرم افزار رو روایت کنه.
یک توسعه دهنده هرچقدر هم که مهارت های فنی بالایی داشته باشه و هر چقدر هم که به ابزار های مختلف مسلط باشه، تا وقتی که توی کسب و کار حل نشه و دنیا رو از دید صاحبان کسب و کار تماشا نکنه، نمیتونه نرم افزار خوبی تولید کنه.
@purecoder_ir
🔥10👍1
Forwarded from Vania Dart Framework
آموزش ساخت سیستم عضویت ، ورود ، تایید ایمیل با ارسال ایمیل به وسیله فریم ورک وانیا
میتونید ویدیو رو توی یوتیوب مشاهده کنید
https://www.youtube.com/watch?v=8_K-1Cc4ufE
میتونید ویدیو رو توی یوتیوب مشاهده کنید
https://www.youtube.com/watch?v=8_K-1Cc4ufE
YouTube
User Authentication System in Vania (in Persian)
In this video, you’ll learn how to build a complete user authentication system in Vania, including registration, login, and email verification — all explained step by step in Persian (Farsi).
This tutorial covers:
How to set up user registration and login…
This tutorial covers:
How to set up user registration and login…
❤2
🔥Async Queue
✅همون طور که میدونیم صف ها یا Queue ها به صورت FIFO یعنی First in First out کار میکنن و دو متد معروف دارن:
☑️Enqueue
☑️Dequeue
با متد اول یک ایتم رو به ته صف اضافه میکنیم و با متد دوم یک ایتم رو از سر صف یا queue بیرون میکشیم و پردازش میکنیم.
✅کد بالا یک Async Queue هست.
به این صورت که متد Dequeue به حالت async در اومده.
await queue.Dequeue();
در نتیجه اگه ایتمی توی queue باشه, بلافاصله اون رو ریترن میکنه و اگه نباشه, هر موقع که یه ایتم جدید به queue اضافه شد, اون رو بهمون تحویل میده.
🔥به این صورت ترد های مختلف میتونن از این queue استفاده کنن و متد Dequeue رو کال کنن و اون رو await کنن و هر موقع که ایتمی به queue اضافه شد, اون ترد ها به نوبت در صف پردازش قرار میگیرن.
پ.ن: کد به زبان سی شارپ نوشته شده.
@purecoder_ir
✅همون طور که میدونیم صف ها یا Queue ها به صورت FIFO یعنی First in First out کار میکنن و دو متد معروف دارن:
☑️Enqueue
☑️Dequeue
با متد اول یک ایتم رو به ته صف اضافه میکنیم و با متد دوم یک ایتم رو از سر صف یا queue بیرون میکشیم و پردازش میکنیم.
✅کد بالا یک Async Queue هست.
به این صورت که متد Dequeue به حالت async در اومده.
await queue.Dequeue();
در نتیجه اگه ایتمی توی queue باشه, بلافاصله اون رو ریترن میکنه و اگه نباشه, هر موقع که یه ایتم جدید به queue اضافه شد, اون رو بهمون تحویل میده.
🔥به این صورت ترد های مختلف میتونن از این queue استفاده کنن و متد Dequeue رو کال کنن و اون رو await کنن و هر موقع که ایتمی به queue اضافه شد, اون ترد ها به نوبت در صف پردازش قرار میگیرن.
پ.ن: کد به زبان سی شارپ نوشته شده.
@purecoder_ir
🔥4❤2
معماری هایی مثل clean، هگزاگونال، onion در چه مواردی نظر صریح میدن و قانون وضع میکنن؟(میتونی چند مورد رو انتخاب کنی)
Anonymous Poll
63%
Seperation of Concern
25%
Layer Boundaries
29%
تعریف دقیق لایه ها(مثلن اجبارت میکنن که حتمن ۴ لایه داشته باشی )
27%
اجبار به استفاده از پترن های خاص در هر لایه (مثلن ریپوزیتوری )
46%
مدیریت دپندنسی بین لایه ها
🔥5❤1
ایا معماری هایی مثل کلین، هگزاگونال یا onion توانایی سوییچ کردن و تغییر دیتابیس مثل اب خوردن رو بهمون میدن؟ (برای مثال تغییر MySQL به MongoDb) (نظر خودت رو بگو، کوییز نیست!)(فرض بر پیاده سازی درست معماری هست)
Anonymous Poll
59%
آره
41%
نه
🔥4❤1
به طور کلی دامنه ی تغییرات توی کدوم یک از لایه های زیر بیشتره؟(کوییز نیست، نظر و تحلیل خودت رو بگو)
Anonymous Poll
29%
Domain
50%
Application Service (Usecaee)
21%
Infrastructure (Data)
🔥3
آیا اصل Dependency Inversion توی زبان های داینامیک تایپ که چیزی به اسم اینترفیس ندارن هم مطرحه یا این اصل فقط یه مساله مربوط به زبان های استاتیک هست؟
Anonymous Poll
91%
آره، مطرحه و مهمه.
9%
نه، فقط مساله ی زبان های استاتیکه.
🔥3
🔥دارت جدید
🙅♂من نظر خوبی در مورد این ویژگی ندارم.
// Use dot shorthand syntax on enums:
enum Status { none, running, stopped, paused }
Status currentStatus = .running; // Instead of Status.running
// Use dot shorthand syntax on a static method:
int port = .parse('8080'); // Instead of int.parse('8080')
class Point {
final double x, y;
const Point(this.x, this.y);
const Point.origin() : x = 0, y = 0; // Named constructor
// Factory constructor
factory Point.fromList(List<double> list) {
return Point(list[0], list[1]);
}
}
// Use dot shorthand syntax on a named constructor:
Point origin = .origin(); // Instead of Point.origin()
// Use dot shorthand syntax on a factory constructor:
Point p1 = .fromList([1.0, 2.0]); // Instead of Point.fromList([1.0, 2.0])
// Use dot shorthand syntax on a generic class constructor:
List<int> intList = .filled(5, 0); // Instead of List.filled(5, 0)
🙅♂من نظر خوبی در مورد این ویژگی ندارم.
@purecoder_ir
Forwarded from Books & Articles (Mohammad Taheri)
Clean_Code_A_Handbook_of_Agile_Software_Craftsmanship_Second_Edition.pdf
19.4 MB
ویراش دوم کتاب Clean Code.
باب مارتین، ۲۰۲۵.
🔥تغییرات زیادی نسبت به ویرایش اول داشته:
✅از اصول low level کلین کد،
✅تا اصول سالید و،
✅اصول طراحی component ها،
✅معماری کلین،
✅تست،
✅و حتا هوش مصنوعی،
توی این ویرایش صحبت شده.
البته خیلی از این موارد توی ویرایش اول هم بود. ولی خب یه باز طراحی شده.
باب مارتین، ۲۰۲۵.
🔥تغییرات زیادی نسبت به ویرایش اول داشته:
✅از اصول low level کلین کد،
✅تا اصول سالید و،
✅اصول طراحی component ها،
✅معماری کلین،
✅تست،
✅و حتا هوش مصنوعی،
توی این ویرایش صحبت شده.
البته خیلی از این موارد توی ویرایش اول هم بود. ولی خب یه باز طراحی شده.
@purecoder_ir
🔥9❤1
This media is not supported in your browser
VIEW IN TELEGRAM
استفاده از واژه های انگلیسی در گفت و گو های روزمره وقتی که معادل فارسی زیبا داره، خیلی زشته. متاسفانه این زشتی گریبان بیشتر ماها رو گرفته...
@purecoder_ir
❤10👍2👌1