بالتأكيد سمع الكثيرون عن مفهوم MVP (منتج
ويكي الحد الأدنى القابل للحياة). هناك الكثير من المقالات حول MVP على MVP ، لكنها في الأساس إما مجرد وصف لما هو MVP وما هو من أجله ، أو نجاح مختلف وليس قصة. لكنني لم أجد مقالًا واحدًا يصف ما تفعله MVP. لكن يُعتقد أن المدونات الشخصية أسهل في القيام بها على محرك واحد ، والمتاجر عبر الإنترنت على محرك آخر ، إلخ. (كل سوف يحل محل اسمه للمحرك المفضل لهذه الأغراض). ولكن لماذا إذن لم يتم تعريف محرك أكثر ملاءمة لـ MVP؟ لن أقدم إجابة واضحة على هذا السؤال ، لكنني سأشارك أفكاري حول ما هو بالضبط من أجل إنشاء MVP. إن جهاز Prisma CMS الخاص بي جيد ، والذي
كتبت عنه قبل بضعة أشهر. من يهتم ، من فضلك ، تحت القط.
ومن المثير للاهتمام ، على العموم ، يمكن مقارنة MVP إلى
ويكي النماذج المتقدمة. في الوقت نفسه ، هناك برنامج خاص للنماذج الأولية ، وحتى ذات مرة استخدمت نفس المحور. ولكن ما الذي كان مفقودًا من Axure ولماذا تركته على الفور؟ (لا أعرف ، ربما أصبح الآن أكثر تقدمًا وتم حل هذه المشكلات ، لكن لم يكن هناك حل في ذلك الوقت).
- لا يوجد عمل مع البيانات الحقيقية. بمعنى ، لدي قسم المستخدمون في النموذج الأولي ، لكن لا يمكنني الحصول على بيانات المستخدم عبر واجهة برمجة التطبيقات وعرضها في حلقة في القالب الخاص بي. وبالفعل ، من حيث المبدأ ، لا توجد طريقة للعمل مع البيانات الحقيقية (إنشاء سجلات ، قراءتها).
- مع مرور مرحلة النماذج الأولية والانتقال مباشرة إلى التطوير ، لا يمكنك استخدام القوالب التي تم إنشاؤها في النموذج الأولي. أي أنه بعد إنشاء النموذج الأولي والاتفاق عليه مع العميل ، وعندما تحولنا إلى البرمجة ، يمكننا فقط أن ننظر إلى النموذج الأولي بأعيننا ، ولا يمكن فعل شيء أكثر به. ولذا أردت رمي نموذج أولي ثم استخدامه في التطوير.
لا تزال هناك لحظات ، ولكن هذين هما الأكثر أهمية. اتضح أن مراحل النماذج الأولية والبرمجة عاشت حياتها المستقلة ولم تؤثر على بعضها البعض بأي طريقة. لكنني أود أن تنتقل مرحلة النماذج الأولية بسلاسة مباشرة إلى البرمجة. وفي إطار المقالة الحالية ، يمكن للمرء أن يقترح أن النماذج الأولية تتدفق إلى إنشاء MVP ، ومن ثم ، إذا نجحت ، يمكن تطوير MVP إلى المنتج النهائي الكامل. في الواقع ، إذا كنت تعتقد ذلك ، فإن إنشاء MVP لا يضمن دائمًا أنه في المستقبل سيكون هناك منتج أكثر اكتمالا. بعد كل شيء ، ما هي الفائدة من إنشاء MVP؟ أولاً ، إدراك الفكرة بأقل تكلفة ، بحيث يمكنك تجربتها في العمل ، وثانياً ، دراسة الطلب وتحديد ما إذا كان الأمر يستحق الاستثمار وتطويره لمنتج متكامل. وهكذا اتضح أننا بحاجة إلى أداة تسمح لنا بإنشاء نماذج أولية / MVP بسرعة ، ومن ناحية أخرى ، إذا نجحت MVP ، فيمكننا تطوير المشروع بشكل أكبر دون أي قيود خاصة.
في الواقع ، عند النظر إلى Prisma CMS ، أرى فقط مثل هذا المحرك. هناك الكثير ليرمي بسرعة مشروع المشروع:
- يتم تنفيذ جميع الأعمال تقريبًا في المقدمة من خلال محرر WYSIWYG للواجهة الأمامية.
- يتم تنفيذ عناوين URL على جهاز توجيه التفاعل ، والذي يسمح أيضًا بكتابة العناوين مباشرة في المقدمة في المحرر ، وليس على الخادم.
- يتم تطبيق API في GraphQL ، والذي يسمح لك بكتابة الاستعلامات في المقدمة ، وليس على الخادم. في الوقت نفسه ، تم دمج Graph i QL ، مما يبسط عملية كتابة الاستعلامات.
- بالإضافة إلى ذلك ، هناك عوامل تصفية تم إنشاؤها وصفحات تلو الأخرى وكعكات مفيدة أخرى.
وكل هذا مفتوح المصدر ، أي أنه ليس SaaS ، الذي يتعين عليك دفعه باستمرار (دون أن يكون لديك كل شيء تحت تصرفك). يمكن نشر ذلك على الخادم الخاص بك وتخصيصه لنفسك.
قبل أن أصف عملية تثبيته على الخادم الخاص بي وعمليات التخصيص ، أقترح أن تنظر في تسجيل عملية إنشاء قسم منفصل على الموقع. تستغرق 15 دقيقة تقريبًا ، لكن انظر إلى الدقائق الأربع الأولى ، فهذا أكثر من كافٍ للحصول على فكرة عن Prisma CMS ، وإذا كان هناك اهتمام ، فانتقل إلى قراءة الموضوع ، أو ربما حاول نشر المحرك في المنزل.
لذلك ، قم بتثبيت Prisma CMS على الخادم (أستخدم ubuntu ، ويفضل أن يكون ذلك على الأقل بسعة 4 جيجابايت من ذاكرة الوصول العشوائي و SSD)
من المفترض أن تكون معتادًا بالفعل على العقدة js و npm / yarn والتفاعل و graphql.1. تثبيت البرنامج اللازم
إذا تم إدراج كل شيء مرة واحدة في الجهاز ، فقد ينهار التنفيذ ، لذلك من الأفضل تنفيذ سطرا بسطر.هذا هو الحد الأدنى من التثبيت دون أي إعدادات مستوى الوصول ، وما إلى ذلك ، فقط لأغراض إعلامية ، أي إذا حاولت على خادم نظيف جديد ، فسيتم كل شيء من الجذر (بما في ذلك إطلاق الموقع). لتجربتنا ، هذا ليس مهما على الإطلاق.
sudo apt update sudo apt install mc sudo apt install git curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt-get install -y nodejs sudo npm i -g yarn sudo apt-get install software-properties-common python-software-properties sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main' sudo apt-get update sudo apt-get install -y docker-engine sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
2. استنساخ مستودع
mkdir /var/www cd /var/www git clone https://github.com/prisma-cms/boilerplate cd boilerplate yarn --ignore-engines
3. قم بتشغيل حاويات الإرساء باستخدام MySQL و prisma (prisma هو منتج منفصل ، وليس لي ، ولكن مع اتصال جانب الخادم بقوة ، انظر
github.com/prisma/prisma ).
sudo docker-compose -f src/server/scripts/docker/prisma/docker-compose.yml up -d
إذا كنت تريد البحث في قاعدة البيانات من خلال phpMyAdmin ، فقم بتثبيته أيضًا.
sudo docker run -d --link prisma_mysql_1:db --network prisma_default -p 8090:80 phpmyadmin/phpmyadmin
سيتم تعليقه على المنفذ 8090. بشكل افتراضي ، اسم المستخدم / كلمة المرور هي الجذر / المنشور
4. نشر مخطط
endpoint=http://localhost:4466/my-project/dev yarn deploy
my-project / dev ، على التوالي ، يمكنك كتابة مشاريعك وإنشاء العديد من المشاريع على نفس الخادم.
! المهم عند الإنتاج ، يجب إغلاق المنفذ 4466 بواسطة جدار حماية ، ويجب ألا يكون الوصول إليه مباشرًا من الخارج.5. قم بتشغيل خادم API
APP_SECRET=MyStrongSecret endpoint=http://localhost:4466/my-project/dev yarn start-server
بعد البدء ، يمكنك فتح
server-ip : 4000 API.
كما كتبت في مقالة سابقة ، هذا هو خادم وسيط ينفذ منطقك الخاص أعلى من الذي تم إنشاؤه (والذي يعمل على المنفذ 4466).
6. إطلاق الجبهة
نفتح محطة واحدة أخرى وفي نفس المجلد ننفذ
yarn start
ستبدأ الواجهة على المنفذ 3000. يمكنك الآن الانتقال مباشرة إلى "البرمجة" في المقدمة. فتح
خادم الملكية الفكرية : 3000. عند الدخول ، على الرغم من عدم وجود قالب واحد محفوظ للجبهة ، فسيتم عرض زر تفويض لك. المنطق هو التسجيل وبدء تصميم الموقع. من هو الأول - موقع وأول
حذاء رياضة . هذا ما يبدو عليه:
7. أنشئ نصوصًا وقم بتشغيل SSR (عرض جانب الخادم)
البدء من خلال بدء الغزل هو وضع مطور ، ومناسب للبداية الأولى (التحقق من أن كل شيء يعمل) وللبرمجة الجزء JS مباشرة. وبالنسبة للمعركة ، بالطبع ، هناك حاجة إلى جبهة جمعت. بدء تشغيل غزل بدء عبر Ctrl + C وإنشاء البرامج النصية.
yarn build
يمكنك أن تدخن وتصب القهوة ، هذه العملية ليست سريعة. في حالات نادرة ، ينهار المبنى في المرة الأولى ، فقط قم بتشغيله مرة أخرى ، وفي هذه الحالة ، يكتمل بنجاح وأسرع بكثير.
عند انتهاء المبنى ، قم بتشغيل الواجهة المجمعة.
yarn start-ssr
الآن أصبح الإطلاق أسرع بكثير ، والبرامج النصية أصغر.
استنتاج
يُظهر الفيديو أنه في الأماكن توجد مشكلات كبيرة جدًا في قابلية الاستخدام ، لكن المشروع ما زال قيد التطوير ، يتم التخلص تدريجياً من هذه المشكلات. ولكن يمكن فعل الكثير في المقدمة. لا يزال يتعين القيام بعملية تنظيف خطيرة للشفرة المصدرية ، حيث تراكمت الكثير من كل ما هو غير مطلوب بالفعل بالفعل ، ولكنه يمتد ببساطة كإرث. نتيجة لذلك ، يجب أن تكون الجبهة أسهل بكثير. وسيتم تجميعها بشكل أسرع ، وتحميل الصفحة بسرعة أكبر.
في أي حال ، أكرر ، في رأيي ، كيف يمكن أن يكون محرك MVP مناسبًا تمامًا - رمي بسرعة شيئًا ما وإظهار العميل. علاوة على ذلك ، إذا واصلنا تطوير المنتج النهائي ، حتى لو لم تكن الشركة راضية ، فيمكننا إزالته بالكامل وإعادة كتابته بطريقتنا الخاصة ، في حين أن قاعدة البيانات وخادم الخادم لن يذهبا إلى أي مكان. بعد كل شيء ، هذا هو مقطوعة الرأس سم. لكنني آمل أنه بمرور الوقت ، سيتم رفع الجبهة إلى مستوى مقبول تمامًا.
إذا كان المجتمع مهتمًا ، فسنقوم بكتابة موضوعات منفصلة حول كيفية تخصيص الواجهة (إضافة الكتل الخاصة بالمحرر الأمامي) وكيفية تخصيص الخادم (توسيع المخطط ، إضافة الكيانات الخاصة بك ، إضافة أدوات حل ، إلخ). لقد تم بالفعل وضع الكثير من الأدوات لإكمال هذه المهام بسرعة.
مصادر المشروعشكرا لكم جميعا على اهتمامكم!