YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

Arabic subtitles

Using Variables

Get Embed Code
13 Languages

Showing Revision 2 created 12/28/2015 by Fran Ontanaya.

  1. في المجموعة التالية من الاختبارات

  2. سأريكم كيف يتم استخدام
    المتحولات في الواقع
  3. وجميع البرامج التي ستقوم بها في
    الجزء 2، ستترجم
  4. مما يعني أن الكومبيوتر يمكن أن يفهم
    الكود المكتوب
  5. بالنسبة لهم، سنكون
    قادرين على انشاء تطبيق
  6. الآن، في حين أن البرامج سوف
    يكون قادراً على التنفيذ على الهاتف
  7. هناك إحتمال أنه قد لا
    يقوم بالهدف المقصود منه
  8. وهذا ما يعرف باسم
    الخطأ المنطقي
  9. يعني الخطأ المنطقي أن هناك شيء
    خاطئ في المنطق الذي
  10. استخدمته لكتابة الكود
  11. لنلقي نظرة على البرنامج القصير
  12. وسيناريو المثال وسوف أشرح لكم
    كيفية حل أحد هذه الأخطاء
  13. حسناً، إليكم هذا المثال
  14. كل من هذه البرامج سيكون لها هدف
    والتي سوف تكون مكتوبة هنا
  15. البرنامج بنفسه سيكون
    في الصندوق الأخضر
  16. حسناً، ليكن لدينا الهدف في البرنامج
    وهو لحساب ما يسمى "sleep debt"
  17. الآن، ما تحتاج إليه من النوم مختلف
    قليلاً عن طريق العمر، ولكن في المتوسط
  18. يحتاج الناس حوالي
    ثمان ساعات من النوم ليلاً
  19. لذا فإن ما يحاول البرنامج القيام به هو
    حساب "sleep debt" في أسبوع واحد
  20. سيقوم مستخدم البرنامج بالتقدم ويقدر
    كم ينام
  21. بشكل وسطي في ​​أيام الأسبوع
    وكم ينام بشكل وسطي في يوم نهاية الأسبوع
  22. على سبيل المثال، لنفترض أن المستخدم
    ينام خمس ساعات في أيام الأسبوع
  23. وتسع ساعات في
    عطلة نهاية الأسبوع
  24. إن الكود هنا
    في المربع الأخضر
  25. وأول شيء ستحاول القيام به
    هو قراءة هذا الكود
  26. وتقرير ما إذا كان
    يحقق هذا الهدف
  27. و ستقوم بهذا من
    خلال جميع التعليمات
  28. المكتوبة في الكود
    وستقرر ما سيتم عرضه فعلاً على الشاشة
  29. لنفترض أن هذه الطريقة تستدعى هنا
    والأشياء التي تبدو مثل العرض
  30. لدينا قوسين
  31. وشيء بينهما، سيتم عرض
    المحتوى على الشاشة
  32. الآن، بعض هذه المشاكل لها
    أجزاء متعددة من المحتوى الذي
  33. ستحتاج إلى عرضها، لذلك قد
    ترى display1، display2، display3
  34. حسناً، لذلك ستشاهد هذا الفيديو
  35. ربما كنت اتساءل كيف
    نحل واحدة من هذه المشاكل
  36. هذه ليست المرة الأولى التي تتفاعل بها
    مع متحولات متعددة
  37. و القيم التي تغيرت
    عدة مرات خلال المشكلة
  38. لذلك دعني أقوم بأول واحد
    معك قبل أن أدعك وشأنك
  39. سأستخدم تقنية تسمى المحاكاة
    المكتوبة وما هذه التقنية
  40. تتضمن محاولة تحديد ما
    يقوم به الكمبيوتر، ولكن
  41. دون مجرد الالتصاق
    بجهاز الكمبيوتر
  42. بالنسبة لنا حقاً إنها مجرد وسيلة
    منظمة لتتبع ما يحدث مع
  43. المتحولات
  44. حسناً، الآن ستنطلق سطراً
    سطراً لذا دعني أن أن أبدأ معك
  45. في السطر الأول هنا أرى
    التصريح عن متحول، لذلك
  46. لذا سأمضي قدماً واكتب
    اسم المتحول weekday
  47. تمت تهيئته أيضاً
    بالقيمة 5
  48. وذلك في ظل أيام
    الأسبوع سأضع قيمة 5
  49. هذا يمثل أن أيام الأسبوع
    متحول يخزن حاليا 5
  50. حسناً، كان هذا السطر الأول
    وسأنتقل إلى السطر التالي
  51. لدينا متحول يسمى weekend
    لذلك أنا أريد أن أكتبه
  52. وقيمة هذا المتحول 9
  53. حسناً، هذا يبدو جيداً حتى الآن
  54. سأقوم بالانتقال إلى
    السطر التالي وهو التصريح
  55. وتجسيد للمتحول optimalHours
    ولذا سأفعل الشيء نفسه
  56. حسناً، لن أكتب قيمة 8*7
  57. سأقوم بحسابها ذهنياً
    لأن هذا هو
  58. ما يخزن في optimalHours
  59. لذلك، مع القليل من الرياضيات الذهنية
    7 ضرب 8 يساوي 56
  60. حسناً، لدينا تصريح آخر هنا
  61. قمنا بإنشاء متحول يسمى actualHours
    لذلك سأكتب ذلك
  62. حسناً، انها مساوية لقيمة
    يوم الأسبوع
  63. هذه هي القيمة الحالية لـ weekday
  64. إنها ليست قيم سابقة من weekday أو قيم مستقبلية
    لقيمة weekday
  65. سنتتبع القيمة الحالية weekday
    هنا
  66. لذلك دعنا نلقي نظرة
    ونرى أن قيمتها 5
  67. لذلك أعتقد أنني يجب
    أن أفكر أكثر بالرقم 5
  68. هكذا يقول أن معرف الصحيح actualHours
    يساوي 5، لذا
  69. سأمضي قدما وأكتب
    ذلك هناك
  70. حسناً، سوف ننتقل إلى السطر التالي
  71. نحن نغير actualHours
    مجدداً إلى القيمة الحالية
  72. من actualHours بالإضاافة إلى
    ضرب 2 قبل weekend
  73. لذلك يمكن أن ننظر أكثر هنا
    فإن القيمة الحالية لـ actualHours هي 5
  74. والقيمة الحالية لـ weekend وهي 9
  75. لدي هنا هذه المعادلة الصغيرة
  76. قمت بعملية الضرب
    قبل الجمع
  77. 9 ضرب2 يساوي 18 ثم أضيف 5
  78. وباستخدام القليل من الرياضيات الذهنية
    18 زائد 5 يساوي 23
  79. حسنا، لذلك كل هذا يساوي 23
  80. ويجب شطب القيمة
    القديمة من actualHours
  81. الكتابة القيمة الجديدة من actualHours
  82. حسناً، تم ذلك
  83. دعنا ننتقل إلى السطر التالي
  84. لدينا n حل، لذلك هذا هو تعريف المتحول
  85. ويجري تعيين أنها تساوي شيئا، ولكن
  86. سأقوم بكتابة كلمة الحل أولاً
  87. وهذا الحل مساوي
    لـ optimalHours ناقص actualHours
  88. لذلك دعونا ننتقل إلى هنا optimalHours هي 56
    و actualHours هو 23
  89. الآن استخدم آلتك الحاسبة
  90. يمكن القيام بذلك في وقت سابق
    وأنا أعرف أن 56 ناقص 23 يساوي 33
  91. حسناً
    ثم ننتقل الى المرحلة التالية
  92. والسطر الأخير الذي يقول عرض الشاشة
  93. لذلك، يمكننا أن ننظر إلى هنا لنرى
    ما هي قيمة الحل وهو 33
  94. لذلك يتم الانتقال إلى عرض الرقم 33
  95. لذلك هذا هو كيف لي، أو لك، أو
  96. أي شخص، معرفة
    ماذا فعل البرنامج
  97. ولكن السؤال الحقيقي هو
    هل نفذ الشيء الصحيح؟
  98. هناك خطأ منطقي
    في مكان ما هنا
  99. أو إن شخص ينام خمس ساعات في أيام الأسبوع
    وتسع ساعات في ليلة عطلة نهاية الأسبوع
  100. ستكون لديه ثلاثة وثلاثين ساعة
    من"sleep debt" في نهاية الأسبوع
  101. وأريد أن أعرف ما هو رأيك
  102. حسناً، ملاحظة جانبية سريعة، الآن قمت
    بإنشاء هذا التمرين "set 2 app" لذلك
  103. سأريكم كيف يمكن أيضاً وضع
    الكود في التمرين
  104. إذا أردت اختبار "set 2 app"
  105. أوصى حقاً بالمحاكاة
    اليدوية أولاً
  106. لأنها ستعطي ذهنك
    فهماً أفضل حول ما يجري
  107. لكنه يجب أن يكون قادراً على وضع
    الكود في "Android Studio"
  108. وقم باللعب بها قليلاً
  109. لذلك اقتراحي هو أن تقوم بنسخ ولصق
    الكود لهذه المسألة
  110. التي ستكون مكتوبة في دليل المعلم
    وفي نمط onCreate
  111. هذه هي الطريقة الأول التي ستراها
    في صفك MainActivity
  112. حسناً، لكي تكون مفهومة تماماً
    وهنا كيف تبدو الطريقة onCreate
  113. قبل تعديلها ومن ثم يمكنك لصق
    الكود، كما فعلت أنا
  114. حسناً، والشيء الآخر الذي
    ستحتاجه هو النسخ واللصق فوقه
  115. الأمر الذي سيجعل هذا السطر من
    الكود يعمل، إنه هنا في الأسفل
  116. هذا هو الكود
    ولقد ضمنته أيضاً في دليل المعلم
  117. أمر أخير عليك القيام به
    هو الذهاب إلى XML الخاص بك
  118. تأكد من أن TextView الخاص بك
    لديه id/display_text_view
  119. ويجب أن يطابق تماماً
    ما هو موضح هنا
  120. حسناً، طالما يتطابق هذين الأمرين
    عند تنفيذ هذا
  121. الكود، ستتم
    إظهار قيمته على الشاشة
  122. من الصعب قليلا أن نراه
    لكنه يقول 33 الآن
  123. حسناً، وفي خضم كل ذلك
    سأحاول محاكاته يدوياً
  124. والحصول على بعض المساعدة في تشغيله
    وتنفيذه على هاتفك
  125. امضي قدماً وحاول معرفة هذا البرنامج
    هل يفعل ما يفترض القيام به