اذهب إلى المحتوى
  • 0

ما هي computer hardware architecture ولماذا ينبغي تعلمها بالنسبة للمبرمج

مصطفى اوريك

السؤال

السلام عليكم.

وجدت في RoadMap معينة لتعلم مسار تطوير الواجهات الخلفية (Back end), أنه ينبغي تعلم Computer hardware architecture

فما هي؟ وأين يمكنني تعلمها؟ ولماذا ينبغي تعلمها بالنسبة للمبرمج؟

وأيضا هل Computer hardware architecture هي نفسها Computer architecture أم لا؟

رابط ال RoadMap المقصودة: https://metwallylabs.com/backendroadmap.html

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0
بتاريخ 5 دقائق مضت قال مصطفى اوريك:

السلام عليكم.

وجدت في RoadMap معينة لتعلم مسار تطوير الواجهات الخلفية (Back end), أنه ينبغي تعلم Computer hardware architecture

فما هي؟ وأين يمكنني تعلمها؟ ولماذا ينبغي تعلمها بالنسبة للمبرمج؟

وأيضا هل Computer hardware architecture هي نفسها Computer architecture أم لا؟

رابط ال RoadMap المقصودة: https://metwallylabs.com/backendroadmap.html

عليكم السلام ورحمة الله وبركاته مرحبا مصطفى،

عمارة الأجهزة الحاسوبية (Computer hardware architecture) هي المجال الذي يتعامل مع تصميم وهيكلة المكونات الفعلية للأجهزة الحاسوبية، بما في ذلك وحدات المعالجة المركزية (CPUs) والذواكر ووحدات التخزين والمتحكمات والحواسيب الأخرى المتصلة بها. تهدف دراسة عمارة الأجهزة إلى فهم كيفية عمل هذه المكونات على المستوى الفيزيائي وكيفية تفاعلها مع بعضها البعض.

يعتبر تعلم عمارة الأجهزة الحاسوبية مفيدًا للمبرمجين في مجال تطوير الواجهات الخلفية (Back end development) لعدة أسباب. إليك بعضها:

  • فهم أفضل للأداء: بفهمك لعمارة الأجهزة، ستتمكن من تحسين أداء التطبيقات الخاصة بك من خلال الكشف عن نقاط الضعف في التصميم وتحسين استخدام الموارد الحاسوبية.
  • التوافق مع الأجهزة: يتطلب تصميم تطبيقات الويب والبرمجيات التفاعلية معرفة كيف يتفاعل البرنامج مع المكونات الفعلية للأجهزة. فهمك لعمارة الأجهزة سيمكنك من تطوير تطبيقات متوافقة ومحسنة للأجهزة المختلفة.
  • استكشاف الأخطاء وإصلاحها: قد تواجه أحيانًا مشاكل تتعلق بالأداء أو التوافق في تطبيقك. فهم عمارة الأجهزة سيساعدك في تحليل هذه المشاكل واكتشاف الأخطاء وإصلاحها بشكل أفضل.

بالنسبة للموارد التعليمية، يمكنك العثور على دورات ومواد تعليمية عبر الإنترنت تغطي عمارة الأجهزة الحاسوبية. يمكنك البدء بالبحث عن مقدمي دورات مثل Coursera وedX وUdemy وغيرها، والبحث عن كتب ومقالات علمية في هذا المجال.

أما بالنسبة لسؤالك الأخير، فعمارة الأجهزة الحاسوبية (Computer hardware architecture) هي فرع من علم الحاسوب يركز على تصميم وهيكلة المكونات الفعلية للأجهزة الحاسوبية. ومن الصحيح أن عمارة الأجهزة تعتبر جزءًا من علم الحاسوب بشكل عام وتتعامل مع جوانب فيزيائية وتصميمية محددة للأجهزة الحاسوبية.

بالتوفيق.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ الآن قال مسعود زاهي:

أما بالنسبة لسؤالك الأخير، فعمارة الأجهزة الحاسوبية (Computer hardware architecture) هي فرع من علم الحاسوب يركز على تصميم وهيكلة المكونات الفعلية للأجهزة الحاسوبية. ومن الصحيح أن عمارة الأجهزة تعتبر جزءًا من علم الحاسوب بشكل عام وتتعامل مع جوانب فيزيائية وتصميمية محددة للأجهزة الحاسوبية.

جزاك اللّه خيرا, في السؤال الأخير أقصد هل Computer hardware architecture هو نفسه Computer architecture أم لا, حيث عندما أبحث عن دورات لل Computer hardware architecture أجد أكثر الدورات تتحدث عن Computer architecture وأنا ليست متأكدا إن كانو نفس المسميات أم لا

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

هل أنت بحاجة إليها في البداية؟ 

لا، لست بحاجة إلى تعلمها في البداية لكي تتمكن من تعلم الواجهة الخلفية back-End، فالغالبية يتعلم أساسيات البرمجة ويبدأ في مسار التعليمي.

لكن ذلك هو الأفضل؟ 

بالطبع، لا.

حيث ستعاني قليلاً في فهم ما يحدث فعلاً، وكيف يتم ذلك وما فائدة بعض الأكواد، وكيف يتم التعامل في الخلفية؟ 

لذلك ستجد في المسار التعليمي Roadmap المذكور، قد وضع Computer Hardware Architecture ضمن قائمة Reading List أي للقراءة والإطلاع.

تلك أمور عليك معرفتها إذا أردت فعلاً أن تصبح Software Engineer وليس مستخدم للغة برمجة وتقنيات فقط، بل عليك فهم ما يحدث فعلاً ولا يشترط بنسبة 100% لكن على الأقل لديك علم في البداية.

ووبساطة التعرف على الـ Computer Hardware Architecture توفر فهمًا أعمق لكيفية عمل الحاسوب على المستوى الأساسي، وتتعلق معمارية الأجهزة بالتصميم الداخلي للأجهزة الحاسوبية وتشمل المكونات المادية مثل المعالجات والذواكر ووحدات المعالجة المركزية والشبكات والمخزن الداخلي وغيرها.

أي معمارية الأجهزة توضح كيف يتم تنظيم وترتيب المكونات المادية في الحاسوب لتنفيذ المهام المطلوبة، وبفهمها تستطيع تحسين كفاءة وأداء البرامج التي تكتبها، أيضًا توقع أداء البرامج في مختلف الأجهزة واختيار التصميم الأمثل للتطبيقات.

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

وتستطيع البحث عن أساسيات علوم الحاسوب، وأيضًا قراءة المقال التالي:

وأيضًا دراسة دورة علوم الحاسوب:

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 دقيقة مضت قال مصطفى اوريك:

جزاك اللّه خيرا, في السؤال الأخير أقصد هل Computer hardware architecture هو نفسه Computer architecture أم لا, حيث عندما أبحث عن دورات لل Computer hardware architecture أجد أكثر الدورات تتحدث عن Computer architecture وأنا ليست متأكدا إن كانو نفس المسميات أم لا

لا، ليست نفس المسميات. "Computer hardware architecture" تشير إلى التصميم الداخلي للأجهزة الحاسوبية، بما في ذلك المكونات الفعلية مثل المعالجات والذواكر والباصات والأجهزة الأخرى التي تشكل نظام الحاسوب.

من ناحية أخرى، "Computer architecture" تشير إلى التصميم العام للأنظمة الحاسوبية، بما في ذلك التنظيم الداخلي للأجهزة وتفاعلها مع البرمجيات وطرق التواصل بين المكونات المختلفة وتوزيع الموارد وغيرها من العناصر المتعلقة بتصميم النظام.

ومع ذلك، فإن هناك تداخل وثيق بين المفاهيم المتعلقة بكل من "Computer hardware architecture" و"Computer architecture"، ولذلك قد يتم استخدام المصطلحين بشكل متبادل في بعض الأحيان. إذا كنت تبحث عن دورات في هذا المجال، يمكنك الاستفسار بشكل أوضح حول المحتوى المطلوب للتأكد من أن الدورة تغطي الموضوع الذي تهتم به بشكل صحيح.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

تعلم معمارية الأجهزة (Computer hardware architecture) هو مفهوم مهم للمبرمجين الذين يرغبون في تطوير الواجهات الخلفية (Back end) والتفاعل مع الأجهزة الحاسوبية مباشرة. إن مفهوم معمارية الأجهزة يشير إلى الهيكل والتصميم الداخلي للأجهزة الحاسوبية، بما في ذلك المعالجات والذاكرة والمدخلات والمخرجات والشبكات.

تعلم معمارية الأجهزة يساعد المبرمجين على فهم كيفية عمل الحواسيب وكيفية التفاعل معها، ويمكن أن يشمل العديد من الموضوعات مثل العمارة الداخلية للمعالجات، والذاكرة، والحواسيب المضمنة، والشبكات الحاسوبية، والمدخلات والمخرجات.

يمكن تعلم معمارية الأجهزة من خلال العديد من المصادر المتاحة على الإنترنت، بما في ذلك الكتب والمقالات والدورات التدريبية.

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

أما بالنسبة لسؤالك الأخير، فمعمارية الحاسوب (Computer architecture) ومعمارية الأجهزة (Computer hardware architecture) هي مفاهيم متشابهة وتتعلقان بتصميم وهيكل الأجهزة الحاسوبية.

ولكن يوضح الفيديو الذي يشرح هذه Roadmap أنه يجب عليك الإطلاع على هذه المفاهيم وفهمها بشكل عام، وليس الاستغراق في دراستها بشكل كامل في الوقت الحالي.

لذلك، لا يلزمك تعلمها الآن، ولا يتعين عليك البحث عن مصادر لتعلمها، يمكنك فقط قراءة مقالة تشرح معنى هذه المصطلحات.

وتوجد Roadmap Backend جيدة متاحة على موقع roadmap.sh يمكنك الاطلاع عليها من هنا.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

يعتمد الأمر على مستوى خبرتك كمبرمج حاسوب. لا تحتاج إلى أن تتقن هذه المواضيع على مستوى المبتدئين. من ناحية أخرى، إذا كنت مهندس بخبرة 25 عامًا، لذا أستفيد من المعرفة العميقة بهذه المواضيع يوميًا. 

مع تزايد خبرتك كمبرمج حاسوب، ستترقى إلى senior ثم مهندس برمجيات. تختلف أسماء الوظائف بحسب كل مؤسسة، لكنك تفهم الفكرة. 

إذا كنت تريد منطق البرنامج الحاسوبي ليعمل، لا تحتاج إلى تقنية هذه المواضيع. ومع ذلك، عندما تحتاج إلى إضافة الأمان إلى برنامج، أو المزايا والوظائف، فستحتاج إلى معرفة هذه الأمور. هذا ما يفعله المطورون الأساسيون. 

عندما تقوم بتصميم أنظمة حاسوبية كبيرة أو تكييف أنظمة قائمة لتلبية احتياجات جديدة، ستضطر إلى اتخاذ تنازلات عديدة. من خلال فهم تنظيم الحاسوب وهندسته المعمارية، ستكون قادرًا على تصور النماذج الناتجة عن هذه التنازلات بجهد أقل وبدقة أعلى مما لو لم تفعل ذلك.

كما أن في ال Roadmap الذي ذكرته يخبرك أنه هذه المواضيح هي reading list أي لا يجب التعمق في هذه المفاهيم في البداية

من الأسباب الرئيسية لتعلم computer hardware architecture كمبرمج هي:

  • الفهم الأفضل لكيفية عمل الحاسوب والأجهزة التي تشغل عليها التطبيقات والبرامج. هذا يمكنك من التفاعل بشكل أفضل مع الأجهزة والموارد.
  • فهم محدوديات الأجهزة. من المهم معرفة ما يمكن للأجهزة تنفيذه بشكل صحيح لتصميم تطبيقات وبرامج مناسبة.
  • في حالة تطوير واجهات خلفية، فإن فهم hardware architecture يمكّنك من اتخاذ قرارات ذكية حول تصميم المعمارية وتنفيذ الخوارزميات.
رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...