اذهب إلى المحتوى
يحيط صندوق بكل شيء في تنسيقات CSS وفهم طبيعة هذه الصناديق هو المفتاح لإنشاء تخطيطات وإضافة تنسيقات باستخدام CSS، أو لمحاذاة العناصر مع بعضها. سنلقي نظرة معمقة في هذا المقال على نموذج الصندوق في CSS لكي تكون قادرًا على بناء تخ…
السلسلة النصية string هي سلسلة من محرف واحد أو أكثر، والمحرف هو إمّا حرف أو رقم أو رمز، وقد ذكرنا في المقال السابق أن السلاسل النصية في لغة روبي تتمثل بكائن، وعلى عكس لغات البرمجة الأخرى تكون السلاسل النصية في روبي قابلةً للت…
يصبح اختبار مواقع الويب أصعب يدويًا عند نموها، إذ يصبح هناك مزيدٌ من الأمور لاختبارها، وتصبح التفاعلات بين المكونات أكثر تعقيدًا، إذ يمكن أن يؤثر تغيير بسيط في منطقةٍ ما على مناطق أخرى، لذلك ستكون هناك حاجة إلى مزيد من التغيي…
يستخدم لغز أبراج هانوي Hanoi towers مكدسًا stack من الأقراص ذات أحجام مختلفة، وتحتوي هذه الأقراص على ثقوب في مراكزها، لذا يمكنك وضعها على أحد الأعمدة الثلاثة (الشكل 1). لحل اللغز، يجب على اللاعب نقل مجموعة الأقراص إلى أحد الق…
نجيب اليوم في هذا مقال على سؤال ما هي البرمجة وما أهميتها في عصرنا الذي يشهد تطورًا تقنيًا غير مسبوق والذي أصبحت فيه الحواسيب والأجهزة الذكية جزءًا لا يتجزأ من حياتنا وأعمالنا اليومية، فلولا البرمجة لما كانت كل هذه الأجهزة وا…
نستعرض في هذه المقالة كل من الأنواع types والدوال functions المتقدمة في لغة رست. الأنواع المتقدمة يحتوي نظام نوع رست على بعض الميزات التي ذكرناها سابقًا إلا أننا لم نناقشها بالتفصيل بعد، وسنبدأ بمناقشة الأنواع الجدي…
سنوضح في هذا المقال كيفية العمل مع استمارات HTML في إطار العمل جانغو Django، خاصةً الطريقة الأسهل لكتابة الاستمارات لإنشاء نسخ من النموذج وتحديثها وحذفها، إذ سنوسّع موقع المكتبة المحلية LocalLibrary بحيث يمكن لأمناء المكتبة ت…
تُصنف البيانات في لغات البرمجة إلى عدة أنواع يستدل الحاسوب بها للتعامل مع تلك البيانات أثناء تنفيذ البرامج، مثل تحديد العمليات الممكن تنفيذها على تلك البيانات، وهي تشبه إلى حد كبير أنواع البيانات التي نتعامل معها في حياتنا ال…
غطينا مفهوم السمات سابقًا في فصل السمات Traits في لغة رست Rust، إلا أننا لم نناقش التفاصيل الأكثر تقدمًا. سنخوض الآن بالتفاصيل الجوهرية بعد أن تعملت المزيد عن لغة رست حتى الآن. تحديد أنواع الموضع المؤقت في تعريفات السمات…
وُلد الذكاء الصناعي في الخمسينيات من القرن الماضي عندما بدأ بعض الباحثين في مجال علوم الحاسب بالتساؤل عما إذا كان من الممكن جعل أجهزة الحاسب "تفكر" -وهو سؤال ما زلنا نستكشف تداعياته حتى اليوم. إن التعريف المختصر لمجال الذكاء …
لا يخفى على أحد اليوم مدى أهمية تطوير مواقع الويب فالجميع اليوم يسعى لإنشاء موقع إلكتروني خاص به بدءًا من الأشخاص ووصولًا للعلامات التجارية الكبرى إما للتعريف عن أنفسهم وإثبات وجودهم في الفضاء الرقمي، أو لبيع منتجاتهم وخدماته…
سنوضح في هذا المقال كيفية السماح للمستخدمين بتسجيل الدخول إلى موقعك باستخدام حساباتهم الخاصة، وكيفية التحكم بما يمكنهم فعله ورؤيته بالاعتماد على ما إذا سجّلوا الدخول أم لا وبالاعتماد على أذوناتهم، إذ سنوسع موقع المكتبة المحلي…
التعليقات هي أسطر تتجاهلها المصرّفات compilers والمفسرات interpreters في البرامج الحاسوبية، ويمكننا الاستفادة من التعليقات لتوضيح البرامج للمبرمجين الآخرين عبر تفسير الشيفرات البرمجية ووظيفة كل جزء من البرنامج، إضافةً إلى است…

لغة رست غير الآمنة Unsafe Rust

بواسطة Naser Dakhel، في لغة Rust،

لدى كل الشيفرات البرمجية التي ناقشناها حتى الآن ضمانات لأمان الذاكرة في رست وتُفرض هذه الضمانات وقت التصريف، ومع ذلك فإن رست تحتوى على لغة ثانية مخبأة داخلها لا تفرض ضمانات أمان الذاكرة هذه، ويطلق عليها اسم رست غير الآمنة وتع…
بدت تقنية الذكاء الصناعي قبل عقد من الزمان وكأنها شيء منبثق من قصص الخيال العلمي ليس إلا، لكن مع تطور العتاد Hardware وتوافر كميات هائلة من البيانات على الإنترنت وجهود آلاف الباحثين عبر العالم، بدأت تتحوّل تلك القصص شيئًا فشي…
لتحديد ما هو تعقيد big O لجزء من الشيفرة الخاصة علينا إنجاز أربع مهام، هي: تحديد ما هي n، عدّ الخطوات في الشيفرة، إسقاط المراتب الدُنيا، وإسقاط المعاملات. مثلًا، لنجد big O الخاص بالدالة readingList()‎: def readingLis…
توفر نماذج البرمجة طرقًا مختلفة لحل المشكلات البرمجية التي يواجهها المطورون بسيطة فبعض النماذج يناسب حل المشكلات البرمجية البسيطة وبعضها الآخؤ يناسب لحل المشكلات المعقدة ومعرفة كل نموذج من هذه النماذج يساعد المبرمج على اعتماد…
سنوسّع في هذا المقال موقع المكتبة المحلية LocalLibrary من خلال إضافة عدّاد زيارات يعتمد على الجلسات إلى الصفحة الرئيسية. يُعَد هذا مثالًا بسيطًا نسبيًا، ولكنه يوضح كيفية استخدام إطار عمل الجلسة لتوفير سلوك دائم للمستخدمين الم…
يوفر برنامج روبي التفاعلي Interactive Ruby -أو اختصارًا IRB طريقةً سريعةً لاستكشاف لغة برمجة روبي وتجربة الشيفرات البرمجية دون الحاجة لإنشاء ملفات جديدة وتنفيذها، إذ يُعد برنامج IRB حلقة قراءة-تقييم-طباعة Read-Eval-Print Loop…
سنجمع في هذا المقال الصياغة الصالحة في الأنماط وسنتحدث عن مكان استخدام كل واحد منها. مطابقة القيم المجردة Literals يمكننا مطابقة الأنماط مباشرةً مع القيم المجرّدة كما رأينا سابقًا في الفصل التعدادات enums في لغة رست…
×
×
  • أضف...