Screenshot from 2022-03-04 23-08-47.png
46.9 KB
🔥Challenge
یه ساختاری داریم به شکل بالا.
این ساختار به این شکل هست که یه Map داریم که key های اون String هست و Value ها یا به صورت String هست و یا به صورت یه Map .
و این روند ادامه داره.... هر value میتونه یه String باشه یا خودش یه Map باشه.
🔥مقادیر value ها نباید چیزی غیر از String ویا Map باشن ..
❓❓حالا یه کدی بنویسید که یه Map ورودی با این فرمت (که معلوم نیست این روند تو در تو تا کجا ادامه داره) رو تحلیل کنه اگه یه value پیدا کرد جنسش چیزی غیر از String یا Map بود مقدار false رو برگردونه و اگه تا اخر پیش رفت و همه چیز درست بود مقدار true رو برگردونه.
پ.ن: مقادیر key و value که اینجا نوشتم مثال هست و به این مقادیر توجه نکنید و مهم نیست که چی باشن.
فقط جنس ها مهمه :
Key: String
Value: String or Map
و ساختار توی در تو بودن
#challenge
#dart_challenge
یه ساختاری داریم به شکل بالا.
این ساختار به این شکل هست که یه Map داریم که key های اون String هست و Value ها یا به صورت String هست و یا به صورت یه Map .
و این روند ادامه داره.... هر value میتونه یه String باشه یا خودش یه Map باشه.
🔥مقادیر value ها نباید چیزی غیر از String ویا Map باشن ..
❓❓حالا یه کدی بنویسید که یه Map ورودی با این فرمت (که معلوم نیست این روند تو در تو تا کجا ادامه داره) رو تحلیل کنه اگه یه value پیدا کرد جنسش چیزی غیر از String یا Map بود مقدار false رو برگردونه و اگه تا اخر پیش رفت و همه چیز درست بود مقدار true رو برگردونه.
پ.ن: مقادیر key و value که اینجا نوشتم مثال هست و به این مقادیر توجه نکنید و مهم نیست که چی باشن.
فقط جنس ها مهمه :
Key: String
Value: String or Map
و ساختار توی در تو بودن
#challenge
#dart_challenge
Pure Coder
جواب Challenge
علاوه بر رسیدن به جواب و حل کردن مساله به تمیز نوشتن و خوانا بودن هم دقت کنید
🔥تجربه شخصی و صرفن نظر شخصی خودم :
توی کدهام تا جایی که بتونم از ساختار if...else یا else if استفاده نمیکنم (مگر اینکه مجبور بشم)
و به جاش از if های پشت سر هم استفاده میکنم و به نظرم این باعث خطی شدن ساختار کد و جلوگیری از تو در تو شدنش میشه و باعث میشه کد تمیز تر و خواناتر بشه.
🔥تجربه شخصی و صرفن نظر شخصی خودم :
توی کدهام تا جایی که بتونم از ساختار if...else یا else if استفاده نمیکنم (مگر اینکه مجبور بشم)
و به جاش از if های پشت سر هم استفاده میکنم و به نظرم این باعث خطی شدن ساختار کد و جلوگیری از تو در تو شدنش میشه و باعث میشه کد تمیز تر و خواناتر بشه.
Forwarded from ترفند مدیریت
🔳⭕️نصیحتی که استیو جابز هرگز فراموش نکرد.
🔴اکثر افراد شرکت اپل را برای تعهدش به طراحی زیبا میشناسند، فردی که باید مورد تشکر قرار گیرد، پاول جابز، پدرخواندهی استیو جابز است!
🔴والتر ایزاکسون، زندگینامهنویس جابز، در مصاحبهاش با شبکهی CBS گفت: پاول جابز یک مکانیک فوقالعاده بود. او به پسرش استیو یاد داد که چگونه چیزهای عالی بسازد. آنها روزی در حال ساختن یک حصار بودند. پاول به پسرش گفت: "تو باید پشت حصار را هم به همان خوبی جلوی آن درست و رنگ کنی. هرچند که ممکن است کمتر کسی آنجا را ببیند، اما خودت که میبینی. درست کردن پشت حصار نشان میدهد که تو میتوانی وسایل را کامل و بینقص بسازی."
#استیو_جابز
🔹با ما همراه باشید در:
🌐کانال ترفند مدیریت👇👇
Instagram | Telegram | Linkedin
🔴اکثر افراد شرکت اپل را برای تعهدش به طراحی زیبا میشناسند، فردی که باید مورد تشکر قرار گیرد، پاول جابز، پدرخواندهی استیو جابز است!
🔴والتر ایزاکسون، زندگینامهنویس جابز، در مصاحبهاش با شبکهی CBS گفت: پاول جابز یک مکانیک فوقالعاده بود. او به پسرش استیو یاد داد که چگونه چیزهای عالی بسازد. آنها روزی در حال ساختن یک حصار بودند. پاول به پسرش گفت: "تو باید پشت حصار را هم به همان خوبی جلوی آن درست و رنگ کنی. هرچند که ممکن است کمتر کسی آنجا را ببیند، اما خودت که میبینی. درست کردن پشت حصار نشان میدهد که تو میتوانی وسایل را کامل و بینقص بسازی."
#استیو_جابز
🔹با ما همراه باشید در:
🌐کانال ترفند مدیریت👇👇
Instagram | Telegram | Linkedin
Pure Coder
🔳⭕️نصیحتی که استیو جابز هرگز فراموش نکرد. 🔴اکثر افراد شرکت اپل را برای تعهدش به طراحی زیبا میشناسند، فردی که باید مورد تشکر قرار گیرد، پاول جابز، پدرخواندهی استیو جابز است! 🔴والتر ایزاکسون، زندگینامهنویس جابز، در مصاحبهاش با شبکهی CBS گفت: پاول جابز…
درس برنامه نویسی از پدرخوانده استیو:
اقا کدهایی که مینویسید فقط یه چیزی ننویسید که کار کنه.
فقط کار کردن مهم نیست. ...
جان هر کی دوست دارید تمیز بنویسید..
فکر کنید برای کدی که قراره بنویسید...
همین جوری نرید توی کد و تق تق تق بزنید تو سر کیبرد و کد بزنید و تهشم یه چیزی در بیاد که از اژدهای دوسر ترسناک تر...
قبلش اصن سیستم رو خاموش کنید و بشینید فکر کنید...
اگه نیاره یه کاغذ بذارید جلوتون و فکرتون رو بنویسید ....
خوب فکر کنید و تحلیل کنید و یه چیز تر و تمیز بنویسید و لذت ببرید. ...
اگه لذت نمیبرید این شغل به درد شما نمیخوره...
و اگه خوب کد نمیزنید و هیچ تلاشی برای بهتر شدن و خوب کد زدن نمیکنید یعنی لذت نمیبرید....
اقا کدهایی که مینویسید فقط یه چیزی ننویسید که کار کنه.
فقط کار کردن مهم نیست. ...
جان هر کی دوست دارید تمیز بنویسید..
فکر کنید برای کدی که قراره بنویسید...
همین جوری نرید توی کد و تق تق تق بزنید تو سر کیبرد و کد بزنید و تهشم یه چیزی در بیاد که از اژدهای دوسر ترسناک تر...
قبلش اصن سیستم رو خاموش کنید و بشینید فکر کنید...
اگه نیاره یه کاغذ بذارید جلوتون و فکرتون رو بنویسید ....
خوب فکر کنید و تحلیل کنید و یه چیز تر و تمیز بنویسید و لذت ببرید. ...
اگه لذت نمیبرید این شغل به درد شما نمیخوره...
و اگه خوب کد نمیزنید و هیچ تلاشی برای بهتر شدن و خوب کد زدن نمیکنید یعنی لذت نمیبرید....
Pure Coder
https://github.com/mohammadtaherri/dart_specification
حال نداشتم براش README بنویسم 😅
برید سورس رو بخونید ببینید چیه 😂😂
برید سورس رو بخونید ببینید چیه 😂😂
Pure Coder
https://github.com/mohammadtaherri/dart_specification
بچها این specification pattern هست
تا حالا همتون این رو دیدید که مثلن ی لیست از اطلاعات دارید و داخلش سرچ میکنید (توی دارت where)
مثلن میگید عناصری که فلان ویژگی ها رو دارن رو میخام
یا ی دیتابیس دارین و روش کوئری میزنید
این پترن هم خیلی سادس
ی اینترفیس هست ک ی متد داره
bool isSatisfiedBy(T candidate)
ی ابجکت میگیره و یه شرط رو روش بررسی میکنه که اگه برقرار بود true و اگه نبود false برمیگردونه
حالا برای هر ابجکتی که داریم میتونیم کلاس های spec مختلف تعریف کنیم که هر کدوم ی شرط خاص رو بررسی میکنه و بعد با اپراتور های and و Or و... اون ها رو بهم chain کنیم و ی زنجیره از spec ها بسازیم.
هر کلاس spec یه ویژگی خاص رو بررسی میکنه و با chain کردن کلاس های مختلف بهم با and و Or میتونیم spec های متفاوت ایجاد کنیم.
اگرم نفهمیدید سخت نگیرید 😅 زیاد تلاش نکنید برای فهمیدن
کاربردش که پیش بیاد میفهمید 😅
اگرم کاربردش پیش نیومد که چه بهتر 😂😂
تا حالا همتون این رو دیدید که مثلن ی لیست از اطلاعات دارید و داخلش سرچ میکنید (توی دارت where)
مثلن میگید عناصری که فلان ویژگی ها رو دارن رو میخام
یا ی دیتابیس دارین و روش کوئری میزنید
این پترن هم خیلی سادس
ی اینترفیس هست ک ی متد داره
bool isSatisfiedBy(T candidate)
ی ابجکت میگیره و یه شرط رو روش بررسی میکنه که اگه برقرار بود true و اگه نبود false برمیگردونه
حالا برای هر ابجکتی که داریم میتونیم کلاس های spec مختلف تعریف کنیم که هر کدوم ی شرط خاص رو بررسی میکنه و بعد با اپراتور های and و Or و... اون ها رو بهم chain کنیم و ی زنجیره از spec ها بسازیم.
هر کلاس spec یه ویژگی خاص رو بررسی میکنه و با chain کردن کلاس های مختلف بهم با and و Or میتونیم spec های متفاوت ایجاد کنیم.
اگرم نفهمیدید سخت نگیرید 😅 زیاد تلاش نکنید برای فهمیدن
کاربردش که پیش بیاد میفهمید 😅
اگرم کاربردش پیش نیومد که چه بهتر 😂😂
ان شاالله یه نفر از این جمع به نمایندگی از همه سال ۱۵۰۰ رو هم تجربه کنه 😂😂 و از تکنولوژی های اون زمان به خصوص هوش مصنوعی که دیگه باید به اوج خودش رسیده باشه لذت ببره 😂😂😍😍
از این به بعد به جای اینکه پست آموزشی بذاریم یه سوال یا چالش مطرح میکنیم و با کامنت و بحث کردن راجبش نکات رو یاد میگیریم...
هرچقدر مشارکت شما بیشتر بود نکات بیشتری هم یاد میگیریم...
نظرتون چیه 😉
هرچقدر مشارکت شما بیشتر بود نکات بیشتری هم یاد میگیریم...
نظرتون چیه 😉
این جا چند نفر هستن که میخواستن بلاک رو کار کنن ولی به دلیل سختی یا... هربار قیدشو زدن و دوست دارن که یادش بگیرن...
اعلام حضور کنید که اگه تعداد قابل توجه هست یه برنامه بچینیم که یه چند هفته ای برنامه کانال رو به یادگیری جمعی بلاک اختصاص بدیم...
اعلام حضور کنید که اگه تعداد قابل توجه هست یه برنامه بچینیم که یه چند هفته ای برنامه کانال رو به یادگیری جمعی بلاک اختصاص بدیم...
برای یادگیری بلاک از مثال های سایت بلاک استفاده میکنیم.
چند مثال خوب از سطح خیلی آسون به سمت پیشرفته توی این سایت هست.
از آسون ترین مثال شروع میکنیم و من یه مدت زمانی رو برای خوندن اون مثال به شما میدم.
شما با دقت (چندین بار) مثال رو میخونید و کدش رو میزنید و در نهایت هر اشکال و ابهامی که داشتید توی کامنت های مربوط به اون مثال میپرسید تا تمام نکات و جزییاتش واستون روشن بشه...
اگه با من و طبق برنامه پیش بیاید و خوب وقت بگذارید و هر مثال رو چند بار بخونید، بدون نیاز به هیچ ویدیو و مقاله اضافی و فقط با مثال های سایت بلاک میتونید بلاک رو یاد بگیرید.😍😍😍
چند مثال خوب از سطح خیلی آسون به سمت پیشرفته توی این سایت هست.
از آسون ترین مثال شروع میکنیم و من یه مدت زمانی رو برای خوندن اون مثال به شما میدم.
شما با دقت (چندین بار) مثال رو میخونید و کدش رو میزنید و در نهایت هر اشکال و ابهامی که داشتید توی کامنت های مربوط به اون مثال میپرسید تا تمام نکات و جزییاتش واستون روشن بشه...
اگه با من و طبق برنامه پیش بیاید و خوب وقت بگذارید و هر مثال رو چند بار بخونید، بدون نیاز به هیچ ویدیو و مقاله اضافی و فقط با مثال های سایت بلاک میتونید بلاک رو یاد بگیرید.😍😍😍
Pure Coder
برای یادگیری بلاک از مثال های سایت بلاک استفاده میکنیم. چند مثال خوب از سطح خیلی آسون به سمت پیشرفته توی این سایت هست. از آسون ترین مثال شروع میکنیم و من یه مدت زمانی رو برای خوندن اون مثال به شما میدم. شما با دقت (چندین بار) مثال رو میخونید و کدش رو…
دوستانی که توی پست بالا کامنت گذاشتن و ابراز تمایل به یادگیری بلاک کردن بگن که از چه زمانی اماده ان که با روش ذکر شده کار رو شروع کنیم ...
سعی کنید حتمن توی این چالش شرکت کنید که بلاک رو خوب یاد بگیریم...
پس زمان رو کامنت کنید که یه جمع بندی کنیم.
سعی کنید حتمن توی این چالش شرکت کنید که بلاک رو خوب یاد بگیریم...
پس زمان رو کامنت کنید که یه جمع بندی کنیم.
🔥Challenge
1⃣
BLoC
🔥مثال زیر رو با دقت بخونید و کدش رو بزنید :
https://bloclibrary.dev/#/fluttercountertutorial
🟢تا دوشنبه شب فرصت دارید.
🟢با دقت بخونید (چندین بار)
🟢اگه بار اول متوجه نشدید اشکال نداره، دوباره بخونید...
❓هر سوال و ابهامی داشتید زیر این پست بپرسید..
✅دوستانی که مسلط هستن هم میتونن کمک کنن و پاسخ سوالات رو بدن🙏🙏🙏
⛔️اگه مثال ساده بود وارد مثال های دیگه نشید...
چون بعد از این مثال بلافاصله مثال های دیگه رو کار نمیکنیم و برنامه به شکل دیگه پیش میره.
پس همراه با من پیش بیاید.
1⃣
BLoC
🔥مثال زیر رو با دقت بخونید و کدش رو بزنید :
https://bloclibrary.dev/#/fluttercountertutorial
🟢تا دوشنبه شب فرصت دارید.
🟢با دقت بخونید (چندین بار)
🟢اگه بار اول متوجه نشدید اشکال نداره، دوباره بخونید...
❓هر سوال و ابهامی داشتید زیر این پست بپرسید..
✅دوستانی که مسلط هستن هم میتونن کمک کنن و پاسخ سوالات رو بدن🙏🙏🙏
⛔️اگه مثال ساده بود وارد مثال های دیگه نشید...
چون بعد از این مثال بلافاصله مثال های دیگه رو کار نمیکنیم و برنامه به شکل دیگه پیش میره.
پس همراه با من پیش بیاید.
Bloc
Bloc State Management Library
Official documentation for the bloc state management library. Support for Dart, Flutter, and AngularDart. Includes examples and tutorials.
🔥Challenge
2⃣
BLoC
🔥مثال بالا یعنی پیاده سازی یه counter ساده با بلاک (cubit) رو بدون استفاده از پکیج بلاک و با استفاده از Stream ها انجام بدید ...
🟢مقاله یا ویدیو های مختلفی در این باره هست که میتونید سرچ کنید و ازش الگو بگیرید...
❓در نهایت هرکس مثال رو انجام داد روش کارشو به صورت خلاصه شرح بده و بگه که چطور با استفاده از Stream و بدون پکیج این مثال رو پیاده کرده.
2⃣
BLoC
🔥مثال بالا یعنی پیاده سازی یه counter ساده با بلاک (cubit) رو بدون استفاده از پکیج بلاک و با استفاده از Stream ها انجام بدید ...
🟢مقاله یا ویدیو های مختلفی در این باره هست که میتونید سرچ کنید و ازش الگو بگیرید...
❓در نهایت هرکس مثال رو انجام داد روش کارشو به صورت خلاصه شرح بده و بگه که چطور با استفاده از Stream و بدون پکیج این مثال رو پیاده کرده.