السلام عليكم و رحمة الله تعالى و بركاته اخواني الكرام اسمي رضا و انا من المغرب و اريد البدا فبرمجة الويب فعند البحت حول هذا الموضوع وجدت ان هناك اتجاهين في الويب هما : Back-end و Front-end فوجدت ان Front-end تعني Design عامة ولكن انا لا يعجبني Design و لا اميل اليه ما اميل اليه هو البرمجة فتعمقت ووجدت ان Back-end هو البرمجة في الويب عامة فققررت ان ابدا به و اخربني بعض الاصدقاء ان للبدا في Back-end يجب ان تبدا في Front-end اولا مع العلم اني تعلمت اولا html و اخبروني اخرون للبدا في Back-end يجب تعلم php فهل يمكنني تعلم Back-end دون تعلم Front-end مع العلم اني لا اميل الى Design و لا احبه و لو اردت في Back-end ما هي اللغات التي يجب دراستها لو ممكن اجوبة و شكرا (y)
هل ابدا بال Front-end ام Back-end في الويب ?
عليكم السلام، مرحبا رضا،
على ما أعتقد هناك خطأ في تفسيرك للمصطلحات التي ذكرتها Front-end و Back-end وايضاً Design.
وهذا خطأ شائع جداً، حيث كلمة Design او تصميم في عالم البرمجيات لاتعني الواجهات الرسومية (GUI - Graphical user interface)
التصميم (Software Design) تعني تصميم هيكلة وميكانيكية البرنامج ويدخل من ضمنها تصميم الخوارميات وحالات الاستعمال (use-cases) وتصميم ايضاً الاختبارات. تقريباً معناها أشمل من تصميم الواجهات الرسومية. حتى تصميم الواجهات (Interface Design) بمصطلح اكاديمي لاتعني تصميم الواجهات الرسومية فحسب، أو تصميم الواجهات التي يتعامل معها البشر. هناك تصميم واجهة (Interface Design) لتتعامل مع آله او برمجيات اخرى.
وكذلك Front-end لاتعني تصميم الواجهات فحسب أو الرسومات. فهناك موظفون في شركات تحت مسمى Front-end Developer لا يقومون بعرض سطر. صحيح جزء الـ Front-end مسؤول عن كل مايتعلق بالواجهات الرسومية للمستخدم البشري ولكن لايحصر Front-end بهذا المجال فحسب.
فـ Font-end هو المترجم الوسط بين المصدر والمتلقي. في حالة كان المصدر هو مستخدم بشري يكون المتلقي هو الـ Back-end، فوظيفة Front-end هي ترجمة المدخلات من لغة يفهمها المصدر، الى لغة يفهمها المتلقي.
وفي حالة كان المصدر هو الـ Back-end والمتلقي هو مستخدم بشري فوظيفة Front-end ترجمة معطيات Back-end إلى لغة او طريقة عرض يفهمها المتلقي البشري. لذلك افضل مصطلح يعرف لـ Front-end هو Data representation (معيد شرح البيانات). او Data presentation layer (طبقة شرح البيانات).
هذا في مايخص المفاهيم، أما فيما يهم التعلّم. لغة البرمجة او إطار العمل أمور لاتهم، ولا يهم أيّهما تبداء كونك مبتدئ Front/Back-end أنصحك أن تتابع دورة Playlist في يوتيوب لشخص (يبني برنامج) وتطبّق معه خطوة خطوة وتحل المشاكل. يعني في نهاية الدورة تكون قد انهيت تصميم برمجية. أقصد التعلّم بالعمل.
بعد التطبيق ستتضح لك رؤيا عامة ومفاهيم وأسس مبنية على المنطق البرمجي من خلال هذا الفهم تستطيع التحوّل من لغة الى اخرى، تقنية او اطار عمل الى اخر.
بالتوفيق
شكرا اخي على تفسيرك انا ما قصدته هو اني لا اعشق المجال كالتصميم يعني الالوان , القياسات ..... فما اعشقه هو البرمجة يعني اكواد ك C ..... ليس ك CSS فما اردت طرح سؤال حوله اريد الدخول الى Backend مع العلم اني تعلمت HTML5 هل استطيع بدون تعلم cSS ? مع العلم اني قد اخترت PHP ?
نعم تستطيع، ونصيحتي لك كانت لا تتعلم كل تقنية على حده، تعلم كيف تنشئ منتج كامل من خلال دورة تتابع وتطبّق. بعد ذلك طور مهاراتك كلٍ على حِده.
اقصد (لا تتعلم HTML ثم تتعلم php ثم تتعلم قواعد البيانات مثل MySQL) خذ من كل بحر قطرة من خلال ان تعمل برمجية (تصنع برمجية) ستتعلم من خلالها استخدام كل شيء على حدة. وكيف تفعل ذلك؟
من خلال اتّباع دورات اشخاص قاموا بتصميم مشاريع كامله. من الامثلة على ذلك
وهذا ايضاً
وهذه
الى آخره
التعليقات