نلتقي و إياكم أصدقائي في موضوع جديد لدورتنا تحليل و بناء مشروع متكامل على الويب ، قدمنا لك في الثلاث الدروس السابقة ، شرحا لمجموعة من الأشياء ، اهمها كان تعريف لهذه الدورة و النتيجة النهائية التي سنصل إليها عند إكتمال الدورة ، ثم أخذنا بعدها درسا في مفهومي الفكرة و الوعي ، و كيف ان الفكرة القائمة بذاتها و الحصرية قادرة على جعل مشروعك يرضخ أسقف النجاح على عكس الأفكار المبتذلة ، و ناقشنا بعضا من أهم الطرق للحصول على أفكار متجددة دائما ، و راجعنا في الدرس الأخير كيف نحدد تقنيات بناء اي مشروع برمجيا ، و تحديد التكنولوجيات التي ستساعدنا في إنجاز هذه المهمة .
يمكنك دائما متابعة الدروس السابقة من هنا :
- دورة تحليل و بناء مشروع متكامل على الويب [ الدرس الأول ] : الأسباب ، الأهداف و النتائج
- دورة تحليل و بناء مشروع متكامل على الويب [ الدرس الثاني ] : الفكرة و الوعي
- دورة تحليل و بناء مشروع متكامل على الويب [ الدرس الثالث] : تحديد تقنيات بناء المشروع
قبل ان الج في هذا الموضوع ، أود ان اخبركم انه و لهدف تقديم الأفكار بشكل أكثر تمعنا و بطريقة عملية أكثر ، سألنا أصدقائنا على الصفحة على مشاريع مختلفة نستطيع من خلالها تطبيق فكرة مشروعنا ، كانت هناك العديد من الأفكار مثل مواقع إجتماعية و مواقع البيع و الشراء و غيرها ، و الفكرة التي قمن بإختيارها ، هي فكرة " موقع لتقديم الخدمات " ، و سنشتغل عليه من اليوم فصاعدا لتطبيق كل مقالاتنا في هذه الدورة .
ملخص الدرس :
أعلم ان الجميع لا يحب قراءة كل التفاصيل ، و لا يحب ايضا قراءة كل ما جاء في الموضوع و يفضل نسخة مختصرة للموضوع ، لذلك ، اقدم لك نسخة صغيرة مبسطة من الدرس ، في هذا الموضوع سنناقش 5 ادوات برمجية تساعدنا على التجسس على المشاريع المشابهة برمجيا ، لماذا ؟ ببساطة لمعرفة التقنيات الخاصة بهم ، فمعرفة التقنيات التي إستخدمها منافسوك او مواقع مشابهة تعينك كثيرا على إختصار الوقت ، فهم على الأرجح قامو بمجموعة من الدراسات من أجل الخروج بالتقنيات المستخدمة ، و ستقضي انت ايضا اياما للحصول على نتيجة مرضية ، فما رأيك ان تقضي دقائق فقط لتحديد ذلك ؟ هذا ما سنراجعه في هذا الموضوع الى جانب الأدوات التي يتم إستخدامها لهذا الغرض .
- لما يجب التجسس على المشاريع المشابهة برمجيا ؟
قد يتبادر الى ذهنك : " ما الذي يتكلم عنه هذا الأحمق ؟ لما التجسس أصلا ؟ " ، حسنا في الأصل ليس تجسس كامل كما نقول ، يمكنني ان اشرحها لك اننا سنطلع على التقنيات التي تستخدمها المواقع او الخدمات المشابهة لمشروعنا ، إن الشركات الآخرى من أجل إنجاز مشروعها تحتاج الى وقت طويل جدا ، و عامل الوقت محسوم أثناء بناء أي مشروع على الويب ، لذلك التجسس على مشاريع أخرى شبيهة الى حد كبير بمشروعك و معرفة طرق بناءها سيلخص عليك مسار الوقت ، و يقدم لك فكرة عامة عن التقنيات و التكنولوجيات البرمجية التي يجب عليك إستخدامها في مشروعك .
- تقنيات متعارف عليها :
بالتأكيد ليس دائما ستحتاج الى التجسس على تقنيات و مشاريع الآخرين ، فمثلا ، إن كان مشروعك عبارة عن تطبيق أندرويد ، فلا داعي للتجسس على مشاريع اخرى برمجيا لمعرفة تقنيات برمجتها ، فمن المتعارف ان تطبيقات الأندرويد يتم برمجتها بالجافا او كوتلين ، و قواعد البيانات في الغالب MySQL مع الإستعانة مع بعض التقنيات الأخرى إن تطلب الأمر مثل Firebase و غيرها .
لنساعدك على إستيعاب هذا ، نقدم لك صديقي مقالا بعنوان : 8 خطوات لبناء تطبيق اندرويد ناجح إبتداءا من الفكرة الى تسويق التطبيق .
لن نختلف كثيرا ايضا على برامج سطح المكتب ، فأعتقد ان الهدف منها يمكن صناعته بأي تقنية كانت ، سواء الجافا ، بايثون ، سي شارب ، فلا يمكننا ان نقول ان تطبيق او برنامج سطح مكتب مبرمج بالبايثون يقوم بعمل معين على سبيل المثال لا يستطيع السي شارب القيام به ، بل يستطيع ، لذلك ، التجسس على برامج سطح المكتب ربما هو أيضا ليس بخيار حكيم .
العلة و الطامة الكبرى صديقي ، تكمن في المواقع ، لمواقع الويب تقنيات كثيرة جدا ، و من الصعب تحديدها ، و لكل تقنية إمتيازاتها و عيوبها ، فكيف ستكشف عن التقنيات المناسبة لمشروعك البرمجي ؟
لنتجسس عليهم !
بما اننا صديقي إخترنا ان العمل من الآن فصاعدا سيبدأ بتحليل و بناء مشروع خدمات مصغرة على الويب ، فإننا سننطلق من هذه النقطة من أجل تطبيق كل شروحاتنا عليه ، فتابع النقاط التالية :
أولا : علينا تحديد المواقع المشابهة لموقعنا الذي نريد صناعته ، يكفي الولوج الى جوجل و البحث عن " موقع خدمات مصغرة " او " موقع خدمات حرة " ، و لا تنسى أيضا بالإنجليزية ، اي " Freelance Websites " ، و ان تلج الى 3 او 4 مواقع .
ثانيا : وجدت ان المواقع المماثلة و القريبة لمشروعي هي كالتالي : موقع خمسات ، موقع Fiverr ، موقع People Per Hour ، و أيضا موقع Freelancer .
ثالثا : في هذه المرحلة ، سنستخدم مجموعة من الأدوات التي تمكننا من التعرف على كل موقع برمجيا ، دعني أقدم فقرة جديدة أشرح في هذه الأدوات المستخدمة .
الأدوات المستخدمة :
نبدأ و قبل كل شيئ بأداة BuiltWith ، و هو عبارة عن موقع تُدرج فيه رابط المواقع التي تريد معرفة الادوات و التقنيات البرمجة التي تم بواسطتها صناعتها ، إليك نموذج لموقع PeoplePerHour على موقع Builtwith :
نرى ان موقع PeoplePerHour قد إستخدم فريموورك Yii المبني على الـ Php من اجل بناء نفسه ، وهي ليست فكرة سيئة على الإطلاق ، فإستخدام فريموورك او اطار عمل لبناء موقع خدمات امر في محله ، فأولا سيكون محميا ناهيك على سهولة إدارة الموقع ، لذلك ، ربما يكون خيار اطار عمل Yii جيدا لك إن اردت بناء موقع بنفس الفكرة ، يمكنك إما بدئ تعلمه ، او يمكنك الإستعانة بمبرمج ليقوم برمجته لك ( و يكون ضمن فريق عملك بالتأكيد ) .
الاداة الثانية هي إضافة لمتصفح جوجل كروم بإسم Wappalyzer ، و هي إضافة رائعة حقا تُظهر لك أيضا اللغات و التقنيات البرمجية التي تم إستخدامها في برمجة موقع معين ، و سأستخدم الأداة لمعاينة موقع Khamsat ، لتظهر لنا النتيجة التالية :
نجد ان موقع خمسات تم بنائه هو أيضا بإستخدام إطار عمل Ruby on Rails ، بإستخدام سيرفر من نوع Nginx و بعض الأدوات مثل الجيكويري ، و صناعة موقع خدمات بإستخدام Rails ليس بالفكرة الخاطئة أبدا ، صدقني فقد جربت يوما أن اصنعه انا كذلك و نجح الأمر ، الا انني لم انهي المشروع لبعض الأسباب .
- ليس ببعيد عن الإضافة السابقة ، نجد إضافة اخرى شبيه تُدعى What'sRun ، و هي إضافة لمتصفحك تظهر لك التقنيات و الادوات و اللغات البرمجية التي تم إستخدامها لنباء أي مشروع برمجي ، و سأقوم بتجربتها على موقع Fiverr لتظهر لنا النتيجة التالية :
نلاحظ ايضا ان موقع Fiverr تم بناءه بالإعتماد على Ruby on Rails ، و بدا لي هذا الأمر مناسبا حتى الآن كإطار برمجي لبرمجة موقع خدمات كما نريد لمشروعنا .
و أخيرا ، أقترح عليك أيضا اداة Sitestacks ، فهي اداة مثالية أيضا من اجل معرفة التقنيات المستخدمة في اي مشروع على الويب ، و إليك نتيجة التجسس على موقع Freelancer.com :
تم الاعتماد على الكثير من التقنيات بالطبع لبناء الموقع ، لكن ما اثارني هو Magento ، الذي يمكن إستخدامه كتقنية لبناء منصة ECommerce ، و بما ان مشروعنا سيتطلب منا خاصية البيع و الشراء فيمكننا إستغلال هذا الأمر .
إقرأ أيضا : إليك 7 إطارات عمل (Framworks) مخصصة لصناعة المواقع عليك معرفتها
إذن بهذه الطريقة ، تستطيع اختزال الكثير من الوقت و بدئ صناعة مشروعك بلغات برمجية مختلفة و إطارات مختلفة ، بالنسبة لي لهذا المشروع ، ربما سأختار إطار العمل Ruby on Rails لأصنع به المشروع ، يمكنك إما ان تتعلمه ، او يمكنك الإستعانة بأحد في فريق عملك يجيده ( او اكثر من شخص الحقيقة ) .
لمعرفة طرق إستخدام هذه الأدوات ، فقد خصصنا لك الفيديو التالي لنقوم بتجربتها على موقع Fiverr ، تابع الفيديو :
و إليك أخيرا روابط الأدوات المستخدمة :
Builtwith
SiteStacks
Wappalyzer
WhatsRun
نلتقي في الدرس المقبل بإذن الله .
و إليك أخيرا روابط الأدوات المستخدمة :
SiteStacks
Wappalyzer
WhatsRun
نلتقي في الدرس المقبل بإذن الله .
شكرا رضى
ردحذفجميل جداً, مدونة رائعة وسلسلة أيضاً رائعة جداً وسهلة الفهم ... ولكن اتمنى منك يا اخ رضا الاهتمام بالمزيد حول UML فبفهم هذه اللمخططات يستطيع الانسان ببساطة فهم المنطق البرمجي بسرعة أكثر من التطبيق. مشكور مرة ثانية
ردحذفجهودك تستحق الشكر ..
ردحذفشكرا