Pure Coder
786 subscribers
189 photos
30 videos
8 files
150 links
⭕️آدرس سایت:
https://purecoder.ir

⭕️گروه پرسش و پاسخ:
@purecoder_gp

⭕️پشتیبانی:
@PureCoder_support
@MohammadTaherri
Download Telegram
🔥Fluttery's Journey

😱سفری به اعماق فلاتر

مفهوم Recursive Function رو خوب درک نکردی؟

😍پس حتمن این قسمت دوره رو که رایگان هست رو یه نگاهی بنداز 👇

https://purecoder.ir/fluttery-journystack-and-recursive-function/

🔥خیلی خیلی ساده ولی در عین حال مفهومی برات توضیح میده ...

نگران مثال های ساده نباش چون در ادامه قراره کلی مثال های پیچیده ببینی و با کاربردش توی فلاتر آشنا بشی و تازه اول راهه..
@PureCoder_support
@purecoder_ir
توی ورد انشا بنویسی خیلی بهتر بهت غلط هات رو گزارش میده تا وقتی که داری کد جاوااسکریپت میزنی 🤦‍♂🤦‍♂🤦‍♂🤦‍♂
🔥سرفصل های کلی دوره ی Fluttery's Journey

1️⃣فصل اول

با مباحث بیسیک که foundation ما برای ادامه ی ماجراجویی مون رو بنا میکنن, آشنا میشیم. از جمله :

مفهوم Event Loop در دارت
مفهوم Recursive Function
مفهوم Composite Pattern که توی فلاتر خیلی باهاش کار داریم.

2️⃣فصل دوم

با Dart UI و API های مهمی که در اختیارمون قرار میده به خوبی اشنا میشیم و یه foundation اساسی برای یادگیری سایر مباحث ایجاد میکنیم. اگه مباحث این فصل رو به خوبی بفهمی, ادامه ی ماجرا برات خیلی ساده تر و روون تر میشه. توی این فصل:

با مفهوم فریم (Frame) و چیزایی مثل رفرش ریت و fps به خوبی اشنا میشیم و نحوه ی schedule کردن یه فریم رو یاد میگیریم.

بدون استفاده از ویجت ها و فقط و فقط با استفاده از API ای که Dart UI در اختیارمون میگذاره یه UI ساده میزنیم و جز به جز یادش میگیریم.
پامون رو فراتر میگذاریم و بدون استفاده از Animation ها و فقط با API ای که Dart UI بهمون میده یه انیمیشن ساده میزنیم.
با canvas و operation هایی مثل save و restore با مثال عملی اشنا میشیم.
با Engine layer ها که بخش خیلی مهمی از درک مفاهیم دوره رو تشکیل میدن اشنا میشیم.
با PlatformDispatcher و APi هایی که در اختیارمون میگذاره و همچنین FlutterView آشنا میشیم.


3️⃣فصل سوم

با Widget Tree و Element Tree خیلی ریز ریز اشنا میشیم. توی این فصل:

انواع Widget ها رو میشناسیم.
با کاربرد هر کدوم از ویجت ها آشنا میشیم.
با Element Tree و وظایفی که داره رو به خوبی بررسی میکنیم.
با انواع Element ها آشنا میشیم.
با BuildContext به خوبی اشنا میشیم.
مفهوم InheritedWidget رو بررسی میکنیم.
با Stateful life cycle اشنا میشیم.
با WidgetBinding اشنا میشیم.

4️⃣فصل چهارم

نوبت به Render Tree و Layer Tree و بررسی دقیق اون ها میرسه.
با RenderObject آشنا میشیم.
انواع RenderObject ها رو بررسی میکنیم. (RenderBox و RenderSliver)
با فاز layout و painting به خوبی اشنا میشیم.
نحوه ی size گرفتن
رندرابجکت ها (ویجت ها) رو یاد میگیریم.
و Box protocol رو به خوبی بررسی میکنیم.
با Repaint Boundary و کاربردش اشنا میشیم.
انواع RenderBox رو میشناسیم.
نحوه ی ساخت یه RenderObject از بیس رو خیلی موشکافانه بررسی میکنیم تا یه ویجت کاملن اختصاصی بسازیم.
و...

5️⃣فصل پنجم

با scheduler و Animation ها به خوبی آشنا میشیم.
فازهای مختلفی که یه فریم فلاتری طی میکنه تا به دست یوزر برسه رو بررسی میکنیم. (7 فاز)
سیر و سلوکی که یه انیمیشن طی میکنه رو بررسی میکنیم.
دل و روده ی Animation Controller رو بیرون میریزیم.
با Tween ها اشنا میشیم.
و ...

6️⃣فصل ششم

تعدادی از ویجت های فلاتر رو از سر تا ته تحلیل میکنیم. یعنی چه نوع ویجتی هستن و چه رندرابجکتی دارن و چه اتفاقاتی میوفته و … .

🟢ثبت نام : @purecoder_support

@purecoder_ir
Pure Coder pinned «🔥سرفصل های کلی دوره ی Fluttery's Journey 1️⃣فصل اول با مباحث بیسیک که foundation ما برای ادامه ی ماجراجویی مون رو بنا میکنن, آشنا میشیم. از جمله : مفهوم Event Loop در دارت مفهوم Recursive Function مفهوم Composite Pattern که توی فلاتر خیلی باهاش کار…»
مختصر و مفید ترین مقاله ای که تا حالا دیدم 😂😂

https://martinfowler.com/bliki/HollywoodPrinciple.html

دمش گرم 😁

@purecoder_ir
Forwarded from Persian Flutter (PayamZ)
🚀 مقاله جدیدم رو که در مورد Flutter Form Validation هست رو منتشر کردم! 📝 روش هایی که موجود هستند قابلیت reusability رو ندارن بنابر این من یک راهکار جدید پیشنهاد میدم که شما میتونید اون رو تو پروژه های مختلفتون استافده کنید.

مقاله رو بررسی کنید و یه دستی به سر و روی فرم هاتون بکشید😁

https://medium.com/@payam-zahedi/flutter-form-validation-beyond-basics-76443e768624

#Flutter #dart 💻
🔥Dependency Injection

وقتی از Dependency injection استفاده میکنیم ابجکت های مختلفی که ساخته میشن از نظر life time میتونن یکی از سه حالا زیر رو داشته باشن :

Singleton
Scoped
Transient

پ.ن: این سینگلتون با Singleton pattern فرق میکنه

آیا راجب تفاوت این سه حالت چیزی میدونی ؟

@purecoder_ir
تست نوشتن یا ریفکتور کردن کد چیزی نیست که بگیم بعدن میایم انجام میدیم.

اینکه TDD بریم یا نه یه مساله هست ولی اینکه کلن تست نزنیم و بگیم ۲ ماه دیگه میام و تست های نرم افزار رو میزنم یا اینکه کلن ریفکتور نکنیم و بگیم کد من از اولش کلینه یا دو ماه دیکه میام ریفکتور میکنم، نگرش خوبی نیست 🤦‍♂🤦‍♂🤦‍♂
این بعدن ها هیچ موقع فرا نمیرسه...

از روز اول توسعه باید تست نوشت و از روز اول پروژه باید ریفکتور کرد.

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

فرایند maintain پروژه از روز اول کدنویسی شروع میشه نه بعد از تحویلش به مشتری ...

@purecoder_ir
استراکچر پروژه های من (بکند)

شروع کار در همین حد

Logic
Integration test
Unit test
Rest api (or ...)

به جای rest api هر چیزی میتونه قرار بگیره

شروع پروژه در همین حده و لازم باشه بعدن جداسازی ها بیشتر میشه

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

@purecoder_ir
دورهمی امشب هم برگزار شد خیلی خوب بود موضوع دورهمی بعدی هم مشخص شد که خیلی ها بهش دوستش خواهند داشت
دوره همی ها ما ارائه ای و آموزشی نیست دورهم جمع میشیم و درمورد همچیز گپ میزنیم هرکسی از تجربه خودش میگه
اصل DRY یا Don't Repeat Yourself با اصل Open Closed یه جایی ارتباط تنگاتنگ دارن و دست و در دست هم هستن....اونجایی که هر دو دشمن سرسخت sweeping changes هستن ...یعنی میخوای یه تغییر behavior توی نرم افزار بدی و مجبوری جاهای مختلف رو پشت سر هم تاچ کنی و تغییر بدی تا به هدف مد نظرت برسی ...اینجا این دو تا اصل باهم دیگه دست در دست یکدیگه میدن

@purecoder_ir
توی جاب اینجا از ۳۵۸۶ فرصت شغلی که برای وب، برنامه نویسی و نرم افزار هست، ۲۸۷۰ تاش توی تهرانه.

اختلاف بسیار بسیار بسیار فاحش نسبت به شهر های دیگه.
Pure Coder
توی جاب اینجا از ۳۵۸۶ فرصت شغلی که برای وب، برنامه نویسی و نرم افزار هست، ۲۸۷۰ تاش توی تهرانه. اختلاف بسیار بسیار بسیار فاحش نسبت به شهر های دیگه.
اینجوری شرایط محیطی تاثیر میگذاره روی موفقیت آدم ها

این فقط یک نمونه هست

برای مثال توی همین مورد کسی که به هر دلیلی نتونه مهاجرت کنه (پوزیشن های دورکاری فراوان و دلچسب نیست)، آدم ضعیفی هست که نتونسته مهاجرت کنه ؟

تاکید می‌کنم این فقط یک نمونه هست .

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

چندین سال پیش توی یه شرکت بدرد نخوری برنامه نویس اندروید (جاوا) بودم و هنوز گیت بلد نبودم و یه فولدر توی هاردم درست کرده بودم و ورژن های مختلف آپ رو هی توش کپی میکردم و خیلی هم راضی بودم 😝

یه روز یه بنده خدایی بهم گفت چرا از گیت استفاده نمیکنی و یکم راجبش توضیح داد، تو دلم مسخرش کردم و گفتم چرت و پرت نگو و کاری ک خودم میکنم بهتره😂

تا اینکه چند ماه بعدش خودم رفتم سراغ یادگیری گیت و دیدم چه نفهمی بودم اون موقع 😂🤦‍♂

حالا این حکایت من و خیلی از شماهاست 😁 که خیلی پست هایی که اینجا می‌بیند و حرص میخورم که این مدلی کار نکنید، تهش توی دلتون میگید که داره چرت میگه و من دارم کدمو میزنم و جواب میگیرم 😂

آن شالله روزی سرتون به سنگ بخوره 😂😂

@purecoder_ir
🔥دوره ی Fluttery's journey تا به اینجا 😍😍

برای شرکت در دوره یا سوال و مشاوره یه ایدی زیر پیام بدید:
@purecoder_support
Pure Coder pinned a photo
Forwarded from Fluttery's Journey
خودمون RenderObject ساختیم😍😍
بدون استفاده از کلاس RenderObject فلاتر

از بیس و اختصاصی برای توضیح مفاهیم...

بدون استفاده از ویجت ها و امکانات فریمورک و فقط با api های Dart Ui یه UI و Animation ساده ساختیم.