
- بواسطة x32x01 ||
لما تعديل بسيط يتحول لكارثة: حلّها مع FVM!
تخيل معايا الموقف ده...إنت قاعد في مكتبك، مبسوط بكوباية الشاي الصبح، وفجأة يرن الموبايل:
"يا هندسة، فاكر التطبيق اللي عملناه من سنة؟ محتاج تعديل بسيط جدًا، زرار صغير مش هياخد أكتر من ساعة!"
تبتسم بثقة وتقول: "تمام، سهلة جدًا!"
تفتح المشروع وتبدأ بـ
flutter run
…وفجأة الكوارث تبدأ

الـ packages مش شغالة، والـ SDK مش متوافق، وكل حاجة بايظة!
الساعة اللي كنت داخل فيها بثقة بقت كابوس!
الحل الأول: "حدّث التطبيق وخلاص!"
فكرت تقول: "ما أنا أحدث المشروع وخلاص!"بس هنا لازم توقف لحظة، لأن التحديث ممكن يفتح عليك باب مشاكل جديدة

1- تعارض مع Packages قديمة:
بعض المكتبات القديمة مش بتشتغل مع Flutter الحديث. يعني لازم تدور على بدائل أو تغير الكود.
2- مكتبات بتتعارض مع بعض:
بعد التحديث ممكن تلاقي مكتبتين مش متوافقين. لازم تجرب نسخ مختلفة عشان الدنيا تمشي.
3- تغييرات في الكود نفسه:
الـ SDK الجديد ممكن يشيل دوال أو يغير طريقة الاستخدام، وساعتها هتضطر تعدل على أجزاء كبيرة من المشروع.
يعني بدل ما تخلص في ساعة... ممكن تفضل يومين بتحاول تخلي الكود يشتغل!
الحل الثاني: الطريقة القديمة جدًا
الطريقة دي كلنا جربناها قبل كده:
"أرجع أستخدم النسخة القديمة وخلاص."
الخطوات كالتالي:

pubspec.yaml
وتشوف المشروع كان على أنهي نسخة.


بس... كل ده علشان تعديل صغير؟
العميل نفسه لو شاف اللي بتعمله هيقولك:
"مش كان أسهل تقول لأ من الأول؟"

الحل الثالث: السحر اسمه FVM
وهنا يظهر البطل الحقيقي: FVM (Flutter Version Management)
أداة بسيطة جدًا، لكن بتغيّر اللعبة.
بدل ما تقعد تنزل وتبدل بين نسخ Flutter، FVM بيخليك تدير النسخ كلها بسهولة.
يعني كل مشروع ممكن يشتغل على نسخته الخاصة من غير ما تلخبط بيئة جهازك!
الخطوات السحرية:

Code:
dart pub global activate fvm

Code:
fvm use 2.2.3

Code:
fvm flutter run
وخلاص! المشروع القديم هيشتغل كأنه لسه معمول الأسبوع اللي فات

ولا وجع دماغ، ولا تعديل PATH، ولا مشاكل SDK.
هل التحديث فكرة سيئة؟
بالعكس! التحديث ممتاز، بس لازم يكون في الوقت المناسب.حدث المشروع لو:


بس لو مجرد تعديل صغير... FVM هي الحل الأسرع والأذكى

نصايح ذهبية قبل ما تحدّث
لو قررت تحدث المشروع فعلًا، خليك منظم:

Code:
flutter pub upgrade --major-versions


الخلاصة
مش كل تعديل بسيط محتاج تحديث كامل!قبل ما تدخل نفسك في دوامة الـ SDK والـ Packages، جرب FVM.
هتوفر وقتك، وهتشتغل براحة، وهتخلي العميل ينبهر من السرعة والاحترافية.
في النهاية... التحديث مش وحش، بس لازم يكون بحساب!

التعديل الأخير: