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

لوحة المتصدرين

  1. Ail Ahmed

    Ail Ahmed

    الأعضاء


    • نقاط

      2

    • المساهمات

      1202


  2. Najah Alsaker

    Najah Alsaker

    الأعضاء


    • نقاط

      2

    • المساهمات

      543


  3. اسلام الخويسكي

    • نقاط

      2

    • المساهمات

      3


  4. Ahmed Ebrahim11

    Ahmed Ebrahim11

    الأعضاء


    • نقاط

      2

    • المساهمات

      448


المحتوى الأكثر حصولًا على سمعة جيدة

المحتوى الأعلى تقييمًا في 03/01/24 في كل الموقع

  1. لماذا لم يتم استخدام cmder بدلا من windows terminal ؟
    2 نقاط
  2. السلام عليكم اي هي مكتبه الstring واي الفرق بيتها وبين الstr الموجود في لغه البايثون
    2 نقاط
  3. بسم الله الرحمن الرحيم السلام عليكوم ورحمة و بركاتة لدي استفسار في تعديل الروابط الخاصة بالموقع حيث ان لدي صفحة page.php?id=الاستعلام اوريد تعديل الرابط بحيث يكون هكذا page-الاستعلام.html لقد بحثت و وجت ان هناك كود في ملف htaccess و لا اعرف هذا الكود هل من احد يعطيني الكود ارجو الرد
    1 نقطة
  4. أحاول التواصل مع مركز المساعدة في أكادمية حاسوب للتقدم للإمتحان لكن لم يتم الرد علي منذ 13 ساعة، أرسلت الرسالة الأولى و كان الرد عبارة عن رسالة مأتمت على ما يبدو بعد 7 ساعات أرسل رسالة أخرى و لا يوجد رد منذ حوالي ال5 ساعات، لم يتواصل مع أحد أو يرد على رسالتي منذ حوالي ال12 أو ال13، لدي بعض الإستفسارات أردت طرحها لهم بشأن المشاريع المقدمة و المقابلة الصوتية. لماذا لا يتم الرد علي بسرعة؟ هل هناك مشكلة؟
    1 نقطة
  5. في مشروع تخرجي طالبين موقع بـ laravel وحالياً عملت بعض من الواجهات والاجراءات ولكن مافهمتها هل ممكن الاقي احد يشرح لي الاكواد تبع موقعي لان جزئيات فهمتها وجزئيات لا اذا بلاقي شخص يشرح لي هذا التيليجرام تبعي يرسل لي من خلاله وسوف اوضح له كل شيء ( uipl1 )
    1 نقطة
  6. السلام عليكم اريد ان اسال عن طريقه ظبط الصوره في background مع تغير الشاشات الي الاصغر حيث ان الصوره تصبح اكبر وتشوش مع تصغير الشاشه كيف يمكنني جعل الصوره تظهر بوضوح علي شاشه الهاتف قمت بارفاق الصور للتوضيح
    1 نقطة
  7. في البداية قم بازالة هذه الخصائص من داخل ال header header { background-image: url(../src/images/bac.jpg); background-size: cover ; background-attachment: fixed; background-position: center center; min-height: 100vh; } وقم بنقلها الى ال header .overlay header .overlay { background: rgba(0, 0, 0, 0.8); /*0 % , 100% تدل عل الموضع*/ height: 100vh; /* اضف العناصر هنا */ } ليصبح الكود كالتالي header .overlay { background: rgba(0, 0, 0, 0.8); /*0 % , 100% تدل عل الموضع*/ height: 100vh; /* اضف العناصر هنا */ background-image: url(../src/images/bac.jpg); background-size: cover ; background-attachment: fixed; background-position: center center; min-height: 100vh; } ثم ان هذه الخصائص تتغير عند تغيير الاحجام لذلك يجب عليك وضعها عند القسم المراد تغييرها بها وتغيير فقط هاتان الخاصيتان المشار اليهم حسب الحجم المطلوب @media (max-width: 767.98px) { header .overlay { background: rgba(0, 0, 0, 0.8); /* قمت بتغيير الارتفاع هنا الى 70 px */ height: 70vh; background-image: url(../src/images/bac.jpg); background-size: cover ; background-attachment: fixed; background-position: center center; /* قمت بتحديد الحد الادنى للارتفاع 50 */ min-height: 50vh; } } لتصبح النتيجة كالتالي : الان دعنا نقوم بتغيير اماكن الكتابة والازرار لتصبح متناسبة اكثر مع الحجم الجديد اضف هذا الكود اسفل الكود السابق لرفع الكتابة للاعلى قليلا header .overlay .slider .carousel-inner .carousel-item .carousel-caption { bottom: 40%; } ثم اضف هذا الكود لرفع الازرار للاعلى قليلا header .overlay .slider .carousel-control-prev , header .overlay .slider .carousel-control-next { top : auto ; bottom: 50%; width: auto; } طبعا يمكنك تغير الاحجام حسب الرغبة وهذا هو المشورع المعدل تستطيع الاطلاع على التغيرات واضافتها الى المشورع الخاص بك او التعديل على المشروع الحالى حسب الرغبة بالتوفيق لك .. DR.Scan.zip
    1 نقطة
  8. مرحبا تستطيع في احجام شاشة الموبيل استخدام background-size: 100% 100%; مع استخدام هذه الكود وهنا تستخدم صور bac.png وليس bac1.png لانه الصورة مبكسله اصلا @media (max-width: 767.98px) { header { background-image: url(../src/images/bac.jpg); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; } } او من الممكن استخدام background-size: cover; background-clip: border-box; وسوف سكون شكلها هكذا مع استخدام هذه الكود @media (max-width: 767.98px) { header { background-image: url(../src/images/bac.jpg); background-repeat: no-repeat; background-position: center; background-size: cover; background-clip: border-box; } } اذ لم يظبط مع هذا الحل فكدا لازن تصغر ال height الخاص ب header علي شاشات الموبيل
    1 نقطة
  9. انا ادرك ذلك استاذتي انا اقصد كيفيه عمل resize للصوره جربت عمل تغيير فعلا ولكن ال height لا يتغير اريد ان اصغر ال height الخاص ب header كي يناسب الشاشات DR.Scan (2).zip
    1 نقطة
  10. هناك ميزة تدعى @media في لغة css يمكنك استخدامها لتغيير حجم الخلفية في مختلف الشاشات عبر كتابة هذا الكود في اخر ملف ال css على سبيل المثال اريد تغيير حجم الخلفية عند المقاس 768px كحد اقصى ف اكتب الكود التالي @media (max-width: 768px) { body { //هنا تضع الاحجام والمميزات التي تريدها } } الخاصية @media هي التي تسمح لنا بالتحكم بمقاس الشاشة max-width: 768px : حددت له انه من اصغر حجم للشاشات وحتى المقاس 768px وبين الاقواس الهلالية تكتب الكود الذي تريده وهناك طريقة لتعرف مقاس الشاشة الذي تريد تغير الخصائص عنده وذلك من خلال تثبيت اضافة width and height display وبالتوفيق لك
    1 نقطة
  11. لو سمحت انا جديد في هذه الدوره واشتركت في دورة واجهات المستخدم هل عرض دورتين بسعر دورة واحده يشملني؟ انا مشترك قبل يومين
    1 نقطة
  12. مرحبا str هو نوع البيانات الذي يستخدم لتمثيل النصوص (strings) في ال python وهو يعتبر string من حيث اذ كنت تتحدث عن data type في ال python ويشمل بعض ال functions والوظائف التي تستخدمها علي النصوص مثل upper, lower وهكذا اما اذكنت تتحدث عن مكتبة strings فهي تعتبر من نوع Standard Library تقدم بعض الوظائف الإضافية للتلاعب بالنصوص والفرق بينها وبين str انه ال str هي data type مدمج في ال python بينما strings تعتبر مكتبة خارجية يتم استدعاها واستخدامها اذ لازم الامر
    1 نقطة
  13. ما تقصده الفرق بين وحدة string والكائن str في لغة بايثون فوحدة string هي وحدة مدمجة في لغة بايثون تقدم مجموعة من الوظائف للتعامل مع السلاسل النصية وتشمل الوظائف عمليات مثل البحث عن الأحرف أو الكلمات، وتغيير حالة الأحرف، ودمج النصوص، والتحقق من صحة البيانات النصية. حيث تعتبر وحدة string قديمة نوعًا ما، وبدأت وظائفها تندمج مع الكائن str في الإصدارات الحديثة من لغة بايثون. أما الكائن str هو نوع بيانات أساسي في لغة بايثون يمثل سلسلة من الأحرف وتستطيع إنشاء كائن str باستخدام علامات الاقتباس المفردة أو المزدوجة أو باستخدام دالة str() كالتالي: str(3) '3' ويوفر مجموعة من الطرق (methods) للتعامل مع محتوى السلسلة النصية، وتلك الطرق (ميثودز) أكثر حداثة وسهولة في الاستخدام من وظائف وحدة string. وستجد توضيح بالأمثلة هنا: الوحدة string في بايثون الدوال التابعة للكائن str وتم إيقاف استخدام وحدة string في الإصدار 3.9 من لغة بايثون، ولكن لا يزال من الممكن استخدامها في الإصدارات القديمة.
    1 نقطة
  14. وعليكم السلام ورحمة الله وبركاته . بالفعل التحديث الجديد هذه الخاصية مزعجة بالفعل ويمكنك الغائها بطريقتين : اولا قم بالضغط بالزر الايمن للفأرة على الكود الذى يقسم الصفحة وقم بالغاء sticky scroll . ثانيا من قائمة view اختر appearance ثم قم بالغاء sticky scroll .
    1 نقطة
  15. يتساءل كثير من المُقبلين على تعلم البرمجة: هل شهادات البرمجة ضرورية؟ هل يجب على المرء أن يدرس في الجامعة حتى يحصل على شهادة برمجة معتمدة؟ كيف يمكن أن يحصل المرء على شهادات احترافية في البرمجة؟ وكيف يمكن أن يتعلمها بنفسه أصلًا؟ هل يمكن الحصول على شهادات برمجة من الإنترنت؟ يجيبك هذا المقال على كافة هذه التساؤلات. ما هي شهادات البرمجة؟ الشهادة توثيق وتأكيد وكفالة تصدرها جهة موثوقة وتضمن بها معرفة شخصٍ ما بمجموعة من المعارف. لا تخرج شهادات البرمجة عن هذا التعريف، فهي شهادات تصدرها جهات موثوقة (من جامعات أو أكاديميات أو منصات تعليمية إلخ)، تكون دليلًا على معرفة حامل الشهادة بمجموعة من المعارف البرمجية. تقدّم المنصات التعليمية على الإنترنت عادةً شهادات برمجة تشهد على إتمام دورة في مجال معين، أما شهادات البرمجة الجامعية فتشهد على أن الطالب قد أتم جميع مواده الدراسية ونجح فيها. هل يجب الحصول شهادة جامعية حتى تكون مبرمجًا؟ لعلك تتساءل هل يجب على كل من يريد تعلم البرمجة أو الحصول على شهادات برمجة معتمدة أن يدرس في الجامعة؟ قبل الإجابة على هذا السؤال تجدر الإشارة لأن إحصائيات موقع statista تشير بأن قرابة 25% من مطوري البرمجيات غير حاصلين على شهادة جامعية في البرمجة! أي إن ربع مطوري البرمجيات عالميًّا لم يتمّوا أو لم يبدؤوا أي تعليم جامعي، وتتوزع النسبة الباقية بين الحاصلين على شهادة بكلوريوس والحاصلين على شهادات أعلى. فكيف يمكن أن نفهم هذه الإحصائيات؟ لا شكّ أن الشهادة الجامعية مفيدة في مجال البرمجة كما في غيره من المجالات. إذ تسهّل الشهادة الجامعية حياتك المهنية لا سيما في بدايتها، حين تكون هي الإثبات الوحيد على معرفتك في المجال. لكن حتى إن كنت حاصلًا على شهادة جامعية، فإن تطورك المهني سيبلغ بك مرحلة تصبح بها خبراتك وأعمالك السابقة أهم من شهادتك الجامعية، إذ تصبح هي الدليل الأقوى على معرفتك ومهارتك. فإذا كنت قبل التقدّم إلى أول وظيفة تملك أعمالًا تشهد على مهارتك، أو تحمل شهادات غير جامعية تضمن معرفتك، فإن هذا سيكون كافيًا لإثبات معرفتك ومهارتك. يمكنك الاستعاضة عن شهادة البرمجة الجامعية بالتعلم الذاتي من جهة موثوقة تمنحك شهادات برمجة تعكس خبراتك. تقدم منصات التعلم على الإنترنت تعليمًا يركّز على الجانب العملي أكثر من الجانب النظري، ويختصر في الوقت نفسه كثيرًا من الوقت على المتعلم. لقد صنع كثير من المطورين أنفسهم في مدة لا تتجاوز عامًا واحدًا من التعلم الذاتي. كيف تتعلم البرمجة ذاتيًّا تتميز البرمجة على غيرها من المجالات بسهولة تعلّمها ذاتيًّا على الإنترنت. فبالإضافة إلى توفر دورات تقدم شهادات معتمدة في البرمجة على الإنترنت (المزيد عنها في الفقرة التالية)، يفيض الإنترنت بمصادر متنوعة لتعلم البرمجة ذاتيًّا. ولا تكاد تخلو لغة برمجة من كتاب رسمي أصدره مجتمعها ليساعد المبرمجين على تعلمها ذاتيًّا. وفي العالم العربي، يلمع نجم أكاديمية حسوب في مساعدة المبرمجين على التعلم الذاتي والحصول على شهادات برمجة، إذ تقدّم الأكاديمية 19 كتابًا في شتى مجالات البرمجة، تناسب مختلف مستويات المتعلمين، منها: تعلم البرمجة للمبتدئين: يأخذك هذا الكتاب في رحلة لتعلم البرمجة من الصفر، يمرّ فيها على محطّات مختلفة، منها أنواع البيانات، وبناء الواجهات الرسومية، وكتابة تطبيقات الويب، وغير ذلك. البرمجة بلغة بايثون: يقدم هذا الكتاب مجموعة من المقالات الكفيلة بإعطاء القارئ فهمًا شاملًا وكاملًا للغة بايثون، وهو، كالكتاب السابق، مناسب للمبتدئين. البرمجة بلغة جافاسكربت: هل فكرت من قبل في استخدام البرمجة لبناء رجل آلي؟ أو في بناء لغة برمجة خاصة بك؟ يمرّ هذا الكتاب على مختلف المفاهيم في لغة جافاسكريبت، ويختم بمشروع بناء موقع باستخدام بيئة نود جي إس Node.js. دورات عربية تقدم شهادات معتمدة في البرمجة بالإضافة إلى كتب تعلم البرمجة، توفر أكاديمية حسوب دورات تعليمية باللغة العربية تقدم شهادات معتمدة في البرمجة. تتنوع مواضيع الدورات ومجالاتها، وتناسب المبتدئين في تعلم البرمجة والذين لا يمتلكون أي خبرة سابقة أو الذين يريدون الحصول على شهادات برمجة. من أبرز هذه الدورات نذكر: دورة علوم الحاسوب: تناسب هذه الدورة المبتدئ الذي يريد تعلم البرمجة ولا يعرف من أين يبدأ. تأخذ الدورة بيد الطالب حتى يصل إلى مستوًى متقدم في علوم الحاسوب (مثل أنظمة التشغيل وقواعد البيانات وتقنيات الويب). دورة تطوير التطبيقات باستخدام لغة Python: تساعدك هذه الدورة على احتراف لغة بايثون دون أي معرفة سابقة بها، لتستطيع بعدها بناء مختلف أنواع التطبيقات باستخدام هذه اللغة. ستحصل في نهاية الدورة على شهادة برمجة معتمدة في لغة بايثون. دورة تطوير التطبيقات باستخدام لغة JavaScript: تعلمك هذه الدورة بناء تطبيقات الويب والحاسوب والجوال باستخدام لغة جافاسكريبت JavaScript، وهي مناسبة لمن ليس له خبرة سابقة في البرمجة. تقدم الأكاديمية للذين أتمّوا هذه الدورة شهادة برمجة معتمدة في لغة البرمجة جافا سكريبت JavaScript. دورة تطوير تطبيقات الويب باستخدام لغة PHP: للمهتمين بمجال الويب والواجهات الخلفية، تقدم هذه الدورة طريقًا نحو احتراف لغة PHP وإطار عمل Laravel، كما تعلّمك تطوير قوالب ووردبريس WordPress. دورة تطوير تطبيقات الويب باستخدام لغة Ruby: تتعلم في هذه الدورة لغة Ruby وإطار العمل Ruby on Rails، كما ستتعلم التعامل مع قواعد البيانات وتطوير شبكة اجتماعية مثل تويتر. دورة الذكاء الاصطناعي: دورة جديدة تقدمها أكاديمية حسوب لتعلم الذكاء الصنعي وتحليل البيانات من الصفر. تناسب هذه الدورة من يعرف لغةً من لغات البرمجة ويريد تطوير مهاراته في الذكاء الصنعي. دورة تطوير واجهات المستخدم: تقدم هذه الدورة للمتعلم معارف متنوعة متعلقة بتطوير واجهات المستخدم، وتعرّفه على تقنيات ويب كثيرة، كما يتعلم فيها بناء صفحات الهبوط وواجهات مواقع الويب. تناسب هذه الدورة كل مستويات المتعلمين. نصائح لاحتراف البرمجة دون شهادة جامعية إليك بعض النصائح التي تساعدك على أن تصبح مبرمجًا دون الحاجة إلى شهادات برمجة أكاديمية: تعلم الخوارزميات وأسس التفكير المنطقي قبل تعلّم البرمجة. ابدأ بمواد مناسبة للمبتدئين (راجع الفقرتين السابقتين). استكشف مجالات البرمجة وأنواعها المختلفة وحدد المجال الذي تريد التخصص فيه مثلًا: برمجة تطبيقات الجوال، أو برمجة مواقع الويب، أو الذكاء الاصطناعي. ابحث عن مشاريع مفتوحة المصدر في المجال الذي اخترته وشارك في تطويرها. انضم إلى مجتمعات برمجية وتشارك خبراتك ومهاراتك مع غيرك من المطورين. ابنِ مشروعًا صغيرًا مفتوح المصدر لتستعمله فيما بعد دليلًا على مهاراتك وخبراتك السابقة. لا تقتصر على لغة برمجة واحدة أو إطار عمل واحد، كلما ازدادت معارفك ازدادت فرص نجاحك في سوق العمل. خاتمة تتنوع الطرق إلى تعلم البرمجة واحترافها من شخص لآخر، وهي لا تقتصر على التعليم الجامعي وحده أو التعلم الذاتي وحده.، وكذلك تتنوع شهادات البرمجة ومصادر الحصول عليها، بين الشهادات الجامعية والشهادات التي تقدمها منصات التعلم الإلكتروني المختلفة ولك أن تختار ما يناسبك من بين هذه الطرق المختلفة. أرجو أن يكون هذا المقال قد أفادك ودلّك على محطة الانطلاق في رحلة تعلم البرمجة والحصول على شهادات برمجة معتمدة. اقرأ أيضًا دليلك الشامل لتعلم البرمجة والتعرف على أهميتها أهمية البرمجة وأهم لغات البرمجة ما هي مدة تعلم البرمجة كيف تصبح مبرمجًا محترفًا تعرف على تخصص هندسة البرمجيات
    1 نقطة
  16. تمثل لغات البرمجة عالية المستوى نسبة تزيد عن ثمانين بالمائة من أشهر خمسين لغة برمجة في المجتمع التقني، ما يجعلنا نتساءل: ما هي لغات البرمجة عالية المستوى؟ ولماذا تعد مشهورة إلى هذا الحد؟ وما أشهر استخدامات هذا النوع من لغات البرمجة؟ تعريف لغات البرمجة عالية المستوى تتعدد مستويات لغات البرمجة، فمن لغات البرمجة لغات منخفضة المستوى تساعد المطور على التخاطب المباشر مع عتاد الحاسوب، ما يجعلها مميزة في إدارة موارد الحاسوب، ويوجد كذلك لغات برمجة عالية المستوى، وتعد أكثر تجريدًا عن عتاد الحاسوب وتجعل تركيز المطور ينصبُّ على خواص التطبيق ومميزاته، وهي أسهل من اللغات منخفضة المستوى وأقرب منها إلى اللغات البشرية. تعد لغات البرمجة عالية المستوى نوعًا من لغات البرمجة يسمح للمطور بتطوير برمجيات مجردة عن عتاد الحاسوب، بمعنى أنَّ المطور لا يحتاج إلى وصف طريقة تعامل الأجزاء المختلفة من البرنامج مع المكونات الداخلية للحاسوب مثل: المعالج والذاكرة المؤقتة والذاكرة الدائمة، وتهدف لغات البرمجة عالية المستوى إلى تسهيل عملية تطوير البرمجيات وزيادة إنتاجية المطور، وكذلك تقريب بنية لغات البرمجة إلى بنية اللغات البشرية حتى تسهُل قراءة الشيفرات وكتابتها. أنواع لغات البرمجة عالية المستوى يجب ترجمة كل برنامج مكتوب بلغة برمجة عالية المستوى إلى لغة الآلة قبل تنفيذه، وتنقسم لغات البرمجة عالية المستوى إلى نوعين رئيسيين تبعًا لطريقة ترجمة الشيفرات، وهما: لغات برمجة مترجمة Compiled Programming Languages: يعد المترجم برنامجًا حاسوبيًا يعمل كوسيط بين برنامجك الرقمي والآلة، ويعمل على ترجمة شيفرات البرنامج كاملة إلى لغة الآلة ثم تنفيذها دفعةً واحدة، ويتميز هذا النوع من لغات البرمجة بالسرعة والكفاءة، ومن أشهر أمثلته لغة سي بلس بلس C++‎ وراست Rust وجو Go. لغات برمجة مفسرة Interpreted Programming Languages: يتشابه المفسر مع المترجم في وساطته بين البرنامج والآلة ولكنه يختلف في طريقة الترجمة، إذ يقرأ المفسر الشيفرات واحدة تلو الأخرى ويترجمها إلى لغة الحاسوب وينفذ كل شيفرة مباشرة بعد ترجمتها، ويتميز هذا النوع بالسهولة والمرونة، ومن لغاته بايثون Python وجافا سكريبت JavaScript وبي إتش بي PHP. تُستخدم لغات البرمجة عالية المستوى في كل مجال برمجي تقريبًا، فهي تُستخدم في المجالات الكلاسيكية، مثل: تطوير الويب وتطبيقات الهاتف وتطبيقات سطح المكتب، وكذلك تُستخدم في المجالات الحديثة، مثل: الذكاء الاصطناعي وتحليل البيانات، كما تدخل في مجالات الأمن السيبراني ومجالات سلسلة الكتل Blockchain والعملات الرقمية وسائر المجالات التقنية الأخرى، ومن أشهر لغات البرمجة عالية المستوى لغة بايثون وجافا و PHP و R و كوتلن وجو و C وC#‎. الفرق بين لغات البرمجة عالية المستوى ولغات البرمجة منخفضة المستوى تعد لغات البرمجة منخفضة المستوى نوعًا من اللغات البرمجة يوفر تواصلًا مباشرًا مع عتاد الحاسوب، وتشبه بنيتها بنية لغة الآلة، ومن أبرز الفروق بينها وبين اللغات عالية المستوى نذكر التالي: تتميز لغات البرمجة عالية المستوى بسهولة قراءة وكتابة الشيفرات ما يجعل تطوير البرمجيات سهلًا وسريعًا، وكذلك تسهُل عمليتا الاختبار ومعالجة الأخطاء مما يساعد على حفظ أمان البرنامج، بينما تتميز اللغات منخفضة المستوى بالوصول المباشر لعتاد الجهاز واستهلاك موراده بالطريقة الأمثل. تُستخدم لغات البرمجة عالية المستوى في جميع المجالات البرمجية تقريبًا،مثل برمجة تطبيقات الويب والجوال وتطبيقات الذكاء الاصطناعي وتحليل البيانات، أما لغات البرمجة منخفضة المستوى فتُستخدم اليوم في مجالات محدودة تحتاج للتعامل مع عتاد الحاسوب مباشرة، مثل: تطوير أنظمة التشغيل وتطوير الأنظمة المدمجة. أنواع لغات البرمجة عالية المستوى تعد النماذج البرمجية منهجيات لكتابة الشيفرات وحل المشكلات البرمجية وتختلف أهداف كل نموذج برمجي عن الآخر، وقد تدعم لغة البرمجة الواحدة أكثر من نموذج برمجي، وتتعدد أنواع لغات البرمجة عالية المستوى تبعًا للنماذج البرمجية، منها: لغات البرمجة كائنية التوجه Object-Oriented Programming Languages لغات البرمجة الوظيفية Functional Programming Languages لغات البرمجة الإجرائية Procedural Programming Languages لغات البرمجة المنطقية Logical Programming Languages لنشرح بمزيد من التفصيل مميزات كل نوع من هذه الأنواع وأشهر لغات البرمجة التي تندرج ضمنه. لغات البرمجة كائنية التوجه Object-Oriented Programming Languages يعد نموذج البرمجة كائنية التوجه أشهر نموذج برمجي في المجتمع التقني؛ ذلك لتقسيمه البرنامج كاملًا إلى مجموعات صغيرة من الشيفرات القابلة لإعادة الاستخدام في مواضع أخرى، ما يساعد على تقليل إجمالي عدد الشيفرات النهائي للبرنامج وبالتالي تحسين أدائه، وكذلك يساعد على تنظيم الشيفرات وتسهيل عملية اختبار البرنامج ومعالجة أخطائه مما يرفع من أمان البرنامج. يقوم نموذج البرمجة كائنية التوجه على مفهوم الأصناف Classes التي تحتوي على كائنات Objects، والكائنات هي بيانات البرنامج التي تمتلك واصفات Attributes وطرق أو توابع Methods، والواصفات هي المتغيرات Variables التي تتضمن نوع بيانات الكائن وحجمها وتفاصيلها، وأما الطرق فهي الدوال البرمجية التي تحقق الوظائف Functions التي تقوم بها الكائنات. ويمكننا تشبيه الصنف في نموذج البرمجة كائنية التوجه بنموذج تصنيع لسيارة، فالواصفات في هذا المثال هي مواصفات السيارة بدءًا من لونها مرورًا بسرعتها وصولًا إلى سعرها، أما التوابع فهي أفعال السيارة، مثل: التشغيل وزيادة السرعة وتغيير الاتجاه، أما الكائنات فهي السيارات النهائية الناتجة عن هذا الصنف. class Car: # These are the attributes of the object: color = 'Red' speed = "180KM\H" price = "5500 USD" # These are the methods of the object: def turn_on(self): return 'Car is turned on' def increase_speed(self): return 'Speed is increased' def change_direction(self): return 'Direction is changed' the_car = Car() # This is the object print(the_car.color) # Output: Red print(the_car.turn_on()) # Output: Car is turned on تدعم لغاتُ برمجةٍ عديدة نموذجَ البرمجة كائنية التوجه، ولعل أشهرهم بايثون وجافا وسي بلس بلس C++‎ وجافا سكريبت وروبي وبي إتش بي PHP وكوتلن. وتُستخدم لغات البرمجة كائنية التوجه في مجالات عديدة، منها: تطوير تطبيقات الويب وتطوير تطبيقات الهاتف. لغات البرمجة الوظيفية Functional Programming Languages تعتمد لغات البرمجة الوظيفية على بناء البرنامج كاملًا من مجموعة من الوظائف البرمجية Functions، ويعد نموذج البرمجة الوظيفية مبنيًا على مصطلح الوظائف النقية Pure Functions، وهو نوع من الوظائف تعتمد نتائجه اعتمادًا كليًّا على البيانات الداخلة له، ولا تحتاج الوظيفة إلى تعديل البيانات الداخلة أو تعيين متغيرات للتمكُّن من إصدار النتائج. def pure_function(a, b): return a + b print(pure_function(2, 3)) # Output: 5 def impure_function(a, b): new_a = a + 3 new_b = b + 4 new_data = a + b return new_data print(impure_function(2, 3)) # Output: 19 تتميز لغات البرمجة الوظيفية بقابلية إعادة استخدام الشيفرات وسهولة الاختبار وحل المشكلات، وتُستخدم لغات البرمجة الوظيفية بكثرة في المجالات المعتمدة على تحليل أحجام ضخمة من البيانات، مثل: معالجة البيانات والذكاء الاصطناعي والحوسبة العلمية والحوسبة الرياضية ومزامنة الأنظمة، ومن أشهر لغات البرمجة الوظيفية هاسكل وسكالا وإرلانج وليسب، كما تدعم بايثون هذا النموذج البرمجي. لغات البرمجة الإجرائية Procedural Programming Languages تعد البرمجة الإجرائية نموذجًا برمجيًا سهلًا يساعد على كتابة البرنامج على هيئة خطوات برمجية منطقية متسلسلة، ويساعد نموذج البرمجة الإجرائية على تنظيم شيفرات البرنامج بطريقة وجعلها سهلة القراءة ومنطقية التسلسل، وتُستخدم لغات البرمجة الإجرائية عادةً لكتابة الخوارزميات والعمليات الحسابية ولكتابة برمجيات التشغيل الآلي أو الأتمتة Automation، كما تُستخدم أحيانًا لتطوير أنظمة التشغيل، وتدعم هذا المجال لغاتٌ مثل لغة ++C‎ وجافا وباسكال. def greet_user(): name = input("Enter your name: ") # Procedure 1: Asking the user about his name # Procedure 2: Storing the name of the user in a variable print(f"Hello {name}!") # Procedure 3: Constructing the greeting message greet_user() # Procedure 4: Displaying the greeting message for the user لغات البرمجة المنطقية Logical Programming Languages تعتمد البرمجة المنطقية على المنطق الرسمي Formal Logic، وهو نظام لتحليل وتقييم النتائج المحتملة بناءً على حقائق Facts وقواعد Rules، ثم استخراج النتيجة السليمة والمنطقية للتساؤلات Queries، وتعد لغة برولوج Prolog أشهر لغة برمجة منطقية، ويشيع استخدام لغات البرمجة المنطقية في مجالات الذكاء الاصطناعي والتعلُّم الآلي ومعالجة اللغة الطبيعية. likes(Mohammed, Apples). % This is a fact that Mohammed likes apples likes(Ahmed, Grapes). likes(Mahmoud, Pizza). % This is a rule that people who share the same food preferences are good friends good_friends(Person1, Person2) :- likes(Person1, Food) likes(Person2, Food) مميزات لغات البرمجة عالية المستوى التجريد Abstraction: تعد اللغات عالية المستوى مجردة عن عتاد الحاسوب، أي إن المطور يعمل على تطوير البرنامج ليناسب نظام التشغيل، ويحاول مراعاة مكونات الحاسوب لكن دون حاجة إلى توصيف طريقة تعامل البرنامج مع العتاد، مما يوفر كثيرًا من الوقت والجهد ويجعل عملية التطوير أسهل ويزيد من كفاءة التطبيقات وخواصها. الأمان: تضم معظم لغات البرمجة عالية المستوى مكتباتٍ وأدواتٍ تساعد على اختبار شيفرات البرنامج واستخراج ثغراتها ثم سد هذه الثغرات، ما يساهم في تقليل احتمالية اختراق التطبيق وتعسير الوصول إلى بيانات المستخدمين. التوافقية Portability: تدعم غالبية اللغات عالية المستوى تعدد المنصات، والتي تعني قدرة البرنامج على العمل على أنظمة تشغيل مختلفة، كأن يعمل برنامج سطح المكتب على ويندوز ولينكس وMacOS، كما تتوافق لغات البرمجة عالية المستوى مع مواصفات العتاد المختلفة للحواسيب أيضًا. تعدد الاستخدامات: تُستخدم لغات البرمجة عالية المستوى في مجالات لا حصر لها، بدءًا من تطوير التطبيقات للمنصات المختلفة، مرورًا بتطوير الألعاب، وصولًا إلى تطوير برمجيات الذكاء الاصطناعي وتحليل البيانات وغيرها. سهولة الاستخدام: يسهل تعلم لغات البرمجة عالية المستوى، وذلك لتشابه الكثير من شيفراتها باللغة الإنجليزية، وكذلك يسهل العمل بها لقلة عدد الشيفرات المطلوبة لتطوير البرمجيات. أمثلة على لغات البرمجة عالية المستوى تنتشر لغات البرمجة عالية المستوى وتكثر، ومن أشهرها: بايثون Python سي بلس بلس C++‎ جافا Java جافا سكريبت JavaScript بي إتش بي PHP سويفت Swift لنستعرض ماهية كل لغة ونماذجها البرمجية المدعومة وحالات استخدامها. لغة بايثون Python تعد بايثون إحدى لغات البرمجة العصرية التي يزداد رواجها في الأوساط البرمجية، وهي لغة عالية المستوى مفسرة، تدعم البرمجة كائنية التوجه والبرمجة الوظيفية والبرمجة الإجرائية، وتعد لغة عامة الاستخدامات، إذ تُستخدم في مجالات عديدة ومختلفة، مثل: الذكاء الاصطناعي وتحليل البيانات وتطوير الويب وتطوير تطبيقات سطح المكتب وغيرها. لغة C++‎ تقع لغة C++‎ ضمن أشهر لغات البرمجة عالية المستوى المترجمة، وتدعم البرمجة كائنية التوجه والبرمجة الإجرائية كليًا، وتدعم بعض خواص البرمجة الوظيفية، وتتعدد استخدامات لغة C++‎‎‎، ومن أشهر استخداماتها تطوير أنظمة التشغيل وتطوير الألعاب وتطوير تطبيقات السحابة وإنترنت الأشياء. لغة جافا Java تعد جافا لغة برمجة عالية المستوى كائنية التوجه تدعم التنفيذ كلغة مترجمة وكلغة مفسرة أيضًا، وتشتهر كثيرًا في مجال تطوير تطبيقات الهاتف ولا سيما الموجهة منها إلى نظام تشغيل أندرويد، كما يشيع استخدامها في مجال تطوير الألعاب. لغة جافا سكريبت JavaScript تتعدد النماذج البرمجية للغة جافا سكريبت، فهي تدعم البرمجة الإجرائية والبرمجة الوظيفية، وكذلك تعد داعمة لنموذج البرمجة كائنية التوجه، وتعد لغة مفسرة، وتبرز جافا سكريبت بشدة في مجال تطوير الواجهات الأمامية لتطبيقات الويب. لغة PHP تعد لغة PHP واحدة من لغات البرمجة المفسرة الكلاسيكية التي لا تزال مستخدمة إلى يومنا هذا، وهي داعمةٌ للبرمجة كائنية التوجه والبرمجة الإجرائية، وتُستخدم في تطوير جهة الخادم Server-Side في تطبيقات الويب. لغة سويفت Swift تحظى لغة سويفت بشعبية واسعة رغم حداثتها وظهورها متأخرًا في الأوساط البرمجية، وهي لغة مترجمة وتتلاءم بشدة مع نموذج البرمجة كائنية التوجه، وكذلك تدعم بعض النماذج البرمجية الأخرى مثل البرمجة الوظيفية، وتُستخدم سويفت لتطوير تطبيقات الجوال الموجهة إلى نظام تشغيل iOS. الخلاصة تعرفنا في مقال اليوم على أهمية لغات البرمجة عالية المستوى وأبرز أنواعها وتطبيقاتها، ويمكن القول أنه لا يمكن الاستغناء عن لغات البرمجة عالية المستوى في عصرنا الحالي، بل يسعى خبراء المطورين لتحديثها وتعديلها تارةً بتارةٍ حتى تكون أسهل وأقرب إلى اللغات البشرية، ولكي تصبح أكفأ وأسرع وأكثر أمانًا، وتُوائِم التغيرات السريعة في عالم التقنية، فاحرص على حجز وظيفتك في المستقبل بتعلُّم إحدى لغات البرمجة عالية المستوى من دورات أكاديمية حسوب المميزة. اقرأ أيضًا ما هي مدة تعلم البرمجة اكتشف ما هي البرمجة وما أهمية تعلمها دليلك الشامل إلى لغات البرمجة لغات برمجة الذكاء الاصطناعي دليلك إلى لغات برمجة الألعاب
    1 نقطة
×
×
  • أضف...