مايندز | علم ينتفع به
الأتصال بنا 61109-264-012

الأربعاء، 29 يوليو 2015

سنتكلم باذن الله عن الجزء التاني من التحكم في الكود وهي الحلقات  loops اي ان الكود الموجود داخل القوسين  التابعين لهذه الحلقه سيتكرر الي ان  يتحقق شرط معين يحدده المبرمج 
و loops  توفر الكثير من كتابه الكود وهي من اساسيات اي لغة برمجة
وهنا نجد ثلاث طرق لعمل ال loops

1-    while

2-    do while

3-    for


1 -while  

وتستخدم عند عدم معرفه عدد اللفات لذا هي تعتمد علي الشرط
وهي تتحقق من الشرط اولا ثم اذا كان صحيحا ثم تبدأ في تنفيذ الكود

وتكتب بهذا الشكل
(الشرط الذي ستقف عنده الحلقة)while
{
   الكود المراد تكراره
}

فعندما يتم تنفيذ ال while  لا تخرج خارج اقواسها الا عند تنفيذ الشرط
اي ان الكود هيتنفذ طالما هذا الشرط صحيح

  مثال 

في هذا المثال سنطبع كلمة Java  مرات 5

اي انه طالما ( x<5) سيطبع java   الي ان تصل x  الي 5  ستنتهي ال loop 

 ملحوظة1   

الحلقة الغير منتهية (infinite loop )
وهي الحلقة التي لا يتغير شرطها(اي انها تعتمد اعتماد كلي علي الشرط سواء في while او for) بحيث يظل ثابتا وهنا لا يخرج خارج هذه الحلقه ابدا 
وتستخدم هذه الطريقة في عمل الفيروسات حيث يدخل الجهاز في حلقه غير منتهيه فيستخدم كل طاقه الرامات ويبطئ الجهاز او يعطله
وهي تنطبق علي كل حالات ال loop  من while , do...while, for

مثال  


هنا عندما تبدأ ال loop  لن تنتهي ابدا 
او في المثال الاول اذا لم نغير قيمه ال x  ايضا لن تنتهي لانها ستظل دائما اقل من 5

 ملحوظة2   

تبدأ ال loop  وتنتهي بالاقواس {} اي انها كل لفه تدخل داخل الاقواس وتنفذ ما بدخلها الي ان ينتهي عدد اللفات وينتهي الشرط 

2-do...while


وهي شبه while ولكنها تختلف 
اولا :: في طريقة الكتابه
do
}
   الكود المراد تكراره
{
;(الشرط الذي ستقف عنده الحلقة)while

ثانيا :: قي طريقة عملها فهي اولا تنفذ الكود ثم تتحقق من الشرط قاذا كان صحيحا تكمل دورتها 
اي انه في do...while  سواء تحقق الشرط ام لم بتحقق سينففذ مره واحده علي الاقل

 3- for

وتختلف عن while في انك تكون عارف عدد اللفات التي ستحتاجها


مثال 

1- تعريف وتهيئه المتغيرالمتحكم في الloop الذي به ستنفذ او تقف الحلقه وممكن لا يتم تعريفه هنا يمكن قبل ال for  او في اول البرنامج او يمكن ان يكون المتغير مستخدم في عمليه اخري قبل ال for ونستخدمه في ال for
المهم انه يكون تم تعريفه قبلها
2- الشرط الذي ستقف عنده الحلقه
3- مقدار الزياده اوالنقصان  للحلقه ويكمن كتابتها بهذا الشكل

x=x+1          x=x-1      x=x+2    x=x-2  
وهكذا فمقدار الزياده او النقصان يحدده المبرمج حسب احتياجاته

تدريب

عمل برنامج يعرف الرقم الداخل(اول 10 ارقام) له زوجي او فردي ويطبع الرقم ويكتب بجانبه ان كان زوجي او فردي
يعني كما في الامثله السابقه سنستخدم المتغير x  ان كان زوجي او فردي باستخدام جملة  if 

وفي الدرس القادم باذن الله سنحل هذا التدريب ونتحدث عن ال break  & continue

الاثنين، 16 مارس 2015

للوهلة الاولى قد يظن البعض عند رؤية العنوان انها نصيحة من فريق مايندرز لزواره الاحباء بان لا يكن شريرا فى الحياة او مع اصحابه او حتى مع نفسه - بالتاكيد لا نريد الاشرار - و لكن لا تكن شريرا هى القاعدة الاولى و التى على اساسها انطلق عملاق محركات البحث الاعظم و الاقوى فى التاريخ Google.



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

 هذه الصفقة التى اثارت سخط العديد من رواد و محبى مجتمع الالعاب الاشهر على الاطلاق و هاجم الملايين شركة جوجل و اتهموها بانها تريد السيطرة على حياة الانترنت و رواده و اطلق العديد من الشباب حول العالم هاشتاج #RIPTwitch الذى انتشر كالنار فى الهشيم و لاقى ردود فعل قوية ادى الى تشويه سمعة جوجل الحسنة الى سيئة و اتهام جوجل انها شركة سرقة الانترنت و محتواه .



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


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

و الان بعد هذه المفاجات عن جوجل المسيطرة على الانترنت هل ستخشى استخدام منتجاتها ام تريد ان تكون شريرا؟
سنبدأ اليوم فى كتابة برنامج بسيط نستطيع من خلاله التعرف على الشكل الأساسى لكتابة الكود بلغة (++c) .

فدعونا نفتح برنامج  Microsoft Visual Studio ونفتح new project مشروع جديد لنبدأ فى كتابة الكود فى الصفحة المخصصة له. ولمن لايعرف كيفية عمل ذلك فعليه مراجعة الدرس السابق لمعرفة ذلك .



الخطوات والمكونات الأساسية فى كتابة البرنامج :

أولاً : احتواء واستخدام المكتبات libraries or namespaces التى تضم الدوال functions والعمليات operators ومفاتيح اللغة keywords التى سنستخدمها فى البرنامج كالتالى:


وبذلك نكون قد احتوينا المكتبة (iostream) فى البرنامج والتى تحتوى على ال keywords مفاتيح اللغة وال operators العمليات الخاصة بالإدخال والإخراج .

ثانياً : الجزء الذى سيكتب به الكود الأساسى الذى سينفذ وهو دالة ال main  والتى تكون بهذا الشكل :





ونستخدم قبلها ال data type نوع البيانات التى ستنتج عن هذه الدالة والذى هو void إذا كانت لن ترجع   أى قيمة أو أيضا إذا كانت لن ترجع قيمة ولا أريد استخدام void باستخدم ال data type نوع البيانات int وفى آخر الكود القيمة العائدة تكون بصفر هكذا :







وأسطر الكود الأساسية التى نريد تنفيذها تكتب داخل دالة ال main بين أقواس المجموعة : قوس البداية (})  وقوس النهاية ({)


برنامج اليوم بسيط كل ماهو مطلوب به أن نكتب رسالة ترحيب للمستخدم على الشاشة ، ولطباعة أى جملة على الشاشة للمستخدم نستخدم ال keyword مفتاح اللغة cout وبعدها ال operator العملية ( >>) ولكن هذه ال keyword تنتمى لل namespace المكتبة (std) فيجب احتواء واستخدام هذه المكتبة داخل البرنامج وذلك يكون بإحدى طريقتين :

الأولى : أن أعمل له using فى الأول واكتب عبارة cout فى الكود مباشرة وبذلك يكون شكل البرنامج كالتالى :










الثانية : أن استخدم ال prefix المقطع هذا قبل عبارة cout مباشرة وهو (: : std) وبهذا يكون شكل البرنامج كالتالى :










وبعد الانتهاء من كتابة الكود نعمل run or debug  للبرنامج من علامة run فى الصفحة التى تكون بهذا الشكل :



ويكون الناتج فى الحالتين كالتالى:




















ملحوظة : اذا عملت run للبرنامج واشتغل وقفل بسرعة دون أن أرى الناتج نضيف إلى الكود فى الطريقة التانية  السطر التالى :



أو نضيفه بدون ال prefix المقطع (: : std) فى الطريقة الأولى .

وإلى اللقاء فى الدرس القادم إن شاء الله .

درسنا اليوم عن المتغيرات variables وأنواع البيانات datatypes المسنخدمة لتعريفها ،سنتعلم اليوم كيف نعرف متغير وننشأه ومانوع البيانات التى يحتويها .
أولا: ماهو المتغير variable :-
هو عبارة عن اسم يتم تعريفه لكى أحجز به مساحة ما فى الذاكرة لكى اخزن بها قيمة معينة وهذه المساحة تكون متناسبة ومتوافقة مع نوع البيانات datatype التى يحتويها هذا المتغير والذى قمنا باختياره حسب حاجتنا .


ثانيا: ما الصفات أو خصائص المتغير :-
صفات المتغير أى الشكل الصحيح الذى يجب أن يكون عليه ويتم تسميته حسب هذه الصفات أو الشروط وهى :

  • يجب أن يبدأ الاسم بحرف letter ولا يمكن أن يبدأ برقم أو رمز .
  • يمكن ان يحتوى على رقم أو شرطة سفلية underscore ولكن لا نبدأ بهم .
  • يجب ألا يحتوى على مسافة space أو رموز أو علامات ترقيم مثل (, أو ;) . 
  •  يجب ألا نسمى المتغير بنفس اسم مفتاح للغة keyword .
وبعدما عرفنا هذه الشروط لتسمية المتغير يجب ان نعلم جيدا أنه إذا تم خرق أى من هذه الشروط لن يقبل منا المترجم للغة compiler هذه التسمية وسينتج عن ذلك خطأ فى البرنامج error .


ثالثا: ما العبارة المستخدمة فى اللغة لتعريف المتغير variable declaration:-
 يتم تعريف المتغير variable declaration فى اللغة كالتالى :
(datatype) (variable_name) (;)
(اسم المتغير) (نوع المتغير) (;)
  مثال على ذلك : 
int x ;

هذه العبارة تعنى اأن المتغير الذى يسمى x يحتوى على بينات من نوع أرقام صحيحة (int (integer .

ويتم قراءة قيمة هذا المتغير التى سيدخلها المستخدم لتخزينها فى الذاكرة واستخدامها فى البرنامج باستخدام عبارة الادخال cin والتى تكون كالتالى :
cin>>x ;


والتى يجب ان نستخدم معها مكتبة iostream و std كما فعلنا مع عبارة cout فى الدرس السابق وسنرى ذلك فى المثال فى آخر الدرس بعدما نتعرف على أنواع البيانات المستخدمة فى اللغة لتعريف المتغيرات .

رابعا: أنواع البيانات datatypes :
  • حروف character : نستخدم مفتاح اللغة  char
  • أرقام صحيحة integer : نستخدم مفتاح اللغة int 
  • أرقام عشرية أو كسور : نستخدم مفتاح اللغة float أو double 
  • ثنائى أى له قيمتان فقط (yes or no (0/1 أو يسمى Boolean  : نستخدم مفتاح اللغة bool
  • يكون فارغ أى لا يعود بقيمة : نستخدم مفتاح اللغة void
وأخيرا مثال للتدريب على ما سبق :

عمل برنامج يجمع رقمان يقوم بادخالهم المستخدم :



تدريب عملى لك :

  • عمل برنامج يعطى ناتج ضرب رقمين عشريين يدخلهم المستخدم .


جربوا ذلك التدريب وألقاكم فى الدرس القادم بإذن الله تعالى .

الجمعة، 1 أغسطس 2014

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

  • مفاتيح اللغة key words : وهى عبارة عن كلمات محجوزة للغة نفسها ولايمكن استخدامها فى تسمية متغيرات أو أى شئ اخر غير استخدامها الأصلى المنشأة لأجله . ومن أمثلتها : (cout) وهى كلمة تستخدم لكى نكتب بعدها جملة تطبع على الشاشة أمام المستخدم ، (cin) تستخدم لأخذ قيمة يدخلها المستخدم وتخزينها فى متغير تم تعريفه مسبقاً .

  • المتغيرات variables : هذه المتغيرات يتم تعريفها داخل البرنامج حسب الحاجة لها لأخذ قيمة مدخلة من المستخدم والاحتفاظ بها وتخزينها ليتم استخدامها فيما بعد داخل البرنامج ويمكن تسميتها بأى إسم ماعدا ال(key words) مفاتيح اللغة .

  • نوع بيانات المتغيرات data type : يتم اعطاءها للمتغير أثناء تعريفه لكى نحدد ما نوع هذا المتغير هل هو رقم صحيح من نوع (int) أم هو رقم عشرى من نوع (float) أم هو مجموعة من الحروف من نوع (string) وهكذا . 

  • المكتبات الجاهزة libraries and name spaces : هى عبارة عن مكتبات محفوظة داخل اللغة بها التعريفات الخاصة بال (data types) أنواع المتغيرات و ال (key words) مفاتيح اللغة والكثير من ال(functions) دوال جاهزة التى يمكن استخدامها مباشرة لعمل مهمة معينة داخل البرنامج دون الحاجة لتعريفها من جديد وإنما عند الحاجة لاستخدام دالة معينة function أو مفتاح للغة key word أو نوع متغير data type يجب أن أعرف اسم المكتبة المندرج تحتها والمنتمى لها لكى نضيفها ونحتويها داخل البرنامج (include) فى أوله قبل كتابة الكود لكى يسمح لى باستخدامها ولا يحدث خطأ (error) عند عمل compiling ترجمه للبرنامج لتشغيله .  
والآن بعد معرفة هذه المصطلحات الأساسية والمهمة نبدأ فى تشغيل برنامج  Microsoft Visual Studio لمعرفة كيفية عمل برنامج بلغة ++c باستخدام هذا البرنامج .

أولا : نفتح مشروع جديد new project كالتالى:


ثانيا: نختار ++visual c ثم win32 console application وتحديد اسم ومكان حفظ المشروع كالتالى:

ثالثا : فى هذه الخطوة نضغط finish مباشرة :


رابعا : نضيف الملف الذى ستم كتابة الكود به كالتالى :


 خامسا : نختار c++ file ونكتب اسمه كالتالى:


وأخيرا هذه هى الصفحة حيث سيتم كتابة الكود الخاص بنا :


وابتداءا من الدرس القادم سنتعلم كيفية كتابة الاكواد بهذه اللغة ان شاء الله

الأحد، 27 يوليو 2014

استكمالا لدوة الجافا للمبتدئين نقدم لكم الدرس السابع
قبل ما نقوم بانشاء المشروع سنتكلم عن كلاس  Scanner وهى لاخذ قيمه من المستخدم ويحدث هذا في مكان ال output وليس كشاشة تظهر لك وهذه الطريقة سنتكلم عنها فيما بعد


اما عن كلاس Scanner  سناخذ منه object ونتعامل معه ويتم ذلك بهذه الطريقة
Scanner ob = new Scanner(System.in);
وبهذا ال object  نستطيع ان ناخذ قيمه من المستخدم مثل

ما هى لغة ++c ؟

هى تعتبر تطوير وامتداد للغة (c) وتستخدم أسلوب البرمجة الشيئية أو الكائنية (object oriented programming) وتم تطويرها بحيث تعطى  مميزات أكثر للمبرمج ودوال وأدوات أكثر يستخدمها فى تطوير البرامج وتسهل عليه المهمة التى يقوم بها .

ما البرامج أو التطبيقات المنشأة باستخدامها؟

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

الثلاثاء، 17 يونيو 2014

مرحبا بك عزيزى المبرمج فى الدرس الثالث من سلسلة دروسة دورة ال جافا للمبتدئين .سنتكلم اليوم عن الاوامر المتحكمة في الكود بمعني  انه يتم التحكم في الكود متى يعمل ؟ وماذا يفعل ؟ كذلك سنتحدث عن الحالات او الجمل الشرطية وكيف تؤثر على سير الشفرة البرمجية .

If Statement     


وهي مثل قاعدة if  في اللغة الانجليزية اي انها تعتمد علي شرط(condition)) معين لاستكمال شئ معين وهي عباره عن سؤال هل ؟؟و تسمي صانعة القرار  وتكتب بهذا الشكل


اي انه اذا تحقق الشرط سينفذ الجمله Block التي تليه     اما  اذا لم يتجقق الشرط سينفذ الجمله داخل else block
مثال

الخميس، 5 يونيو 2014




لعل أكثر ما يشغلنا نحن الشباب العربي في الآونة الاخيرة هو إيجاد فرصة عمل بعائد معقول يسد حاجاتنا الملحة والكثيرة أو حاجات أسرنا لذا نجد منا من يقوم بالعمل اليدوي او يفتتح مشروعه الخاص وغيرها من الاعمال الشريفة وظهر في السنوات الاخيرة مفهوم جديد وهو الربح من الانترنت (شخصيا لا اعتبر التسويق الشبكي بكل طرقه واساليبه واشكاله ربح من خلال الانترنت كما لا اثق فيه على الاطلاق) فالربح من الانترنت له العديد من الاوجه والذي سأتطرق لاحد اوجهه في مقالتي هذه.

الربح من الانترنت حقيقة ام خيال

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


مشاركة الارباح في المواقع والمنتديات العربية واقع ملموس

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



المواقع والمنتديات الجادة في التعامل المادي والمربحة بقوة

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




شروط الكتابة في هذه المواقع والمنتديات معقده ام مريحة

  شروط الكتابة تكاد تكون ابسط شروط يمكن ان تتخيلها في عمل حقيقي تربح منه ارباح لا سقف لها فهذه الشروط وضعت لسلامتك انت ولسلامة القارئ وسلامة الموقع او المنتدى. وهذه الشروط تكاد تتلخص في:

  1.  يجب عليك امتلاك حساب ادسنس عادى (غير مستضاف) ومفعل بالـ [PIN Code]وسنقوم بكتابة مقاله فى المدونة لشرح كيفية الحصول على حساب ادسنس عادى وغير مستضاف .
     اقرأ هذه المقالة " ابسط 3 خطوات للحصول على حساب جوجل ادسنس المستضاف خلال ساعتين "
     واذا كنت عزيزى القارىء لا تمتلك هذا الحساب او لديك صعوبة او مشكلة فى الحصول على الحساب ففى نهاية مقالتى احمل لك مفاجأة لا شك انها ستفرحك جدا فتابع القراءة لانك ستسفيد باذن الله .
  2.   يجب ان تكون مقالتك ذات محتوى حصري أي غير منسوخ وغير مترجم بمعنى محتوى يحترم عقل القارئ.
  3.   الا تقل الكتابة عن 4 اسطر كاملة او فى مواقع اخرى تجد شرطهم 100 كلمة .
  4.   ادعم مقالتك بصور جميلة تعبر عن المحتوى الذى تكتبه.
  5.   اجعل مقالتك خالية من الاخطاء الاملائية وإن أمكن خلوها من الاخطاء النحوية ايضا .
  6. ادرس وتعلم صداقة محرك البحث (SEO) هذا العلم سيجعلك تجنى ارباح كثيرة فى فترة قصيرة .
 وقد تجد شروطا اخرى ولكن لن تكون بأهمية الشروط السابقة .



ما يفصلك عن الربح من الانترنت ثلاث خطوات فقط

  1.  حصولك على حساب جوجل ادسنس عادى ومفعل .
  2.  اجعل مقالاتك مناسبة لشروط الموقع او المنتدى الذى ستكتب فيه .
  3. راقب ارباح وهى تزيد امام عينيك فى حساب ادسنس وانتظر ظهور الدفعات :) .

 والى هنا نكون قد انهينا المقالة والتى نتكلم فيها عن مفهوم مشاركة الارباح فى وطننا العربى وهل هو حقيقى ام درب من دروب الخيال التى تخرج علينا تباعا على مواقع الانترنت المختلفة .

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

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

الثلاثاء، 27 مايو 2014

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


  العوامل  (Operators)  ::


 وهي التي تقوم بالعمليات علي المتغيرات
                                                                                                           ; int  x = 5 .      

                                                                                                           ; int y = 4
                                                                                                         ;   float  z

تنقسم الي اربعة انواع

1-    العوامل الحسابية (Arithmetic Operators)
وتستخدم في العمليات الرياضية وهي 

z= x + y ;                                z=9                1        
. z = x / y ;                               z=1.25                                                          2
. z = x  % y ;                               z=1                                                            3                                    
z = x * y ;                                   z=20                                                          4
. z = x – y ;                               z=1                                                       5
ملحوظة ::اذا كان هناك  متغير من نوع float  او  double  بين المتغيرين  فالاولوية  ان يكون  الناتج من نوع  double 

2-    العلاقات  (Relational Operators )

وهي التي تستخدم في تحديد العلاقة بين المتغيرات والمقارنة بينها  وغالبا تستخدم مع  الجمل التي تتحكم في الكود ( if,for ,while  وسنتانولها في الدرس القادم باذن الله) وتتحكم في سير البرنامج نفسه
وهي عبارة عن سؤال    هل هذان المتغيران  اكبر من بعضهما او اصغر  ……. وهكذا

الجمعة، 23 مايو 2014

.. ADO.net ""..

.. " Download "..
شرحنا سابقا فى الدرس رقم 16  رفع الملفات الى الموقع 
وفى هذا الدرس سوف نتحدث عن تحميل الملفات بانواعها من خلال الموقع
أولا: انشئ Folder بأسم Download Files وضع بداخله الملفات المراد تحميلها كما بالشكل
*************************************
ثانيا: انشئ صفحة على الموقع باسم download.aspx ونذهب مباشرة الى صفحة الكود وهى 
 download.aspx.cs و نبدأ فى كتابة الكود كالتالى
1- استدعاء المكتبة المسئولة عن التعامل مع الملفات والمجلدات والادخال والاخراج وهى 
// Using Namespace
using System.IO;
 Page_Load2- فى حدث ال  


protected void Page_Load(object sender, EventArgs e)
    {
        DirectoryInfo directory = new DirectoryInfo(Server.MapPath("~/Download Files"));
        // تعريف عداد 
        int counter = 0;
        foreach (FileInfo file in directory.GetFiles())
        {
            //link منه باسم  object جديد مع كل ملف واخدنا  LinkButton  لعمل 
            LinkButton link = new LinkButton();
            //counter اسم مختلف باستخدام ال LinkButton لإعطاء كل 
            link.ID = "Link" + counter++;
            // تحديد النص المكتوب 
            link.Text = file.Name;
            //download1وهنا صفحة اخرى باسم LinkButton الذى سوف ينتقل اليه عند الضغط على URL ضبط ال  
            //QueryString وهنا سوغ ينتقل مع 
            link.PostBackUrl = "download1.aspx?name=" + file.Name;
            // Form فى ال LinkButton يضع الاداة 
            Page.Form.Controls.Add(link);
            // هنا بعطى امر نزول سطر
            Page.Form.Controls.Add(new LiteralControl("
"));
        }
    }
لنتوف مع هذا الكود
1- هى الفئة المسئولة عن التعامل مع المجلدات:DirectoryInfo 
2- FileInfo:هى الفئة المسئولة عن التعامل مع الملفات

فى البداية عرفنا كائن جديد من نوع DirectoryInfo اسمه directory وحددنا مسار المجلد الذى به ملفات التحميل ..ثم استخدمنا foreach للحصول على كل الملفات داخل المجلد باستخدام الداله   ()GetFiles
*************************************
ثالثا: انشئ صفحة على الموقع باسم download1.aspx ونذهب مباشرة الى صفحة الكود وهى 
 download1.aspx.cs و نبدأ فى كتابة الكود كالتالى
 Page_Load1- فى حدث ال  
protected void Page_Load(object sender, EventArgs e)
    {
        //داخل متغير QueryString استقبال 
        string fileName = Request.QueryString["name"].ToString();
        // فى حالة عدم تحديد نوع الملف 
        Response.ContentType = "application/octet-stream";
        // فى حالة تحديد نوع معين من الملفات للتحميل
        // *********** OR ********** //
        //if (fileName.EndsWith(".txt"))
        //{
        //    Response.ContentType = "application/txt";
        //}
        //else if (fileName.EndsWith(".pdf"))
        //{
        //    Response.ContentType = "application/pdf";
        //}
        //else if (fileName.EndsWith(".docx"))
        //{
        //    Response.ContentType = "application/docx";
        //}
        //else
        //{
        //    Response.ContentType = "image/jpg";
        //}
        Response.AddHeader("Content-Disposition", "filename=" + fileName);
        // تحديد المسار واسم الملف المراد تحميلة
        Response.TransmitFile(Server.MapPath("~/Download Files/" + fileName));
        //  إنهاء معالجة الاوامر
        Response.End();
    }
لنتوف مع هذا الكود
1- الكائن Response : مسئول عن إرسال المعلومات من خادم الويب إلى المتصفح في جهاز المستخدم وبإمكانه التحكم بها.
2- الخاصية ContentType :هذه الخاصية تفيد مستعرض الويب في معرفة نوع البيانات التي تحتويها الصفحة لتساعده في عرضها للمستخدم بصورة صحيحة.
3- الدالة AddHeader :هذه الدالة  ترسل معلومات للمستعرض ولكن ترسلها كرؤوس للصفحة  ومن أمثلة هذه المعلومات، معلومات عن تاريخ إنشاء الصفحة واللغة المستخدمة و نوع خادم الويب الذي يعالج الصفحة.

*************************************
رابعا: عند التنفيذ
**************************************
       الى اللقاء فى الدرس القادم ...

ما الفرق بين نسخ  الMS Office التى تطرح فى الاسواق ؟
1- Office starter : 
اصدار مجانى مبسط يحتوى على (برنامج الWord  و برنامجExcel)  لمن لا يحتاج الاصدارالكامل.. ويمكن الحصول علي هذ1 الاصدار من خلال المصنعين لاجهزه الكمبيوتر

2- Office Home and student :
الاصدار الاكثر استخداما بين المستخدم المنزلى والطلاب ويحتوى على ( برنامج الWord  و برنامجExcel  وبرنامج PowerPoint  وبرنامج One Note  )

3- Office home and Business :
مستخدمى هذا الاصدار من مستخدمى المنازل ولكن من جهات قطاع الاعمال وتحتوى على نفس محتوى اصدار
Office Home and student ولكن يزيد عليه برنامج OutLook
اذا هو يحتوى على ( برنامج الWord  و برنامجExcel  وبرنامج PowerPoint  وبرنامج One Note  وبرنامج Out Look)

4- Office Professional :
الاصدار الافتراضى منOffice وهى النسخه الكامله والاعلى تكلفه ومخصصه لقطاع الاعمال مثل الشركات
وتحتوى على  ( برنامج الWord  و برنامجExcel  وبرنامج PowerPoint  وبرنامج One Note  وبرنامج Out Look وبرنامج Publisher)
     =====================================================
ما هى منتجات شركهMicro Soft بخلاف ال Office ؟
1- MS Enterprise :
وهى مفيده للشركات التى تحتاج الى العديده من التراخيص كنسخه اصله .. اى الشركات التى تفضل النسخ الاصيله من البرامج

2- MS Blue Edition :
وهى تخص (MSDN) اى (Miro Soft Developer Network)
حيث نها تساعد ال Developers  فى كتابه التطبيقات(ِApplications) باستخدام Micro soft  products and technologies
حيث انها تجعل عمليه تطوير البرمجيات باكملها اكثر تبسيطا بدون القلق ان تصبح البرمجيات غير فعاله لعدم تواجد مفتاح التفعيل

3- MS Vision :
بدأ كمشروع من قبل شركه شيبوير ثم احتكرته MS ..
انه ليس ضمن حزمه برامج الاوفيس ..فهو برنامج مستقل يتم عرضه ضمن حزمه Visual Studio الخاصه بمهندسى الشركات
فهو متخصص فى عمل رسومات هندسيه مثل رسم التمديدات الشبكيه وهندسه المبانى 
______________________________________________________________________
يسعدنى استقبال اى استفسار  ..

الجمعة، 4 أبريل 2014


  # بعض المفاهيم الهامة            

هنتعرف النهاردة علي  بعض المفاهيم الهامة
وبيئة ال NetBeans  وكيفية التعامل معه  وتشغيل اول برنامج

عرفنا من الدرس الاول ان الجافا تعتمد علي برمجة الكائنات الشيئية  Object Oriented Programming    سنوضح ما معني هذا الكلام

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

  الكائن Object         
1-    يمتلك  خصائص (attributes ويمثلها برمجيا المتغيرات ) مثل  مثل الحجم، واسم، والشكل وهكذا
2-    يمتلك عمليات (operations ويمثلها برمجيا الدوال او العمليات)  يقوم بها مثل تعيين قيمة، وعرض الشاشة، أو زيادة السرعة.
ويتم وضع الخصائص والعمليات في مكان يسمي ال Class
3-    كما هو موضح من الصورة


  ال Class  ::   

هو الذي يتم فيه انشاء كل شئ خاص بال Object  من  مجموعة الخصائص (Attributes) والوظائف (Methods) التي يجب ان يقوم بها هذا ال Object

فهناك Class   الذي يحتوي علي ال main   وتسمي (entry point)  وهو المدخل الاساسي لاي برنامج ولا يمكن لاي برنامج العمل بدون هذا الclass  ويجب ان يوجد مرة واحدة فقط لا غير ولا يؤخذ منه Object وانما تستخدم فيه Objects  من class  اخري

اما النوع الاخر فهو Class  عادي  وهي يحتوي على الوظائف التي يجب  ان يقوم بها البرنامج ويؤخذ منه اكثر من Object   ليستخدم في أي مكان وهي طريقة تسهل في كتابة الكود فبدلا من كتابته اكثر من مرة  نحتفظ بخصائصه ووظائفه في Class  وعند الحاجه لاستخدام هذه الوظائف نقوم بانشاء Object  منه نستطيع من خلاله الوصول لهذه الخصائص والوظائف

  الوسيلة (Method) ::    
                         وهي في الاصل سلوك (behavior) يستخدم كوسيلة لاتمام مهمة معينة ويمن ان يحتوي ال Class  علي ااكثر من method  كمثال يمكن كتابة method  لجمع رقمين او تحريك لاعب او جندي في الالعاب
وتعتبر ال main  الموجودة في ال class  الاساسي هي method  وهي المدخل لاي برنامج كما ذكرنا سابقا


  #   ا لتعليق (Comment) ::
وهو جزء يكتب داخل الكود لتوضيح استخدام شئ معين وهو لايراه ال compiler  عند تنفيذ البرنامج  ويكتب بهذا الشكل
اذا كان سطر واحد   توضع هاتين العلامتين قبل  \\
اما اذا كان اكثر من سطر فيوضع داخل هاتين العلامتين    \*       *\           مثال
                                                                                                       }  public class MyFirstProgram                                                                      
                              This is my first java program.  *\
                This will print 'Hello World' as the output  **
                                                             \*
          
                                  }(public static void main(String []args
              System.out.println("Hello World"); // prints Hello World
                                                                      {
                                                                                                                                      {
  اذن هو لن يري ولا ينفذ هذه الجمل ولكن وضعناه لتوضيح انه اول مشروع وانه سيطبع Hello World  ويعتبر
ال Comment  مهم جدا في المشاريع التي تحتوي علي كود كبير لانها تسهل علي قارئ الكود وتوضح له مهمة هذا الجزء من الكود ويجب  ان تتعود كمبرمج علي كتابته

  #   يجب مراعاة الاتي عند بناء الجملة الاساية (Basic Syntax) ::

1- ان لغة ال Java  حساسة للاحرف (Case Sensitive ) اي انه عند كتابة  Age  لن تكون هي عن كتابتها age اي انه يجب كتابتها كما كتبناها في المرة الاولي
2- يجب ان يبدأ اسم ال Class بحرف كبير واذا كان يتكون من اكثر من كلمة يبقي اول حرف في اول كل كلمة يكون كبيرا مثل
                                                                MyFirstJavaClass
3-يجب ان يبدأ اسم ال  method  بحرف صغير  واذا كان يتكون من اكثر من كلمة  يبقي باقي الكلمات تبدأ بحرف كبير مثل
                                          () myMethodName                                            

4-يتم تشغيل اي برنامج جافا من خلال ال  ()main     وهي جزء اساسي  من اي برنامج                            
    لانشاء برنامج جديد نقوم بالاتي 
                                                   File --> New Project --> Java --> Java  Application -->next
وستظهر لنا الشاشة الاتيه




وعند الضغط علي finish   سيظهر لنا الشكل الاتي



ويتم كتابة الكود داخل  ال main  فعند كتابة هذا الامر
                               
System.out.println("Hello World"); // prints Hello World 
 سيطبع كلمة Hello World   في المكان الذي يظهر فيه ناتج التشغيل