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

Mustafa Suleiman

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

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

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

  • عدد الأيام التي تصدر بها

    305

أجوبة بواسطة Mustafa Suleiman

  1. عليك تصحيح التالي:

    1.  تصحيح الاستيراد"nump" إلى "numpy".
    2. تحتاج إلى إنشاء النص (text) قبل تحديد الدالة update، أي قم بنقل السطر الذي ينشئ النص إلى الجزء العلوي من الكود.
    3. استخدم ax.clear() بدلاً من تعيين بيانات الأشكال الصغيرة إلى [] داخل الدالة update.
    4. لتحقيق تكرار الرسم البياني، قم بتعيين repeat=True بدلاً من repeat="true".

    والكود بعد التصحيح هو التالي:

    import matplotlib.pyplot as plt
    import numpy as np
    from matplotlib.animation import FuncAnimation
    
    fig, ax = plt.subplots()
    fig.set_facecolor('black')
    ax.set_aspect('equal')
    
    t = np.linspace(0, 2 * np.pi, 1000)
    x = 16 * np.sin(t) ** 3
    y = 13 * np.cos(t) - 5 * np.cos(2 * t) - 2 * np.cos(3 * t) - np.cos(4 * t)
    
    heart_line, = ax.plot(x, y, color='pink', linewidth=3)
    
    small_hearts = []
    
    for i in range(12):
        small_heart, = ax.plot([], [], color='pink', linewidth=0.5)
        small_hearts.append(small_heart)
    
    text = ax.text(0, -5, "", color='pink', fontsize=20, ha='center')
    
    def update(i):
        ax.clear()
        ax.set_xlim(-35, 35)
        ax.set_ylim(-35, 35)
        ax.axis('off')
        text.set_text("RAHEEB")
    
        angles = np.linspace(0, 2 * np.pi, len(small_hearts))
        radius = 20
        small_x = radius * np.sin(angles + i * 0.1)
        small_y = radius * np.cos(angles + i * 0.1)
    
        for small_heart, small_x_val, small_y_val in zip(small_hearts, small_x, small_y):
            small_heart.set_data(x + small_x_val, y + small_y_val)
    
    animation = FuncAnimation(fig, update, frames=100, interval=50, repeat=True)
    
    plt.show()

     

  2. بالطبع تستطيعي استخدام Angular framework مع Razor pages، حيث ستحققي استفادة من قوة كلا الإطارين وذلك لأن Angular هو إطار عمل قوي للواجهة الأمامية، بينما Razor pages هو إطار عمل قوي للواجهة الخلفية، ومن خلال الجمع بين الاثنين، يمكنك إنشاء تطبيقات ويب غنية وتفاعلية.يمكن أن يساعدك Angular في إنشاء تطبيقات ويب قابلة للتوسع بسهولة.

    ولإضافة Angular framework إلى Razor pages،  عليك القيام بالتالي:

    1. تثبيت حزمة Angular إلى مشروعك. يمكنك القيام بذلك باستخدام NuGet.
    2. إضافة Angular إلى ملف _Layout.cshtml.
    3. إنشاء مجلد جديد يسمى "app" في جذر مشروعك.
    4. إنشاء ملفات Angular في هذا المجلد.
    5. تضمين ملفات Angular في صفحاتك باستخدام Razor partial views.

    مثال على كيفية إضافة Angular إلى Razor pages:

    @page
    @inject IHttpClientFactory HttpClientFactory
    
    <html ng-app="app">
    <head>
        <base href="/">
        <link href="~/css/app.css" rel="stylesheet">
        <script src="~/js/angular.js"></script>
        <script src="~/js/app.js"></script>
    </head>
    <body>
        <div id="app"></div>
    </body>
    </html>

    والكود السابق يقوم بإضافة Angular إلى ملف _Layout.cshtml، وأيضًا يجب إنشاء مجلد جديد يسمى "app" في جذر المشروع، ويحتوي هذا المجلد على ملفات Angular الخاصة بنا، مثل app.component.ts و app.component.html.

    ولعرض ملفات Angular في الصفحات، نستخدم Razor partial views.

    أي لو ترغبين في عرض ملف Angular يسمى "my-component.component.html" في الصفحة، فسنقوم بإنشاء ملف Razor partial view يسمى "my-component.cshtml"، وفي هذا الملف، سنقوم ببساطة بتضمين ملف Angular:

    @partial "my-component.component.html"

     

    • أعجبني 1
  3. هل المقصود هو إنشاء slider؟ أي كالتالي:

    1a105c866cd43b61e925767c3f308008.jpg.603d520311d7b2b55791b1eff9a5e7c7.jpg

    في حال كان ذلك المقصود، فهناك مكتبات جاهزة مثل Swiper وsplide وSlick وGlide.

    ويمكنك تنفيذ ذلك من خلال HTML, CSS, JS أيضًا من الصفر، وإليك مثال بسيط:

    HTML:

    <div id="menu">
      <div id="nav">
        <div id="prev">
          <i class="fa-solid fa-chevron-left"></i>
        </div>
        <div id="next">
          <i class="fa-solid fa-chevron-right"></i>
        </div>
      </div>
      <ul id="cards">
        <li id="box1" class="list">
    
        </li>
        <li id="box2" class="list">
    
        </li>
        <li id="box3" class="list">
    
        </li>
        <li id="box4" class="list">
    
        </li>
        <li id="box5" class="list">
    
        </li>
      </ul>

    CSS

    body{
      background: #aeaeae;
    }
    .list{
        width: 20rem;
        height: 20rem;
        background: #e5e5e5;
        display: inline-block;
        text-align: center;
        border-radius: 5%;
        position: relative;
        overflow: hidden;
        margin: 7rem 2rem 0 2rem;
        cursor: pointer;
      }
      
      #menu {
        position: relative;
        width: 90%;
        height: 26rem;
        top: 1rem;
        background-color: rgb(241, 241, 241);
        margin: 0 7rem 0 5rem;
        border-radius: 5rem;
      }
      #cards {
        width: 80%;
        overflow: hidden;
        white-space: nowrap;
        display: block;
        list-style: none;
        padding: 0;
        position: relative;
        left: 10%;
        bottom: 60px;
      }
      
      .list p{
        width: 300px hidden;
      }
      #prev {
        display: inline-block;
        position: absolute;
        left: 2%;
        cursor: pointer;
        font-size: 60px;
        z-index: 1;
        width: 50px;
        height: 50px;
      }
      #next {
        display: inline-block;
        position: absolute;
        right: 2%;
        cursor: pointer;
        font-size: 60px;
        z-index: 1;
        width: 50px;
        height: 50px;
      }
      #prev,
      #next{
        margin-top: 11rem;
        color: #aaaaaa;
      }
      @media (max-width: 1026px) {
        #menu {
        width: 95%;
        height: 22rem;
        top: 0.5rem;
        margin: 0 2% 0 2%;
        }
        .list{
          width: 17rem;
          height: 17rem;
          background: #e5e5e5;
          display: inline-block;
          text-align: center;
          border-radius: 5%;
          position: relative;
          overflow: hidden;
          margin: 6rem 1rem 0 1rem;
        }
        #prev,
      #next{
        margin-top: 9.5rem;
      }
      }

    JS

    document.getElementById('prev').addEventListener('click', function() {
      const cards = document.getElementById('cards');
      cards.scrollLeft -= 500;
      cards.style.transition = 'scrollLeft 0.5s ease-in-out';
    });
    
    document.getElementById('next').addEventListener('click', function() {
      const cards = document.getElementById('cards');
      cards.scrollLeft += 500;
      cards.style.transition = 'scrollLeft 0.5s ease-in-out';
    });

     

  4. تستطيع استخدام بيئة لاراجون أو Xampp والأسهل هي بيئة لاراجون، يمكنك تحميلها من هنا:

    https://github.com/leokhoa/laragon/releases/download/6.0.0/laragon-wamp.exe

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

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

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

    Snag_581fe21.png.9b62fc3d7028c647e4a3733b62658bb4.png.112ad2703cbd2861ee306ca58e44f3ba.png

  5. أرجو منك التعليق أسفل فيديو الدورة لتفقد الإصدار المناسب لك ومساعدتك بشكل أفضل، وطرح الأسئلة العامة هنا في قسم أسئلة البرمجة.

    علي أي حال من الأفضل استخدام الإصدار 14 في المشروع الذي يعمل عليه المدرب، ثم استخدام الإصدار 16 أو 18 في باقي المشاريع التي تعمل عليها.

    الإصدار 14:

    https://nodejs.org/dist/v14.17.3/node-v14.17.3-x64.msi

    الإصدار 18:

    https://nodejs.org/dist/v18.17.0/node-v18.17.0-x64.msi

  6. سبب المشكلة هو أنك لم تمنح التطبيق الإذن للوصول إلى التخزين الخارجي، ويتطلب تطبيقك إذن القراءة من التخزين الخارجي لتحميل الموسيقى من جهازك.

    حاول تعديل الكود لطلب الإذن من المستخدم عند بدء تشغيل التطبيق كالتالي:

    import 'package:permission_handler/permission_handler.dart';
    
    void main() {
      // ...
    
      // Request permission to access external storage
      Permission.storage.request().then((permissionStatus) {
        if (permissionStatus == PermissionStatus.granted) {
          // Permission granted
        } else {
          // Permission denied
        }
      });
    
      // ...
    }

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

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

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

     

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

  8. هل قمت بإضافة الخواص التي أشرت إليها إلى ملف .env في الواجهة الخلفية؟

    حاول إضافة القيم التي بالأعلى أولاً ثم تنفيذ الأمر التالي:

    php artisan optimize:clear

    في حال لم تعمل حاول إضافة التالي:

    SANCTUM_STATEFUL_DOMAINS="localhost,127.0.0.1"
    SESSION_DOMAIN=".sanctum.local"

    ثم تنفيذ:

    php artisan config:cache

     

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

    • أعجبني 1
    • شكرًا 1
  10. بتاريخ 19 دقائق مضت قال Maroof Alaaraji:

    مرحبا هل يمكنني الحصول على بحث حول نظام ادارة حضور الموظفين بلغة php  نظري وعملي

    إن فهمت سؤالك بشكل صحيح، فإليك بحث بسيط:

    مقدمة

    يعد نظام إدارة حضور الموظفين من الأنظمة الهامة في أي شركة أو مؤسسة، حيث يساعد في تسجيل حضور وانصراف الموظفين بشكل دقيق وسهل، مما يساهم في تحسين الإنتاجية وضبط العمل.

    الإطار النظري

    تعريف نظام إدارة حضور الموظفين:

    هو نظام إلكتروني يُستخدم لتسجيل حضور وانصراف الموظفين، حيث يتيح للموظفين تسجيل حضورهم وانصرافهم من العمل من خلال أجهزة الكمبيوتر أو الهواتف الذكية.

    أهداف نظام إدارة حضور الموظفين:

    • تسجيل حضور وانصراف الموظفين بشكل دقيق وسهل.
    • تحسين الإنتاجية وضبط العمل.
    • تقليل الأخطاء البشرية في تسجيل الحضور والانصراف.
    • توفير الوقت والجهد للموظفين.

    أنواع نظام إدارة حضور الموظفين:

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

    الإطار العملي

    يمكن بناء نظام إدارة حضور الموظفين بلغة php باستخدام تقنيات وأدوات البرمجة المختلفة، مثل:

    • إطار العمل Laravel:

    هو إطار عمل مفتوح المصدر مبني على لغة php، ويوفر مجموعة من الأدوات والمكونات التي تسهل عملية بناء أنظمة الويب.

    • قاعدة البيانات MySQL:

    هي قاعدة بيانات مفتوحة المصدر تستخدم لحفظ البيانات في نظام إدارة حضور الموظفين.

    مكونات نظام إدارة حضور الموظفين:

    يتكون نظام إدارة حضور الموظفين من مجموعة من المكونات، مثل:

    • صفحة تسجيل الدخول: تُستخدم لتسجيل الدخول إلى نظام إدارة حضور الموظفين.
    • صفحة تسجيل الحضور والانصراف: تُستخدم لتسجيل حضور وانصراف الموظفين.
    • صفحة عرض التقارير: تُستخدم لعرض تقارير حضور وانصراف الموظفين.

    النتائج

    يعد نظام إدارة حضور الموظفين من الأنظمة المهمة في أي شركة أو مؤسسة، حيث يساعد في تحسين الإنتاجية وضبط العمل. يمكن بناء نظام إدارة حضور الموظفين بلغة php باستخدام مجموعة من التقنيات وأدوات البرمجة المختلفة.

    التوصيات

    • استخدام إطار عمل برمجي مفتوح المصدر مثل Laravel لبناء نظام إدارة حضور الموظفين.
    • استخدام قاعدة بيانات مفتوحة المصدر مثل MySQL لحفظ البيانات في نظام إدارة حضور الموظفين.
    • اختيار المكونات المناسبة لنظام إدارة حضور الموظفين بناءً على احتياجات الشركة أو المؤسسة.

    الخاتمة

    يعد نظام إدارة حضور الموظفين من الأنظمة الهامة التي تساهم في تحسين الإنتاجية وضبط العمل في أي شركة أو مؤسسة. يمكن بناء نظام إدارة حضور الموظفين بلغة php باستخدام مجموعة من التقنيات وأدوات البرمجة المختلفة، مما يوفر المرونة والسهولة في بناء النظام.

    • أعجبني 1
  11. بتاريخ 32 دقائق مضت قال عمار هبه:

    شكرا يابشمهندس سليمان

    اذا كان الدالة الاولة تحتوي على عدة كودات او اسطر وانا اريد استدعاء كود واحد او سطر واحد فقط الى الدالة الثانيه  

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

  12. بالطبع تستطيع استدعاء دالة داخل دالة أخرى وتنفيذ الكود الذي تم وضعه داخل الدالة المستدعاة، فعندما تنشئ دالة في بايثون، يمكنك استخدام اسم هذه الدالة كأمر لاستدعائها في أي مكان آخر في البرنامج.

    مثال:

    def func1():
        print("هذا هو الدالة الأولى")
    
    def func2():
        print("هذا هو الدالة الثانية")
        func1()  # استدعاء الدالة الأولى داخل الدالة الثانية
    
    func2()  # يتم استدعاء الدالة الثانية أولاً، ثم الدالة الأولى

    قمت باستدعاء الدالة func1 من داخل الدالة func2 وتم تنفيذها عندما تم استدعاء func2.

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

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

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

    • أعجبني 1
  14. بتاريخ 38 دقائق مضت قال Gaith Benali:

    اسأل هل جافا سكريبت تكفيني اساسياتها فقط مثلا في تطوير موقع

    و هل هناك مواقع لترجمة الفيديوهات من الإنجليزية إلى العربية 

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

    ومن خلال التعمق بها ستتمكن من إنشاء تجربة مستخدم جيدة، وأيضًا يمكنك تعلم React واستخدامها في الواجهة الأمامية وجانغو في الواجهة الخلفية.

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

     

    Snag_17b5967.png

  15. الأسئلة الإختبارية لا يتم حلها بشكل مباشر هنا ويمكن مساعدتك في حل قمت بتوفير الكود، وبالنسبة لخطوات الحل فيمكن إرشادك لها:

    أولاً التمرين يهدف إلى ممارسة تركيب الكلاسات في C++ بواسطة إنشاء كلاسين، الكلاس "Author" والكلاس "Book"، حيث يتضمن الكلاس "Book" كعضو له كائن من الكلاس "Author". إليك الخطوات لحل هذا التمرين بشكل مفصل:

    الكلاس "Author":

    1- أنشئ الكلاس "Author" واجعل له الخصائص الخاصة التالية:

    • std::string name (اسم الكاتب)
    • int birthYear (سنة ميلاد الكاتب)

    2- قم بتنفيذ مُنشئ (constructor) يأخذ اسم الكاتب وسنة ميلاده كمعاملات ويقوم بتهيئة الخصائص.

    3- قم بتنفيذ دالتي get للحصول على اسم الكاتب وسنة ميلاده.

    4- قم بتنفيذ دالة عضوية (member function) تسمى "displayInfo" تعرض معلومات الكاتب على الشاشة.

    الكلاس "Book":

    1- أنشئ الكلاس "Book" واجعل له الخصائص الخاصة التالية:

    • std::string title (عنوان الكتاب)
    • int publicationYear (سنة نشر الكتاب)
    • Author author (كائن من الكلاس "Author")

    2- قم بتنفيذ مُنشئ يأخذ عنوان الكتاب، سنة نشره، اسم الكاتب، وسنة ميلاد الكاتب كمعاملات ويقوم بتهيئة الخصائص. يجب أن يقوم هذا المُنشئ أيضًا بإنشاء كائن "Author" وتهيئته.

    3- قم بتنفيذ دالتي get للحصول على عنوان الكتاب وسنة نشره.

    4- قم بتنفيذ دالة عضوية تسمى "displayInfo" تعرض معلومات الكتاب، بما في ذلك معلومات الكاتب، على الشاشة.

    الدالة الرئيسية:

    1. في الدالة الرئيسية (main function)، قم بإنشاء ما لا يقل عن كائنين من الكلاس "Book" بعناوين مختلفة، سنوات نشر مختلفة، أسماء كتّاب مختلفة، وسنوات ميلاد مختلفة للكتّاب.
    2. استخدم دوال الحصول (getter methods) للوصول إلى المعلومات وقم بعرض معلومات هذه الكتب باستخدام دالة "displayInfo".
    3. تأكد من أن البرنامج يقوم بعرض المعلومات بشكل صحيح حول الكتب والكتّاب.

     

    • أعجبني 1
  16. بتاريخ 12 دقائق مضت قال Ali Ahmed6:

    تمام , بس UIUX هل هو مهم فيه البديه والا اتعلم بعد كده ؟

    وكمان انا بستخد فيه قوعات البيانات MySQL ؟

    عليك تعلم الأساسيات فقط في البداية، ثم التعمق فيما بعد، لكن لا تقم بتطوير المواقع وأنت لست على دراية بطريقة بأساسيات التصميم، وستجد هنا شرح ومصادر للتعلم:

    وبخصوص قاعدة البيانات فستطيع استخدام أي قاعدة بيانات تريد، لكن الأمر يتوقف على نوعية البيانات التي سيتم معالجتها في المشروع، ولكن لا يكفي أن تكون على علم بنظام إدارة قاعدة بيانات واحد بل عليك تعلم استخدام PostgreSQL بالإضافة إلى MongoDB.

     

    • أعجبني 1
  17. بتاريخ 3 ساعة قال زيد الكربلائي:

    هل يمكن برمجة لتحويل الصورة الى نص قابل للتعديل باستخدام لغة بايثون وما هي ارقام الحروف العربية المستخدمه في البرمجة 

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

    أو يمكن استخدام مكتبة pytesseract بسهولة مع opencv ولكن للنصوص الإنجليزية فقط، وستجد شرح هنا:

    أما إذا أردت استخدام أفضل المتاح ولكن ليس بشكل مجاني، فيمكنك تجربة Vision API من Google Cloud Platform وهي تقنية التعرف الضوئي على الحروف (OCR)، والتي تدعم اللغة العربية، وتوفر جوجل تجربة مجانية عندما تقوم بالتسجيل لأول مرة، حيث ستحصل على بعض الرصيد لاستخدامه.

    ويمكنك استخدام الـ API الخاص بتلك الخدمة واستخدامه في المشروع لديك من أجل تحويل قراءة النصوص في الصور، وإليك مثال من خلال بايثون:

    def detect_document(path):
        """Detects document features in an image."""
        from google.cloud import vision
    
        client = vision.ImageAnnotatorClient()
    
        with open(path, "rb") as image_file:
            content = image_file.read()
    
        image = vision.Image(content=content)
    
        response = client.document_text_detection(image=image)
    
        for page in response.full_text_annotation.pages:
            for block in page.blocks:
                print(f"\nBlock confidence: {block.confidence}\n")
    
                for paragraph in block.paragraphs:
                    print("Paragraph confidence: {}".format(paragraph.confidence))
    
                    for word in paragraph.words:
                        word_text = "".join([symbol.text for symbol in word.symbols])
                        print(
                            "Word text: {} (confidence: {})".format(
                                word_text, word.confidence
                            )
                        )
    
                        for symbol in word.symbols:
                            print(
                                "\tSymbol: {} (confidence: {})".format(
                                    symbol.text, symbol.confidence
                                )
                            )
    
        if response.error.message:
            raise Exception(
                "{}\nFor more info on error messages, check: "
                "https://cloud.google.com/apis/design/errors".format(response.error.message)
            )

    وهناك أيضًا خدمة مجانية من خلال الذكاء الاصطناعي تقدمها منصة ocr.alazka.ai من خلال الرابط التالي:

    وتدعم النصوص العربية والإنجليزية، وتوفر واجهة لرفع الصور مباشرًة كمستخدم عادي والحصول على النص، وأيضًا توفر لك API لاستخدامه كمطور هنا:

     

  18. المشكلة الرئيسية هي أن حقل "photo" في مخطط الصورة (ImageSchema) يُعتبر إلزاميًا (required: true)، ولكنه ليس موجودًا في البيانات المرسلة من طرف العميل عندما يتم إرسال الصورة، وذلك هو السبب في ظهور رسالة الخطأ "Path photo is required." في طرف الخادم.

    حاول طباعة البيانات المرسلة console.log(formData) لرؤية محتوى البيانات التي تم إرسالها إلى الخادم.

    • أعجبني 1
  19. الجانب الخاص بوظيفة التجارة الإلكترونية هو جانب إداري وليس تقني بشكل كبير، لذلك ما أنت بحاجة إليه هو دورة إدارة تطوير المنتجات حيث يتم بها شرح ما يلي:

    •  المفاهيم الأساسية في إدارة تطوير المنتجات
    •  دارسة السوق وتحليل المنافسين ومعرفة متطلبات العملاء
    •  كتابة ملفات المواصفات التقنية للمنتج وميزاته وتحديد أولويات التنفيذ
    •  كتابة حالات الاستخدام Use cases وقصص المستخدمين User stories
    •  المخططات الأولية Wireframes وإنشاؤها
    •  التعرف على أنواع MVP
    •  توظيف مصممين للهوية البصرية Brand Image ولواجهة المستخدم وتجربة المستخدم UI/UX
    •  توظيف مطورين للواجهة الأمامية Front-end لمواقع الويب وللواجهة الخلفية Back-end ولتطبيقات الجوال
    •  نشر مواقع الويب وتطبيقات الجوال والوصول إلى مختلف الإحصائيات لتحليلها
    •  التطوير المستمر للمنتجات باعتماد منهجية أجايل Agile

    وهي موجهة للفئة التالية:

    •  لمن ليس لديه خبرة في مجال البرمجة أو التصميم ويريد تنفيذ مشروعه الناشئ
    •  لمن يريد تعلم إدارة تطوير المنتجات لتحسين فرصه التوظيفية
    •  لمن يعمل في إدارة المنتجات ويرغب بتوسعة معلوماته حول عملية التطوير وإدارتها

    وإذا نظرت لمهام مدير التجارة الإلكترونية ستجد أن دورة تطوير إدارة المنتجات تؤهلك للقيام بها بنسبة كبيرة، وهي كالتالي:

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

    3. تنفيذ استراتيجيات التسويق عبر الإنترنت، مثل الإعلان عبر وسائل التواصل الاجتماعي والتسويق بالبريد الإلكتروني والتحسين لمحركات البحث.
    4. إدارة المخزون واللوجستيات، أي المخزون المتاح ويضمن توفير المنتجات بفعالية وتوصيلها بسرعة للعملاء.
    5. جمع وتحليل البيانات ذات الصلة بالمبيعات والأداء عبر الإنترنت لاتخاذ القرارات الاستراتيجية الصائبة.
    6. يسعى المدير لتحسين تجربة العملاء عبر الموقع الإلكتروني وضمان أن العملاء يجدون ما يبحثون عنه بسهولة.
    7. يسهم المدير في مراقبة الأمور المالية المتعلقة بالتجارة الإلكترونية، مثل تحديد الأسعار ومعالجة المدفوعات عبر الإنترنت.
    8.  يبحث عن فرص لتوسيع شبكة الشراكات والتعاون مع مزودي الخدمات والشركات الأخرى لتعزيز النمو.
    9. يجب على مدير التجارة الإلكترونية أن يلتزم باللوائح والقوانين المتعلقة بالتجارة الإلكترونية وحماية المعلومات الشخصية.
    10. يقدم تقارير دورية لإدارة الشركة تلخص أداء التجارة الإلكترونية ويقدم تقييمات واقتراحات لتحسين العمليات.

     

  20. يمكنك الوصول إلى أي دورة أنت مشترك بها من خلال تبويب دوراتي كما بالصورة التالية:

    fa734df5-3708-4e0c-9ea1-fb4d3c7d0c96.thumb.png.3b887913c13cc5790d0402fe61d23d40.png

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

    وعليك دراسة الدورة بالترتيب الخاص بها أي من الأعلى إلى الأسفل، وأول مسار هو بداية الدورة (أساسيات لغة بايثون).

    Snag_6be815.thumb.png.93d2f1c94bda0edf20010c271d94c42c.png

    ورابط الدورة المباشر هو التالي:

    وستتعلم بالدورة ما يلي:

    • الأسس البرمجية السليمة عبر لغة Python
    • التعامل مع مختلف صيغ الملفات مثل إكسل Excel وورد Word وخدمات المستندات السحابية
    • استخراج البيانات من صفحات الويب Web Scraping وتحليلها
    • أساسيات التعامل مع قواعد البيانات عبر بايثون، والتعامل مع البريد الإلكتروني لإرسال الرسائل
    • أساسيات إطار العمل جانغو Django
    • بناء تطبيق إدارة المهام باستخدام إطار العمل جانغو Django
    • تطوير متجر إلكتروني متكامل باستخدام إطار العمل جانغو Django وربطه مع وسائل الدفع باي بال PayPal وسترايب Stripe
    • أساسيات إطار العمل فلاسك Flask، وبناء مدونة بسيطة
    • تطوير واجهة برمجية API اعتمادًا على نمط RESTful لمعالجة الصور

    وبخصوص التوظيف بعد الدورة يمكنك قراءة التالي:

     

×
×
  • أضف...