لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 01/13/21 في كل الموقع
-
مشاء الله مهارات عظيمة. هناك فقط بعض الملاحظات البسيطة للغاية، بتطبيقها ستكون سيرتك الذاتية جاهزة بالكامل: - لاحظت أنك مطور تطبيقات أندرويد، لذلك غير المسمى الوظيفي إلى Android Developer لتكون أكثر دقة. - في معلومات الإتصال ضع الدولة بجانب اسم المحافظة Cairo, Egypt (ستكون أفضل في حالة العمل مع شركات دولية أو أجنبية). - قم بتنسيق رقم الهاتف من خلال وضع مسافات ليكون بهذا الشكل +20 123 456 7890 - ألقيت نظرة على حسابك في GitHub ووجدت أعمال رائعة ما شاء الله. فقط أكتب بعض المحتوى في ملفات ReadMe تشرح فيها الغرض من التطبيق والمميزات الخاصة به. - في الفقرة التعريفي Summary أصلح خطاء إيملائي بسيط، لتكون الفقرة هكذا: - إستخدم خدمة Grammarly المجانية لإصلح بعض الأخطاء الإيملائية البسيطة في جزء المشاريع الخاص بك. - أكتب مقدمي الدورات التي حصلت عليها مثلًا " Mobile application development course using web technologies From Hsoub Academy" في النهاية، إستخدم موقع لبناء السيرة الذاتية مثل resume.io أو zety.com هذه الموقع ستقدم لك قوالب إحترافية تفيض بالحياة. بالتوفيق2 نقاط
-
يعطيك العافة أحمد، المهارات جيدة جدا و متوافقة بشكل مقبول جداً بالنسبة لي الفورمة غير مفعمة بالحياة، نمط الألوان و الجزء الرمادي.. و أضف صورة شخصية. أنصحك بتجريب Euro Pass CV Editor من هنا لأنه يقوم بعمل تنسيق احترافي و تظهر بشكل أفضل بالتوفيق2 نقاط
-
الإطاران مختلفان تمامًا ومن الصعب دائمًا تحديد أيهما أفضل. كل شيء يعتمد على حالة واحدة. ما هي التكنولوجيا التي تفضلها لعملية تطوير تطبيقك؟. هناك أشياء يجب أن تكون على دراية بها حول Cordova, إذا كنت تبحث عن إطار عمل مفتوح المصدر وسهل التعلم لبناء تطبيقات الأجهزة المحمولة ، فليس هناك خيار أفضل من Cordova. تتطلب الأداة معرفة عميقة بجافا سكريبت و HTML / CSS مما يفتح آفاقًا واسعة لتنفيذ أي فكرة, يسمح Cordova للتطبيقات بمشاركة كود واحد عبر جميع الأنظمة الأساسية للجوّال. هذا يجعل تشغيل التطبيق على Android و iOS ومنصات غريبة أخرى مثل Blackberry و Windows Phone وما إلى ذلك أمرًا سريعًا ومريحً, وأيضا من السهل إنشاء تطبيق للهاتف المحمول يعتمد على كوردوفا بسبب إمكانية إعادة استخدام الكود, تعمل تطبيقات كوردوفا في غلاف WebView ، مما يعني أن كود الويب يعمل في متصفح الهاتف المحمول. يمكن إنشاء أي شيء باستخدام HTML و CSS و JavaScript فقط.وأيضا من المميزات التي يتميز بها إطار عمل Cordova انه من السهل عليك تصحيح أخطاء تطبيق Cordova الجديد. ReactNative هو إطار عمل JavaScript الذي يسمح لك بإنشاء تطبيقات iOS و Android في وقت واحد. تحتاج فقط إلى الترميز مرة واحدة وسيتم استخدامه لكلا النظامين الأساسيين مما سيؤدي في النهاية إلى توفير الوقت والجهد. يجب أن تكون على دراية بـ JSX ومكونات React وتدفق البيانات والأنماط المضمنة ونموذج Flexbox لبدء العمل مع React Native. ليست هناك حاجة لاستخدام HTML / CSS ، حيث أن العمل مع هذا الإطار يركز بشكل أساسي على JS. يتم تجميع مكونات React Native في عناصر عرض واجهة المستخدم لكل نظام أساسي. Ionic هي أيضًا منصة تتيح للمطورين إنشاء تطبيقات عالية الأداء عبر الأنظمة الأساسية باستخدام كود واحد.يمكن استخدام التطبيقات التي تم إنشاؤها عبر Ionic على الويب أو أي جهاز آخر.يوفر إطار العمل مفتوح المصدر هذا أدوات ودية للمطورين إلى جانب الخدمات المدعومة.كما أنه يشتمل على مكتبة غنية ومكونات بناء تجعل الأمور أسهل بالنسبة للمطور. أنصحك باستخدام ReactNative.1 نقطة
-
دالة Fetch عبارة عن Web API تسمح لك بإرسال طلبات HTTP Requests وتقوم بجلب لك نتيجة هذا الطلب، فعلى سبيل المثال: تريد أن تجلب 10 أسماء أشخاص عشوائية من API معين، لذلك تستخدم هذا الرابط (قم بزيارته في المتصفح لترى النتيجة)، ما تراه في المتصفح هو ما سوف تجلبه لك دالة Fetch ويسمى إجابة الطلب Response. فإن قمت بكتابة السطر التالي في الـ console: console.log(fetch('https://namey.muffinlabs.com/name.json?count=10&with_surname=true&frequency=common')); ستحصل على هذه النتيجة (الصورة الأولى fetch_then_result.png) هذه النتيجة من نوع Promise وسنرجع لهذا النوع لاحقًا، أما الآن تحتاج لطريقة للحصول على الأسماء من داخل هذه النتيجة، وهنا يأتي دور دالة then، هذه الدالة تسمح لك بالدخول إلى النتيجة من نوع Promise وتستخدمها كما تريد، فإذا قمت بكتابة السطر التالي في الـ console: console.log(fetch('https://namey.muffinlabs.com/name.json?count=10&with_surname=true&frequency=common').then(function(response) {return response.json()})); ستحصل على هذه النتيجة (الصورة الثانية fetch_result.png) وستجد 10 أسماء عشوائية موجودة في PromiseResult دالة then تأخذ متغير عبارة عن دالة في حد ذاته، بعد ذلك يتم تمرير إجابة الطلب من نوع Promise إلى هذه الدالة الأخيرة لتقوم بتحويله إلى كود JSON بدلًا من نص عادي String حتى يسهل التعامل معه في باقي الكود، بمجرد أن يتم تحويل الإجابة response إلى كود JSON ترجعه الدالة then الأولى بإستخدام جملة return ويخزن في PromiseResult لاحظ أنه يمكنك أن تسمي اسم المتغير الممرر إلى الدالة داخل then بأي اسم، مثلًا: .then(function(something) {return something.json()})); // أو هكذا .then(function(data) {return data.json()})); لاحظ أيضُا أنه يمكنك أن تستدعي دالة then أكثر من مرة على التوالي: fetch('https://namey.muffinlabs.com/name.json?count=10&with_surname=true&frequency=common').then(function(response) {return response.json()}).then(function (something){console.log(something)}); وفي كل مرة تأخذ دالة then ما أعادته دالة then التي قبلها، (أنظر الصور الثالثة fetch_then_then_result.png) قد تتسأل لمذا كل هذا التعقيد، لماذا لا يتم تخزين نتيجة الطلب في متغير مباشرة هكذا: var x = fetch('https://namey.muffinlabs.com/name.json?count=10&with_surname=true&frequency=common') لتستخدمها بكل سهولة بعد ذلك للإجابة على ذلك عليك أن ما سيحدث للموقع في حالة تأخر الخادم server في إرسال النتيجة response، بكل بساطة سيتوقف كل شيء حتى يتم تخزين إجابة الطلب في المتغير x ، بالطبع لا نريد حدوث ذلك، لذلك وجب إستخدام عملية غير متزامنة (asynchronous operation) أي يتم تنفيذ دالة fetch وفي نفس الوقت يظل الموقع يعمل كما كان بالضبط. يمكنك الإطلاع على توثيق موسوعة حسوب JavaScript - Promise لشرح أكثر تعمقًا ملاحظة: في دالة then الثانية في سؤالك، تم دالة سهمية Arrow Function وهي نفس الدالة العادية لكن بطريقة كتابة مختلفة فقط. أنظر الدوال السهمية في JavaScript1 نقطة
-
السلام عليكم أخي نصيحتي لك دائماً لا تقف عند مسألة ايهما افضل طالما أنها سوف تقوم بأيصالك الى تحقيق نفس الشيء إبدأ بتعلم اي واحد منها. فهنالك العديد من الفريموركات في مجال البرمجة و التوقف عند مسألة ايها افضل قد يكون مضيعة للوقت في بداية تعلم البرمجة. توفر ionic أطر العمل لاستخدامها في التطبيق. بينما توفر Cordova الإضافات لتشغيل التطبيق على غرار التطبيق الأصلي. ايونيك توفر العديد من الوظائف المختلفة، والتي تحتاج إلى أن تكون متكاملة مع التطبيق، في حين يوفر كوردوفا وصول الhardware من جهاز إلى التطبيق. ال React native هو فريمورك مبني بأستخدام الجافاسكربت لذلك انصحك ان تتعلم الجافاسكربت في البدء حتى تسهل الامر على نفسك.1 نقطة
-
مرحبًا اخي @عبد الواحد الحدادي, كل من هذه التقنيات تعتمد على javascript وليست ReactNative وحدها , لكن اطار ReactNative يحتاج معرفة مكتبة ReactJs . و هنالك فرق بين ReactNative و Cordova/Ionic , تُعتبر Cordova/Ionic اطارات تقوم بتطوير التطبيقات على هيئة webview يعني ان التطبيق سيقوم باستعمال محرك المتصفح في الخلفية من اجل تشغيل التطبيق و لذلك هي ليست افصل من ReactNative في تجربة المستخدم لكنها ليست سيئة ابداً . ولكن Cordova/Ionic هما اسهل من التعلم من ReactNative حيث انك تصبح انجزت فيهم شوط بمجرد تعلم Html Css Javascript طريقة البرمجة فيهم تُشبه تطوير المواقع . اما ReactNative اصعب نوعا ما ولكن افضل في تجربة المستخدم و التطبيق اسرع , تطبيقات ReactNative تُدعى native أي انها اصلية و تستخدم موارد الجهاز عند تشغيل التطبيق وليس محرك المتصفح . في المدى التطويل تعلم ReactNative , تعلم Cordova/Iconic لبناء تطبيقات بسرعة و بتقنيات انت اصلن تعلمتها مثل html و css .1 نقطة
-
مرحبا، لايمكن الحكم على أي شخص فقط عن طريق شهاداته حتى لو كانت جامعية، في مجال البرمجة تبقى الخبرة و المهارات هي العامل الأساسي في التوظيف. بالنسبة لشهادة الأكاديمية، لن تحصل عليها إلا باجتياز الامتحان وهذا يعطيها أفضلية عن دورات أخرى. طبيعة الامتحان بعد اتمامك للدورة، سيكون عليك التواصل معنا من خلال مركز مساعدة حسوب لتحديد موعد امتحان وسيكون على الشكل التالي: اجراء محادثة صوتيّة لمدة 30 دقيقة يطرح المدرّب عليك أسئلة متعلّقة بالدورة والأمور التي نفّذتها خلالها. يحدد لك المدرّب مشروعًا مرتبطًا بما قمت به أثناء الدورة لتنفيذه خلال فترة محددة تتراوح بين أسبوع الى أسبوعين. اجراء محادثة صوتيّة أخرى لمدّة 30 دقيقة يناقش بها مشروعك وما نفذته وتطرح أسئلة خلالها. ان سارت على جميع الخطوات السابقة بشكل صحيح، تحصل على الشهادة أو يرشدك المدرّب لأماكن القصور ويطلب منك تداركها ثم التواصل معنا من جديد. بعد الانتهاء من الدورة، يمكنك البدء بتقديم عروض العمل على منصات العمل الحر مثل مستقل للفترة الأولى لتكتسب بعض الخبرة، ثم بعد فترة تقوم بالتقديم على الشركات في حال أحببت ذلك مع تقديم جميع الأعمال التي قمت بها خلال الدورة و المشاريع الخاصة. بعد اجتيازك الامتحان ستتم المتابعة معك خطوة بخطوة وتوضيح جميع الطرق التي ستسلكها للحصول على عمل. حيث أحد البنود التي توفرها لك الأكاديمية عند شرائك دورة هو: إرشاد وتوجيه أثناء فترة بحثك عن عمل: هذا هو الهدف الأساسي لجميع دورات أكاديميّة حسوب. بعد إتمامك للدورة سيتم الإطّلاع على سيرتك الذاتية من قبل المختصّين لدينا وتقديم ارشادات مخصّصة لك لتحسينها وكذلك على ملفّك الشخصي في مواقع العمل الحر. بالتوفيق1 نقطة
-
مرحبا حفصة، fetch هي تابع function يقوم بالاتصال برابط ويب URL : Uniform Resource Locator أي (محدد موقع المعلومات) وينتظر جواب المخدم الذي يرسل البيانات أو رسالة خطأ، وتمرر النتيجة للتابع التالي then. then الأولى: هي تابع أيضا ينتظر إنتهاء عمل fetch ليقوم بالتنفيذ وتعني كترجمة (عندها) أي مثل الخطوة التالية، وتقوم باستقبال البيانات عن طريق الوسيط response الذي يمثل جواب المخدم للطلبية وتعيد النتيجة على الشكل {return response.text()} مستخلصةً البيانات من الرد response باستخدام ال function التي هي text أي تعيد البيانات بشكل نصي، وبدورها تمررها للدالة التالية. then الثانية: بعد انتهاء then الأولى تتقبل البيانات بنفس الطريقة في متحول اسمه data و تعيد غرض فارغ {}. هذه سلسلة functions تستعمل لمعالجة البيانات تعتمد علة ما يدعى JavaScript Promises أي كل جزء من سلسسة المعالجة يعدنا بإعادة بيانات وتمرمريها للدالة التالية (معظم هذه الإجرائيات تأخذ وقتها بسبب العمل عن طريق الانترنت فلذلك تدعى وعد وهي غير متزامنة أي لا ننتظر جواباً بنفس اللحظة عند الاستدعاء. "I Promise a Result!" // الشيفرة البرمجية التي تعدي البيانات مثلا المخدم "Producing code" is code that can take some time // الشيفرة البرمجية التي تستقبل البيانات مثلا المتصفح "Consuming code" is code that must wait for the result الوعد في جافاسكربت هو غرض يربط بين الطلبية و جوابهافي حال اتصالات غير متزامنة A Promise is a JavaScript object that links producing code and consuming code - أظن أنها شيفرة برمجية غير هادفة ومثال بدون تطبيق لكن هذا الشكل العام له. يمكنك الإطلاع أكثر من توثيق موسوعة حسوب JavaScript - Promise شرح من أكاديمية حسوب من هنا - توثيق w3schools - مصادر أجنبية رابط1 - رابط2 - رابط3 بالتوفيق1 نقطة
-
وعليكم السلام ورحمة الله وبركاته الكود مؤلف من ثلاثة أقسام، اﻷول هو: fetch(url) تابع fetch هو طريقة لعمل HTTP Requests من خلال الـjavascript ويعتبر بديلاً عن XMLHttpRequest أي بديلاً عن الـAjax. هذا التابع يرد ما يسمى بـPromise، الـPromise هو تمثيل ﻷي عملية asynchronous حيث ينفذ بالخلفية وعندما ينتهي تنفيذه ينفذ التابع الذي تمرره كمعامل إلى تابع then، في حالة الـfetch ينفذ تابع الـthen عندما ينتهي الـrequest من السيرفر، القسم الثاني هو تابع then التالي: .then(response => {return response.text()}) المعامل response هو نتيجة Promise وأي Promise أي أيُ عملية asynchronous قد تأتي بنتيجة وقد لا تأتي بنتيجة، المعامل response هو Response object عنده الكثير من التوابع لجلب معلومات عن الجواب الذي أرسله السيرفر، اﻵن نريد أن نجلب response body ونحن نتوقع أن يكون response body هو نصي مثل html response مثلاً لكن قد يكون أيضاً text/plain. لجلب response body نستخدم تابع text، تابع text أيضاً يرد promise أي أنه عملية asynchronous ، قد تقول اﻵن لماذا وضعنا قبل response.text() تعليمة return ؟ ألا تستخدم هذه التعليمة لرد قيمة ؟ إن Promise يعتبر object له تعامل خاص من المتصفح ولكنه كأي object يمكن رده كقيمة وهذا يجعل كتابة تابعك الخاص الذي يرد Promise ممكناً والـPromise لديه constructor مثله مثل أي object. عندما نرد promise كقيمة داخل تابع then لـPromise آخر فإن نتيجة تابع then تكون أيضاً Promise. سأعيد الشرح ﻷنني أعلم أن اﻷفكار أصبحت متشابكة، أولاً لدينا: fetch(url) يرد Promise لذلك نستدعي then ونجلب response body باستخدام تابع text، الـthen يرد promise إذاً التعبير التالي: fetch(url).then(response => {return response.text()}) عبارة عن Promise كبير ينتهي عندما ينتهي الـrequest من السيرفر وتنتهي عملية response.text أيضاً، بما أنه Promise كبير يمكننا كتابة .then وهذا هو القسم الثالث من الكود وهو كالتالي: .then(data => {}) الـdata هنا هي نتيجة response.text وﻷن response.text يرد Promise<string> إذاً فالـdata عبارة عن string هو response body as text، قد يكون نص html يمكننا إضافته إلى DOM وبهذا يصير الكود AJAX نظامي، قد يكون أيضاً text/plain، الكود السابق لا يفعل شيئاً بالـresponse body ﻷنه مجرد مثالٍ لا أكثر. كمعلومة إضافية الـResponse object لديه تابع هو json يرد response body as JSON Object. لفهم المزيد من اﻷكواد مثل كودك أنصح بالقراءة بشكل أكبر عن موضوع Promises وستختمه بإذن الله تعالى. بالتوفيق وشكراً لك1 نقطة
-
مرحبا، ربما لايوجد مشكلة بالأصل، يمكن أنه قمت بتسجيل الدخول بمستخدم آخر يتبع لقاعدة بيانات أخرى، أرجو التأكد من أن الحساب الحالي هو المصرح له بالتعديل والوصول لهذه القاعدة. يمكنك أيضا تسجيل الخروج وإعادة المحاولة لنفس الحساب. أو الدخول بحساب الأدمن و إعطاء الصلاحيات للمستخدم لديك بتنفيذ التعليمة التالية مع تغيير الوسطاء: GRANT ALL PRIVILEGES ON the_database.* TO 'the_user'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; وربما المشكلة من التعليمة التي قمت بتنفيذها بوجود محرف خاطئ مثل استعمال نقطة . بدول شرطة سفلية _ SELECT ..... FROM LOCATION.PT instead of SELECT ..... FROM LOCATION_PT يمكنك مراجعة طرق إعطاء الصلاحيات من التوثيق الرسمي من mysql grant بالتوفيق1 نقطة
-
مرحباً، هناك عدة أجوبة مفيدة لك فقد قمتِ بطرح نفس السؤال سابقاً و قد أجابك الإخوة: بالتوفيق.1 نقطة
-
مرحباً عبد الواحد، برأيي أنه يُمكن لشخص ما تعلم إطار لارافيل و ذلك بعد الإلمام ببعض أساسيات اللغة من دون التعمق في مواضيع كثيرة أو إنشاء مشاريع بإستخدام لغة php فقط من دون إطار (pure php) و هذه الأساسيات إن لم يفهمها لن يتمكن من فهم أبسط الأشياء في الإطار: المتغيرات و أنواع البيانات في اللغة الثوابت الشروط الحلقات المصفوفات بأنواعها الدوال التعامل مع النماذج و الملفات المتغيرات العامة المُحددة مُسبقاً في اللغة ( GLOBALS ،SERVER، REQUEST، POST ، GET، FILES ،COOKIE، SESSION ) الجلسات و الكعكات البرمجة الكائنية بلغة php مجالات الأسماء التعامل مع قواعد البيانات مثل MySql ... و بعض المفاهيم الأخرى هذه المواضيع يجب المرور عليها ليس فقط إذا أراد الشخص تعلم لارافيل بل أي إطار عمل آخر .1 نقطة
-
1 نقطة
-
هل قمت بتحميل الملفات التي أرسلتها لك و جربتها؟ يُمكن أنك أخطأت في شيء ما فهي تعمل عندي و يتم عرض السعر 1000 في الصفحة بشكل عادي1 نقطة
-
مرحباً @Thamer Alfaifi جيد بما أنك أردت التطبيق على ما تعلمته و هذا ما أنصحك به دائما طبق على ما تتعلمه حتى تتطور و تترسخ لديك المعلومات. سبب تحرك العناصر ليس أنها تتحرك و إنما الborder هو الذي يدفعها فهو لم يكن موجودا و عند تمرير الفأرة فوق العنصر يتم إضافته و بالتالي يأخذ مساحة 2px من كافة الجوانب مما يؤدي إلى دفع العناصر الأخرى و بالتالي يظهر لك و كأنها تحركت، و الحل بإضافة الborder في الحالة العادية و جعله شفاف و عند تمرير الفأرة أي عند ال hover نُغير اللون بهذا الشكل: ul li { overflow: auto; text-emphasis: none; display: inline; margin: 20px; padding: 5px 20px; border: 2px solid transparent; /* إضافة بوردر شفاف */ } ul li:hover{ border: 2px solid #fff; /* تغيير اللون */ background-color: fuchsia; } الأمر يعتمد على ما الذي تريد الوصول إليه أنت حالياً تستخدم صورة بيضاء و لون الكتابة أيضاً أبيض فيُمكنك إما تغيير الصورة إلى صورة مُتوافقة مع الأبيض أو تغيير اللون. ستتمكن بعد إتمام مسار أساسيات جافاسكربت من إنشاء موقع شخصي و ذلك في آخر مسار من مسار أساسيات تطوير الويب تطبيقات لِما تعلمته، هذه ملفات مشروعك : thamer.zip بالتوفيق1 نقطة
-
يوجد الكثير من المواقع التي يمكننا الحصول منها على صور للتصاميم، مثل: unsplash pexels istock shutterstock burst و غيرها الكثير. للحصول على أيقونات و رسومات توضيحية يمكنك استخدام: flaticon undraw craftwork و غيرها. للحصول على مصادر إلهام لتصميماتك يمكنك استخدام: dribbble behance Pinterest land-book و غيرها الكثير و لكن ما ذكرته لك هو الأهر. يمكنك الوصول لهذه المواقع بسهولة عن طريق البحث عنها على google و البدأ باستخدامها في تصميماتك و أخذ الالهام منها1 نقطة
-
قرأت الكتاب سابقا جميل جدا من طريقة طرح معلومات وإعطاء امثلة ولكن الشيء الذي لم يعجبني انه عند نهاية الكتاب توقعت المزيد من معلومات وكان لدي العديد من اسئلة رغبت لو تواجدت في هذا الكتاب الرائع ،اعجبني تنسيقه وتصميمه وفي الاخير كيف اعطنا الكاتب امثلة عن مستقلين مثل صوت الرخيم والخ... هل انصحك بتحميل وتوفير وقتك له نعم بكل تأكيد ربما هو نافدة ملخصة و مبسطة عن خطور اولى لك. اذا كانت لديك مزيد من اسئلة ابحث في محركات البحث1 نقطة
-
هذا الدرس عبارة عن مدخل إلى SVG. سنتعلم فيه المعلومات الأولية التي تحتاجها لرسم أشكال SVG بسيطة باستخدام لغة XML الأساسية. فإن لم تستخدم SVG من قبل فهذا هو الدرس المناسب لك. في الماضي كان تنسيق الصور الوحيد المعتمد من قبل جميع المتصفحات هو تنسيق GIF وهو ملف صورة مطوّر من قبل CompuServe. ثم ظهرت ملفات صور JPEG التي تسمح بضغط الصور دون ضياع للتفاصيل مع حجم صغير مقارنة بملفات GIF. بعد فترة من الزمن ظهرت الحاجة إلى رسومات فكتور ثنائية الأبعاد على الإنترنت. وبعد دخول عدد من تنسيقات الصور إلى المنافسة في رابطة الويب W3C تم تطوير تنسيق SVG أخيرًا عام 1999. سوف أريكم الآن كيفية إنشاء أشكال باستخدام SVG. هذا الدرس سيشرح كيفية استخدام SVG في صفحات الويب. ما هو SVG؟ إن مصطلح SVG هو اختصار إلى Scalable Vector Graphics أي رسومات فكتور القابلة لتغيير الحجم وهو عبارة عن تنسيق صور قائم على لغة XML من أجل الويب. وعلى عكس تنسيقات GIF وPNG وJPEG فإن تنسيق SVG قابل لتعديل الحجم بسهولة دون أي ضياع للدقة ولتفاصيل الرسومات. إن ملف XML الذي يحوي صور SVG يمكن إنشاؤه وتخصيصه وتكامله مع بقية لغات W3C القياسية الأخرى مثل DOM وXSL باستخدام أي محرر نصوص. كما يمكن إنشاء صور SVG بصريًّا باستخدام برامج الرسم والفكتور كبرنامج أدوبي إليستريتور Adobe Illustrator. لماذا نستخدم SVG؟ يمكن إنشاؤها وتعديلها باستخدام أي محرر نصوص. يمكن طباعتها بدقة عالية جدًّا. يمكن استخدامها من أجل الرسومات المتحركة. موصى بها من قبل W3C. تعمل مع بقية لغات W3C القياسية مثل DOM. مظهرها عظيم للعروض البصرية. يمكن تعديل حجمها إلى أي حجم نريد بدون أي تشوه قد يطرأ عليها. SVG على صفحات HTML يمكن تضمين SVG بسهولة داخل ملفات HTML باستخدام وسم SVG. كما في أسطر الأوامر التالية. <svg width=" " height=" "> [element code here..] </svg> كماترى فإن SVG لها وسمها الخاص. يجب أن يتم تحديد طول وعرض الرسم وذلك لاحتواء عنصر الرسم. العناصر التالية يمكن أن تستخدم للرسم داخل مساحة العمل الخاصة. Circle Rectangle Ellipse Line Polyline Polygon Path Text فلنبدأ الآن بتعلم استخدام هذه العناصر في الرسم. إنشاء الدائرة في SVG دوائر الـ SVG يمكن تنفيذها باستخدام وسم circle. كهذا المثال. <svg height="300" width="300"> <circle cx="60" cy="60" r="50" style="fill: blue; stroke: black; stroke-width: 2px;" /> </svg> النتيجة هي صورة الدائرة الظاهرة في الصورة التالية. في هذا المثال استخدمت وسم circle ثم cx (إحداثيات x) وcy (إحداثيات y) والتي تحدد مركز الدائرة المرسومة. ثم وضعت القيمة 50 للمتغير r (نصف القطر) والذي سيحدد طول الخط الواصل بين مركز الدائرة ومحيطها. أخيرًا أضفت أنماط للون التعبئة والحدود وعرض الحدود. إنشاء مستطيل في SVG يمكن تنفيذ رسم المستطيل عبر وسم rectangle ويمكن تحديد قيم مختلفة من الارتفاع والعرض. <svg height="300" width="300"> <rect width="250" height="100" rx="11" ry="11" style="fill: yellow; stroke: green; stroke-width: 4px;"/> </svg> النتيجة النهائية هي صورة SVG عبارة عن مستطيل كما في الصورة التالية. قمتُ بتحديد العرض والارتفاع باستخدام وسم rectangle. ثم أضفت rx وry التي تحدد استدارة حدود المستطيل. إذا قمت بإزالة القيمتين الأخيرتين فستحصل على حواف حادة. ثم نضيف أنماطًا عبر لون التعبئة والحدود وعرض الحدود. إنشاء القطع الناقص (شكل بيضوي) في SVG يتم تنفيذ هذا الشكل عبر وسم ellipse. القطع الناقص ليس له ارتفاع وعرض متساويين وعلى عكس الدائرة فإن نصف القطر cx وcy مختلفان. انظر الكود البرمجي التالي. <svg height="300" width="300"> <ellipse cx="190" cy="70" rx="100" ry="50" style="fill:red; stroke:green;stroke-width:2"/> </svg> صورة القطع الناقص (الشكل البيضوي) النهائية كما في الصورة التالية. إن cx وcy يحددان مركز شكل القطع الناقص بينما rx وry يحددان قطري الشكل. وكما ترى فإن rx يحدد عرض الشكل بينما ry يحدد ارتفاع الشكل. ثم نضع الأنماط من ألون التعبئة والحدود وعرضها كما في كل مرة. إنشاء خط في SVG يمكن إنشاء خط SVG باستخدام وسم line. كما هو واضح من الاسم فإن هذا الوسم يرسم خطوطًا، كما في المثال التالي. <svg height="300" width="300"> <line x1="0" y1="0" x2="100" y2="150" style="stroke:#000; stroke-width:5" /> </svg> النتيجة النهائية ستظهر كما في الصورة التالية. في هذا المثال يمثّل x1 الاحداثي x فيما يمثّل y1 الاحداثي y وهو ما يحدد نقطة بداية الخط. فيما تحدد الاحداثيات x2 وy2 نقطة النهاية. وباستخدام ميزات الانماط وضعتُ لون الحدود أسود ولعرض 5بكسل. إنشاء الخطوط المتعددة في SVG يمكن تنفيذ هذه الخطوط عبر وسم polyline. حيث يستخدم لرسم الأشكال المكونة من خطوط مستقيمة كهذا المثال. <svg height="300" width="300"> <polyline points="60,50 150,120 100,220 200,170" style="fill:none;stroke:black;stroke-width:3" /> </svg> والنتيجة كما هي واضحة في الصورة. وباستخدام الاحداثيات x وy يمكنك تعيين كل نقطةمن النقاط الفردية لإنشاء أي شكل تريده. وكما ترى هنا لدي أربع نقاط تم وصلها ببعضها لتشكيل الخطوط. وأضفت حدودًا سوداء وبعرض 3 بكسل. إنشاء شكل مضلع في SVG يمكن تنفيذه عبر وسم polygon. هذا العنصر سيرسم شكلًا مكونًا من أكثر من ثلاثة جوانب. شاهد الترميز التالي. <svg height="300" width="300"> <polygon points=" 60,20 100,40 100,80 60,100 20,80 20,40" style="fill:cyan;stroke:red;stroke-width:1" /> </svg> النتيجة النهائية كما في الصورة. في هذا الشكل نقاط يتم تحديدها عبر الاحداثيات x وy لكل جانب من جوانب الشكل من النقطة الأولى إلى النقطة الأخيرة. في المثال، أنشأتُ شكلًا مسدّسًا بست جوانب. كما ترى هناك 6 نقاط متصلة ببعضها محددة بالاحداثيات x وy. ثم حددت لون التعبئة باللون السماوي مع لون حدود أحمر وبعرض 1 بكسل. إنشاء مسارات في SVG يمكن تنفيذه عبر وسم path. هذا العنصر سيرسم مسارًا مخصّصًا وأشكالًا تتكون من منحنيات، خطوط وأقواس. من بين جميع عناصر SVG هذا هو العنصر الأصعب للتعلم. مسارات SVG تستخدم الأوامر التالية. M للحركة L للخط V للخط العمودي H للخط الأفقي C للمنحني S للمنحني الناعم T لمنحنيات البيزير التربيعية A للأقواس البيضوية Z لإغلاق المسار وتحدد الأحرف الكبيرة الموقع بدقة بينما تحدد الأحرف الصغيرة الموقع بشكل تقريبي. كما في المثال التالي. <svg height="300" width="300"> <path d="M 30 40 C 140 -30 180 90 20 160 L 120 160" style="fill: none; stroke: black; stroke-width: 6px;" /> </svg> النتيجة ستكون كالصورة التالية من خلال الترميز في الأعلى سترى بأنني استخدمت حرف d. ميزة حرف d هذا ستكون دائمًا أمر التحريك. ثم استخدمت حرف M الذي يعني التحرك نحو اتجاه معين. وقبل رسم أي شيء عليك أن تحرك المؤشر الافتراضي إلى الموقع المفضّل. في هذا المثال حرّكتُ المحور x إلى 30 والمحور y إلى 40. المنحني يبدأ عند 140,-30 كنقطة للبداية. تاليًا نزلت نقاط المنحني للأسفل واليمين عند النقطة 180,90 وتنتهي عند 20,160 ولإنهاء المسار أنشأت خطًّا عند النقطة 120,160. إنشاء النص في SVG يمكن تنفيذ هذا الأمر من خلال الوسم المغلق text. هذا العنصر يستخدم لرسم النص في صورة SVG. <svg height="300" width="300"> <text x="20" y="30" fill="blue" font-size="20">This a great sample for Text SVG! </text> </svg> النتيجة ستكون كالتالي. في المثال استخدمت موقع المحور x للنص عند 20. هذا سيضع النص على بعد 20 بكسل من اليسار بينما وضعت المحور y عند 30 ما يجعل النص على بعد 30 بكسل عن الحافة العلوية. ثم لوّنت النص باللون الأزرق وجعلت حجمه عند 20 بكسل. هذا سيظهر العبارة التالية "This a great sample for Text SVG!". ترجمة -وبتصرف- للمقال How to Create Simple Shapes with SVG لصاحبه Editorial Team1 نقطة
-
اخي الكريم , طريقة رفع الحظر عن طريق ارسال الهوية , هاد الطريقة قديمة وغير عمليه يمكنك ذلك عن طريق التعديل في ال value الخاصة برفعة البطاقة وتخطيها وفتح الحساب , متل ما انا عملت لفتح حسابي ويعمل حاليا على اكمل وجه ,ويكنك مراسلتي لمحاولة اصلاحه لك .1 نقطة
-
الحوسبة السحابية ليست إلا مرآة عن الحوسبة التقليدية فبنيتها ومكوّناتها لا تختلف عن الحوسبة التقليدية إلا بطريقة عمل هذه المكونات والبيئة التي تحويها. فمثلًا توجد الخوادم Servers في الحوسبة السحابية والحوسبة التقليدية إلا أن الخوادم التقليدية تختلف عن الخوادم السحابية بطريقة عملها وأداءها للمهام ما الفرق بين Cloud Servers و Physical Servers وما هي الوظائف التي يقوم بها كل نوع؟. بالنسبة لسؤالك الثاني عن تضمين الذكاء الاصطناعي في الحوسبة السحابية فهذا ممكن بالطبع كما الحوسبة التقليدية فمثلًا لغة prolog المستخدمة في برمجة التطبيقات المعتمدة على ذكاء الحاسوب والتي تقوم بإنشاء مجموعة من الحقائق Facts -التي يعتمد عليها الحاسوب ليقوم بالسلوك المناسب- يمكن استخدامها وتطبيقها أيضًا في الحوسبة السحابية. -ما هي لغات البرمجة المطلوب تعلمها؟ أي لغة برمجة مستخدمة في الحوسبة التقليدية يمكن استخدامها في الحوسبة السحابية فكما قلت لك ليست الحوسبة السحابية إلا نسخة عن الحوسبة التقليدية ولكن بمنظور مختلف. ما هو Cloud Hosting؟ -هل هنالك مستوى معين من الخبرة لكي أدخل هذا المجال؟ ليس موضوع وجود مستوى معيّن من الخبرة بقدر أن يكون لديك رؤية واضحة وفهم عميق عن طريقة عمل الحوسبة السحابية وما هي مكوّناتها والخدمات التي تقدّمها وكيف تُستخدم. راجع الروابط أدناه: ماذا تعني خدمة SaaS في الحوسبة السحابية؟ ما هو Cloud PaaS Computing؟ ما هو نموذج خدمة IaaS في الحوسبة السحابية Cloud Computing؟ -هل تنصحوني بدخول هذا المجال كمجال مستقبلي لـ50 أو 100 سنة قادمة؟ نعم بالتأكيد فمستقبل الحوسبة السحابية واسع والعالم يتجه نحوه لما فيه من سرعة وسهولة في كثير من المجالات تفوق الحوسبة التقليدية. - آخيراً وأعتبره أهم سؤال، ما علاقة هذا المجال بإنترنت الأشياء (IOT)؟ نعم فلا وجود للحوسبة السحابية بدون وجود إنترنت. في الرابط أدناه فيديو رائع شاهدته منذ فترة يشرح التغيير المتوقع عام 2020 في عالم الانترنت في حال تعديل شبكة الانترنت واعتماد انترنت الأشياء IOT. ما هو التغيير المتوقع عام 2020 في عالم الانترنت ( I O T ) بالتوفيق1 نقطة