عن ماذا يتحدث؟

5.0 version
Maintained

عن ماذا يتحدث؟

يعتبر سيموفوني واحد من انجح مشاريع ال PHP. حيث انه اطار قوي متكامل يحتوي علي مجموعة من المكونات التي يمكن اعادة استخدامها.

ربما قد وصل هذا المشروع لمرحلة النضج مع صدور النسخة الخامسة. مع تقديم مكونات منخفضة المستوي (قريبة من نظم التشغيل) وقابلية الدمج او التكامل مع برامج اخري وايضا تقديم بعض الادوات التي تساعد المطورين علي تحسين انتاجيتهم ، اشعر ان كل شئ فعلناه خلال الخمس سنوات الماضية قد اجتمع بشكل رائع. لقد تطورت خبرة المطور بشكل ملحوظ بدون التضحية بالمرونة في العمل. لم يكن استخدام سيمفوني لعمل مشروع امرا ممتعا ابدا من قبل.

إذا كان سيموفني Symfony جديد بالنسبة لك، فمع قدوم الاصدار الخامس Symfony 5 انه الوقت المناسب لتتعلم كيف تطور برنامج خطوة بخطوة. هذا الكتاب يظهر للمطورين قوة إطار العمل (The Framework) وكيف يستطيع ان يحسن من انتاجيتهم.

اذا كنت مطور سيمفوني Symfony بالفعل، فيمكنك اعادة اكتشافه. خلال السنوات القليلة الماضية قد تطور إطار العمل (The Framework) بشكل كبير وتحسنت خبرات المطورين بشكل ملحوظ. لدي شعور بان العديد من مطوري سيمفوني Symfony مازالوا عالقين مع عادات قديمة وانهم يواجهون صعوبة في تبني طرق جديدة لتطوير التطبيقات مع سيمفوني Symfony. استطيع ان اتفهم بعض هذه الاسباب. فان سرعة التطور مذهلة. عندما يعمل المطورين بصورة دائمة علي مشروع معين، فانهم لا يجدون الوقت ليتابعوا كل ما يجري في المجتمع. انا اعرف هذا عن كثب لا يمكنني التظاهر بانني يمكنني متابعة كل شئ. بل علي العكس من ذلك.

ولا يقتصر الامر فقط علي عمل الامور بطرق جديدة. بل انه يتعلق ايضا بالمكونات الجديدة: HTTP client, Mailer, Workflow, Messenger. إنهم مغيرون للعبة و يجب أن يغيروا طريقة تفكيرك عن سيمفوني Symfony.

أنا ايضا اشعر بالحاجة لكتاب جديد بما أن الانترنت (Web) تطور بشكل كبير. مواضيع جديدة مثل: APIs, SPAs, containerization, Continuous Deployment, واخرين اكثر من ذلك يجب مناقشتها الآن.

ان وقتك ثمين، لذلك لا تتوقع فقرات طويلة، او شرح طويل عن المفاهيم الأساسية. فالكتاب بشكل كبير عن الرحلة. من أين تبدأ. أي كود Code يُكتب. متي. كيف. سأحاول إثارة بعض الاهتمام علي مواضيع مهمة واتركك تقرر إذا كنت تريد تعلم المزيد والتعمق اكثر.

أنا ايضاً لا أريد تكرار المراجع الموجودة. فجودتها ممتازة. سوف أشير لهذه المراجع بغزارة في قسم "المضي قدماً" في نهاية كل خطوة او فصل. إعتبر هذا الكتاب كقائمة من المؤشرات لكثير من المراجع.

يشرح الكتاب إنشاء تطبيق، من الصفر حتي الانتاج. ومع ذلك لن نطور كل شئ لجعله جاهز للانتاج. النتيجة لن تكون مثالية. سوف نأخذ طرق مختصرة. قد نتخطي حتي عن حل بعض الحالات الحرجة (edge-case)، او التحقق من صحة البيانات او اجراء الاختبارات (validation or tests). لن يتم احترام أفضل الممارسات Best practices طوال الوقت. ولكننا سوف نتطرق إلي كل جانب تقريبا من مشروع سيمفوني Symfony الحديث.

أثناء بداية العمل علي هذا الكتاب، اول شئ فعلته كان كتابة التطبيق النهائي. لقد اندهشت من النتيجة والسرعة التي تمكنت من الحفاط عليها أثناء إضافة مميزات (Features)، مع قدر قليل جدا من المجهود. هذا طبعا بفضل المراجع وحقيقة ان سيمفوني ٥ Symfony 5 يعلم كيف يبتعد عن طريقك. أنا اعلم بأن سيمفوني Symfony يمكن أن يتحسن بطرق عديدة (ولقد قمت بتدوين بعض الملاحظات عن تحسينات محتملة)، ولكن تجربة المطور أحسن بكثير من بعض سنوات قد مضت. أريد أن اخبر العالم عنها.

ينقسم الكتاب إلى خطوات. وتنقسم كل خطوة إلي خطوات فرعية. ينبغي أن يتم قرائتهم بسرعة. ولكن الاكثر أهمية، أدعوك لتقوم بكتابة الكود (code) وأنت تقرأ. إكتبه، واختبره (جربه)، إنشره (deploy it)، عدله وتلاعب به.

وأخيراً وليس أخراً، لا تتردد في طلب المساعدة اذا واجتهك مشكلة. قد تصل إلي حالة طرفية (edge-case) أو خطئ مطبعي في الكود الذي كتبته ويكون من الصعب إيجاده وحله. إطرح أسئلتك. لدينا مجتمع رائع علي Slack و Stack Overflow.

هل أنت جاهز للبرمجة؟ إستمتع!


This work, including the code samples, is licensed under a Creative Commons BY-NC-SA 4.0 license.