تَخطِيط | عنوان | الرابط الثابت | وصف | تاريخ | العلامات |
---|---|---|---|---|---|
بريد | الملف التمهيدي لـ MvvmForms | new-page.html | الملف التمهيدي لنماذج Mvvm | 2015-05-17 16:31:30 -0700 | مففم؛ نماذج ويندوز |
مرحبًا بك في مشروع مكتبة MvvmForms الخاص بـ ActiveDevelop. غرض MvvmForm هو توفير الدعم المتوافق مع XAML ViewModel لمشاريع وحلول Windows Forms Visual Basic وCSharp بما في ذلك دعم WinForms Designer الكامل. MvvmForms مفتوح المصدر (GPL)، لكن بترخيص مزدوج. لمزيد من المعلومات حول ترخيص MvvmForms، اقرأ قسم الترخيص أدناه.
إذا كان لديك بداية نظيفة لمشروعك الجديد، وكان فريق التطوير الخاص بك على مستوى المهمة، فمن المحتمل أنك لا تحتاج إلى MvvmForms. ولكن هذا ليس هو الحال في كثير من الأحيان. في معظم السيناريوهات، تمت كتابة مئات الملايين من أسطر التعليمات البرمجية لمنصة Windows خلال الفترة ما بين 1996 و2010، وغالبًا ما يتم ذلك في CSharp وVisual Basic .NET for Windows Forms، أو حتى في Visual Basic 6. العديد من الشركات لا تفعل ذلك. لديهم الوسائل للتخلص من تلك المشاريع والبدء من الصفر. ولماذا على أي حال؟ الحل الخاص بك يعمل، وهو مستقر وتم اختباره. فلماذا لا تستمر في استخدامه؟
MvvmForms مناسب لك إذا كنت تريد تغيير نموذج التطوير الخاص بك. إذا كنت تريد التخلص من Code Behind وإدخال بنية جيدة مع الفصل بين الاهتمامات. إذا كنت ترغب في البناء بناءً على بنية تسمح باختبار الوحدة. إذا كنت ترغب في إنشاء بنية متعددة المستويات من برنامجك الحالي ببساطة عن طريق إعادة البناء جزءًا تلو الآخر، حيث يمكنك إعادة استخدام أجزاء كبيرة من البرنامج لواجهات مستخدم مختلفة مثل تطبيقات Windows Universal Apps أو تطبيقات iOS أو تطبيقات Android.
شركتنا، التي تقع في ويستفاليا بألمانيا، متخصصة في الانتقال من نموذج Windows Forms Code Behind النموذجي إلى الهندسة المعمارية الحديثة. ونحن نساعد على القيام بذلك بطريقة ممكنة. نحن نعلم أن فريقك ليس لديه الوقت ولا الميزانية للبدء من الصفر، ولهذا السبب قمنا بتطوير MvvmForms: لمساعدة عملائنا على دخول العالم الجديد لتطوير البرمجيات دون تعريض المشروع للخطر.
MvvmForms عبارة عن مجموعة من عناصر التحكم لنماذج Windows. في الأصل، تم تصميمه لتسريع عملية تطوير النماذج ذات البيانات الثقيلة، ولتلبية الحاجة إلى الواجهات الخلفية لقاعدة البيانات مع سيناريوهاتها النموذجية مثل معالجة DBNulls دون أي جهد، ومعالجة النماذج في الحالة القذرة، وتسليط الضوء على التركيز، ومعالجة الصيغ في حقول إدخال البيانات الرقمية، ونوافذ البحث المنبثقة متعددة الخيوط/متعددة الأعمدة لمجموعات تصل إلى 100.000 عنصر، وغير ذلك الكثير. في وقت ما في منتصف عام 2012، اتصلت بنا شركتان ألمانيتان لإيجاد طريقة للاحتفاظ بتصميم Windows Forms الحالي الخاص بهما، ومع ذلك أرادتا أن تكونا قادرين على تطبيق نمط Mvvm على أجزاء من تطبيقات LOB الخاصة بهما، حتى يتمكنوا من إعادة استخدام هذا الرمز في تطبيقات الهاتف المحمول ولأغراض أخرى. كانت تلك بداية MvvmForms، وقمنا بتطويرها من مجموعة الأدوات الموجودة. لقد نجح هذا الأمر بشكل جيد للغاية، لذلك واصلنا هذا النهج وأضفنا وظائف تصميم غنية لمكونات Mvvm.
وبسبب هذا التاريخ، يعالج MvvmForms فعليًا اثنين من متطلبات Windows Forms. الأول هو تبسيط تصميم النماذج كثيفة البيانات من خلال توفير عناصر تحكم مثل NullableDateValue وNullableNumValue وNullableTextValue وعناصر تحكم لمعالجة DirtyState في النماذج وما إلى ذلك.
والثاني هو تمكين نماذج Windows لـ Mvvm. لكي ينتهي هذا الأمر، لا تحتاج إلى استخدام أحد عناصر التحكم التي توفرها MvvmForms، كل ما تحتاجه هو مكون واحد: مكون MvvmManager. في الأساس، فقط اسحب هذا المكون إلى النموذج الخاص بك، وقم بتعيين خاصية DataContextType الخاصة به على نوع ViewModel، الذي تريد ربطه، وسيحصل كل عنصر تحكم في هذا النموذج على خاصية PropertyBindings التي تسمح لك بالربط مع خاصية ViewModel المقابلة. تحتاج فقط إلى تعيين خاصية DataContext لمكون MvvmManager في وقت التشغيل. ستجد دليلًا قصيرًا خطوة بخطوة للبدء، اقرأ الويكي - الروابط موجودة هنا على الجانب الأيمن.
في الأعلى: قم بإلقاء نظرة على هذا الفيديو التعريفي على اليوتيوب، والذي لا يقدم مقدمة عن MvvmForms فحسب، بل أيضًا عن MVVM بشكل عام.
https://www.youtube.com/watch?v=1R_81Np5New
أوه نعم! يعتني فريقنا في ActiveDevelop بـ MvvmForms بشكل يومي، لأن بعض المشاريع الكبيرة في ألمانيا تعتمد على MvvmForms - بعضها أكبر من مليون سطر من التعليمات البرمجية. نظرًا لأننا شركة ألمانية، وقد بدأنا في ترجمة MvvmForms إلى اللغة الإنجليزية، فلا يزال هناك الكثير من التعليقات الألمانية وعلامات XML-Docu داخل المصدر - ولكننا نعمل على ذلك. ولكن، MvvmForms جاهز للاستخدام، فهو مستقر وموثوق وتم اختباره بدقة، وإذا كنت بحاجة إلى دعم خاص أو تريد البدء به بشكل عاجل وتحتاج منا إلى تخصيص وظائفه أو توطينها أو توسيعها، بدلاً من التحدث إلينا ببساطة، لذلك يمكننا إيجاد طريقة لتحقيق ذلك.
نعم، بدون أي قيود. ثلث مشاريعنا الحالية موجودة في CSharp، والباقي نقوم به في VB، وأجزاء من MvvmForms (مكتبة قاعدة Mvvm على سبيل المثال) موجودة في CSharp أيضًا. الأجزاء الأخرى موجودة في VB. لذا، طالما أنك تستخدم Windows Forms، فمن الجيد أن تبدأ - فاللغة لا تهم،
نعم للمشاريع مفتوحة المصدر. بالنسبة للمشاريع التجارية، فهي ليست مجانية تمامًا، ولكنها أيضًا جيدة بقدر ما هي مجانية. هدفنا الأساسي هو إيجاد فرص جديدة للمساعدة في خبرتنا التي تزيد عن 25 عامًا في تصميم تطبيقات LOB، وخاصة لإظهار طريقة لعملائنا لترحيل برامجهم من كونها برامج Win32 كبيرة ومتجانسة إلى نهج حديث بدون مخاطر، حيث يمكنهم المضي قدمًا في استخدام الحوسبة السحابية ونظام التشغيل Windows 10 وتطبيقات الأجهزة المحمولة وكل ذلك دون إعادة كل شيء من الصفر.
لذلك، إذا كنت تريد منا مساعدتك في تطبيقك الحالي من خلال عقد ورش عمل، أو المساعدة في تصميم بنية جديدة، أو إيجاد مفهوم عملي للترحيل، أو تقديم Scrum لفريقك، أو توفير الموارد البشرية لفترة محدودة من الوقت لغرض في عملية التحديث، نأتي بـ MvvmForms. إذًا فهو مجاني لك، لأنك عميلنا. تابع واستخدمه: لقد حصلت على ترخيص ضمني لأي استخدام تجاري، إذا كنت عميلاً لدينا في وقت ما. ومع ذلك، إذا كنت لا تريدنا، ولكنك تريد مجموعة الأدوات، فما عليك سوى التحدث إلينا، وسنكتشف أفضل نموذج دعم لك: [email protected].
إذا كنت تحتفظ بمشروع مفتوح المصدر تحت رخصة GPL، وتريد استخدامه. المضي قدمًا: قم بتقسيمه وتغييره وتعديله وبيعه مع تطبيقك مفتوح المصدر. هذا مفتوح المصدر! طالما أن تطبيقك الذي يرتبط به، أو يستخدم فئات مشتقة من MvvmForms هو أيضًا GPL - فلا بأس بذلك تمامًا. ولكن، إذا كنت تدير حلاً خاصًا وقريب المصدر، وترغب في استخدام (رابط إلى، اشتقاق من) MvvmForms، فيجب عليك الحصول على ترخيص واحد لكل مطور نشط.
نعم. فقط قم بإنشاء طلبات السحب.