Flutter هو إطار عمل مفتوح المصدر تم تطويره بواسطة Google لإنشاء تطبيقات متعددة المنصات (الهواتف الذكية، الويب، وسطح المكتب) باستخدام لغة برمجة Dart. إليك بعض المعلومات الأساسية حول Flutter وكيفية البدء به.
### مميزات Flutter:
1. الأداء العالي: يستخدم Flutter محرك الرسم الخاص به (Skia)، مما يوفر أداءً ممتازًا.
2. تطوير متعدد المنصات: يمكنك كتابة التعليمات البرمجية مرة واحدة وتشغيلها على منصات متعددة (iOS، Android، الويب، desktop).
3. واجهة مستخدم مرنة وقابلة للتخصيص: يوفر Flutter مجموعة واسعة من الأدوات والتصاميم لواجهة المستخدم.
4. Hot Reload: يمكنك رؤية التغييرات التي تجريها في التعليمات البرمجية على الفور دون الحاجة إلى إعادة تشغيل التطبيق.
### كيفية البدء بـ Flutter:
لتبدأ بتطوير تطبيق باستخدام Flutter، اتبع الخطوات التالية:
1. تثبيت Flutter:
- قم بزيارة الموقع الرسمي لـ Flutter واتبع التعليمات وفقًا لنظام التشغيل الذي تستخدمه (Windows، macOS، Linux).
2. تهيئة محرر النصوص:
- يمكنك استخدام أدوات مثل Visual Studio Code أو Android Studio، وهو مزود بتكامل ممتاز مع Flutter.
3. إنشاء مشروع جديد:
- افتح Terminal أو Command Prompt واستخدم الأمر التالي لإنشاء مشروع جديد:
flutter create my_app
- انتقل إلى مجلد المشروع:
cd my_app
4. تشغيل المشروع:
- لتشغيل التطبيق، استخدم الأمر:
flutter run
### مثال بسيط على تطبيق Flutter:
إليك مثالاً بسيطًا لتطبيق Flutter يعرض نصًا وزرًا:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('مرحبًا بكم في Flutter'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text('اضغط على الزر أدناه!'),
ElevatedButton(
onPressed: () {
// حدث الزر
showDialog(
context: context,
builder: (context) => AlertDialog(
title: Text('مرحباً!'),
content: Text('لقد ضغطت على الزر.'),
actions: <Widget>[
TextButton(
child: Text('إغلاق'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
),
);
},
child: Text('اضغط هنا'),
),
],
),
),
),
);
}
}
### شرح الكود:
- MaterialApp: يُستخدم كنقطة انطلاق للتطبيق.
- Scaffold: يوفر بنية أساسية للتطبيق مع شريط أدوات (AppBar) ومحتوى.
- Column: يُستخدم لتنسيق العناصر بشكل عمودي.
- ElevatedButton: زر يتيح للمستخدم التفاعل مع التطبيق.
### تعلم المزيد:
يمكنك العثور على العديد من الموارد والدروس على موقع Flutter والمشاركة في المجتمعات والمنتديات للحصول على الدعم.
﴿قَالَ رَبِّ اشْرَحْ لِي صَدْرِي ﴾ [طه-25]
عالم الحاسوب برمجه وتقنيه وتطوير شرح كل ما يتطلب في مجال علوم الحاسوب والبرمجة
لتواصل معي.
@ll77_ll99_bot
### مميزات Flutter:
1. الأداء العالي: يستخدم Flutter محرك الرسم الخاص به (Skia)، مما يوفر أداءً ممتازًا.
2. تطوير متعدد المنصات: يمكنك كتابة التعليمات البرمجية مرة واحدة وتشغيلها على منصات متعددة (iOS، Android، الويب، desktop).
3. واجهة مستخدم مرنة وقابلة للتخصيص: يوفر Flutter مجموعة واسعة من الأدوات والتصاميم لواجهة المستخدم.
4. Hot Reload: يمكنك رؤية التغييرات التي تجريها في التعليمات البرمجية على الفور دون الحاجة إلى إعادة تشغيل التطبيق.
### كيفية البدء بـ Flutter:
لتبدأ بتطوير تطبيق باستخدام Flutter، اتبع الخطوات التالية:
1. تثبيت Flutter:
- قم بزيارة الموقع الرسمي لـ Flutter واتبع التعليمات وفقًا لنظام التشغيل الذي تستخدمه (Windows، macOS، Linux).
2. تهيئة محرر النصوص:
- يمكنك استخدام أدوات مثل Visual Studio Code أو Android Studio، وهو مزود بتكامل ممتاز مع Flutter.
3. إنشاء مشروع جديد:
- افتح Terminal أو Command Prompt واستخدم الأمر التالي لإنشاء مشروع جديد:
flutter create my_app
- انتقل إلى مجلد المشروع:
cd my_app
4. تشغيل المشروع:
- لتشغيل التطبيق، استخدم الأمر:
flutter run
### مثال بسيط على تطبيق Flutter:
إليك مثالاً بسيطًا لتطبيق Flutter يعرض نصًا وزرًا:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('مرحبًا بكم في Flutter'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text('اضغط على الزر أدناه!'),
ElevatedButton(
onPressed: () {
// حدث الزر
showDialog(
context: context,
builder: (context) => AlertDialog(
title: Text('مرحباً!'),
content: Text('لقد ضغطت على الزر.'),
actions: <Widget>[
TextButton(
child: Text('إغلاق'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
),
);
},
child: Text('اضغط هنا'),
),
],
),
),
),
);
}
}
### شرح الكود:
- MaterialApp: يُستخدم كنقطة انطلاق للتطبيق.
- Scaffold: يوفر بنية أساسية للتطبيق مع شريط أدوات (AppBar) ومحتوى.
- Column: يُستخدم لتنسيق العناصر بشكل عمودي.
- ElevatedButton: زر يتيح للمستخدم التفاعل مع التطبيق.
### تعلم المزيد:
يمكنك العثور على العديد من الموارد والدروس على موقع Flutter والمشاركة في المجتمعات والمنتديات للحصول على الدعم.
﴿قَالَ رَبِّ اشْرَحْ لِي صَدْرِي ﴾ [طه-25]
عالم الحاسوب برمجه وتقنيه وتطوير شرح كل ما يتطلب في مجال علوم الحاسوب والبرمجة
لتواصل معي.
@ll77_ll99_bot
عالم برمجةوتقنية الحاسوب C. P. W pinned «https://t.me/learnwebprogramdiscussionpages»
اليوم با عطيكم معلومات ان شاء الله تستفيدو منها
نشر القناة يا مبرمجين بين اشوف المشتركين وتعب 😂😂😂💔
تم@ll77_ll99_bot
تم@ll77_ll99_bot
Forwarded from حاجة برفكتو🎀. (روليت)
⭕️ الفرق بين #Frontend و #backend
#أولا: Front End: يقصد بال Front End هو الجزء من الموقع الذي يتفاعل معه المستخدمين، أي شيء من مكونات الموقع التي يمكنك مشاهدتها، ويمكنك إحداث أي حدث عليها، مثل ال Buttons وال Dropdowns menu والخطوط والألوان ومعارض الصور وحركات ال Animation وغيرها.
كما أننا نتحدث عن Front End فيعني أنك يجب أن تعرف في ال HTML5 وال CSS3 وال jQuery وال jQuery UI وال SASS or LESS وبعض الخبرة في بعض المكاتب المهمة والمتعلقة مثلا في معارض الصور والقليل من الخبرة من
الأجاكس ليست سيئة ...
------------------------------------
#ثانيا: Back End: يقصد بال Back End هو ذلك الجزء الذي يتم بنائه ليعمل على الربط بين مجموعة الصفحات والبيانات والتطبيقات المختلفة، وفي المعنى الآخر هو الجزء الذي يتم تنفيذه وقرائته من خلال ال Server ويهتم بالتحقق من استقبال البيانات وارسالها بشكل صحيح من والى المتصفح.
كما انه يضم مجموعة من الأدوات مثل (Mysql OR Oracle OR SQL Server) وبكل تأكيد هذه تأتي بعد تعلمك أو معرفتك ل SQL(Structure Query Language) مثل جمل الإستعلام والتحديث والحذف والإضافة ..الخ
#أولا: Front End: يقصد بال Front End هو الجزء من الموقع الذي يتفاعل معه المستخدمين، أي شيء من مكونات الموقع التي يمكنك مشاهدتها، ويمكنك إحداث أي حدث عليها، مثل ال Buttons وال Dropdowns menu والخطوط والألوان ومعارض الصور وحركات ال Animation وغيرها.
كما أننا نتحدث عن Front End فيعني أنك يجب أن تعرف في ال HTML5 وال CSS3 وال jQuery وال jQuery UI وال SASS or LESS وبعض الخبرة في بعض المكاتب المهمة والمتعلقة مثلا في معارض الصور والقليل من الخبرة من
الأجاكس ليست سيئة ...
------------------------------------
#ثانيا: Back End: يقصد بال Back End هو ذلك الجزء الذي يتم بنائه ليعمل على الربط بين مجموعة الصفحات والبيانات والتطبيقات المختلفة، وفي المعنى الآخر هو الجزء الذي يتم تنفيذه وقرائته من خلال ال Server ويهتم بالتحقق من استقبال البيانات وارسالها بشكل صحيح من والى المتصفح.
كما انه يضم مجموعة من الأدوات مثل (Mysql OR Oracle OR SQL Server) وبكل تأكيد هذه تأتي بعد تعلمك أو معرفتك ل SQL(Structure Query Language) مثل جمل الإستعلام والتحديث والحذف والإضافة ..الخ
🔰 نـظـام Linux
هو نظام تشغيل مفتوح المصدر، ظهر سنة 1991، وبدرجة عالية من الحرية في تعديل وتشغيل وتوزيع وتطوير أجزائه.
🔸ماذا يُقصد بالتوزيعات في نظام Linux ؟
لينكس هو نواة نظام تشغيل وليس نظام تشغيل متكامل، وبدمجه مع مجموعة أدوات مشروع GNU تحصل على نظام تشغيل؛ ولكن نظام GNU/Linux لا يكفي المستخدمين العاديين، لكن بإضافة بعض البرمجيات مثل OpenOffice وبيئة سطح مكتب تحصل على نظام تشغيل يصلح للقيام بأعمالك اليومية.
🔸 أهمية نظام Linux :
قد لا يعي الناس هيمنة هذا النظام على العالم لأنه وببساطة لا يُستخدم غالباً بصورة فردية؛ إنما غالباً لإدارة المشاريع الكبيرة، كونه يحتاج لمهارات عند التعامل معه.
أضِف لمعلوماتك . .
هو نظام تشغيل مفتوح المصدر، ظهر سنة 1991، وبدرجة عالية من الحرية في تعديل وتشغيل وتوزيع وتطوير أجزائه.
🔸ماذا يُقصد بالتوزيعات في نظام Linux ؟
لينكس هو نواة نظام تشغيل وليس نظام تشغيل متكامل، وبدمجه مع مجموعة أدوات مشروع GNU تحصل على نظام تشغيل؛ ولكن نظام GNU/Linux لا يكفي المستخدمين العاديين، لكن بإضافة بعض البرمجيات مثل OpenOffice وبيئة سطح مكتب تحصل على نظام تشغيل يصلح للقيام بأعمالك اليومية.
🔸 أهمية نظام Linux :
قد لا يعي الناس هيمنة هذا النظام على العالم لأنه وببساطة لا يُستخدم غالباً بصورة فردية؛ إنما غالباً لإدارة المشاريع الكبيرة، كونه يحتاج لمهارات عند التعامل معه.
أضِف لمعلوماتك . .
👍2
بعض الكتب التي تم نشرها :
● Java : https://t.me/csgrp/29
●Python : https://t.me/csgrp/41
●HTML5 & CSS3 :
https://t.me/csgrp/45
●C++ : https://t.me/csgrp/46
●JavaScript : https://t.me/csgrp/47
●C : https://t.me/csgrp/48
●Hacking : https://t.me/csgrp/50
●JavaScript : https://t.me/csgrp/78
●A I : https://t.me/csgrp/84
●Flutter : https://t.me/csgrp/96
● Java : https://t.me/csgrp/29
●Python : https://t.me/csgrp/41
●HTML5 & CSS3 :
https://t.me/csgrp/45
●C++ : https://t.me/csgrp/46
●JavaScript : https://t.me/csgrp/47
●C : https://t.me/csgrp/48
●Hacking : https://t.me/csgrp/50
●JavaScript : https://t.me/csgrp/78
●A I : https://t.me/csgrp/84
●Flutter : https://t.me/csgrp/96
Telegram
Computer Science
أقوى كتاب لتعلم جافا في 21 يوم
يوجد فيه كل شئ تحتاجه للتعلم
كتاب للتعليم الذاتي
اللغة : الانكليزية
عدد الصفحات : 516
لدعمنا شارك القناة في المجموعات و مع اصدقائك
رابط القناة : https://t.me/csgrp
The most powerful book to learn Java in 21 days
It has…
يوجد فيه كل شئ تحتاجه للتعلم
كتاب للتعليم الذاتي
اللغة : الانكليزية
عدد الصفحات : 516
لدعمنا شارك القناة في المجموعات و مع اصدقائك
رابط القناة : https://t.me/csgrp
The most powerful book to learn Java in 21 days
It has…
🔴 مهارة حل المشكلات (Problem Solving) من أهم المهارات اللي لازم تكون عند أي مبرمج.
هذه بعض المواقع التي ستساعدك في تنمية مهارة حل المشكلات ... Problem Solving
➡️Coding Challenge Platforms ❤️🔥
→ leetcode.com
→ codewars.com
→ topcoder.com
→ codingame.com
→ hackerrank.com
→ projecteuler.net
→ coderbyte.com
→ codechef.com
→ exercism.io
→ spoj.com
→ atcoder.jp
→ hackerearth.com
→ interviewbit.com
→ codesignal.co
هذه بعض المواقع التي ستساعدك في تنمية مهارة حل المشكلات ... Problem Solving
➡️Coding Challenge Platforms ❤️🔥
→ leetcode.com
→ codewars.com
→ topcoder.com
→ codingame.com
→ hackerrank.com
→ projecteuler.net
→ coderbyte.com
→ codechef.com
→ exercism.io
→ spoj.com
→ atcoder.jp
→ hackerearth.com
→ interviewbit.com
→ codesignal.co
أكثر من 6+ ملخصات لخصائص CSS تفيدك كمطور FrontEnd 🚀😍
فضلها وريتويت راح تحتاجها ❤️
👇👇
📍 هذا ملخص لأكثر من 60+ اختصار لخصائص CSS 🔥
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2569
📍 ملخص لجميع خصائص Grid Layout 👌
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2570
📍 ملخص لجميع خصائص BoxModel 😍
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2571
📍شرح مفصل ومختصر لخاصية Flex Box بلغة CSS مع الامثلة .. بالعربي 😍
يمكنك الحصول عليه وتحميله مجانا من هنا 👇
https://store.proadev.com/YpqWwl
📍 ملخص اخر لجميع خصائص Flex Box
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2572
📍 ملخص لجميع خصائص CSS Cheat Sheet وشرح مبسط وجميل 😍
🔗 للتحميل
https://t.me/pro2dev/2573
فضلها وريتويت راح تحتاجها ❤️
👇👇
📍 هذا ملخص لأكثر من 60+ اختصار لخصائص CSS 🔥
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2569
📍 ملخص لجميع خصائص Grid Layout 👌
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2570
📍 ملخص لجميع خصائص BoxModel 😍
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2571
📍شرح مفصل ومختصر لخاصية Flex Box بلغة CSS مع الامثلة .. بالعربي 😍
يمكنك الحصول عليه وتحميله مجانا من هنا 👇
https://store.proadev.com/YpqWwl
📍 ملخص اخر لجميع خصائص Flex Box
🔗 للتحميل بدقة عالية
https://t.me/pro2dev/2572
📍 ملخص لجميع خصائص CSS Cheat Sheet وشرح مبسط وجميل 😍
🔗 للتحميل
https://t.me/pro2dev/2573
Telegram
برمجة وتطوير
📍 هذا ملخص لأكثر من 60+ اختصار لخصائص CSS 🔥
0️⃣1️⃣ أسئلة برمجية مبسطة بلغة بايثون: 🔥
1️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 10.
2️⃣ اكتب برنامجًا لحساب مجموع الأرقام من 1 إلى 10.
3️⃣ اكتب برنامجًا لطباعة الأرقام الزوجية من 1 إلى 100.
4️⃣ اكتب برنامجًا لحساب عدد الأعداد الفردية من 1 إلى 100.
5️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع تجاهل الأرقام الفردية.
6️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع تجاهل الأرقام الزوجية.
7️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم مرتين.
8️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم في سطر جديد.
9️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم في عمود جديد.
0️⃣1️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم في مربع جديد.
إليك بعض الإجابات لهذه الأسئلة:
السؤال 1:
for i in range(1, 11):
print(i)
السؤال 2:
total = 0
for i in range(1, 11):
total += i
print(total)
السؤال 3:
for i in range(2, 101, 2):
print(i)
السؤال 4:
count = 0
for i in range(1, 101):
if i % 2 == 1:
count += 1
print(count)
السؤال 5:
for i in range(1, 101):
if i % 2 == 0:
continue
print(i)
السؤال 6:
for i in range(1, 101):
if i % 2 == 1:
print(i)
السؤال 7:
for i in range(1, 101):
print(i, i)
السؤال 8:
for i in range(1, 101):
print(i)
السؤال 9:
for i in range(1, 101):
print(i, end=" ")
السؤال 10:
for i in range(1, 101):
print(i, end="\n")
1️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 10.
2️⃣ اكتب برنامجًا لحساب مجموع الأرقام من 1 إلى 10.
3️⃣ اكتب برنامجًا لطباعة الأرقام الزوجية من 1 إلى 100.
4️⃣ اكتب برنامجًا لحساب عدد الأعداد الفردية من 1 إلى 100.
5️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع تجاهل الأرقام الفردية.
6️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع تجاهل الأرقام الزوجية.
7️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم مرتين.
8️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم في سطر جديد.
9️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم في عمود جديد.
0️⃣1️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 100، مع طباعة كل رقم في مربع جديد.
إليك بعض الإجابات لهذه الأسئلة:
السؤال 1:
for i in range(1, 11):
print(i)
السؤال 2:
total = 0
for i in range(1, 11):
total += i
print(total)
السؤال 3:
for i in range(2, 101, 2):
print(i)
السؤال 4:
count = 0
for i in range(1, 101):
if i % 2 == 1:
count += 1
print(count)
السؤال 5:
for i in range(1, 101):
if i % 2 == 0:
continue
print(i)
السؤال 6:
for i in range(1, 101):
if i % 2 == 1:
print(i)
السؤال 7:
for i in range(1, 101):
print(i, i)
السؤال 8:
for i in range(1, 101):
print(i)
السؤال 9:
for i in range(1, 101):
print(i, end=" ")
السؤال 10:
for i in range(1, 101):
print(i, end="\n")
❇️ اهم المواقع لحل مسائل Problem Solving : ❇️
❇️موقع Codewars :
codewars.com
❇️موقع LeetCode :
leetcode.com
❇️موقع HackerRank :
hackerrank.com
وده انصح بيه المبتدئين.
❇️موقع Topcoder :
topcoder.com
❇️موقع Coderbyte :
coderbyte.com
❇️موقع Codeforces:
codeforces.com
❇️موقع Codewars :
codewars.com
❇️موقع LeetCode :
leetcode.com
❇️موقع HackerRank :
hackerrank.com
وده انصح بيه المبتدئين.
❇️موقع Topcoder :
topcoder.com
❇️موقع Coderbyte :
coderbyte.com
❇️موقع Codeforces:
codeforces.com
لغة JavaScript تعد من أكثر لغات البرمجة استخداماً في تطوير تطبيقات الويب، وتتميز بقدرتها على التعامل مع العديد من المفاهيم البرمجية الأساسية التي يجب على كل مبرمج إتقانها. يعتبر موقع "JavaScript Is Sexy" مرجعاً مهماً يقدم شرحاً مفصلاً لستة عشر مفهوماً أساسياً يجب معرفتها لإتقان اللغة.
يتناول المقال 16 مفهوماً أساسياً في JavaScript تشمل:
1. النطاقات (Scopes)
2. إغلاق الوظائف (Closures)
3. أنماط البرمجة الكائنية (Object-Oriented Patterns)
4. البرمجة غير المتزامنة (Asynchronous Programming)
5. التوابع (Functions)
6. الأحداث (Events)
7. الوحدات (Modules)
8. الوعد (Promises)
9. البروتوتايب (Prototype)
10. التوريث (Inheritance)
11. الكائنات والأنماط (Objects and Patterns)
12. معالجة الأخطاء (Error Handling)
13. AJAX
14. جافا سكريبت الحديثة (Modern JavaScript)
15. أنماط التصميم (Design Patterns)
16. أداء الكود (Performance)
يتناول المقال 16 مفهوماً أساسياً في JavaScript تشمل:
1. النطاقات (Scopes)
2. إغلاق الوظائف (Closures)
3. أنماط البرمجة الكائنية (Object-Oriented Patterns)
4. البرمجة غير المتزامنة (Asynchronous Programming)
5. التوابع (Functions)
6. الأحداث (Events)
7. الوحدات (Modules)
8. الوعد (Promises)
9. البروتوتايب (Prototype)
10. التوريث (Inheritance)
11. الكائنات والأنماط (Objects and Patterns)
12. معالجة الأخطاء (Error Handling)
13. AJAX
14. جافا سكريبت الحديثة (Modern JavaScript)
15. أنماط التصميم (Design Patterns)
16. أداء الكود (Performance)
عالم برمجةوتقنية الحاسوب C. P. W pinned «0️⃣1️⃣ أسئلة برمجية مبسطة بلغة بايثون: 🔥 1️⃣ اكتب برنامجًا لطباعة الأرقام من 1 إلى 10. 2️⃣ اكتب برنامجًا لحساب مجموع الأرقام من 1 إلى 10. 3️⃣ اكتب برنامجًا لطباعة الأرقام الزوجية من 1 إلى 100. 4️⃣ اكتب برنامجًا لحساب عدد الأعداد الفردية من 1 إلى 100. 5️⃣…»