لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 04/19/18 في كل الموقع
-
تعتبر العبارات الشرطية في البرنامج من الأمور الأساسيّة في البرمجة كما هو معلوم. تمتلك لغة سي شارب نوعين من العبارات الشرطية وهما: بنية if-else وبنية switch-case. العبارة الشرطية if-else وهي بنية مألوفة في معظم لغات البرمجة، تشبه هذه البنية في تشكيلها تلك الموجودة في لغات أخرى مثل ++C و Java. تمتلك هذه البنية ثلاثة أشكال سنتحدّث عنها تباعًا. الشكل الأول لبنية if الشكل الأبسط لبنية if هي: if ([condition]) { statement1; statement2; ... } إذا كان تقييم evaluate الشرط [condition] يعطينا true (أي تحقّق الشرط) عندها ستُفّذ العبارات البرمجيّة الموجودة ضمن الحاضنة {}، وإلّا (أي لم يتحقّق الشرط) فلن يُنفّذ أيّ منها. أنشئ مشروعًا جديدًا سمّه Lesson03_1 واستبدل محتويات الملف Program.cs بالبرنامج البسيط التالي الذي يعمل على مقارنة القيمة المدخلة من المستخدم مع العدد 5 ويُظهر الخرج المناسب: 1 using System; 2 3 namespace Lesson03_1 4 { 5 class Program 6 { 7 static void Main(string[] args) 8 { 9 double x; 10 string str_x; 11 12 Console.Write("Input a number: "); 13 str_x = Console.ReadLine(); 14 15 x = double.Parse(str_x); 16 17 if(x > 5) 18 { 19 Console.WriteLine("The value {0} is greater than 5", x); 20 } 21 22 Console.WriteLine("Goodbye!"); 23 } 24 } 25 } جرّب تنفيذ هذا البرنامج باستخدام Ctrl+F5 (أو من القائمة Debug > Start Without Debugging). سيطلب منك البرنامج إدخال قيمة عدديّة، أدخل العدد 6، سيعرض البرنامج الخرج التالي: The value 6 is greater than 5 Goodbye! أعد تنفيذ البرنامج وأدخل هذه المرّة القيمة 3 لتحصل على الخرج التالي: Goodbye! لاحظ بأنّ خرج البرنامج قد اختلف باختلاف القيم المدخلة، أي أنّ هناك اختلاف في العبارات البرمجيّة التي تمّ تنفيذها في كلّ مرّة. يعود سبب ذلك إلى البنية if الموجودة بين السطرين 17 و 20. يختبر الشرط الموجود بعد كلمة if في السطر 17 فيما إذا كانت قيمة المتغيّر x أكبر تمامًا من 5. فإذا كانت نتيجة تقييم التعبير x > 5 تساوي true فهذا يعني أنّ الشرط قد تحقّق وبالتالي تنفّذ جميع العبارات البرمجيّة الموجودة في الحاضنة (بين السطرين 18 و 20). أمّا إذا كانت نتيجة تقييم التعبير x > 5 تساوي false فعندها سيتجاوز تنفيذ البرنامج البنية if إلى العبارات التي تأتي بعد السطر 20. الشكل الثاني لبنية if هذا الشكل للعبارة الشرطية if مفيد أيضًا، ويُستخدم عندما نريد الاختيار بين مجموعتين من العبارات البرمجيّة، والشكل العام له: if ([condition]) { statement1; statement2; ... } else { Statement3; Statement4; ... } لقد أضفنا القسم else مع حاضنته. المنطق هنا بسيط يمكننا قراءته بالشكل التالي: "إذا تحقق الشرط [condition] عندها تنفّذ الحاضنة الموجودة بعد if مباشرةً، وإلّا يتم تنفيذ الحاضنة الموجودة بعد else مباشرةً" لكي نتعرّف على كيفيّة التعامل مع هذا الشكل، أنشئ مشروعًا جديدًا سمّه Lesson03_2 وانسخ الشيفرة التالية إلى الملف Program.cs: 1 using System; 2 3 namespace Lesson03_2 4 { 5 class Program 6 { 7 static void Main(string[] args) 8 { 9 double x; 10 string str_x; 11 12 Console.Write("Input a number: "); 13 str_x = Console.ReadLine(); 14 15 x = double.Parse(str_x); 16 17 if (x > 5) 18 { 19 Console.WriteLine("The value {0} is greater than 5", x); 20 } 21 else 22 { 23 Console.WriteLine("The value {0} is smaller than or equals 5", x); 24 } 25 26 Console.WriteLine("Goodbye!"); 27 } 28 } 29 } هذا البرنامج مطابق للبرنامج الذي رأيناه قبل قليل باستثناء القسم else مع حاضنته. يسلك هذا البرنامج نفس السلوك الذي يسلكه البرنامج السابق باستثناء أنّه لو أدخل المستخدم قيمة مثل 3 سيعمل البرنامج على طباعة الخرج التالي: The value 3 is smaller than or equals 5 Goodbye! لاحظ أنّ البرنامج Lesson03_1 كان يطبع العبارة !Goodbye فقط عند إدخال القيمة 3. السبب في ظهور الخرج الجديد هو وجود القسم else في بنية if السابقة، فعندما يُقيّم الشرط x > 5 في السطر 17 وتكون نتيجة تقييمه false سينتقل البرنامج فورًا إلى تنفيذ العبارات البرمجيّة الموجودة ضمن حاضنة else وهذا هو سبب ظهور هذا الخرج. العيب الوحيد في هذا البرنامج أنّه لا يستطيع التمييز بين الحالة التي تكون فيها القيمة المدخلة تساوي 5 وبين الحالة التي تكون فيها أصغر تمامًا من 5، ففي كلّ من هاتين الحالتين يعرض البرنامج نفس الخرج عن طريق تنفيذ العبارة الموجودة في السطر 23. ملاحظة: في حال كانت أيّة حاضنة تحوي عبارة برمجيّة واحد فقط، فعندها يمكن عدم استخدام قوسي الحاضنة {} مع أنّني أفضّل استخدامهما لجعل البرنامج أكثر وضوحًا. الشكل الثالث لبنية if وهو الشكل الأكثر شمولًا وفيه نستخدم القسم else if على الصورة التالية: if ([condition]) { statement1; statement2; ... } else if ([condition1]) { Statement3; Statement4; ... } else if ([condition2]) { Statement3; Statement4; ... } ... else { Statement3; Statement4; ... } يمكننا قراءة المنطق هنا على الشكل التالي: "إذا تحقّق الشرط [condition] عندها تنفّذ الحاضنة الموجودة بعد if مباشرةً، وإلّا إذا (else if) تحقّق الشرط [condition1] يتم تنفيذ الحاضنة الموجودة بعد else if الأولى مباشرةً، وإلّا إذا تحقّق الشرط [condition2] يتم تنفيذ الحاضنة الموجودة بعد else if الثانية مباشرةً، وإلّا (else) يتم تنفيذ الحاضنة الموجودة بعد else مباشرةً" نلاحظ أنّه يمكننا استخدام أقسام else if بقدر ما نريد، ولكن يمكن استخدام قسم else وحيد. ونلاحظ أيضًا أنّه بالنتيجة ستنفّذ مجموعة واحدة فقط ضمن حاضنة ما. وواضح أيضًا أنّ أقسام else if و else هي أقسام اختياريّة ووجودها غير مرتبط ببعضها، ولكن إذا حوت بنية if قسم else if فيجب أي يكون القسم else (في حال وجوده) هو القسم الأخير. لكي نثبّت هذا المفهوم بشكل جيّد انظر البرنامج Lesson03_3 التالي: 1 using System; 2 3 namespace Lesson03_3 4 { 5 class Program 6 { 7 static void Main(string[] args) 8 { 9 double x; 10 string str_x; 11 12 Console.Write("Input a number: "); 13 str_x = Console.ReadLine(); 14 15 x = double.Parse(str_x); 16 17 if (x > 5) 18 { 19 Console.WriteLine("The value {0} is greater than 5", x); 20 } 21 else if (x == 5) 22 { 23 Console.WriteLine("The value {0} is equals 5", x); 24 } 25 else 26 { 27 Console.WriteLine("The value {0} is smaller than 5", x); 28 } 29 30 Console.WriteLine("Goodbye!"); 31 } 32 } 33 } يشبه هذا البرنامج سابقيه إلى حدٍّ بعيد، فهو يقارن القيمة المدخلة مع العدد 5 ويعرض رسالة مناسبة نتيجة عملية المقارنة. الشيء الجديد هنا هو التمييز بين الحالة التي تكون فيها القيمة المدخلة تساوي العدد 5 والحالة التي تكون فيها أصغر من العدد 5. قمنا بذلك من خلال إضافة القسم else if جديد يختبر حالة المساواة مع العدد 5. الآن أصبح منطق البرنامج كالتالي: "إذا كانت القيمة المدخلة أكبر تمامًا من 5 (السطر 17) عندها تُنفّذ العبارة الموجودة في السطر 19، وإلّا إذا كانت القيمة المدخلة تساوي 5 (السطر 21) عندها تُنفّذ العبارة الموجودة في السطر 23، وإلّا ستكون القيمة المدخلة أصغر من 5 حتمًا، وتُنفَّذ العبارة الموجودة في السطر 27." العبارة الشرطية switch-case تفيد هذه البنية في الاختيار من بين عدّة حالات منفصلة. لهذه البنية الشكل العام التالي: switch(expression) { case [A]: [statements] break; case [B]: [statements] break; ... [default:] [statements] break; } القسم الأخير default هو قسم اختياري، كما يجب أن يكون هناك قسم case واحد على الأقل. إليك الآن البرنامج Lesson03_4 لفهم كيفيّة استخدام هذه البنية: 1 using System; 2 3 namespace Lesson03_4 4 { 5 class Program 6 { 7 static void Main(string[] args) 8 { 9 double x, y; 10 string str_x, str_y, operation; 11 12 Console.Write("Input first number: "); 13 str_x = Console.ReadLine(); 14 15 Console.Write("Input second number: "); 16 str_y = Console.ReadLine(); 17 18 Console.Write("Choose operation (+, -, *, /): "); 19 operation = Console.ReadLine(); 20 21 x = double.Parse(str_x); 22 y = double.Parse(str_y); 23 24 switch (operation) 25 { 26 case "+": 27 Console.WriteLine("{0} + {1} = {2}", x, y, x + y); 28 break; 29 case "-": 30 Console.WriteLine("{0} - {1} = {2}", x, y, x - y); 31 break; 32 case "*": 33 Console.WriteLine("{0} * {1} = {2}", x, y, x * y); 34 break; 35 case "/": 36 Console.WriteLine("{0} / {1} = {2}", x, y, x / y); 37 break; 38 default: 39 Console.WriteLine("Unsupported operation."); 40 break; 41 } 42 } 43 } 44 } البرنامج السابق عبارة عن برنامج آلة حاسبة بسيطة تدعم العمليات الحسابية الأربع: الجمع والطرح والضرب والقسمة. يطلب البرنامج من المستخدم إدخال قيمتين عدديّتين، بعد ذلك يطلب اختيار العمليّة الحسابيّة المراد إجراؤها على هاتين القيمتين (+ ، - ، * ، /) وتخزين العمليّة المختارة ضمن المتغيّر النصّي operation وذلك في السطر 19. تعمل البنية switch في السطر 24 على مقارنة قيمة المتغيّر النصيّ operation مع القيم الموجودة في أقسام case (الأسطر 26 و 29 و 32 و 35) فإذا طابقت القيمة الموجودة في operation إحدى تلك القيم، فإنّ العبارات البرمجيّة الموجودة ضمن هذا القسم سيتمّ تنفيذها. أمّا إذا لم يحدث مثل هذا التطابق، فستنفّذ العبارات البرمجيّة الموجودة في القسم الاختياري default والتي ستخبر المستخدم (في هذا المثال) بأنّ العمليّة الحسابيّة التي يرغبها لا يدعمها البرنامج. نستفيد من القسم default في تنفيذ عبارات برمجيّة في حال لم يحدث التطابق مع أيّ قسم case سابق. كما نلاحظ أنّ العبارة break الموجودة في كلّ قسم من أقسام case بالإضافة إلى قسم default هي عبارة ضرورية وتؤدّي إلى انتقال تنفيذ البرنامج إلى خارج بنية switch أي إلى السطر 42. جرّب تنفيذ البرنامج وإدخال قيم متنوّعة بالإضافة إلى تجريب العمليات الحسابيّة الأربع. جرّب إدخال عامل باقي القسمة مثلًا (%) وانظر كيف سيجيب البرنامج بالرسالة Unsupported operation. تمارين داعمة تمرين 1 في البرنامج Lesson03_4 السابق إذا أدخل المستخدم القيمة 0 للعدد الثاني، ثم اختار عمليّة القسمة ( / ) سيؤدّي ذلك إلى القسمة على صفر، وهذا يسبّب خطًأ أثناء التنفيذ runtime error يؤدّي إلى رمي استثناء وتوقّف البرنامج عن العمل. أجرِ تعديلًا على البرنامج ليأخذ هذا الأمر بالحسبان. (تلميح: أضف شرط if ضمن قسم case الموافق للعمليّة ( / ) لاختبار قيمة المتغيّر y فيما إذا كانت تساوي الصفر أم لا). تمرين 2 اكتب برنامجًا يطلب من المستخدم إدخال درجة الحرارة الحاليّة. فإذا كانت درجة الحرارة أقل من 4 مئوية يعرض البرنامج الرسالة "Very Cold". أمّا إذا كانت درجة الحرارة بين 4 وأقل من 10 مئويّة يعرض الرسالة "Cold". وفي حال كانت درجة الحرارة بين 10 وأقل من 30 مئويّة يعرض الرسالة "Normal". أمّا إذا كانت درجة الحرارة 30 فما فوق فيعرض البرنامج الرسالة "Hot". الخلاصة تعلّمنا في هذا الدرس مبادئ التعامل مع العبارات الشرطية والحاجة الماسّة إليها في اتخاذ القرارات المناسبة في البرنامج. تعرّفنا على العبارة الشرطية if-else وأشكالها المفيدة، كما تعرّفنا أيضًا على بنية الاختيار swicth-case. في مجال البرمجة من غير الممكن في الواقع أن يخلو أيّ برنامج فعليّ من وجود عبارة شرطية if واحدة على الأقل.1 نقطة
-
CMYK = Cyan Magenta Yellow Key ( Key = black ) يعطيك نظرة على الألوان بعد الطباعة نظرا لاختلاف الألوان الموجودة على الشاشة و الموجودة على المطبعة للتنقل بين اللونين : CTRL + Y1 نقطة
-
ليس هناك حل لهذا الأمر الـ CMYK هي ألوان الطباعة تستعمل خلط 4 ألوان أساسية و تكون أثناء مشاهدتها على الشاشة غير لو كانت في كتاب أو مجلة لأن على الشاشة هي بالـ RGB أما ألوان الـ RGB فهي موجهة للمشاهدة علي الشاشات أو التلفزيون أو الهواتف يمكن استعمال ألوان LAB فهي أوسع مجال من سابقيها و لها استعمالات أخرى كثيرة1 نقطة
-
أهلا بك أحمد، تم تحديث مسار الأساسيات، عدد دروس المسار المحدث أقل ولكن مدة كل درس هي أطول. المساران هما بنفس الطول.1 نقطة
-
نظام MediaWiki هو برنامج مفتوح المصدر ومجاني يخضع لاتفاقية GPL، وقد طُوِّر بالأساس من أجل تلبية احتياجات الموسوعة الحرة ويكيبيديا في عام 2002، بالإضافة إلى تخديم المشاريع الأخرى التي تعمل ضمن مبدأ ويكي. يحوي البرنامج على أكثر من 900 خيار للإعدادات وأكثر من 2000 إضافة متاحة للتحميل لزيادة ميزات نواة البرنامج، وبذلك يمكن القول بأن البرنامج قادر على التعامل مع أحجام ضخمة من البيانات تقدر بعدة تيرابايت، إضافة إلى أنه يستطيع تخديم الآلاف من طلبات محتوى الصفحات من الخادوم خلال ثانية واحدة. نبذة تاريخية عندما انطلقت الويكيبيديا في الشهر الأول من عام 2001 كانت تستخدم برنامج ويكي صغير يسمي UseModWiki حيث طُوّر بلغة بيرل وقام بتخزين جميع الصفحات ضمن ملف نصي. ولكن سرعان ما تَبيّن مدى محدودية هذا البرنامج من ناحية الأداء والقدرة التشغيلة، لذلك قام ماغنوس مانسكي والذي كان محرر في ويكيبيديا بالعمل على نسخة جديدة من البرنامج لتحل مكان UseModWiki ولتعمل تحديدًا مع الويكبيديا، وبذلك قام بتطوير برنامج مكتوب بلغة PHP يخزن المعلومات ضمن قاعدة بيانات MySQL وتم إطلاقه للعمل على النسخة الإنكليزية من الويكبيديا في بداية عام 2002 كما تزامن مع القيام تدريجيًا بتوزيعه للعمل على اللغات الأخرى التي تُستخدم في الويكيبيديا، وقد تم الإشارة إلى هذا البرنامج بكلمات مثل "المرحلة الثانية من UseModWiki" في شهر حزيران من عام 2003 أعلن رسميًا عن ميدياويكي كبرنامج إدارة محتوى يحل محل UseModWiki، وفي شهر تموز من العام نفسه اقترح المساهم في ويكيبيديا دانييل ماير اسم MediaWiki للبرنامج. طريقة تثبيت ميدياويكي لتثبيت أي نظام إدارة محتوى على جهازك يجب أن يكون لديك خادوم أولًا، وقد شرحت طريقة تثبيت خادوم WAMP هنا سابقًا. بعد الانتهاء من عملية تثبيت الخادوم على الحاسب الشخصي، سأبدأ بتثبيت نظام ميدياويكي وفق مجموعة من الخطوات المتسلسلة: 1- نحتاج أولًا للتأكد من أن الخادوم الذي قمنا بتثبيته WAMP يعمل، ويتم التأكد من ذلك من خلال رؤية أيقونة الخادوم باللون الأخضر في شريط المهام 2- نبدأ عملية تحميل نظام ميدياويكي من الموقع الرسمي للنظام https://www.mediawiki.org/wiki/Download حيث نختار النسخة المستقرة stable من النظام 3- ننتقل إلى مجلد www الموجود بالخادوم من خلال النقر على أيقونة WAMP واختيار www directory من القائمة 4- ننسخ الملف الذي قمنا بتحميله في الخطوة 2 إلى مجلد www ونقوم بفك ضغطه ثم نغير اسمه إلى mediawiki 5- نفتح صفحة إعدادات النظام من خلال الرابط http://localhost/mediawiki/mw-config/index.php 6- ستظهر لدينا أولًا خيارات اللغة للنظام وسنبقيها على اللغة الانجليزية ونضغط على continue 7- بعدها تظهر لدينا رسالة ترحيبية تحوي معلومات عن تنسيق النظام واتفاقية شروط استخدامه وبالنقر على زر continue تعني الموافقة على سياسة الموقع 8- تظهر لدينا الآن الاتصال مع قاعدة بيانات، حيث يوضح الموقع أنواع قواعد البيانات التي يمكن استخدامها مع نظام ميدياويكي، سنختار نوع قاعدة البيانات MySQL 9- لبناء قاعدة بيانات الموقع نقوم بفتح صفحة التحكم الخاصة بالخادوم عبر الرابط http://localhost/phpmyadmin/ وندخل اسم المستخدم root أما كلمة المرور تترك فارغة ملاحظة: هذه الصفحة تطلب مرة واحدة فقط عند أول دخول لصفحة إعدادات الخادوم خلال الجلسة. 10- بعد الدخول إلى صفحة إعدادات الخادوم ننقر على زر new الموجود في القائمة الجانبية وندخل في المربع create database اسم قاعدة البيانات الخاصة بالموقع مثل my_wiki ثم ننقر على زر create 11- نعود لصفحة إعدادات قاعدة البيانات التي ظهرت لدينا في الخطوة 8 ونكمل الإعدادات من خلال كتابة اسم قاعدة البيانات والمضيف واسم المستخدم ثم ننقر زر continue 12- ستظهر صفحة إعدادات قاعدة البيانات، نبقى على الاختيارات الافتراضية لهذه الصفحة لأن هذه الخيارات هي الأفضل بالنسبة للإدخال باللغة العربية، وبعدها نضغط على continue 13- ستظهر صفحة تنصيب المشروع حيث ندخل اسم موقعنا واسم المستخدم وكلمة المرور وفي النهاية يمكن اختيار النمط القياسي في التنصيب من خلال الضغط على خيار just install the wiki ثم continue 14- وفي صفحة install نختار continue أيضًا 15- عند انتهاء عملية تثبيت النظام سيقوم تلقائيًا بتحميل ملف localSettings.php والمطلوب هو نسخ هذا الملف والاحتفاظ به ضمن مجلد mediawiki داخل مجلد www بحيث يكون ملف index.php و localSettings.php في نفس المجلد 16- للدخول إلى صفحة الموقع الخاص بنا نختار http://localhost/mediawiki/index.php حيث نلاحظ أن شكل الموقع الخاص بنا يشبه تمامًا شكل صفحات ويكيبيديا. وبهذا نكون قد انتهينا من عمليت تثبيت النظام ويمكننا الآن البدء ببناء محتوى خاص بالموقع ونشره. بناء موقع باستخدام ميدياويكي سأبدأ الآن بعملية بناء محتوى صفحات ويب من خلال ميدياويكي، ولكن أولًا سأضيف اللغة العربية إلى النظام. أولًا: تغيير النظام إلى اللغة العربية لتغيير إعدادات النظام إلى اللغة العربية نحتاج أولًا إلى إضافة مجموعة من المكونات الخاصة باللغات المتعددة إلى النظام ثم تغيير إعداداتها لتناسب اللغة العربية وذلك وفق الخطوات التالية: 1- نقوم بتحميل إضافة تسمى UniversalLanguageSelector من خلال الرابط https://www.mediawiki.org/wiki/Special:ExtensionDistributor/UniversalLanguageSelector فيظهر لدينا شاشة لاختيار رقم نسخة ميدياويكي حيث نختار MediaWiki 1.3 2- يبدأ تحميل الإضافة بصيغة ZIP تلقائيًا، ثم ننسخ الملف إلى المسار C:\wamp64\www\mediawiki\extensions وننسخ إليه ملف الإضافة عند الانتهاء من تحميله ثم نفك ضغطه داخله. 3- نرجع إلى المسار C:\wamp64\www\mediawiki ونفتح منه الملف LocalSettings.php ثم نضيف في نهايته سطر الرماز wfLoadExtension( 'UniversalLanguageSelector' ); 4- نقوم بتسجيل الدخول كـ admin إلى النظام من خلال النقر على زر Log in الموجود في الأعلى 5- بعد أن تظهر الصفحة الرئيسية ننقر على رابط preferences فينتقل إلى صفحة الإعدادات حيث سنقوم بالتعديل داخل قسم Internationalisation حيث نختار more language setting 6- ستظهر لدينا لوحة تحكم خاصة باللغة فقط ونلاحظ وجود اللغة العربية ضمن الاقتراحات حيث يقوم النظام بإظهار مجموعة من خيارات اللغة التي قام باستنتاجها من خلال الاعتماد على تخصيصات الحاسب ومنطقتنا 7- عند اختيار اللغة العربية سينتقل عرض المتصفح فورًا إلى اللغة العربية 8- لتغيير لغة الإدخال إالى العربية نبقى داخل قسم “تفضيلات” الذي يظهر لدينا وننقر على رابط “المزيد من إعدادات اللغة” 9- سيظهر لدينا في الأسفل “إعدادات الإدخال” نختار من “إدخال” العربية ثم ننقر على “طبق الإعدادات” وعند فتح الصفحة الرئيسية للموقع ستظهر لدينا باللغة العربية ثانيًا: اختيار القوالب يوجد قوالب قياسية تم اعتمادها من قبل ميدياويكي يمكن استخدامها، حيث يمكن اختيارها من خلال الدخول إلى “تفضيلات” ثم “الواجهة”. نلاحظ الخيار المعلم هو القالب الحالي، نختار القالب الذي نريد ثم ننقر على حفظ حيث ينتقل الموقع مباشرة إلى الشكل الجديد له. ثالثًا: إضافة محتوى إن الموقع الذي قمنا ببنائه باستخدام ميدياويكي يحاكي بشكل كامل موقع ويكيبيديا وبالتالي فإن عملية إضافة محتوى في موقعنا الخاص هنا تشابه عملية إضافة محتوى على الويكيبيديا، حيث يتم ذلك بالخطوات التالي: 1- في قائمة البحث في الأعلى ندخل اسم المقال التي نريد كتابتها ونضغط على زر البحث (او go في الويكيبيديا) 2- سيظهر في نتائج البحث أنه لايوجد مقالة بهذا العنوان وبالتالي أختار "أنشئ الصفحة (لمحة عن ميدياويكي)" 3- تظهر الآن صفحة إنشاء المقالة حيث نكتب المقالة التي نريد ضمن العرض ثم نختار احفظ الصفحة 4- سنجد الآن أن المقالة قد تم إضافتها إلى الموقع ملاحظة: في حال أبقينا لغة العرض باللغة الإنجليزية سيظهر لدينا محرر المقالة بشكل أفضل حيث يحوي العديد من الأزرار التي تمكننا من تحرير المقالة دون الحاجة إلى استخدام الرموز يعتبر ميدياويكي هو نظام لإدارة محتوى صفحات الويكي، ولذلك فإن أغلب المواقع التي صممت من خلاله تعتمد على مبدأ الويكي ومنها الويكيبيديا أضخم موسوعة حرة تمتلك الملايين من المقالات بمختلف لغات العالم Conservapedia أيضًا موسوعة ولكنها تمتلك معايير كبيرة بحيث لا تسمح بأي تشويه للحقيقة Wikiquote موسوعة تضم العديد من الأقوال منقولة عن مشاهير، أفلام، أو من الأدب WikiTravel موسوعة تضم أشهر أمكان السفر والسياحة حول العالم Wikihow موقع ضخم يملك أكبر عدد من المقالات عن “how to” أو “كيف” حول العالم Wikicars أكبر موسوعة تحوي معلومات عن السيارات Wikisummaries موسوعة تحوي على عدد من ملخصات الكتب Game Programming Wiki أحد أفضل الموارد لمطوري الألعاب حيث يحوي العديد من المقالات التعليمية وأسطر code لبرمجة ألعاب الفيديو1 نقطة