أكثر المفاهيم الخاطئة أو الأساطير الشائعة حول علوم الكمبيوتر

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

1. علوم الكمبيوتر للذكور فقط
هذا مفهوم خاطئ شائع ليس فقط في علوم الكمبيوتر ولكن أيضًا في المجالات التقنية الأخرى. يعتقد كثير من الناس أن علوم الكمبيوتر هي للذكور فقط.

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

2. علوم الكمبيوتر هي  البرمجة
هذا هو مفهوم خاطئ آخر شائع غير صحيح. في حين أن معظم علماء الكمبيوتر يبدون كمبرمجين ، فإن الموضوع لا يتعلق بالبرمجة. هناك فروع مختلفة لعلوم الكمبيوتر التي يمكن تنفيذها دون مهارات البرمجة.

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

3. يجب أن تكون جيدًا في الرياضيات للنجاح في علوم الكمبيوتر
صحيح أن الرياضيات وعلوم الحاسوب تسيران جنبا إلى جنب. ومع ذلك ، لا يجب أن تكون عالم رياضيات ذكي من أجل النجاح في مجال علوم الكمبيوتر.

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

4. يجب عليك تعلم علوم الكمبيوتر من أجل النجاح في صناعة التكنولوجيا
قد تبدو صناعة التكنولوجيا مرعبة لشخص لا يقوم بعلوم الكمبيوتر. يمكن لأي شخص اقتحام صناعة التكنولوجيا ، بما في ذلك ذلك الشخص الذي لم يدرس علوم الكمبيوتر.ليس من الضروري أن تكون عالمًا في مجال الكمبيوتر لكي تكون مبرمجًا.  

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

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

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

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

كيف تحمي حسابتك في الشبكات الاجتماعية من الاختراق والابتزاز الإلكتروني

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

الدورة مباشرة يوم الجمعة 15/2/2019 من الساعة 7-10م بتوقيت مكة المكرمة مع الدكتور ياسر العصيفير، وسيتم شرح اشهر الشبكات الاجتماعية وكيفية حمايتها مع المستخدمين بشكل تطبيقي من تويتر وفيسبوك الى الواتس اب والسناب وانستجرام وجوجل، ستتمكن من تفعيل كل اساليب الحماية وفهمها بشكل سهل حتى تصعب وتوقف 90٪ من محاولات الاختراقات لحسابك.

افضل5 خوادم ويب مفتوحة المصدر الأكثر شعبية التي يمكنك استخدامها في مشاريعك مجانا


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





فقط كتذكير ، تم تصميم خادم ويب مفتوح المصدر لمعالجة الطلبات عبر HTTP..


1. Apache HTTP


يعد Apache HTTP أحد أكثر خوادم الويب شيوعًا . ووفقًا للأرقام الواردة من مصادر مختلفة ، يعتقد أن الخادم يعمل على توفير 60٪ على الأقل من جميع مواقع الويب في العالم.


على الرغم من أن Apache يرتبط عادةً بنظام Linux ، إلا أنه يمكن نشره بسهولة على نظام التشغيل Windows. يستخدم خادم الويب بنية نمطية تسمح بتضمين وحدات إضافية فيه بغرض توسيع ميزاته. على سبيل المثال ، يمكنك تثبيت mod_proxy بحيث يتيح الخادم عبّارة proxy.


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


2. NGINX


بدأ التطور الجاد لـ NGINX في عام 2002 قبل أن يتم إصداره للجمهور في عام 2004. وكان الهدف من الخادم حل مشكلة تعرف باسم مشكلة C10K. هذه المشكلة هي لتصميم خادم ويب قادر على التعامل مع العديد من الاتصالات المتزامنة في وقت واحد.


NGINX مدعوم من قبل بنية غير متزامنة وهي مسؤولة عن التعامل مع جلسات متعددة ومتزامنة. جعلت الكفاءة من حيث استخدام الموارد خادم الويب شائعًا بين المشرفين. NGINX خفيف الوزن وقابل للتطوير بسهولة.


بصرف النظر عن نشره كخادم ويب ، يمكن أيضًا نشر NGINX كخادم proxy.


3. Apache Tomcat


بينما يعرف الكثيرون Apache Tomcat كمصدر Java مفتوح المصدر ، هل تعلم أنه يمكن أن يعمل أيضًا كخادم ويب؟ أساسا ، واحدة من وظائف servlet هي توسيع وظائف الخادم. يمكنهم الاستجابة للطلبات المرسلة من خلال التطبيقات التي تتم استضافتها على خوادم الويب.


تمت كتابة التعليمات البرمجية الأساسية لـ Apache Tomcat بواسطة Sun Microsystems. نظرًا للوزن الخفيف ، فإن جهاز Tomcat يتميز بالمرونة الفائقة ويمكن تخصيصه بسهولة. يمكنك تعديله ليتناسب مع الاحتياجات الخاصة لتطبيق الويب الخاص بك تم تحسين Tom Cat أيضًا لتحقيق الثبات. وسوف يضمن أن يعمل تطبيق الويب الخاص بك بشكل صحيح دون مواجهة أي عقبات.


يوفر Apache Tomcat مستوى إضافيًا من الأمان. يحتوي على جدار حماية إضافي يمكن الوصول إليه فقط على مستوى تثبيت Apache. وهذا يجعله خادمًا مثاليًا لتطبيقات الويب الآمنة.


4. Node.js


اكتسب Node.js قدرا كبيرا من الاهتمام في السنوات الأخيرة. وهي بيئة جافا سكريبت من جانب الخادم للتطبيقات المستندة إلى الويب. وهذا يشمل خوادم الويب.


أحد الأشياء التي تميز Node.js وخوادم الويب الأخرى هي بيئة تشغيل عبر النظام الأساسي المشترك. وهو حل مثالي للمآخذ والبروتوكولات ذات المستوى المنخفض. هذا يجعله خادم ويب مثالي لتطبيقات الويب في الوقت الحقيقي. لا يزال من الممكن استخدامه لمواقع ويب بسيطة.


Node.js هو خادم الويب . وهو متوافق مع أنواع مختلفة من قواعد البيانات بما في ذلك قواعد بيانات CouchDB و MongoDB و MySQL و NoSQL.


5. Lighttpd


يعمل خادم الويب Lighttpd على توفير نسبة جيدة جدًا من مواقع الويب . كما يوحي الاسم خادم الويب هو حرفيا الخفيفة. إنها مرنة ومثالية لتحقيق الكفاءة.


يحتوي Lighttpd على متطلبات ذاكرة أصغر من معظم خوادم الويب. يستخدم Lighttpd بنية تعتمد على الحدث والتي تم تحسينها للاتصالات المتوازية.


يدعم Lighttpd إعادة كتابة عناوين URL وضغط الإخراج و FastCGI. إنه خادم مثالي لإطار Ruby and Rails.


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

موقع ممتاز جداً لتحميل عشرات الكتب في البرمجة ،التصميم ، الشبكات ، الخوارزميات و لأغلب لغات البرمجة مجاناً


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


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


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



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


استفد الآن من دورة مجانية في الأمن والاختراق الاخلاقي بشرح باللغة العربية !

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


دورة Cyber Hacker Certified CHC "الاختراق الأخلاقي والأمن الإلكتروني" دورة تقام أونلاين وتستهدف جميع الفئات ومن يريد الدخول الى عالم أمن المعلومات بشكل تطبيقي وعملي.

هذه الدورة مقدمة من دكتور سعودي  في أمن المعلومات والاختراق الأخلاقي وهي متاحة مجانا الآن في اليوتيوب ، وتضم هذه الدورة 10 محاور رئيسية وهي كالتالي :
  1. مقدمة في الاختراق الأخلاقي Introduction to Ethical Hacking
  2. مقدمة في اللينكس Introduction to Linux OS
  3. جمع المعلومات Footprinting
  4. الهندسة الاجتماعية Social Engineering
  5. الفحص Scanning
  6. الدخول على الجهاز Gain Access
  7. الحفاظ على الاختراق Maintain Access
  8. إخفاء الأثر Remove Logs
  9. اختبار الجوالات Mobile Pen Test
  10. اختراق الوايرلس Wifi Hacking
طبعا بعد انتهائك من الدورة يمكنك القيام باختبار وللحصول على شهادة معتمدة ، لكن رسوم الاختبار شاملة الشهادة سعرها 80 دولار.


ترتيب أكثر لغات البرمجة شيوعًا في عام 2018 حسب منصة GitHub

منصة شعبية للمطورين جيثب أصدرت  تقرير لعام 2018. يحلل مؤشرات نشاط المشاركين في GitHub: عدد المشاركين النشطين ، والموضوعات والمنصات الأكثر شعبية ، والمستودعات الأسرع نمواً ، ولغات البرمجة الأكثر شعبية في المجتمع. هذه البيانات من 30 سبتمبر من العام الماضي إلى 30 سبتمبر من هذا العام.

في عام 2018 ، نما مجتمع مطوري GitHub بنحو 8 ملايين شخص. في المجموع ، يوجد في المنصة الآن أكثر من 31 مليون مطور ، و 80٪ منهم ليسوا مقيمين في الولايات المتحدة. حوالي 2.1 مليون منظمة تستخدم الآن منصة التطوير GitHub . اعتبارا من 30 سبتمبر من هذا العام ، تم استضافة حوالي 96 مليون مستودع فيها.

مشاريع المصادر المفتوحة الأكثر شعبية هي Microsoft / vscode و facebook / react-native و tensorflow / tensorflow. وتعد شركة Microsoft هي الشركة الأكثر نشاطًا في مجال المصادر المفتوحة ، تليها شركة Google وشركة Red Hat.

في ترتيب لغات البرمجة الأكثر شيوعًا من حيث عدد المساهمين ، لم تتغير الثلاثة الأولى مقارنةً بالعام الماضي ، ومع ذلك ، غيَّرت بايثون و PHP مراتبها:


كما قادت المنصة ترتيب اللغات التي تكتسب شعبية كبيرة (حسب عدد المساهمين):

 وفقًا لتقرير العام الماضي ، كانت لغات البرمجة الأكثر شيوعًا في المجتمع هي JavaScript و Python و Java. 

8 أسباب قوية لتعلم لغة برمجة C #

 إذا كنت تريد أن تكون مبرمجًا جديًا ، فيجب أن تتعلم لغة قوية بما يكفي لإنجاز بعض المهام الفنية. إذا كنت جديدًا في البرمجة ، فأنت بحاجة إلى لغة تساعدك على الدخول إلى عالم البرمجة.ولا شك ان أول لغة قد تصادفك عندما تكون طالبا في اي جامعة او كلية او غير ذلك فهي لغة برمجة  C اوC++وكذلك C# . لذا ، هل يجب أن أتعلم C #؟

C # (تلفظ سي شارب/see sharp) هي لغة برمجة موجهة للكائنات والأغراض العامة. يمكن استخدامها لتطوير التطبيقات ومنصات الويب. ومن بين أفضل 5 لغات برمجة شعبية. في هذه المشاركة ، سوف أعطيكم أسباب مقنعة لماذا يجب أن تتعلم C #.

1. C # هي متعددة الاستعمالات

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

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

2. صديقة للمبتدئين

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

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

3. ذات أساس قوي

بعد أن تصبح خبيرًا في إحدى لغات البرمجة ، من الواضح أنك ترغب في استكشاف لغات برمجة أخرى. C # مشابه جدًا لمعظم لغات البرمجة. بمجرد إتقان خصوصيات وعموميات C # ، سيكون لديك وقت سهل عند تعلم لغات برمجة أخرى.

4. طريقة تركيب ثابتة

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

حقيقة أن C # هي لغة مكتوبة بشكل ثابت يعني أنها صارمة بعض الشيء على كيفية كتابة التعليمات البرمجية الخاصة بك. إن مصدر الشفرة لـ C # أكثر تناسقًا وبالتالي يسهل الحفاظ عليه حتى مع نموه من حيث التعقيد والحجم.

5. C # لغة سريعة

تكون اللغات المكتوبة بشكل ثابت دائمًا أسرع من اللغات التي يتم كتابتها ديناميكيًا . هذا يعني أن التطبيقات المبنية على C # هي أسرع نسبيًا من تلك التطبيقات المبنية على اللغات التي يتم كتابتها ديناميكيًا. لا تتطلب اللغة الكثير من الموارد عند تشغيلها على جهازك.

6. C # مثالية لتطوير الالعاب

تطوير الالعاب هو واحد من المجالات الأكثر ربحية في عالم التكنولوجيا. إذا كنت تحلم بأن تكون مطور ألعاب ، فإن C # هي لغة مثالية بالنسبة لك. تم تطوير معظم ألعاب الفيديو باستخدام C #.

7. فرص وظيفية مربحة

ستفتح لك C # العديد من الفرص الوظيفية. تبحث الشركات في جميع أنحاء العالم عن  مبرمجي C # لأداء مهام مختلفة. وسواء كان الأمر يتعلق ببناء تطبيقات للهاتف المحمول أو خدمة ويب أو تطبيق مؤسسي ، فستكون مهاراتك تحت الطلب. كما ان   متوسط ​​رواتب المبرمجين C # مرتفع للغاية.

8. C # تتمتع مجتمع كبير

هناك مجتمع كبير من المبرمجين C #. وهذا يعني أنه يمكنك دائمًا الحصول على المساعدة أو الإلهام كلما احتجت إلى ذلك.

Julia Vs Python : أي لغة برمجة يجب أن تتعلمها؟

Julia vs Python: أيهما أفضل لغة برمجة؟ أي واحد يجب أن استخدمه لعلوم البيانات؟ أي واحد بين الاثنين هو أكثر تنوعا؟ هذه ليست سوى بعض الأسئلة التي قد تسأل نفسك. في هذه المقالة ، سنقوم بإجراء مقارنة شاملة بين لغات برمجة جوليا وبيثون.




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

وبصرف النظر عن تطوير التطبيقات العادية ، فإن Python هي لغة برمجة مفضلة لتعلم آلة البيانات وتحليل البيانات. في حين تتباهى بايثون بشعبية هائلة ، تقوم جوليا أيضًا بخطوات مهمة في هذا المجال.تحتل المرتبة الـ50 على مؤشر «تيوبي» لأهم لغات البرمجة عالمياً وأكثرها شعبية ، وفرضت نفسها على خريطة لغات البرمجة، وجعلت كثيرين يتوقعون أن تصبح البديل المحتمل للغة «بايثون» الأكثر شهرة والأسرع نمواً على الإطلاق حالياً.

مقارنة : جوليا Vs بيثون

جوليا Julia

تم الكشف عن لغة برمجة جوليا في عام 2012 وكان الهدف منها معالجة أوجه القصور في لغات البرمجة الأخرى بما في ذلك بايثون. كما تم تصميمه للاستفادة من أقوى جوانب لغات البرمجة الأخرى مثل السرعة والانفتاح. تستخدم اللغة بشكل أساسي لمعالجة البيانات والحوسبة العلمية.

ميزات فريدة من لغة جوليا

1. يتم تجميعها وليس هناك حاجة لتفسيرها: يتم تصنيف جوليا على أنها من لغات (JIT) ويتم تجميعها بواسطة إطار عمل LLVM. نظرًا لكونها غير مفسرة ، فإن جوليا هي لغة برمجة سريعة. يمكن مقارنتها بسرعة لغة C.

2. لديه بناء مباشر يمكن فهمه من قبل المبتدئين. إن تركيبها يشبه إلى حد بعيد Python.

3. جوليا هي لغة مكتوبة بشكل ديناميكي . ليس عليك تحديد أو توقيع المتغيرات

4. يدعم برنامج metaprogramming: يمكن استخدام برنامج جوليا لإنشاء برامج جوليا أخرى والتي سيكون لها رموز فريدة من نوعها.

5. يمكن الوصول إلى مكتبات لغات البرمجة الأخرى مثل C و Fortran و Python.


الملامح الرئيسية لبيثون

1. Python هي لغة برمجة عالية المستوى موجهة للكائنات.

2. مثل جوليا ، تعتبر بايثون لغة مكتوبة ديناميكيًا.

3. بايثون هي لغة مفسرة ، وليس هناك حاجة لتجميعها.

4. مثل C ، تعتبر Python لغة مفتوحة المصدر. يمكنك تنزيله واستخدامه بحرية.

5. اللغة يمكن أن تعمل على أي جهاز.

مزايا لغة جوليا على لغة بايثون

فيما يلي المزايا الرئيسية التي تمتلكها جوليا على لغة بايثون.

1. السرعة

في حالتها الافتراضية ، لا تزال لغة جوليا أسرع من بايثون. هذا ممكن لأن Julia يستخدم كلا من تعريفات النوع و JIT (Just in time) compilation. لا يمكن أن تتطابق الإصدارات غير المثلى من برمجة بايثون مع سرعة جوليا.

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

2. إدارة الذاكرة التلقائية

مع جوليا ، لن تكون مثقلاً بمهام تحرير الذاكرة وتخصيصها. اللغة تقوم بهذه المهام .

3. بناء الجمل الرياضيات

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

4. التوازي

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

مزايا بايثون على جوليا


إليك بعض الأسباب التي تجعلك تختار بايثون على جوليا:

1. جوليا لا تزال جديدة

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

2. يبدأ مؤشر مصفوفات من 1

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

3. المجتمع

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


4. التوافق

يتم دعم Python بواسطة مكتبات وبرامج تابعة لجهات خارجية أكثر من جوليا.

استنتاج


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

ما هو الJavascript ؟

ما هو الJavascript ؟



ملحوظة: يتوجَّه هذا الدرس، والدروس التي تليه - إلى من لديهم معرفة سابقة بأساسيّات التطوير للوِب: HTML وCSS.

التعريف العام لجافاسكريبت
تُعرَّف جافاسكريبت بأنّها لغة برمجة تسمح لك بتنفيذ أشياء معقدة على صفحات الوِب، تعدّ صفحات الوِب الحديثة أكثر من مجرد موقع يُظهر لك معلومات ثابتة تتصفحها، فهي - مثلًا - تعرض تحديثات المحتوى المباشرة، أو تعرض الخرائط التفاعلية، أو الرسومات المتحركة ثنائية أو ثلاثية الأبعاد، أو تمرّر ملفات الفيديو المصورة، وما إلى ذلك.

تمثّل جافاسكريبت الطبقة الثالثة من طبقات تقنيات الوِب القياسية. الطبقتان الأوليان هما HTML وCSS.

HTML هي لغة توصيف Markup نستخدمها لإنشاء محتوى الوِب وإضفاء معنى عليه، مثل تعريف الفقرات، العناوين وجداول البيانات أو تضمين الصور ومقاطع الفيديو في الصفحة.

CSS هي لغة تعرّف قواعد الأنماط Style rules التي نستخدمها لتطبيق التصميم على المحتوى الذي تصفه HTML، على سبيل المثال، تعيين ألوان وخطوط الخلفية، ووضع محتوى ما في أعمدة متعددة.

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

سنأخذ مثالًا يوضح كيفية بناء هذه الطبقات الثلاث فوق بعضها بشكل لطيف. لنأخذ تسمية نص بسيط كمثال.
سنضع علامة عليه باستخدام HTML لإعطائه هيكلًا وغرضًا:

<p>Player 1: Chris</p>
النتيجة حتى الآن.

سنضيف تحسينات على الشكل باستخدام CSS:

p {
  font-family: 'helvetica neue', helvetica, sans-serif;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-align: center;
  border: 2px solid rgba(0,0,200,0.6);
  background: rgba(0,0,200,0.3);
  color: rgba(0,0,200,0.6);
  box-shadow: 1px 1px 2px rgba(0,0,200,0.4);
  border-radius: 10px;
  padding: 3px 10px;
  display: inline-block;
  cursor:pointer;
}
أصبحت النتيجة الآن كالتالي.

وأخيرًا، نضيف بضعة تعليمات جافاسكريبت لتنفيذ السلوك الديناميكي.

var para = document.querySelector('p');

para.addEventListener('click', updateName);

function updateName() {
  var name = prompt('Enter a new name');
  para.textContent = 'Player 1: ' + name;
}
غرضنا الآن ليس شرح التعليمات السابقة (سنفعل ذلك لاحقا) ولكن توضيح ما يمكن أن تضيفه جافاسكريبت لـHTML وCSS.

عند النقر على النص تظهر نافذة تطلُب إدخال اسم ثم عند إدخال الاسم في النافذة المنبثقة والنقر على زر OK تأخذ النص وتطبعه أمام الجملة Player 1.

مالذي يمكن Javascript  فعله حقا؟

تتكون لغة جافاسكريبت الأساسية من بعض ميزات البرمجة الشائعة التي تسمح لك بفعل أشياء مثل:

تخزين قيم مفيدة داخل متغيرات Variables. في المثال السابق على سبيل المثال، نطلب من المستخدم ادخال اسم جديد ثم يُخزَّن هذا الاسم في متغير يسمى name.

العمليات على أجزاء من النص (المعروفة باسم سلاسل المحارف Strings في البرمجة). في المثال أعلاه، نأخذ سلسلة المحارف Player 1: ونضمها إلى متغير الاسم المذكور أعلاه لإنشاء الجملة الكاملة، على سبيل المثال Player 1: Chris.

تشغيل التعليمات البرمجية ردًا على أحداث معينة تحدث على صفحة وِب. في المثال أعلاه استخدمنا الحدث click الذي يخبرنا أن المستخدم نقر على النصّ ثم نشغّل الشفرة التي تعمل على تحديث النص.

والكثير!

ولكن ما هو أكثر إثارة هو وظيفة بُنيت على لبّ لغة جافاسكريبت الأساسي. تسمى APIs وهي اختصار لـ Application Programming Interface واجهات برمجة التطبيقات. تتيح لك واجهات برمجة التطبيقات (APIs) المزيد من القوة لاستخدامها في شفرة جافاسكريبت.

تُعرّف واجهات برمجة التطبيقات (APIs) على أنها مجموعات جاهزة من الشفرات البرمجيّة تسمح لمطور البرامج بتنفيذ برامج سيكون من الصعب أو المستحيل تنفيذها من دون استخدام واجهة برمجة التطبيقات.

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

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

تنقسم واجهات برمجة التطبيقات (APIs) عمومًا إلى فئتين.

  1. واجهات برمجة التطبيقات الخاصّة بالمتصفّح Browser APIs: تُدمَج واجهات برمجة تطبيقات في المتصفّح لإعطائه القدرة على عرض البيانات من بيئة الحاسوب المحيطة به، أو القيام بأشياء معقدة مفيدة. فمثلا:
  2. تسمح لك واجهة برمجة تطبيقات DOM وهي اختصار لـ Document Object Model بمعالجة HTML و CSS، إنشاء، إزالة وتغيير HTML ، تطبيق أنماط Styles جديدة ديناميكيًّا على صفحتك، وما إلى ذلك.
  3. في كل مرة تُعرَض فيها نافذة منبثقة تظهر على صفحة، أو يُعرَض محتوى جديد -كما رأينا أعلاه في مثالنا السابق- فواجهة DOM هي المسؤولة عن ذلك.
  4. تستعيد واجهة برمجة التطبيقات Geolocation API معلومات الموقع الجغرافي، ممّا يفسّر كيف يمكن لخرائط جوجل Google Maps أن تعثُر على موقعك الجغرافي وترسمه على الخريطة.
  5. تسمح لك واجهات برمجة تطبيقات اللوحة Canvas و WebGL بإنشاء رسومات متحركة ثنائية الأبعاد وثلاثية الأبعاد. يقوم الأشخاص بأشياء مدهشة باستخدام تقنيات الوِب هذه.
  6. تسمح لك واجهات برمجة التطبيقات الصوتية والمرئية مثل HTMLMediaElement و WebRTC بالقيام بأشياء مثيرة للاهتمام حقًا مع الوسائط المتعددة، مثل تشغيل الصوت والفيديو مباشرة في صفحة وِب أو التقاط الفيديو من كاميرا الوِب الخاصة بك وعرضها على جهاز كمبيوتر شخص آخر (جرب العرض التوضيحي snapshot)
  7. ملاحظة: لن تعمل العديد من العروض التوضيحية المذكورة أعلاه في متصفح أقدم. عند التجربة، من الأفضل استخدام متصفح حديث مثل فايرفوكس أو كروم أو Edge أو Opera لتشغيل الشفرة.
واجهة برمجة التطبيقات الخاصّة بطرف ثالث Third party APIs. لا تُضمَّن هذه الواجهات في المتصفح مبدئيًّا. وعليك عمومًا الحصول على التعليمات البرمجية والمعلومات من مكان ما على الوِب. فمثلا:
تتيح لك واجهة برمجة تطبيقات تويتر Twitter API إجراء أشياء مثل عرض أحدث التغريدات
على موقعك الإلكتروني.

    تسمح لك واجهة برمجة التطبيقات لخرائط غوغل Google Maps API
    بتضمين الخرائط المخصصة في موقعك على الوِب، وغير ذلك من الوظائف.
    ملاحظة: واجهات برمجة التطبيقات هذه متقدمة، ولن يتم تغطية أي منها في هذه الدّروس، ولكن الروابط الواردة أعلاه توفّر وثائق شاملة إذا كنت مهتمًا بمعرفة المزيد.
    يوجد الكثير لتعلّمه، لا تفقد حماسك. دراسة جافاسكريبت لمدة 24 ساعة لن تعطيك القدرة على بناء فيسبوك، خرائط غوغل أو إنستغرام. هناك الكثير من الأساسيات التي يجب تغطيتها أولًا.