TGViewer
Yhya Nesb Yhya Nesb @yhyanesb · 624 subscribers
Post #154 469
منشور من سلسة #CleanCode لمعرفة التفاصيل انقر هنا 🔗
سلسة مبادئ هندسة البرمجيات بلغة PHP 👩‍💻 مقتبسة من كتاب Robert C. Martin's في هذه السلسلة لن تتعلم كيفية إنشاء برمجيات بلغة PHP ولكن ستكون قادر على كتابة كود 🖥 مقروء ومفهوم وقابل للصيانة الدورية ♻️
في هذه السلسة سأقوم بشرحها بإستخدام الاصدار الثامن من PHP 👩‍💻
المتغيرات:
يجب عليك إستخدام اسماء متغيرات ذات معنى مناسب لقيمة المتغير #⃣:
الاستخدام السيء:
$ymdstr = date('Y-m-d');

الاستخدام الجيد:
$currentDate = date('Y-m-d');

يجب عليك إستخدام نفس المفردات لنفس المتغيرات #⃣:
الاستخدام السيء:
getUserInfo();
getUserData();
getUserProfile();

الاستخدام الجيد:
getUser();

استخدام أسماء قابلة للبحث 🔍 بالتأكيد أنت تكتب أكواد أكثر بكثير مما تكتب تعليقات 📝 مما قد يسبب الضياع لك أثناء البحث عن شيء ما في مشروعك الذي تعمل عليه ‼️
مثال 1️⃣
الاستخدام السيء:
$result = json_encode($data, 448);
// ما المقصود ب 448

الاستخدام الجيد:
$json = json_encode($data,JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);

مثال 2️⃣
الاستخدام السيء:
class User
{
// ما المقصود برقم 7؟
public $access = 7;
}
$user = new User();
// ما المقصود برقم 4؟
// المقصود من الشرط جلب ال بت ويز (Bitwise) المشتركة والذي هو 4
if ($user->access & 4) {
// Code
}

// ما المقصود بالإجراء التالي؟
$user->access ^= 2;

الاستخدام الجيد:
class User
{
// صلاحية القراءة
public const ACCESS_READ = 1;
// صلاحية الإضافة
public const ACCESS_CREATE = 2;
// صلاحية التعديل
public const ACCESS_UPDATE = 4;
// صلاحية الحذف
public const ACCESS_DELETE = 8;

// صلاحيات المستخدم الإفتراضية والتي هي 7
public $access = self::ACCESS_READ | self::ACCESS_CREATE | self::ACCESS_UPDATE;
}
$user = new User();
if ($user->access & User::ACCESS_UPDATE) {
// كود التعديل المطلوب
}

// إلغاء صلاحيات الإنشاء
$user->access ^= User::ACCESS_CREATE;

هذا كل شيء لليوم 😁 في حال أعجبك هكذا نوع من المنشورات لا تنسا مشاركته مع أصدقائك ☺️
  • ❤ 2
  • 👍 1
More from @yhyanesb
  1. Sep 15, 2026منصة CoinEx تغلق أبوابها وتمهل المستخدمين مدة لسحب كافة أصولهم كانت منصة CoinEx منصة التدا…
  2. Aug 17, 2026نتعلم كيف الشركات بتساند بعضها وقت المصايب 😃
  3. Aug 17, 2026Github Down 🫠💔
  4. Aug 11, 2026أحياناً استثمار المشكلة بكون أفضل حل للمشكلة 👌
  5. Jul 13, 2026نتيجة الثقة المفرطة بال AI 🤷‍♂
  6. Jul 3, 2026عرض توضيحي لآلية عمل خوارزمية bubble sort #sort #algorithm #programming
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →