الخميس، 12 سبتمبر 2013

دورة تعلم الجافا من الصفر (الاساسيات حتى الاحتراف) - الجزء الأول

نشر في :
هنا ياجماعة هيبقي الشرح فقط للكتاب بإذن الله
والتعليقات والإستفسارات هناك في الاسفل
الشرح من كتاب Introduction To Java Programming
لينكة تحميله 


بالتوفيق للجميع بإذن الله



[/font]

Introduction To Java Programming
Chapter 1

الكتاب بيبدأ الاول بإنه معمول لأي حد عايز يتعلم برمجة عموما يعني لا يشترط معرفة سابقة لأي لغة.

1.2 WHAT IS A COMPUTER ?
وبعد كده بيبدأ يعرض شوية تعريفات زي 
• ماهو الكمبيوتر؟؟
هو جهاز إلكتروني قادر علي تخزين ومعالجة البيانات وبيضم جزء الـ hardware والـ software.
وبيقدم لنا تعريف بسيط للهاردوير علي انها المكونات اللي ممكن رؤيتها بالعين في الجهاز وتعريف للسوفتوير علي انه المكونات والاوامر اللي مش بنقدر نشوفها بعنينا ولكنها بتتحكم في الهاردوير وتخليه يعمل وظيفة محددة.
اما البرمجة عموما فما هي إلا اننا بنكتب اوامر لجهاز الكمبيوتر وهو بينفذها.
بيقول كمان ممكن تتعلم البرمجة من غير ماتعرف اي حاجة عن الهاردوير ولكن علشان تفهم بالظبط الاوامر بتتنفذ ازاي والجهاز بيستقبلها ازاي وبيحللها ازاي احسنلك انك تعرف الهاردوير بتاع الجهاز.

بعض الأجزاء المهمة في الهاردوير:

1- Central Processing Unit (CPU) وحدة المعالجة الأساسية:

ودي بتعتبر زي المخ للجهاز. بتاخد الأوامر من الmemory وتنفذها وبتتكون من جزئين:

أ- Control Unit وحدة التحكم : ودي بتتحكم في باقي مكونات الجهاز

ب- Arithmetic & Logic Unit وحدة المنطق والعمليات الحسابية: وزي مااسمها بيقول مسئولة عن معالجة 

العمليات الحسابية المختلفة سواء جمع او طرح او ضرب او قسمة بالإضافة الي العمليات المنطقية زي المقارنات.

2- The Memory الذاكرة: 

الجهاز بيتعامل مع اي بيانات وهي في هيئة ZEROs & ONEs يعني واحايد واصفار ودهمايعرف بالنظام الثنائي 

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

واصفار. مهمة الميموري بقي انها بتخزن الداتا والأوامر وتديها للـ CPU علشان تنفذها وبيقول ان الميموري بيبقي 

فيها مجموعة من الـ Bytes مقسمة كل بايت عبارة عن 8 bit . وبيقول ان المبرمج مش مطلوب منه انه يعرف نظام 

التخزين والتحليل للداتا في الميموري لأنه بيحصل اوتوماتك.


3- Storing Devices اجهزة التخزين:


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

البرامج تتخزن علي اجهزة تخزين ولما نحتاج نشغلها نوديها في الميموري وده لأن الميموري اسرع بكتير من 

اجهزة التخزين اللي زي:


أ- Disk drives (hard disks and floppy disks) زي الهارد والفلوبي


ب- CD drives (CD-R, CD-RW, and DVD) زي السيدي العادي او الرايتر او الديفدي


ت- Tape drives زي الشرايط المستخدمة في عمل ال backup او النسخة الإحتياطية للجهاز


ث- USB flash drives زي الفلاش ميموري او mp3 او mp4 .


4- Input & Output Devices اجهزة الإدخال والإخراج:


وهي طرق التواصل بين المستخدم والجهاز من اشهراجهزة الإدخال طبعا الـ keyboard & mouse ومن اشهر 

اجهزة الإخراج monitors & printers.


5- Communication Devices اجهزة الإتصالات:


بيتم استخدمها لعمل اتصال بين المستخدم والأنواع المختلفة من الشبكات من انواعها modem , DSL , cable 

modem & network interface card .


1.3 PROGRAMS


برامج الكمبيوتر والتي تسمي بالسوفتوير هي اوامر موجهة للجهاز. والبرامج دي هي اللي بتتحكم في الجهاز من 

غيرها هيبقي الكمبيوتر مجرد آلة فاضية وده لن الجهاز مش بيفهم لغة الإنسان فكان لازم من وجود لغة خاصة بيه 

هو يقدر يفهمها ويتعامل بيها واسمها لغة الآلة او Machine Language وفي اللغة دي كل الاوامر في النهاية 

بتبقي علي هيئة واحايد واصفار وطلعا نظرا لأنها صعبة جدا جدا سواء في الكتابة او تصليح الاخطاء فتم عمل لغة 

يعني اسهل شوية وكانت الـ Assembly Language او لغة التجميع وكان فيها حاجة اسمها Assembler وده 

وظيفته انه يحول الكود من اسمبلي إلي لغة الالة.


ولكن من اكبر عيوب لغة التجميع انها تعتمد علي الهاردوير بتاع الجهاز


يعني لو غيرنا الجهاز برنامج الأسمبلي مش هيشتغل نظرا لإختلاف الهاردوير من جهاز لجهاز.


طبعا كل المحاولات دي تعتبر لغات برمجة ولكن low-level لأن المبرمج برده بيتعامل مع اكواد لغة صعبة جدا 

بعد كده ظهرت لغات high-level ودي كان الهدف منها التغلب علي مشكلة اعتماد البرامج علي الهاردوير 

وصعوبة الكود.


من اهم مميزات لغات الـ high-level انها تعتبر قريبة من اللغة الإنجليزية العادية.


يعني مثلا لو عايزين نحسب مساحة دائرة نصف قطرها 5 هيبقي الكود كده:


من اشهر لغات الـ high-level :


· COBOL (COmmon Business Oriented Language)


· FORTRAN (FORmula TRANslation)


· BASIC (Beginner All-purpose Symbolic Instructional Code)


· Pascal (named for Blaise Pascal)


· Ada (named for Ada Lovelace)


· C (whose developer designed B first)


· Visual Basic (Basic-like visual language developed by Microsoft)


· Delphi (Pascal-like visual language developed by Borland)


· C++ (an object-oriented language, based on C)


· C# (a Java-like language developed by Microsoft)


· Java


وكل لغة من دول تم عملها لخدمة قطاع معين من التطبيقات.


البرنامج اللي بنكتبه اسمه Source Program وبما إن الجهاز مش بيفهم الكود العادي فكان لازم من وجود برنامج 

اخر وهو الـ Compiler وده اللي بيحول كود الجافا لكود لغة الآلة وعن طريق بعض الخطوات بيتم عمل ملف 

تنفيذي وده اللي بيشتغل وبيكون امتداده .exe


ودي خطوات عمل وتنفيذ اي برنامج:


بالنسبة للجافا تم عملها بغرض انها تكون مرنة وممكن تشغيل البرنامج علي اي جهاز. فبيتم عمل البرنامج ووضعه 

علي اي جهاز مع وجود الcompiler المناسب وفي وجود الـVirtual Machine (JVM)وهي البيئة اللي من 

خلالها اقدر اشغل اي برنامج جافا علي اي جهاز.



وهعمل سكيب لجزء Operating System لأنها ميهمناش قوي وكمان جزء نظم الأرقام.

ليست هناك تعليقات:

إرسال تعليق

جميع الحقوق محفوظة سيف شابسوغ ©2012-2013 | جميع المواد الواردة في هذا الموقع حقوقها محفوظة ، فهـرس الـموقــع | أتفاقية الأستخدام