📚موسوعة الحاسوب و البرمجة📚
11.7K subscribers
875 photos
275 videos
3.95K files
913 links
تحتوي على اي كتب او برامج او فيديوهات او دورات تتعلق بالحاسوب او البرمجة وصيانة الهواتف
قنواتنا
للتواصل @mosoaa_bot
قناتنا في اليوتيوب
https://youtube.com/@musuaamsg
Download Telegram
Media is too big
VIEW IN TELEGRAM
🔻 مسلسل #المؤسس عثمان #الحلقة (24) حجم #صغير ودقة منخفضة (360p) #مترجمة للعربية SD

T.ME/ARTOGRAL2
Media is too big
VIEW IN TELEGRAM
🔻 مسلسل #المؤسس عثمان #الحلقة (24) حجم #كبير ودقة عالية (720p) #مترجمة للعربية HD.

T.ME/ARTOGRAL2
Flask_Blueprints__Dive_into_the.pdf
6.7 MB
كتاب بعنوان:

Flask Blueprints

كتاب يشرح لك اطار العمل #Flask لبرمجة صفحات الويب.

#Flask #Python#Enghlish
#كتب_برمجية📚
[Nichola_Lacey]_Python_by_Example__Learning_to_Pro.pdf
9.8 MB
كتاب بعنوان:

Python by Example. Learning to Program in 150 Challenges

كتاب جميل لتعلم #Python بطريقة التحديات وحل التمارين

#Python #English
#كتب_برمجية📚
Modular Programming with PHP 7.pdf
18.7 MB
كتاب بعنوان:

Modular Programming with PHP 7

كتاب يغوص في اعماق لغة #PHP بشكل احترافي.

#كتبPHP_English

#كتب_برمجية📚
Python Data Analysis_Ivan Idris.pdf
7.5 MB
كتاب بعنوان:

Python Data Analysis - 2014

كتاب يتحدث عن تحليل البيانات باستخدام #Python ينصح بقراءته للمهتمين في هذا المجال.

#كتبPython_English #Data_Analysis
#كتب_برمجية📚
انشروا رابط القناة اخواني
🌐💻مفهوم الدوال و أنواعها في الجافا أندرويد (تطبيق عملي)


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


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


ما هي الدوال (Methods) ؟
التطبيقات و برمجيات الحاسب يتم بناءها بواسطة كتابة مئات الأسطر البرمجية فكما هو معروف في أي لغة برمجة إذا واجهتنا أي مشكلة كبيرة فإن أفضل طريقة لحلها هي تقسيمها لمجموعة من الأجزاء الصغيرة أو ما يعرف بال module أو function "الدّوال " بحيث كل منها تؤدي وظيفة معينة, ويعرف هذا التكنيك عادة بـما يسمى بـ divide and conquer. و تقسيم الكود على عدد من الدوال يجعل الكود أسهل في القراءة و أكثر وضوحاً.


وهذه الـ module أو الـ function الدوال تعرف في ال #C و الـ java بما يسمى بـ Method, والمبرمج يستطيع كتابة الـ Method لتعريف مهام معينة ومن ثم يستدعيها ( calling ) من أي نقطة من البرنامج بمجرد ذكر اسمها لكي يتم تنفيذها عند تلك النقطة.


فالمبرمج إما أن يقوم بكتابة الـmethod بنفسه عندها تسمى (user-defined method), أو أن يقوم باستخدام دوال معرفة في نفس اللغة( build in ) و كل ما عليه هو استدعاءها عندما يحتاج إليها ليستخدمها في برنامجه, و سنتعرف فيما يلي كيف يمكننا إنشاء هذه ال user-defined method ومن ثم استدعائها في البرنامج.


📌طريقة كتاب الدوال (Methods):

لنلق الآن نظرة على الصورة العامة لكتابة أي method في java مثلا:


access_ Modifier return-value-type Method-Name( parameter-list )
{
declaration and statement
}


السطر الأول من تعريف الـ method يسمى بال method header ويحتوي على كل من :

access modifier : و هي إما public أو private أو static.


مثلا عندما يتم كتابة public فإن ذلك يعني أن كل الـ Activities تستطيع الوصول للدالة, أي أنها عامة. و عندما يتم كتابة private فإن ذلك يعني أن الدالة خاصة يمكن الوصول إليها فقط من داخل Activity الحالية.

method-name : و هي اسم الدالة التي نريد تعريفها , وقواعد كتابة الاسم هنا يتبع نفس شروط كتابة أسماء المتغيرات وطبعا سيكون الاسم اختياري.


return-value-type نوع النتيجة التي ستعود بها الدالة والدالة إذا كانت تعود بقيمة فإنها لا تعود بأكثر من قيمة واحدة. مثلا إذا كانت الدالة تعود بقيمة integer فإننا سنكتب في هذه الخانة integer ,وهكذا. أما في حالة عندما لا تعود الدالة بقيمة فإننا نكتب هنا void .

parameter-list: هي القيم التي نقوم بإرسالها أي ادخالها إلى للدالة. وستتعرف عليها أكثر عندما نشرح أنواع الدوال .

أما بالنسبة للـ declarations and statements : فهي الأوامر التي تقوم هذه الدالة بتنفيذها .


📌والدوال في أي لغة برمجة لها أربع أنواع سأطرح كل نوع مع تطبيق مثال عليه من خلال لغة java:


1⃣- الدالة التي لا تعود بقيمة ولا تستقبل أي قيمة "parameter"

و المعنى سيتضح من خلال المثال التالي :


public void firstMethod() {
Log.v("Method", "FirstMethod was called!!");
}

وهنا الـ access Modifier هي public, أي عامة.

وبما أن الدالة لا تعود بقيمة فسنكتب void عند الـ return-value-type …

وبما أن الدالة لا تستقبل أي قيمة فسنكتب القوسين فارغة …!

وهنا الدالة تؤدي وظيفة سهلة للغاية مجرد أنها تطبع الرسالة " !! FirstMethod was called " فور مناداتها ..و الآن و بعد أن تم بناء الدالة لابد من مناداتها " calling " حتى تطبع الرسالة .. لكن كيف يتم استدعاء أي دالة ؟؟

بمجرد ذكر اسم الدالة فقط, فإنه سيتم تنفيذها ….كالتالي:

firstMethod();


و البرنامج كاملا كالتالي :

package com.example.android.methods;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

//call the method
firstMethod();
}

public void firstMethod() {
Log.v("Method", "Method 1 was called!!");
}
}


لاحظ في البرنامج أننا قمنا بإنشاء الدالة firstMethod أولاً, ثم استدعائها من داخل الـ onCreate حيث أنها نقطة بداية الـ Activity. النتيجة هي طباعة عبارة Method 1 was called!!داخل الـ Log


الآن النوع الثاني من أنواع الدوال :


2⃣ – الدالة التي تستقبل قيمة "parameter " ولكنها لا تعود بقيمة :

والمثال التالي يوضح الفكرة, في البداية لننشئ الدالة كالتالي :

public void secondMethod(String name) {
String result;
result = "hello: " + name;
Log.v("second method", result);
}

الدالة هنا تستقبل قيمة parameter إذن سنكتب بين
القوسين اسم أي متغير يستقبل هذه القيمة التي ستدخل للدالة وطبعا سنكتب نوع لهذا المتغير ونوعه بلا شك سيكون من نفس نوع القيمة المراد تمريرها للدالة والتي سيحتفظ بها المتغير. وكما هو واضح فإن الدالة تستقبل القيمة المخزنة في name ثم تضيف العبارة hello قبل الاسم , و أخيرا تطبع النتيجة على Log.

فقط تبقّى مناداة الدالة حتى تنفذ عملها لكن يبدو أننا هنا لا بد و أن نرسل قيمة لهذه الدالة لكي تقوم بعملها وطبعا القيمة التي سنرسلها ستكون من النوع String ….

و لمناداة الدالة كالتالي:

secondMethod("Ahmad");


و البرنامج كاملا كالتالي :

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

//call the method
secondMethod("Ahmad");
}

public void secondMethod(String name) {
String result;
result = "hello: " + name;
Log.v("second method", result);
}
}


3⃣- الدوال التي لا نمرر لها بارمترات ولكن تعود بقيمة:

ومعنى أن الدالة لا تمرر ”أو لا تستقبل” parameter أنه عند إنشاء الدالة القوسين ستكون فارغة ( ) أي أنه لا توجد قيمة تريد الدالة استقبالها .

و معنى أن الدالة تعود بقيمة أي عندما ننشئ الدالة سنستخدم keyword هيreturn وتكون متبوعة بالقيمة التي تعود بها الدالة .ولا تنسى أنه يجب أن تكتب في الـ Method header نوع القيمة التي ستعود بها الدالة في خانة الـ return _value _type …

دعنا ننشي الدالة ونرى, لنتفق أولا على وظيفة هذه الدالة, مثلا نريد الدالة أن تطبع لنا الجملة التالية :

"third method was called"

العملية سهلة للغاية أولا سأكتب الدالة :

public String thirdMethod(String name) {
return "third method was called!!";
}

هنا الدالة تعود بقيمة من النوع string, واسم الدالة thirdMethod, أيضاً استخدمنا الكلمة return متبوعة بالقيمة التي ستعود بها الدالة. و بالطبع إذا أردنا تنفيذ الدالة من أي نقطة في البرنامج كل ما علينا هو فقط مناداتها كالتالي :

thirdMethod ();
لكن الدالة ThirdMethod السابقة تعود بقيمة إذن يجب علينا عندما نستدعيها أن نخزن القيمة التي تعود منها في متغير وهذا المتغير له نفس نوع الـ return _value _type في الدالة نفسها إذن سنعرف أي متغير له النوع string لكي نخزن فيه نتيجة الدالة ThirdMethod ليصبح استدعاء الدالة صحيحا كالتالي :

string result = thirdMethod();
حيث أننا قمنا بتخزين القيمة التي تعود بها الدالة في المتغير result, بعد ذلك عندما تقوم بطباعة القيمة result ستطبع بذلك نتيجة الدالةThirdMethod.

#البرنامج كاملا:

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

//call the method
String result = thirdMethod();
}

public String thirdMethod(String name) {
return "third method was called!!";
}
}

4⃣- الدوال التي تستقبل بارميتر وتعود بقيمة :

نريد كتابة دالة و ظيفتها أن تعود لنا بقيمة( عبارة عن نتيجة العملية الحسابية )

أي الدالة تستقبل قيمة عددية integer, وتعود بقيمة عددية integer, والتي هي الرقم 10 مضروبا في القيمة التي تم تمريرها للدالة.

كيف سيكون شكل الدالة :

public Integer fourthMethod(Integer number) {
return number * 10 ;
}
حيث أننا في بداية تعريف الدالة في السطر الأول قبل اسم الدالة كتبنا integer معناه أن الدالة ستعود بالقيمة العددية integer

و كتبنا ( integer number) أي أن الدالة ستستقبل قيمة من النوع integer مخزنة في متغير يسمى number

return 10 * number;

و السطر السابق معناه أن الدالة ستعود بالقيمة 10 مضروبة في البارميتر المرسل للدالة , و كما ذكرنا في بداية الدرس أن الكلمة المفتاحية return تستخدم لكي تعود لنا بقيمة. الآن أنشأنا الدالة , بقي مناداتها كالتالي من داخل الـ onCreate:

Integer result = fourthMethod(6);

حيث أننا أرسلنا للدالة قيمة عددية ليتم وضعها بدلا من المتغير number, وطبعا القيمة 6 هي خيارية يمكنك تجربة أي عدد آخر. و الدالة تعود بقيمة عددية يتم تخزينها في المتغير result.

و البرنامج كاملا كالتالي :

import android.os.Bundle;
import android.support.v7.app.AppCo
mpatActivity;
import android.util.Log;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

//call the method
Integer result = fourthMethod(6);
Log.v("result", String.valueOf(result));
}

public Integer fourthMethod(Integer number) {
return number * 10 ;
}
}


وبذلك وضحنا الفرق بين الانواع الاربعة للدوال.
#مقالات_برمجية📙📙
كتاب 📗 pdf رائع
100 مثال مع الحلول بلغه ++C
#دورات_برمجية🖥
قناة الزيرو ويب سكول تعتبر مرجع عربي قوي جدا للويب ديفلوبمينت ويشكر صاحبها على الجهد الي قاعد يقدمه.

اذا مو عارف كيف تبدأ في تعلم الجفاسكريبت من هذي القناه فراح ارتب لك playlist وكيف تبدأ لأن دوراته مقسمه ومنفصله
1 https://www.youtube.com/playlist?list=PLDoPjvoNmBAw6p0z0Ek0OjPzeXoqlFlCh
هذي الدوره صحيح قديمه ولكن لازالت مواضيعها جميله وراح تفيدك كامبتدا

2
https://www.youtube.com/playlist?list=PLDoPjvoNmBAy9nFRJgVYgEID8xE2a6q6V
هذي الدوره تعلمك التعامل مع عناصر ال html عن طريق الجافاسكريبت

3
https://www.youtube.com/playlist?list=PLDoPjvoNmBAy3siU1b04xY24ZlstofO9M
هذي الدوره تعلمك الإصدار الحديث للجافاسكريبت والمميزات الجديده الي أضيفت لها.


بعد ماتاخذها بنفس الترتيب هذا ممكن تبحث عن دورات في هذي القناه عن عمل مشاريع كامله وتطبق معاه وراح تصقل معرفتك في الجافاسكريبت وتقوي مهاراتك فيها، وأخيرا قناته رائعه جدا وتكلم عن أشياء كثير وعمل أشياء كثير في تطوير الويب ممكن تشوفها وراح تفيدك وبعدها طبق كل الي تعلمته عن طريق عمل مشاريع صغيره لك وابحث عن مصادر ثانيه في قوقل أو في اليوتيوب ولا تعتمد على مصدر واحد فقط وبالتوفيق
#دورات_برمجية🖥
#مشاريع
إليكم أفضل مشاريع JavaScript الإحترافية وسهلة للمبتدئين :
مشروع الأول - إنشاء محرر اكواد HTML / CSS : https://youtu.be/8xbxpVfPlHw
مشروع الثاني - إنشاء صندوق تحميل تطبيق Android : https://youtu.be/a6RBctpzs7I
مشروع الثالث - إنشاء صندوق تحميل تطبيق ايفون : https://youtu.be/jUwhRlXhhkg
مشروع الرابع - إنشاء ساعة إحترافية : https://youtu.be/rhtULVYArTA
مشروع الخامس - إنشاء مشغل اغاني وراديو اونلاين : https://youtu.be/PdxwyUSVMqQ
رابط الدورة كاملة : https://www.youtube.com/playlist?list=PLMTdZ61eBnyp1nMM8mGRzpwuu6FNxFy0D
مكتبة المليون كتاب إسلامي📚
مكتبة اسلامية تهتم بنشر الكتب الاسلاميةبجميع انواعها (عقيدة-فقة-دعوة-تزكية-تنمية) نهدف للوصول الى مليون كتاب اسلامي ان شاءالله تعالى
لطلب الكتب
من هنا : @atlubkitabak
قنواتنا
مكتبة الحاسوب والبرمجة @programming_computer
مكتبة المليار كتاب @bookshop_pdf
https://t.me/book_islamih
This media is not supported in your browser
VIEW IN TELEGRAM
⚠️ #الإعلان الأول للحلقة (25) من #مسلسل المؤسس عثمان #مترجم للعربية

🇹🇷 Æ.Dirilis.Æ 🇹🇷
اذا كنت من المبتدئين
جزئين لكتابين pdf لشرح لغه ++C
باللغه العربيه
#كتب_سي_بلاس📚
#كتب_برمجية📚
💻📱#أفضل_التطبيقات_لتعليم_البرمجة_على_أجهزة_أندرويد
روابط التحميل بعد هذا الشرح
نستخدم جميعنا هواتفنا الذكية كل يوم وبكثرة، ولعل الكثيرين من عشاق البرمجة يودون الاستفادة من أجهزتهم لتطوير مهاراتهم البرمجية المختلفة وتعلم لغات جديدة بطرق مبتكرة، وليس من الضروري أن يقتصر الأمر على فيديوهات من هنا وهناك وحسب، وإنما هنالك العديد من تطبيقات الموبايل المفيدة في مجال تعلم لغات البرمجة واحترافها، وسنقدم اليوم بعض من أفضل التطبيقات لتعليم البرمجة على أجهزة أندرويد.
📲أبرز التطبيقات لتعليم البرمجة على أجهزة أندرويد
📲تطبيق SoloLearn
أحد أهم وأشهر التطبيقات لتعليم البرمجة حيث يتيح SoloLearn تعلم العديد من اللغات البرمجية الهامة مثل ++C وJava وPython وSQL وCSS وHTML، إلى جانب إمكانية تنفيذ الكودات البرمجية، كما أن التطبيق سهل الاستخدام ولا يتطلب أكثر من تسجيل الدخول إما بحساب غوغل أو بحساب الفيسبوك، وبمجرد إتمام التسجيل تظهر واجهة اللغات البرمجية المتاحة.
كل ما عليك لتتعلم لغة برمجة يدعمها تطبيق SoloLearn هو أن تختار اللغة وتبدأ مباشرة بالدرس الأول، وعند انتهاء كل درس سيكون عليك اجتياز اختبار، وبحسب نتيجة هذا الاختبار إما تنتقل للدرس التالي أو تعيد ما فاتك في الدرس السابق وهكذا.

عند انتهاء الدروس يمكن للطلاب الحصول على شهادات إتمام التعليم من هذا التطبيق، وهذه ليست الميزة الوحيدة بل يمكنك المشاركة أيضًا في مجتمع نقاش برمجي يتيحه التطبيق مع الزملاء الآخرين.
📲تطبيق Encode
يختص هذا التطبيق بشكل أكبر بلغة البرمجة JavaScript ويتيح تعلمها بأفضل الطرق مع توليه كل ما يتعلق بالـ HTML والـ CSS، إلى جانب كونه من أفضل التطبيقات للمبتدئين فهو يغوص في أعماق كل تفصيل من تفاصيل أكواد لغة الجافا سكريبت ليقدمها بأبسط وأشمل الطرق للمتعلم.

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


📲تطبيق CodeHub
تطبيق بسيط يساعد المتعلمين ويمرهنهم من خلال منهج تعلم مميز، إذ يتيح CodeHub العديد من اللغات الهامة في مجال تطوير الويب بشكل عام، كما يوفر بيئة تعلم سهلة وبسيطة عن طريق احتوائه على حوالي 50 درس مقسمة على أربعة مستويات لتعلم أساسيات الويب و HTML5 و CSS3، حيث يقوم المتعلم باختيار المستوى المناسب لخبراته والبدء بالتعلم، ويمكنه طرح الأسئلة والاستفسارات عن طريق زر واحد بسيط.

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


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

إلى جانب ذلك يمكّنك Programming Hub من تعلم بعض اللغات دون الحاجة للإتصال بالأنترنت ومنها لغة جافا سكريبت وكودات HTML و CSS، وبأسلوب مبسط للغاية.


📲تطبيق Codemurai
يبدو أن المنافسة بين أهم التطبيقات لتعليم البرمجة محتدمة، فيمكنك اليوم استخدام تطبيق Codemurai للحصول على دروس برمجية هامة وممتعة من أهل البرمجة أنفسهم، حيث يحوي دروسًا يقدمها خبراء صناعة الألعاب وتطوير الويب وتطوير التطبيقات.

يوفر Codemurai تعلم العديد من اللغات أهمها #C و CSS وHTML وJavaScript وTypeScript وPython وMonoDB وES6 وAngular2 وAndroid SDK وReact وJava وiOS SDK، إلى جانب الكثير حول علوم الحاسب والبرمجة غرضية التوجه OOP والـ Phaser و Unity 3D.

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


📲تطبيق CppDroid
تطبيق شهير لكتابة الأكواد البرمجية بلغة ++C، يؤكد الملايين من المستخدمين حول العالم فعالية وقوة هذا التطبيق وهو من بين أفضل التطبيقات لتعليم البرمجة لعام 2019، حيث يحوي الآلاف من البرامج والطرق والفيديوهات والدروس التعليمية البرمجية الهامة والتي يمكن تجريبها في الحال .