اذهب إلى المحتوى

عبد الوهاب بومعراف

الأعضاء
  • المساهمات

    785
  • تاريخ الانضمام

  • تاريخ آخر زيارة

كل منشورات العضو عبد الوهاب بومعراف

  1. أولا في حالة ما كانت لديك شركة، فستحتاج إلى الرجوع إلى الميزانية العمومية للشركة، وتحديد حسابات الالتزامات قصيرة الأجل وطويلة الأجل، ثم جمع الأرصدة، والوصول في النهاية إلى القيمة الدفترية. فحينما تقوم بتحديد تلك الالتزامات في القائمة المالية سيتم استخدام القوائم المالية لحساب القيمة الدفترية، والتي تتطلب القيام بالخطوات التالية: تحليل القوائم المالية: من خلال فحص البيانات المالية الخاصة بالشركة، مثل البيانات الدورية (مثل بيان الدخل والميزانية العمومية) وبيان التدفقات النقدية. تحديد الالتزامات الطويلة والقصيرة الأجل: هنا نقوم بتحديد الالتزامات التي تعتبر طويلة الأجل (أي تلك التي تستحق فترة تزيد عن سنة واحدة) والالتزامات القصيرة الأجل (تستحق فترة أقل من سنة). حساب القيمة الدفترية: لحساب القيمة الدفترية للالتزامات، من خلال جمع قيمة الالتزامات الطويلة والقصيرة الأجل وهنا يجب أن تكون الأرقام المستخدمة في هذا الحساب مبينة في القوائم المالية الخاصة بالشركة. التأكد من الدقة: من أجل التأكد من أن البيانات التي تم استخدامها لحساب القيمة الدفترية دقيقة وموثوقة. يمكن أن يتم التحقق من القوائم المالية والتقارير الخاصة بالشركة نفسها. وبمجرد حساب القيمة الدفترية، يمكن استخدام هذه المعلومات لتقييم حالة التمويل الخاصة بالشركة وفهم كيفية توزيع الالتزامات على المدى الطويل والقصير، لكن يجب أن ننوّه بأنّ القيمة الدفترية للالتزامات ليست القيمة الفعلية التي يتم دفعها، وإنما تمثل القيمة المحاسبية لهذه الالتزامات في وقت معين.
  2. ال "methods chaining" أو "سلسلة الدوال" هو عبارة عن أسلوب يتيح لنا استدعاء سلسلة من الدوال على كائن واحد دون الحاجة إلى تخزين النتيجة بين كل استدعاء، وفي إطار العمل Laravel نجد أن العديد من الدوال ترجع `$this`، وهذا يعني أنها تعود بالكائن نفسه بعد الانتهاء من تنفيذ الدالة، مما يسمح بمواصلة استدعاء الدوال الأخرى على الكائن نفسه بسلاسة.أما بخصوص العلامة "::" في PHP، فهي تستخدم لاستدعاء الدوال الثابتة (static methods) والثوابت (constants) من داخل الصنف (class) بدون الحاجة لإنشاء كائن من الصنف، انظر لهذا المثال: class MyClass { public static function myStaticMethod() { return "Laravel"; } } echo MyClass::myStaticMethod(); // سيطبع "Laravel" وأما بالنسبة لعملية "->" فهي تستخدم للوصول إلى خصائص الكائنات (properties) والدوال ضمن الكائنات (methods)، أو للوصول إلى العناصر في مصفوفة، يمكن أن يتضح الأمر أكثر من خلال هذا المثال: class MyClass { public $name = "Hsoub"; public function greet() { return "Hi, " . $this->name; } } $obj = new MyClass(); echo $obj->greet(); // سيطبع "Hi, Hsoub" في حين "->" فهي تستخدم للإشارة إلى أن الدالة تعمل على كائن (Object) معين.
  3. نعم توجد العديد من المسابقات الوطنية والدولية التي تقام في مختلف أنحاء عالمنا العربي، فمثلا في الجزائر، توجد مسابقة وطنية برمجية للمبرمجين الطلاب بين الجامعات، تحت اسم ICPC Algerian Collegiate Programming Contest و المسابقة البرمجية للطلاب الجامعيين Alcpc. وهي عبارة عن مسابقة برمجة تقام على مستوى الجامعات الجزائرية. حيث يقوم الطلاب والطالبات بحل مجموعة من الخوارزميات باستعمال لغات برمجة من اختيارهم. والفرق المتأهلة تذهب للمنافسة النهائية الإقليمية التي تقام في دولة أخرى وتجمع فرقا من دول الشرق الأوسط وشمال إفريقيا أين تحتدم المنافسة أكثر فأكثر.
  4. بالطبع هو ليس كذلك، فمصطلح "تصميم البرمجيات" لا يقتصر فقط على العناصر التي ذكرتها بل يشمل أيضا جوانب أخرى مثل تصميم قواعد البيانات، وتحديد المتطلبات الوظيفية وغير الوظيفية، وتصميم الأنظمة والهندسة البرمجية. فهو عبارة عن عملية تخطيط وإنشاء برامج كمبيوتر تلبي احتياجات المستخدمين بشكل فعال، وهذا يشمل تحديد متطلبات البرنامج، وتصميم واجهة المستخدم، وتحديد هيكل البرنامج وتنظيم البيانات، وتطوير الخوارزميات والتنفيذ الفعلي للبرنامج. توجد عدة أنواع لتصميم البرمجيات وهي: تصميم واجهات المستخدم (UI):بحيث هنا يتم التركيز على كيفية تنظيم وتصميم العناصر التفاعلية التي يتفاعل معها المستخدم. تصميم تجربة المستخدم (UX): وهو النظر في كيفية تفاعل المستخدم مع البرنامج وتجربته الشاملة. تصميم البيانات والهندسة البرمجية: تصميم البيانات والهياكل التي تدعم البرنامج بشكل فعال. تصميم قواعد البيانات: من خلال تحديد كيفية تنظيم البيانات وتخزينها بشكل فعال وآمن. ومن المفترض أن يتعلم تصميم البرمجيات الأشخاص الذين يرغبون في تطوير برمجيات ذات جودة عالية وتجربة مستخدم مريحة وفعّالة. يمكن أن يتعلم التصميم المطورون البرمجيون، ومصممو واجهة المستخدم، ومهندسو البرمجيات، ومحللو النظم، وغيرهم. يمكنك الاستفادة أكثر من هنا عبر تصفح هذه المقالات:
  5. كما تفضل الزملاء في إجاباتهم فهذه المشكلة شائعة في PowerShell وأول خطوة يجب الانتباه لها، هي فتحه كمسؤول، وهذا الأمر: Set-ExecutionPolicy RemoteSigned عند تنفيذه في تلك الحالة سيعطي صلاحيات إضافية ويسمح له بالقيام بأعمال تتطلب صلاحيات مرتفعة، مثل تعديل الإعدادات النظامية أو تنفيذ أوامر تأثيرها يمتد إلى جميع المستخدمين على الجهاز. ففتح PowerShell كمسؤول يمنح الأمر "Set-ExecutionPolicy" الصلاحية الكافية لتعديل سياسة التنفيذ الافتراضية على النظام، مما يسمح للسكربتات بالتشغيل دون القيود التي كانت مفروضة بسبب السياسة السابقة. أين يقوم بتعيين سياسة التنفيذ لتسمح بتشغيل السكربتات الموقعة رقميا (مثل السكربتات المنشأة محليا على جهاز الكمبيوتر وغيرها). وأخيرا، تقوم بتنفيذ الأمر التالي: .\venv\Scripts\activate وهو يستخدم عادة في بيئات البيانات الافتراضية (virtual environments) في Python. فعند تنفيذ هذا الأمر، يتم تنشيط (أو تفعيل) البيئة الوهمية المسماة "venv" التي تم إنشاؤها في المجلد الحالي. عند تنشيط البيئة الوهمية، يتم تعيين المتغيرات البيئية بحيث يشير Python إلى المكتبات والأدوات المثبتة داخل هذه البيئة بدلا من البيئة الافتراضية للنظام. في حال واجهتك مشكلة مستقبلا في تثبيت البيئة الافتراضية يمكنك الرجوع لهذه المقالة التي تشرح الخطوات:
  6. يبدو أن الحرف الذي استخدمته للتحويل هو "/" وهو خاطئ، والصحيح والمستخدم للتحويل هو "\" لهذا يجب تصحيح أي استخدام غير صحيح لهذا الحرف. وعادة ما يكون ذلك بالتحقق من الترميز في الكود وإصلاح أي escaping characters بشكل صحيح. وأخيراً، لضمان حفظ التعديلات في ملف الكود، يجب استخدام اختصار الكيبورد "CTRL + S" للقيام بعملية الحفظ وهذا أمر مهم لأنه يضمن حفظ التغييرات وتطبيقها على الملف الذي تعمل عليه. وتختلف المشكلات التي قد تواجه مستخدمي VSCode لهذا يجب العودة بشكل دائم ومراجعة التوثيقات المطلوبة، يمكنك تصفح النقاش في هذه المقالة:
  7. في الأساس نعم، يمكن تحويل موقع ويب إلى تطبيق Android وحتى إلى تطبيق iOS وهذا الأمر يتم باستخدام تقنيات مختلفة. هناك العديد من الطرق الممكنة لتحقيق ذلك، منها استخدام الأطر البرمجية الهجينة مثل React Native أو Flutter، التي تسمح بكتابة كود واحد يمكن تشغيله على منصتي Android وiOS، وكذلك استخدام الأطر البرمجية المخصصة لكل منصة مثل Java/Kotlin لتطبيقات Android وSwift/Objective-C لتطبيقات iOS. الطريقة التي يتم فيها تحويل الموقع الويب إلى تطبيقات موبايل قد تكون سهلة أو صعبة اعتمادًا على عدة عوامل مثل تعقيد الموقع الويب، والميزات المطلوبة في التطبيقات المحمولة، والخبرة المتاحة لدى فريق التطوير. توجد أدوات مثل PhoneGap و Cordova، والتي تتيح تحويل مواقع الويب الحالية إلى تطبيقات هاتف ذكي، بالنسبة للشركات التي تقدم مميزات مختلفة في كل من تطبيق الجوال والموقع وتطبيق سطح المكتب، فهذا قد يكون بسبب احتياجات وتوقعات المستخدمين المختلفة على كل منصة. لأنه يمكن أن يكون لدى التطبيق المحمول ميزات تفاعلية مختلفة عن الموقع الويب لتحسين تجربة المستخدم على الهواتف الذكية، بينما قد يحتوي تطبيق سطح المكتب على ميزات مخصصة للأجهزة الكمبيوترية مثل استخدام الاختصارات للوحة المفاتيح والوصول إلى الملفات المحلية بسهولة. فمثلا في هذه المقالة يشرح الكيفية والطرق المستخدمة بشكل جيد: تحويل-موقع-الكترونى-الى-تطبيق-على-الهاتف
  8. الأسئلة ذات الطابع الاختباري لا نقوم بالإجابة عليها مباشرة، لكن سأحاول شرح الفكرة، يمكنك استخدام لغة برمجة مثل Python ومكتبة Flask لإنشاء واجهة ويب بسيطة فهنا ومن أجل قراءة ملف ذو امتداد PO يمكنك أن تستخدم مكتبة `polib تمكننا من استخراج النصوص والترجمة من الملف. ثم يمكن الشروع في إعداد تطبيق Flask لإنشاء صفحة ويب يمكن للمستخدمين تحميل ملف PO الخاص بهم وتحميله مرة أخرى بعد التعديل، لعرض المعلومات في الجدول يمكن أن نبسط الأمر من خلال استخدام HTML و CSS بحيث سيكون لكل كلمة اصلية وترجمتها حقل في الجدول، بعد ذلك تحاول تقسيم الجدول إلى صفحات وإضافة حقل إدخال للتعريبيمكن ذلك من خلال سكريبت JavaScript لتقسيم الجدول إلى صفحات وعرض 10 صفوف في كل صفحة كما أردت، كما يمكنك إضافة حقل إدخال لكل ترجمة لتسهيل التعديل وبعد التعديلات، تضيف زرا لتحميل الملف المعدل مباشرة من الصفحة. يمكنك تعلم كيفية البرمجة بلغة بايثون وبإطار العمل فلاسك أكثر من هنا كما توجد أداة للتعريب بالفعل تحمل اسم POEDIT يمكنك الاطلاع عليها من المقالة:
  9. نعم لكن سيعتمد عمل الأداة على نوع الفحص الذي تقومين به ويوجد نوعان من الفحص: فحص سطحي: مثل تحليل سرعة الموقع أو تحسين محركات البحث (SEO)، فسيتم تنفيذ الفحص على معالج وخادم الاستضافة الذي قمت بشرائه. وفحص عميق: مثل فحص ثغرات الأمان أو اختراق اختبارات النفاذية، فقد يتطلب ذلك معالجة أكثر قوة وقد لا يكون معالج وخادم الاستضافة كافيين. لهذا من الجيد اختيار خطة استضافة مناسبة تتضمن معالجا ذا قدرة كافية لاحتياجاتنا، مع توزيع عملية الفحص على فترات زمنية لتجنب إثقال كاهل خادم الاستضافة، كما توجد طريقة تستخدم شبكة توصيل المحتوى (CDN) لتوزيع الحمل على خوادم متعددة. بالنسبة لسؤالك الثاني، فيعتمد تشغيل الأداة على جهاز المستخدم من موقع ويب على نوع الفحص الذي تقومين به فإن كان سطحيا فيمكن تشغيله عادة من خلال موقع ويب دون الحاجة إلى تثبيت تطبيق وإن كان عميقا، فسيتطلب تثبيت تطبيق على جهاز المستخدم لمنح الأداة الصلاحيات اللازمة للوصول إلى المعلومات والقيام بالفحص.
  10. مشكلة النسيان معروفة جدا، خاصة عند المبتدئين في مجال البرمجة، وحتى في مرحلة تعلم أي مجال آخر، فمن الطبيعي جدا أن يكون لديك هذا الشعور، العبرة في التعلم ليست الحفظ أو التلقين والتكرار، إنما في الفهم والتطبيق المستمر مع المدرب الخاص بك، فمن أسرع الطرق المستخدمة للاستيعاب هو التطبيق مع المدرب مباشرة، وبعد إنهاء مسار دراسي معين من الدورة، التوجه لعمل مشاريع صغيرة تطبّق فيها ما تعلمته من معارف ومفاهيم خاصة الجوانب النظرية التي تكون مبهمة في البداية لكنها سرعان ما تتضح في المشاريع التطبيقية. تصفح هذه المصادر التي أرفقتها لك للاستفادة أكثر:
  11. إطار العمل Django هو إطار عمل Python متكامل ويوفر الكثير من الميزات المدمجة مثل ORM (Object-Relational Mapping)، وإدارة الجلسات، والأمان، والإدارة الإدارية، بينما Express.js هو إطار عمل خفيف ومرن يعمل على Node.js، مما يجعله مثاليا لتطوير تطبيقات الويب السريعة والمرنة. فإذا كنت تفضل استخدام Python وتحتاج إلى بنية متكاملة مع مجموعة واسعة من الميزات المدمجة، فإن Django يبقى خيارا لك، أما إذا كنت ترغب في المرونة والقدرة على بناء تطبيقات الويب بسرعة باستخدام JavaScript، فإن Express.js/Node.js مناسبان جدا. ويبقى الاختيار بينهما على حسب احتياجاتك واحتياجات مشروعك ومهاراتك. فإكسبريس ودجانغو هما إطاري عمل قويان ويقدم كل منهما قوة فريدة ويلبيان متطلبات مشاريع مختلفة على حسب تفضيلات المطورين.
  12. نعم، يمكننا استخدام JavaScript لقراءة ملف Excel أو ملفات ال CSV من صفحة الويب وعرض البيانات على الصفحة أو تحريرها ومن ثم حفظ التغييرات مرة أخرى في الملف، هذا مثال على ذلك: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CSV Reader</title> </head> <body> <input type="file" id="csvFileInput"> <table id="csvTable"></table> <script> document.getElementById('csvFileInput').addEventListener('change', function() { var file = this.files[0]; var reader = new FileReader(); reader.onload = function(event) { var csvData = event.target.result; var table = document.getElementById('csvTable'); var rows = csvData.split('\n'); table.innerHTML = ''; // Clear existing table data rows.forEach(function(row) { var columns = row.split(','); var tr = document.createElement('tr'); columns.forEach(function(column) { var td = document.createElement('td'); td.textContent = column; tr.appendChild(td); }); table.appendChild(tr); }); }; reader.readAsText(file); }); </script> </body> </html> فهذه الشيفرة تتيح للمستخدم تحديد ملف CSV من خلال عنصر الإدخال <input type="file"> ثم يقوم بقراءة محتويات الملف وعرضها في جدول على الصفحة، لكن يمكنك تعديل هذا الكود ليتناسب مع ملف Excel بطريقة مشابهة، ولكن سيتطلب ذلك استخدام مكتبة JavaScript أخرى مثل SheetJS وهذا مكتبة sheetjs ومنها ستتمكن قراءة ملفات Excel بصيغة .xlsx.
×
×
  • أضف...