ما معنى Full Stack Developer

كتب في 26 يونيو 2019 | المشاهدات 9226
المعنى الحرفي لكلمة Stack هو كومة من الأشياء والمقصود هنا انك ستحمل مسؤولية كل شيء في المشروع وسوف نشرح الآن كل شيء في المشروع والمتطلبات ومعلومات عن الوظيفة.

لدينا في أي مشروع 3 طبقات هم مكونات المشروع.
– Presentation Layer
– Business Logic Layer
– Database Layer

ال Presentation Layer هو الجزء الظاهر من المشروع ويطلق عليه كما يقول الاوروبيين The Visible Part
ال Business Layer + Database Layer هو الجزء المخفي الذي لا يراه الناس ويمكن أن نطلق عليه Under The Hood

Presentation Layer

هو الجزء الخاص بال Front-End Developer والذي يتعامل فيه مع ال User Interface والجزء الذي يراه زائر الموقع ويحتاج للتقنيات التالية حتى يستطيع عمل هذا الجزء. وهذه بعض المعلومات البسيطة عن كل تقنية ولغة.

Html

حتى تستطيع عمل بنية الصفحة الأساسية Markup

Css

لتتمكن من التعامل مع الألوان والخطوط وال Visuals بصفة عامة

JavaScript

حتى تستطيع عمل الجزء ال Interactive وال Calculation وكتابة ال Logic

Pugjs

أو أي Template Engine آخر لتوفير الوقت كتابة أكواد ال Html وتستفيد بقوة ال JavaScript في كتابة ال Templates

Sass

أو أي PreProcessor آخر لتوفير الوقت في كتابة أكواد Css والإستفادة بقوة لغات البرمجة وللحصول على كود منظم أكثر.

JavaScript Framework

اطار عمل من الموجودين على الساحة وأشهرهم ( Angular, React, Vue ) مع المكتبات والإضافات المتاحة لكل اطار عمل مثل Redux, NuxtJs

jQuery

مكتبة تساعدك وتوفر عليك الكثير من الأمور وفي حالة اخترت اطار عمل معين من النقطة السابقة يمكن الإستغناء عنها.

Gulp

أو أي Task Runner آخر يقوم بتوفير الوقت ويقوم بعمل المهام التي تقوم بعملها يوميا في عملك ويجعل تركيزك فقط على كتابة الكود.

JSON

ال JavaScript Object Notation لتتعلم كيفية التعامل مع البيانات وال APIs الموجودة في المشروع.

Jest

أو أي Testing Framework آخر لتقوم يعمل ال Unit Testing

Business Logic Layer

هو الجزء الخاص بال Back-End Developer والذي يتعامل فيه مع البيانات وال Validation وبناء ال Services والبنية الخاص بالنظام وكل ما يخص ال Logic وفي هذا المسار هناك الكثير من لغات البرمجة وفيما يلي بعضها .

لغة PHP مع ( YII, Laravel, Symphony )

لغة Python مع ( Django )

لغة Java مع ( Spring )

لغة Ruby مع ( ROR )

لغة C# مع ( .NET )

بيئة Nodejs مع ( Express )

Database Layer

هو الجزء الخاص بالتعامل مع قواعد البيانات من انشاء وتعديل وعمل Tweaks وتحسين أداء ال Queries وهناك الكثير من قواعد البيانات التي يمكنك العمل عليها مثل:

MySQL

SQLServer

Oracle

MongoDB

بعض التقنيات الواجب تعلمها

Git & Github

GraphQL

Rest API

Linux

Command Line

بعض المهارات الواجب تعلمها

– التفكير المنطقي
– مهارات التواصل
– الإبداع
– إدارة الوقت
في النهاية هذا المسمى عند الكثير له الكثير من المعاني وهناك من يضيف عليه مهارات وتقنيات أخرى مثل ال إدارة المشاريع وال System Administration وال Network وتختلف من بلد لبلد ومن شركة لشركة أخرى ولكن يبقى المعنى واضحا وهو أنك تقوم بالمشروع كاملا وحدك.

بعض مميزات الوظيفة للشركات

– الشركة تقوم بتعيين موظف واحد بدل إثنين
– الشركة تتعامل مع شخص واحد فقط في الطلبات
– مستوى الكود والعمل يكون واحد بسبب أنه شخص واحد وليس فريق ولا يحتاج ليكونوا Aligned في طريقة العمل وال Standard في كتابة الكود.
– يمكن أن ينتقل من مجال للآخر ويتخصص فيه سريعا لأنه يعمل في المجالين.

بعض عيوب الوظيفة للشركات

– أحيانا تحتاج الشركة لشخص متخصص بشدة في مجاله وهنا يمكن الشخص المختص في وظيفة واحدة أن يكون مستواه أعلى من المختص في مجالين.
– يمكن أن يكون هناك خطورة في إتخاذ القرار لأنه يتم أخذه من شخص واحد لأنه يقوم بكل شيء بعكس لو كان فريق من شخصين ويتناقشوا فيما بينهم.
– إذا كنت تبحث عن السرعة فإن شخص واحد يعمل ليس كشخصين يعملون سويا فيمكن أن يوفروا نصف الوقت تقريبا.

تلخيص الوظيفتين الذي يقوم بعملهم ال Full Stack

Front-End Developer

هو الذي يقوم ببناء الصفحة وتنسيقها ويتعامل مع ال Ajax Call وهو الذي يقوم بتعديل الصور وكتابة ال Logic وهو الذي يقوم بعمل كل ما يخص ال Accessibility وحل مشاكل المتصفحات المختلفة وهو الذي يقوم بعمل ال Test الخاص بالتصميم وال Test الخاص بال Logic وهو الذي يكتب ال Docs الخاصة بالتصميم وهو المسؤول عن النقاش مع ال UI/UX بخصوص التصميم وهو الذي يقوم بتحسين المحتوى لصداقة محركات البحث.

Back-End Developer

هو الذي يقوم ببناء البنية البرمجية والبنية والإعدادات الخاصة بال Server وهو الذي يقوم ببناء قاعدة البيانات والعلاقات بين الجداول وهو الذي يقوم ببناء ال Services وال APIs وهو الذي يقوم بالتحسينات والأداء الخاص بالعمل وهو الذي يتعامل مع الحماية والنسخ الإحتياطية للمشروع.

الكلمات الدلالية:

الإعلانات


مقتطفات عشوائية من القسم

مواقع لتجربة الأكواد بدون محرر

مجموعة مواقع على الإنترنت تتيح لك تجربة الكود الخاص بك بدون الحاجة لأي محرر أكواد وفيها الكثير من لغات البرمجة …

هل أتعلم التصميم في وجود موقع مثل Wix

الكثير من الناس عندما ترى موقع مثل Wix والمواقع الشبيهة التي تقوم بتصميم موقع سريع مشكلة لهم أثناء التعليم ويسألون …

مواقع مفيدة لك كمصمم او مطور ويب

هذه قائمة بالمواقع الهامة التي يجب عليك متابعتها سواء كنت مصمم او مطور حتى تستفيد بالأسرار الموجودة فيها وتتابع تطور …


User Avatar

Osama Mohamed ( )

مدرب لغات برمجة ومدون تقني ومؤسس قناة الزيرو ويب سكول أقوم بتبسيط كل ما هو معقد بفضل من الله


3 تعليقات


أضف تعليقك