طارق جهاد
الأعضاء-
المساهمات
188 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
17
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو طارق جهاد
-
2 جيجا!!! انصحك اخي بالحصول على المزيد من سعة الذاكرة على جهازك، كمطور يجب ان تتجاوز سعة الذاكرة عندك 8 جيجا على الاقل. ليست العبرة بالتطبيق البديل! بالتوفيق،،،
-
إنت اذا بحاجة لاستخدام WCF ضمن بيئة الدوت نت وعلى اعتبار ان واجهة Client ايضا هي ويب، لذلك يمكنك الاستفادة من المثال التالي: https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/create-an-ajax-wcf-asp-net-client بالتوفيق،،،
-
وعليكم السلام ورحمة الله. انصحك باستخدام ASP.NET Web API وهو ما يعرف ب RESTful Services سواء كانت واجهة Client تطبيق ويب او ديسكتوب او موبايل، فانها ستعمل معك بشكل مثالي. كل ما انت بحاجته ضمن تطبيق Client هو التعامل مع طلبات HTTP وهي سهلة جدا سواء ضمن لغة السي شارب او الجافا سكربت او اي لغة اخرى. انصحك بمتابعة السلسلة التالية، فيها شرح كافي عن Web Api: ASP.NET Web API tutorial for beginners بإمكانك استخدام الطريقة التقليدية في خدمات الويب Web Services، ايضا انصحك بمتابعة السلسلة التالية: WCF Tutorial انا انصحك بشدة ب RESTful API فهي اسهل في التطوير والاستخدام. بقي سؤالي ما نوع تطبيق Client المراد تطويره؟ بالتوفيق،،،
- 3 اجابة
-
- 1
-
أخي الكريم هدف التطبيق لا يعتمد على QR بقدر ما يعتمد على قاعدة البيانات. QR هو قارئ لا أكثر، مهمتك هي في وجود قاعدة بيانات تحوي على اسعار المنتجات، وانت تقوم فقط بقراءة سعر المنتج المرتبط مع هذا الباركود. او اذا كان سعر المنتج مضمنا ضمن الباركود نفسه فعليك باستخراج السعر من هذه البيانات، مرة اخرى التركيز ليس على قارئ الباركود، وإنما على البيانات التي يرجعها هذا القارئ. بالتوفيق،،،
- 2 اجابة
-
- 1
-
يمكنك تثبيته عن طريق iTunes لكن يجب أن حماية الملف IPA عن رخصة مطور iOS App Development Certificate تتم هذه العملية عن طريق موقع مطور ابل https://developer.apple.com هناك تقوم باضافة الجهاز الذي سيتم تحميل التطبيق عليه (من خارج App Store كما في حالتك هذه) وعندها يمكنك تثبيته على جهازك عن طريق iTunes عدا عن ذلك لن يقبل جهاز الايفون هذا الملف، عكس اجهزة الاندرويد بالتوفيق،،،
-
طبعا تحديد SDK غالباً يعتمد على عدة عوامل: 1. مجال المستخدمين المستهدفين (مثالا في اندرويد كلما ارتفع اصدار SDK قل عدد الاجهزة الذي يدعمها هذا الاصدار) لذلك عليك باختيار SDK يستهدف الشريحة المطلوبة، مع احتوائها على الخيارات والميزات المطلوبة تجد مثلا واتساب احيانا، تعلن بانها بتحديثها الجديد لن تتمكن شريحة معينة من الاجهزة من استخدام واتساب. 2. احيانا تعتمد على مواصفات بيئة العمل لديك، مثل موصفات الاجهزة، تراخيص الشركة وعدة عوامل اخرى. مثل هذه الامور ليست بالأهمية البالغة بقدر فهمنا للميزات التي تقدمها كل SDK بالتوفيق،،،
-
وعليكم السلام ورحمة الله البرمجة موحدة في جميع دول العالم، انت فقط بحاجة للقليل من اللغة الانجليزية للتعلم واستخدامها ضمن بيئات البرمجة، عدا عن ذلك بأي لغة درستها لا يهم، بقدر ما يهم فهمك للبرمجة والمنطق البرمجي. بالتوفيق،،،
- 1 جواب
-
- 1
-
اخي الكريم لا يمكنك استخدام الكثير من ميزات Ionic او Cordova، مثل push notification، لاننا صحيح نكتبها بواسطة جافا سكربت، لكن هي تعتمد بالدرجة الاولى على امكانيات جهاز الموبايل. لذلك لا يمكنك استخدامها جميعا بتطوير موقع يعمل عن طريق المتصفح فقط. لكن يمكنك استخدام Angular JS لتطوير الموقع بامكانيات رائعة، وهي نفس التقنية التي تستخدمها ionic بالتوفيق،،،
-
وعليكم السلام ورحمة الله. لا مشكلة من إنشاء تطبيقات الموبايل باستخدام تقنيات الويب، وهناك الكثير من المكتبات والأدوات لعمل ذلك، و Ionic خيار جيد لعمل هكذا تطبيقات، وبالـتأكيد اذا كان لديك خبرة في تقنيات الويب، فقد اختصرت الكثير من الوقت لإنشاء هكذا تطبيقات. بالنسبة للإشعارات، انت بحاجة استخدام Push Notification وهي مدعومة ايضا كمكتبات جافا سكربت https://medium.com/@felipepucinelli/how-to-add-push-notifications-in-your-cordova-application-using-firebase-69fac067e821 راجع هذا المقال، يشرح عن الية اضافة التنبيهات Push Notification لإجهزة الاندرويد. بالتالي كملاحظة: انت بحاجة لمجموعة من الاعدادات على منصة الاندرويد، هنا تستخدم Firebase وخدمة GCM او Google Cloud Messaging، وايضا بحاجة لخدمة مشابه من آبل لاجهزة الايفون وهي APNS او Apple Push Notification Service بالتوفيق،،،
-
وعليكم السلام ورحمة الله. اذا كان لديك خبرة جيدة في تقنيات الويب (HTML, CSS, JavaScript) وكان المشروع متوسط او صغير الحجم، فبالتأكيد خيار التطبيقات الهجينة خيار مناسب. كونها ستعطينا تطبيق واحد يعمل على مختلف الأجهزة. أما اذا كان المشروع تجاري او مشروع كبير نسبياً وبحاجة لتطويرات مستقبلية واضافة ميزات عديدة، فلا انصحك عندها بالتطبيقات الهجينة! بل انصحك إما بالتطبيقات الـ Native او بالتطبيقات Cross-Platform مثل Xamarin، مع الاخذ بعين الاعتبار حجم فريق العمل في المشروع. بالتوفيق،،،
-
وعليكم السلام. الخطأ في استدعاء الدالة بهذا الشكل! يجب ان تقوم باستدعاء الدالة بهذا الشكل: sum(5, 4); أو int a = 5; int b = 4; sum(a, b); عند استدعاء الدالة لا يجب وضع نوع البيانات int, double, String بل يجب تمرير القيمة مباشرة (والتي يجب ان تتوافق مع نوع البيانات المعرف في الدالة) في هذه الحالة يجب ان تكون الأعداد المررة إلى الدالة من النوع int ملاحظة: بما أننا نقوم بتمرير القيم إلى الدالة عند استدعائها لذلك تسمى Parameters لكن في الدالة نفسها تسمى Arguments، بمعنى public void sum(int a, int b){ ... } هنا نسمي المتغيرات a,b ب Arguments بينما هنا sum(5, 4); or sum(a, b); هنا تسمى هذه القيم ب Parameters. بالتوفيق،،،
-
في المثالين الهدف هو التنسيق النصي: 1. نقوم بوضع الرمز @ للتخلص مما يسمى ب Escape Character، مثل backslash \ قومي بتجريب هذا المثال في بيئة سي شارب عندك: Console.WriteLine("C:\Program Files\Microsoft"); ستلاحظين ان بيئة سي شارب تعطي خطأ هنا، لأن backslash تعتبر escape character، بمعنى انها في هذا المثال لا يقصد بها الرمز \ وإنما تؤخذ كرمز واحد مع الحرف الذي يليها: \P لاتعني شيء بالنسبة لسي شارب، لذلك يظهر عليها الخطأ \M أيضا لا تعني شيء بالنسبة لسي شارب، لذلك يظهر عليها الخطأ ايضا ولكي تتضح الصورة اكثر، نلاحظ المثال التالي: Console.WriteLine("C:\Program Files\Microsoft\n"); سنلاحظ هنا ان سي شارب لم تعترض على n\ لانها تعني سطر جديد! أي ان سي شارب قامت بالنظر إلى backslash وشاهدت الحرف الذي يليها، واذا لم يكن من ضمن الرموز المعرفة في سي شارب، فسيظهر الخطأ. طبعا لحل هذه المشكلة، نقوم بإضافة backslash اضافي، كما يلي: Console.WriteLine("C:\\Program Files\\Microsoft\n"); الآن سي شارب لن تعترض على استخدم backslash بهذه الطريقة. لكن يمكننا التخلص من هذا الـ backslash الاضافي، فقط باخبار سي شارب ذلك، عن طريق وضع الرمز @ بداية النص: Console.WriteLine(@"C:\Program Files\Microsoft"); الآن ايضا سي شارب لن تعترض. 2. نقوم بوضع الرمز $ لسهولة التنسيق النصي ضمن سي شارب. مثلا Console.WriteLine("The sum of " + 4 + " and " + 5 + " = " + 9 +""); هذه طريقة التنسيق التقليدية في سي شارب. ونلاحظ انها صعبة الفهم والتتبع خاصة في حال وجود اخطاء، لذلك افترضت سي شارب، ان نقوم بعمل تنسيق نصي مناسب اكثر، وهو بدل ان نضع الرقم 4 مباشرة بهذا الشكل، نضع رمز او مؤشر مكانه، ثم نقوم باستبدال هذا الرمز او المؤشر بالرقم 4 لاحقاً كما يلي: Console.WriteLine("The sum of {0} and {1} = {2}", 4, 5, 9); الآن نلاحظ ان التنسيق اصبح اكثر وضوحاً! وسيتم استبدال الرمز {0} بالرقم 4 لاحقاً. يمكن استخدام هذا النمط من التنسيق خارج جملة Console.WriteLine من خلال استخدام الدالة string.Format var result = string.Format("The sum of {0} and {1} = {2}", 4, 5, 9); لكن مؤخراً قامت سي شارب باختصار هذه الصيغة ايضا كونها لا زالت تحمل بعض التعقيد او الغموض، فمثلا لو أردت ان اعرف ما هي القيمة التي سيتم استبدالها عند الرمز {2} سأقوم بعد المتغيرات 4 و 5 حتى اعثر على 9! لكن ماذا لو كان لدي 20 متغير او اكثر، هنا سيصعب تتبع البيانات! الحل كان باستخدام الرمز $ والذي يسبق التنسيق النصي، مع هذا الرمز سأتخلص من الدالة string.Format اولاً، ثم بدل ان أضع {2} وأقوم لاحقا باستبدالها بالرقم 9، سأقوم بوضع 9 مباشرة ضمن القوسين كما يلي: var result = $"The sum of {4} and {5} = {9}"; طبعاً في جميع الحالات النتيجة ستكون واحدة، لكن الهدف هو تسهيل العمل على المطور. لذلك تسمى جميع هذه الاختصارات والتكتيكات ب Syntactic Sugar او التجميل اللغوي، لانها فعليا لا تؤثر على المعنى ولكن على الشكل فقط! بالتوفيق،،،
- 2 اجابة
-
- 2
-
وعليكم السلام. البرمجة تعتمد على التفكير المنطقي، ومرتبطة ارتباطا وثيقا بالرياضيات، ولكن الرياضيات ليست متطلباً لتعلم البرمجة او تطوير التطبيقات. برمجة الالعاب تحتاج لمزيد من الرياضيات، وبعض التطبيقات الاخرى ستطلب تعمقاً اكثر في الرياضيات، ولكن باختصار، ليست الرياضيات الاكاديمية الجافة! لذلك اتركي امر الرياضيات إلى حين تقومين بالعمل على تطبيق معين يحتاج الرياضيات. وحتى وقتها حاولي تعمل البرمجة والأساليب البرمجية بالتوفيق،،،
-
نعم اخي الكريم، يمكن تغيير الرابط عن طريق الجافا سكربت ايضاً. في جميع الاحوال انت بحاجة طلب بيانات جديدة من السيرفر، وعرضها في مكانها المحدد في الصفحة. ويتم تحديث جزء من الصفحة وليس كلها، ويمكنك التحكم بالرابط الجديد للمحتوى الجديد اذا كنت مهتما في تطوير تطبيقات الويب بهذا الشكل،انصح بالبدء بتعلم AngularJS، فهي اطار عمل متكامل، باستخدام جافا سكربت (او فعليا TypeScript). وتعطيك جميع الامكانيات اللازمة لتطوير تطبيقات الويب بشكل SPA او Single Page Application. بالتوفيق،،،
- 7 اجابة
-
- 1
-
استخدم Ajax وهي باختصار طلب محتوى معين (سواء كان Html أو اي نوع بيانات اخر) ثم باستخدام JavaScript نقوم بإضافة html داخل احد عناصر الصفحة مثل div، وعندها ستحقق المطلوب. في جميع الحالات هناك طلب Request سيذهب إلى السيرفر ويعود بالإجابة Response، لكن في كثير من الحالات يفضل طلب القسم المتغير من الصفحة فقط وتحديثه بدل طلب الصفحة مرة اخرى. استخدام Ajax مع PHP بالتوفيق،،،
-
وعليكم السلام ورحمة الله. يرجى متابعة الشرح، المشكلة في احد Services على الجهاز https://www.youtube.com/watch?v=6DE07qZNE2U بالتوفيق،،
- 1 جواب
-
- 1
-
وعليكم السلام ورحمة الله. اخي الكريم حتى شهادتك في الهندسة المعلوماتية، لن تفيدك كثيراً اذا لم تكن لديك الرغبة والاهتمام وحب العمل. لذلك اذا كنت ترى ان مجال البرمجة مناسب لك وترغب به، لا تنظر إلى شهادتك العملية مهما كانت. من جهتي لدي شهادة في الهندسة المعلوماتية/هندسة البرمجيات. ولا اعتمد عليها في عملي اطلاقاً، بقدر اعتمادي على المهارات والخبرات التي اكتسبها يومياً. بالتوفيق،،،
- 6 اجابة
-
- 1
-
وعليكم السلام ورحمة الله. كلاهما يستخدمان ك Server Side، بمعنى كتابة الكود الذي سيعمل على السيرفر، وهما يعتبران بديلان لبعضهما، بمعنى يكفي واحد منهما فقط. اما الفرق الأساسي، فهو أن PHP تعتبر Server Side Scripting Language، بمعنى لا يمكن استخدامها الا لتطوير مواقع الانترنت، عكس الجافا التي يمكن استخدمها أيضاً في تطوير تطبيقات سطح المكتب او الموبايل، والعديد من التقنيات مثل انظمة الزمن الحقيقي real-time system، والانظمة المضمنة embedded system وغيرها (بمعنى يمكن استخدام نفس خوارزمية أو مكتبة الجافا في مجموعة متنوعة من التطبيقات) - ايضا لغة الجافا بطبيعتها لغة كائنة التوجه OOP، اما PHP ليست كذلك بطبيعتها، لكن ما زمال بالإمكان استخدامها ك OOP. بالتوفيق،،،
-
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html Download for Windows x86
- 2 اجابة
-
- 1
-
برمجة الـ iOS تحتاج جهاز Mac حصراً، لان اداة التطوير الوحيدة لتطبيقات الـ iOS هي Xcode، وهو لا يعمل إلى على اجهزة الماك حصراً! ومواصفات اي جهاز ماك عادية قد تفي بالغرض. طبعا لا زال بالإمكان استخدام جهاز الويندوز، وذلك بتثبيت نظام الماك افتراضياً على الويندوز كَ (Virtual Machine). لذلك سنحتاج إلى: 1. تنزيل مشغل هذا النظام الافتراضي Vmware من هنا 2. تنزيل نسخة نظام تشغيل الماك macOS Sierra 10.12 ISO من هنا طبعا هذه الطريقة غير قانونية! لكن لدواعي التعليم والتجربة في مجالات ضيقة، قد لا يكون هناك ضرر. وبالتأكيد لن يكون الأداء افضل من استخدام جهاز ماك. خصوصاً اذا دخلنا في مرحلة برمجة المشاريع للعملاء. بالتوفيق،،،
-
وعليكم السلام ورحمة الله. اخي الكريم ليس لديك أي خطأ، الملفات تظهر بهذا الشكل، لانه يتم تتبعها بواسطة Version Control System او git اختصاراً. سواء كان لديك معرفة ب Version Control System أو لا، فإن ما يحدث معك باختصار، هو تتبع للتعديلات او الاضافات لملفات مشروعك، وتسجيل سجل مفصل بهذه التعديلات. ويتخلف لون الملف بحسب حالته ضمن نظام التتبع هذا. ويفترض هذا الـ Version Control System، ان تقوم بحفظ هذه التعديلات بعد فترة معينة، ليبدأ معك جلسة تسجيل جديدة، تبدأ من حيث انتهت الجلسة السابقة. اقرأ المزيد لمعرفة اهمية Version Control System في كتابة المشاريع. ولحل المشكلة الحالية بشكل ابسط، ابحث عن مجلد مخفي اسمه (git.) واحذفه، لتوقف عملية التتبع هذه. ثم قم باعادة تشغيل Visual Studio Code، غالبا ستجد هذا المجلد في ضمن المجلد الرئيسي الذي يحوي مشروعك.
- 1 جواب
-
- 1
-
نعم اخي سأعطيك مثال من الواقع، تخيل انا لدينا عمل فني، لكن لا يوجد لدينا إلى ممثل واحد، سيضطر لتمثيل جميع الأدوار لوحده، مما سيؤدي إلى ضعف في الأداء بالإضافة وضعف في نتيجة النتيجة، مقارنة بعمل فني اخر له كوادره الخاصة. نفس المثال ينطبق على Cordova فهي ليست تطبيقات جوال فعلية، وإنما صفحات ويب html يتم عرضها وتنفيذها ضمن التطبيق، وهذا التطبيق عبارة عن صفحة واحدة تمت كتابتها لغة برمجتها الاصلية (جافا او سويفت او غيرها) وتكون هذه الصفحة مسؤولة عن عرض وتنفيذ صفحات html هذه، بالتالي بدل ان يكون اداء التطبيق موزعا على نظام التشغيل بشكل كامل سيكون محصورا بهذه الصفحة فقط. قس على ذلك جميع التفاعلات الاخرى مع التطبيق، مثل اللمس ودوران الشاشة وغيرها، ستكون جميع هذه العمليات مسؤولية هذه الصفحة الوحيدة والمسكينة، وليس مسؤولية نظام التشغيل، وفعليا ستقوم هذه الصفحة نفسها بتحليل كود الجافا سكربت وتنفيذه، وليس نظام التشغيل. بعكس التقنيات الـ Native وزامرن من ضمنها. في الخلاصة، انا اتحدث عن الموضوع من ناحية تقنية، ومن ناحية تطوير التطبيق لاحقاً لكن في حال كان لديك تطبيق بمواصفات متوسطة، ولديك الخبرة في تقنيات الويب، فبالتأكيد كوردوفا او ايونيك سيكون خيارا مفضلا. بالتوفيق،،،
-
وعليكم السلام ورحمة الله. اذا كان لديك خلفية بلغة السي شارب، انصحك بالزامرن، لانها تعطيك تطبيقات Native من حيث المظهر والأداء، بالإضافة لدعمها لجميع الخدمات التي تقدمها اللغات الأم مثل جافا و سويفت. الاختلاف الجوهري، انو كوردوفا تمكنك من عمل (تطبيقات) او فعليا شاشة واحدة هي WebView بشكل Native، بحيث تعمل جميع اجزاء التطبيق ضمن هذه الشاشة، ومسؤولية رسم العناصر واظهار البيانات تقع على عاتق هذه الشاشة، وليس على نظام التشغيل، على عكس Xamarin التي تتعامل مع نظام التشغيل بشكل كامل. وانصحك بمتابعة صحفات Xamarin على مواقع التواصل، فهم تقريبا يقدمون تحديثات وميزات بشكل يومي، لعل اخر ميزة كانت مثيرة بالنسبة لي، هي دعم الواجهات العربية او (شاشات اليمين لليسار) بالاضافة لوجود العديد من المصادر التعليمية لهذه التقنية، ويمكنني ان انصحك بمتابعة قناة حسام ديلاي على اليوتيوب فيها شرح جميل. https://www.youtube.com/channel/UCCYR9GpcE3skVnyMU8Wx1kQ بالتوفيق،،،
-
إذا كان بإمكانك، إلغاء تثبيت Visual Studio نهائياً، ثم تثبيت SQL Server بعد الانتهاء قم بتثبيت Visual Studio مرة اخرى.
-
وعليكم السلام ورحمة الله فهمت من سؤالك اخي، انك تريد بناء المعادلة يدوياً (من مجموعة قيم نصية) ثم تريد تنفيذها. اذا قمت بتحويل الارقام من النصوص، وتحويل الاشارات الحاسبية لتعابير رياضية! لا اعتقد ان هذه الطريقة صحيحة او هي ما تريده فعلاً. لذلك اعتقد ان ما يناسبك هو دالة eval، بحيث تقوم بتمرير كامل المعادلة بشكل نصي، وستقوم هذه الدالة بتنفيذها. مثال: console.log(eval('3 + 2')); بالتوفيق،،،
- 5 اجابة
-
- 1