صفحات

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

تعلم برمجة تطبيقات الأندرويد حتى الإحتراف .....

دورة تعليم لغة الجافا

تعلم برمجة تطبيقات الجافا .....

samedi 30 novembre 2013

دوال الوصول و التغير

بسم الله الرحمان الرحيم:
السلام عليكم و رحمة الله،سنتطرق إلى ما نسميه بتعريف دوال الوصول إلى خصائص فئة ما كما سنتطرق إلى درجات إمكانية الوصول إلى الخصائص.
 public class Car {
 
 private String brand;
 private String color;
 private int model;
 
 public Car(){
  System.out.println("Car created with default constructor");
  this.brand = "";
  this.color = "";
  this.model = 2000;
 }
 
 public Car(String _brand,String _color,int _model){
  System.out.println("Car created with specific constructor");
  this.brand = _brand;
  this.color = _color;
  this.model = _model;
 }

}

هناك كلمة تم إضافتها قبل نوع كل من نوع خصائص الفئة هي private ، وتعني "خاصة" أي أن هذه الخصائص لا يمكننا الوصول إليها خارج الفئة،وبالتالي لا يمكن تغيير أو قراءة قيمتها خارج الفئة Car .كيف ذلك؟لنفهم أكثر،لنجعل الوضعية عكس ما هي عليه الآن: إذن لنضف عليها كلمة public ، وتعني للعموم أي الجميع يمكنه تغيير و قراءة قيمة الخاصية التي تم تعريفها بإمكانية وصول للعموم.

لكن أين يمكننا أن نغير قيمتها؟بمعنى آخر أين يوجد "خارج الفئة" الذي ذكرته؟

جميل،خارج الفئة نعني به كل فئة أخرى تحتوي على كائنات من فئة Car ،مثلا الفئة الرئيسية للبرنامج.

إذن إذا عرفنا الخصائص كلها بإمكانية الوصول public يمكننا مثلا فعل ما يلي:

public class MainClass {

   public static void main(String args[]) {
      Car car1 = new Car();
      Car car2 = new Car("Mercedes", "Black", 2009);
      
      car1.color = "red";
      car1.model = 2006;
      
      System.out.println("the color of car2 is :" + car2.color);
      System.out.println("the model of car2 is :" + car2.model);
      
   }
}

كما هو مبين في الشيفرة،عرفنا كائنين من فئة Car ثم وصلنا إلى خاصية color الكائن car1 بتحديد اسم الكائن ثم نقطة ثم اسم الخاصية التي نريد الوصول إليها لتغيير أو قراءة قيمتها،في حالتنا الأولى قمنا بتغيير قيمة لون الكائن car1 إلى red و قيمة model إلى 2006 ،بالنسبة لما تبقى قمنا بقراءة قيمتي خاصيتين من خاصيات الكائن car2 ، لا تنسوا أن هذا كلها صالح فقط لأننا قمنا بتعريف الخصائص بإمكانية وصول public .لهذا أمكننا الوصول إلى الخصائص مباشرة خارج الفئة.

لكن،من الضروري أن نذكر أنه لايجب ترك خصائص فئاتكم بإمكانية وصول public أبدا،دائما نجعلها private.

إذن نعود إلى الكود الأول لفئة Car حيث جميع الخصائص معرفة بإمكانية الوصول private ،السؤال الذي يجب أن يطرح الآن هو : كيف إذن يمكننا تغيير و قراءة قيم هذه الخصائص؟

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

public class Car {
 
 private String brand;
 private String color;
 private int model;
 
 public Car(){
  System.out.println("Car created with default constructor");
  this.brand = "";
  this.color = "";
  this.model = 2000;
 }
 
 public Car(String _brand,String _color,int _model){
  System.out.println("Car created with specific constructor");
  this.brand = _brand;
  this.color = _color;
  this.model = _model;
 }
 
 public String getBrand() {
  return brand;
 }

 public void setBrand(String brand) {
  this.brand = brand;
 }

 public String getColor() {
  return color;
 }

 public void setColor(String color) {
  this.color = color;
 }

 public int getModel() {
  return model;
 }

 public void setModel(int model) {
  this.model = model;
 }

}

تلاحظون أن الدوال بسيطة جداا وغالبا ما نسمي دوال الوصول getColor او getModel .... و دوال التغيير setColor أو setModel ....لكن يمكننا أن نسميها ما نشاء لكن لاحترافية أكبر و توحيد للمصطلحات بين المبرمجين نستخدم المصططلحات المتعارف عليها....

الآن بقي أن نرى كيف نستخدمها خارج الفئة :

public class MainClass {

   public static void main(String args[]) {
      Car car1 = new Car();
      Car car2 = new Car("Mercedes", "Black", 2009);
      
      car1.setColor("red");
      car1.setModel(1987);
      
      System.out.println("the color of car1 is "+car1.getColor());
      System.out.println("the model of car1 is "+car1.getModel());
      
   }
}

وهذه هي النتيجة :

Car created with default constructor
Car created with specific constructor
the color of car1 is red
the model of car1 is 1987

هكذا نكون قد أنهينا هذا الدرس ولا تنسوا ان تتفاعلوا مع الموضوع.

دمتم في رعاية الله.

mardi 26 novembre 2013

أفكار تطبيقات اندرويد-التعديل على الصور

بسم الله الرحمان الرحيم:

 

تطبيق التعديل على الصور:


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

سأضع هنا بعض الأفكار لهذا التطبيق :

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

هناك العديد من الأفكار .... يكفي أن تطلقوا العنان لمخيلاتكم....Content

دمتم في رعاية الله.

lundi 25 novembre 2013

أفكار تطبيقات اندرويد-تطبيق رسم للأطفال

بسم الله الرحمان الرحيم:

 

تطبيق رسم للأطفال:

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

حاول أن تجعل تطبيقك يعطي للمستخدم الكثير من الإمكانات البسيطة الإستعمال و التي تبعد تطبيقك عن الروتين الذي يشهده هذا التطبيق .

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

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

تقبلوا تحياتي.

{jcomments on}

أفكار تطبيقات اندرويد - تطبيق Puzzle

بسم الله الرحمان الرحيم:

 

تطبيق Puzzle:

 

من التطبيقات التي نرى أنها تلاقي الكثير من الترحيب هي لعب البازل .

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

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

دمتم في رعاية الله.

{jcomments on}

أفكار تطبيقات اندرويد-تطبيق لموقعك

بسم الله الرحمان الرحيم:

 

تطبيق لموقعك:

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

بطبيعة الحال لابد من أخذ النقط التالية بعين الإعتبار :

  • أولا أن تجعل لموقعك نسخة موبايل لكي يبدو الموقع لائقا.
  • أن يكون موقعك متجددا،لكي لا يمل مستخدموا التطبيق و لكي يحسسوا أن هنا دماء جديدة تتحرك في كل حين.
  • لبرمجة تطبيقك،اجعله مجانيا
  • يكفي أن تضيف إلى تطبيقك مكون webview .
  • حاول أن يكون تطبيقك سريعا،لما لا تجعل لم لا يملكون أنترنت نسخة احتياطية لموقعك في التطبيق(إن كان ممكنا).

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

دمتم في رعاية الله.

dimanche 17 novembre 2013

مدخل إلى البرمجة الكائنية و مفاهيمها

بسم الله الرحمـــن الرحيم:
السلام عليكم و رحمة الله،الآن بعد ما تتطرقنا إلى بعضى المفاهيم الأساسية في لغة الجافا،ننتقل إلى ما يعتبر حلقة أساسية في البرمجة و هي البرمجة الكائنية أو Object Oriented Programming .

mercredi 13 novembre 2013

الدوال -الجزء 2

بسم الله الرحمـــن الرحيم :
السلام عليكم و رحمة الله،نلتقي مرة أخرى مع درس الدوال او الإجراءات كما يسميها البعض وسنتطرق لمفهوم surcharge باللغة الفرنسية أو overriding باللغة الإنجليزية.

mardi 5 novembre 2013

الدوال - Methods

بسم الله الرحمــــن الرحيم:
السلام عليكم و رحمة الله،من المفاهيم المهمة جدا و التي لابد منها،مفهوم الدوال methods،سنرى في هذا الدرس كيفية إنشاء دالة،و سنعطي أمثلة لدوال ننشئها بأنفسنا و دوال موجودة في حزمات ال java.

lundi 4 novembre 2013

الجداول ذات البعد الواحد


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

الحلقات for و while

بسم الله الرحمـــــــن الرحيم :
السلام عليكم ورحمة الله و بركاته ، درسنا اليوم سيكون مع الحلقات ،فما معنى الحلقات و متى يمكن استعمالها.

الشروط


بسم الله الرحمــــن الرحيم:
السلام عليكم و رحمة الله،نلتقي،إخواني أخواتي،مع درس الشروط conditions،سنرى إن شاء الله صيغ الشروط المعروفة في java و نعطي أمثلة للتبسيط.

dimanche 3 novembre 2013

زر الإنتقاء-RadioButton


بسم الله الرحمان الرحيم:
السلام عليكم و رجمة الله،نلتقي اليوم أحبتي مع درس جديد مع RadioButton و RadioGroup و تعريف كل واحد منهما.

صندوق الإختيار-CheckBox


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

حقل النصوص EditText

بسم الله الرحمــــن الرحيم:
السلام عليكم و رحمة الله و بركاته، نلتقي اليوم أحبتي،مع مكون آخر يمكن من تفاعل المستعمل مع التطبيق و هو حقل النص EditText.