$User->is_logged_in:  bool(false)
$User->user_info:  NULL
$User->check_post:  object(stdClass)#6916 (18) {
  ["is_valid"]=>
  int(1)
  ["global_remaining_posts_to_view"]=>
  int(0)
  ["remaining_posts_to_view"]=>
  int(0)
  ["number_all_post"]=>
  int(0)
  ["number_post_read"]=>
  int(0)
  ["is_from_gifts_balance"]=>
  int(0)
  ["gifts_articles_balance"]=>
  int(0)
  ["all_gifts_articles_balance"]=>
  int(0)
  ["gifts_read_articles"]=>
  int(0)
  ["exceeded_daily_limit"]=>
  int(0)
  ["is_watched_before"]=>
  int(0)
  ["sso_id"]=>
  int(20505)
  ["user_agent"]=>
  string(9) "claudebot"
  ["user_ip"]=>
  string(14) "44.192.247.185"
  ["user_header"]=>
  object(stdClass)#7059 (42) {
    ["SERVER_SOFTWARE"]=>
    string(22) "Apache/2.4.57 (Debian)"
    ["REQUEST_URI"]=>
    string(134) "/technodad/%d8%aa%d8%b5%d8%ad%d9%8a%d8%ad-%d8%a7%d9%84%d8%a3%d8%ae%d8%b7%d8%a7%d8%a1-%d8%a7%d9%84%d8%a8%d8%b1%d9%85%d8%ac%d9%8a%d8%a9/"
    ["REDIRECT_HTTP_AUTHORIZATION"]=>
    NULL
    ["REDIRECT_STATUS"]=>
    string(3) "200"
    ["HTTP_AUTHORIZATION"]=>
    NULL
    ["HTTP_X_FORWARDED_PROTO"]=>
    string(5) "https"
    ["HTTP_CONNECTION"]=>
    string(7) "upgrade"
    ["HTTP_HOST"]=>
    string(19) "technologyreview.ae"
    ["HTTP_CDN_LOOP"]=>
    string(10) "cloudflare"
    ["HTTP_CF_IPCOUNTRY"]=>
    string(2) "US"
    ["HTTP_ACCEPT_ENCODING"]=>
    string(8) "gzip, br"
    ["HTTP_CF_RAY"]=>
    string(20) "86bac4682f7d3916-IAD"
    ["HTTP_CF_VISITOR"]=>
    string(22) "{\"scheme\":\"https\"}"
    ["HTTP_ACCEPT"]=>
    string(3) "*/*"
    ["HTTP_USER_AGENT"]=>
    string(9) "claudebot"
    ["HTTP_REFERER"]=>
    string(151) "https://technologyreview.ae/%D8%AA%D8%B5%D8%AD%D9%8A%D8%AD-%D8%A7%D9%84%D8%A3%D8%AE%D8%B7%D8%A7%D8%A1-%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D9%8A%D8%A9/"
    ["HTTP_CF_CONNECTING_IP"]=>
    string(14) "44.192.247.185"
    ["PATH"]=>
    string(60) "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
    ["SERVER_SIGNATURE"]=>
    string(79) "
Apache/2.4.57 (Debian) Server at technologyreview.ae Port 80
" ["SERVER_NAME"]=> string(19) "technologyreview.ae" ["SERVER_ADDR"]=> string(11) "172.18.0.20" ["SERVER_PORT"]=> string(2) "80" ["REMOTE_ADDR"]=> string(14) "44.192.247.185" ["DOCUMENT_ROOT"]=> string(13) "/var/www/html" ["REQUEST_SCHEME"]=> string(4) "http" ["CONTEXT_PREFIX"]=> NULL ["CONTEXT_DOCUMENT_ROOT"]=> string(13) "/var/www/html" ["SERVER_ADMIN"]=> string(19) "webmaster@localhost" ["SCRIPT_FILENAME"]=> string(23) "/var/www/html/index.php" ["REMOTE_PORT"]=> string(5) "49086" ["REDIRECT_URL"]=> string(54) "/technodad/تصحيح-الأخطاء-البرمجية/" ["GATEWAY_INTERFACE"]=> string(7) "CGI/1.1" ["SERVER_PROTOCOL"]=> string(8) "HTTP/1.1" ["REQUEST_METHOD"]=> string(3) "GET" ["QUERY_STRING"]=> NULL ["SCRIPT_NAME"]=> string(10) "/index.php" ["PHP_SELF"]=> string(10) "/index.php" ["REQUEST_TIME_FLOAT"]=> float(1711661907.460664) ["REQUEST_TIME"]=> int(1711661907) ["argv"]=> array(0) { } ["argc"]=> int(0) ["HTTPS"]=> string(2) "on" } ["content_user_category"]=> string(4) "paid" ["content_cookies"]=> object(stdClass)#7058 (3) { ["status"]=> int(0) ["sso"]=> object(stdClass)#7057 (2) { ["content_id"]=> int(20505) ["client_id"]=> string(36) "1d1883f4-87d0-4156-8903-e6ceb0cb4224" } ["count_read"]=> NULL } ["is_agent_bot"]=> int(1) }
$User->gift_id:  NULL

تصحيح الأخطاء البرمجية DEBUGGING

1 دقيقة

ما هو تصحيح الأخطاء البرمجية؟

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

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

ما أهم إستراتيجيات تصحيح الأخطاء البرمجية؟

تُعد محللات الكود المصدري (Source Code Analyzers) من أهم أدوات تصحيح الأخطاء البرمجية؛ حيث تتضمن مجموعة من المميزات المفيدة مثل تحديد الثغرات الأمنية واكتشاف أخطاء الكود الشائعة ومحلل التعقيد الذي يقوم بإيجاد الوحدات المُعقدة التي يصعب فهمها ويحللها ويختبرها. وهناك العديد من الإستراتيجيات الأخرى أهمها:

  1. إستراتيجية التحليل الساكن: يقوم المطور فيها بفحص الكود دون تنفيذ البرنامج.
  2. إستراتيجية تصحيح الأخطاء بالطباعة: تعرف أيضاً بالتتبع؛ حيث يدخل المطور فيها تعليمات طباعة في أجزاء مختلفة من الكود لمتابعة تدفق البرنامج.
  3. إستراتيجية تصحيح الأخطاء عن بعد: تعمل فيها أداة تصحيح الأخطاء التي يستخدمها المطور على نظام مختلف عن النظام الذي يتم فيه تطوير البرنامج.
Content is protected !!