‏إظهار الرسائل ذات التسميات مكتبة الأكواد. إظهار كافة الرسائل
‏إظهار الرسائل ذات التسميات مكتبة الأكواد. إظهار كافة الرسائل

الخميس، 21 فبراير 2019

الفرق بين int.Parse() و int.TryParse() بلغة C#

من اسئلة الانترفيو للمتقدين لشغل وظيفة مبرمج C# 

ما هو الفرق بين int.Parse() و int.TryParse()

الاجابة :

كلا التعبيرين يستخدمان في تحويل النصوص الى ارقام (طبعا لو ان النص بالكامل مكون من ارقام) ،
ولكن لان بعض خصائص ادوات البرنامج تعطي نصوص حتى لو ان كل النص ارقام مثل خاصية Text في اداة TextBox ،
وبما ان لغة C# لا تفوم بالتحويل التلقائي بين انواع البيانات كلغة VB.net ، فكان من الواجب تحويل القيمة المرسلة من الخاصية الى رقم ليتم استخدامه كرقم.

اذا ما الفرق بين التعبيرين:
الفرق ان التعبير الاول int.Parse() يقوم بالتحويل مباشرة بدون التأكد ان النص المرسل بالكامل ارقام ، وفي حالة ارسال نص مكون من ارقام واحرف او علامات فيعطي البرنامج خطا تشغيل.

اما التعبير الثاني int.TryParse() يتم التحقق من ان النص المرسل بالكامل ارقام ، ويمكنك ارسال رسالة للمستخدم في حالة وجود نص ليس رقم بالكامل.

امثلة 
النص 123 في حالة تحويله
اولا: بالتعبير الاول int.Parse() يتم التحويل كالتالي:
int.Parse("123")
فسيتم ارسال النص بدون مشاكل لان كل النص عبارة عن ارقام
اما لو اردنا عمل تحويل للنص 123abc فلو كتبنا التالي:
int.Parse("123abc ")
فسيعطينا البرنامج خطأ لعدم التمكن من تحويل النص بالكامل الى ارقام

اذن كيف نستخدم التعبير الثاني int.TryParse() للتحقق من النص
نعرف متغير نصي ومتغير رقمي اولا :
string str = "123abc"
int MyVal = 0;

ثم نقوم بعمل متغير bool ونكتب الجملة التالية بحيث لو النص بالكامل ارقام يعطي true اما لو لم يكن ارقام بالكامل يعطي false:

bool MyTest = int.TryParse(str, out MyVal );

لاحظ ان كلمة out ثابتة ولو ان النص بالكامل ارقام سيتم اعطاء القيمة الرقمة في المتغير MyVal  ويمكنك استخدامه في باقي الكود كالتالي:
if(MyTest == true){
        int MyResult = MyVal *2;
}
ويمكن ارسال رسالة للمستخدم في حالة وجود حروف او نصوص غير رقمية في النص في جملة else
if(MyTest == true){
        int MyResult = MyVal *2;
}else{
        MessageBox.Show("النص المدخل غير صالح");
}


الأحد، 29 يوليو 2018

الأربعاء، 7 ديسمبر 2016

محتويات كورس مباديء البرمجة (متوفر بلغتي VB.net و C#)

فيما يلي نستعرض باذن الله محتويات كورس مباديء البرمجة (متوفر بلغتي VB.net و C#)
الكورس يبدأ معك من البداية الى مستوى متقدم في استخدام الكود البرمجي وكيفية كتابته والتفكير فيه
(جاري اعداد كورس متقدم بكلا اللغتين سيكون فيه شرح كامل لمشروع برنامج المخازن مع قاعدة بيانات SQL Server)
أما بالنسبة للكورس الحالي فيشمل المواضيع التالية (الكورس يشمل المشارع التي تم شرحها في الكورس)
(في نهاية المحتويات يوجد فيديو يتناول عرض للمشاريع التي تم تناولها في الكورس

رقم المحاضرة
عنوان المحاضرة بالعربي
عنوان المحاضرة بالانجليزي
زمن المحاضرة VB.net
زمن المحاضرة C#
1
مقدمة وتعريف Visual Studio وفلسفة البرمجة
Introduction to visual studio
1:56 (ساعة وستة وخمسون دقيقة)
1:53
2
المتغيرات الجزء الأول
Variables Part1
1:49
1:38
3
المتغيرات الجزء الثاني
Variables Part2
1:42
1:56
4
جمل الشرط
Conditional statements
2:21
2:08
5
جمل الدوران
Loop statements
2:14
1:31
6
التعامل مع الشاشات / الاجراءات والدوال
Multi Forms / Sub AND Functions / Methods
1:55
1:33
7
مقدمة إلى البرمجة الموجهة بالكائنات
Intro to OOP
1:26
1:32
8
مجالات الأسماء المربعات الحوارية
Name Spaces And Dialogs
1:17
1:23
9
المجلدات والملفات
Directory And Files
1:45
1:44
10
النصوص والقوائم
Strings AND Menus
2:03
1:50
11
الصور واشرطة الأدوات والحاويات وأداة الأخطاء والمؤقت
Images and toolbars and Containers And Errors and timer
1:45
1:43
نهاية الجزء النظري من الكورس وفي التالي المشاريع وفي الفيديو التالي عرض للمشاريع التي تم تناولها في الكورس
12
مشروع ساعة إيقاف ومشروع الآلة الحاسبة المتقدمة
12 Project 1 Stopwatch and Project 2 Caculator
1:12
1:22
13
مشروع توليد رقم عشوائي ومشروع لعبة تخمين الكلمة
Random Numbers And HangMan Game
1:26
1:28
14
مشروع برنامج الموظفين وشرح تجميل المشاريع
Employees Project AND Themes Project
1:24
1:39
15
مشروع منسق الخطوط ومشروع الاتصال السريع بقواعد البيانات
TextEditor Project AND DBProject
1:40
1:41
16
تحزيم المشروع
Deployment
47 دقيقة

إجمالي عدد الساعات
26:42
ستة وعشرون ساعة واثنتان وأربعون دقيقة
 26:48
ستة وعشرون ساعة وثماني وأربعون دقيقة


للاستفسار والحجز:
تليفون
00201061128738

أو برسالة على حسابي على الفيس بوك :





الخميس، 1 ديسمبر 2016

كود عمل علاقة بين جدولين في الداتا سيت dataset

كما نعلم فان DataSet في البرنامج هي مكون بمثابة قاعدة بيانات وهمية يتم عملها مؤقتا اثناء تشغيل البرنامج ليتم الاحتفاظ بها بالبيانات التي يتم تحديدها من قاعدة البيانات الاساسية 
وهذا هو لب الاتصال بالوضع المنفصل
ويمكنك ان تقوم بعمل علاقة بين جدولين في الداتا سيت DataSet كالتالي
في البداية يجب استدعاء المكتبة
System.Data


بلغة VB.net



Dim customersOrdersRelation As New DataRelation("CustomersOrders", _

ds.Customers.Columns("CustomerID"), _
ds.Orders.Columns("CustomerID"))
ds.Relations.Add(customersOrdersRelation)

بلغة C#

DataRelation customersOrdersRelation = new DataRelation(("CustomersOrders", ds.Customers.Columns("CustomerID"), ds.Orders.Columns("CustomerID"));

ds.Relations.Add(customersOrdersRelation);




كود التحقق من اتصال جهازك بالشبكة

 كود التحقق من اتصال جهازك بالشبكة

بلغة VB.net


If My.Computer.Network.IsAvailable = True Then

MsgBox("متصل بالشبكة")
Else
MsgBox("غير متصل بالشبكة")
End If


بلغة C#


if (System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable() == true)

{
MessageBox.Show("متصل بالشبكة");
}else{
MessageBox.Show("غير متصل بالشبكة");
}



عمل ترتيب Sort لعناصر المصفوفة


كلنا نعلم المصفوفات واهميتها في العمل 
ولمن يريد معرفة المزيد عن المصفوفات يشاهد الدرس التالي



الكود التالي لعمل ترتيب Sort لعناصر المصفوفة


بلغة VB.net



Dim MyArr As String() = {"Mohamed", "Ahmed", "Ali", "Mahmoud"}
Array.Sort(MyArr)
For i As Integer = 0 To MyArr.Length - 1
MsgBox(MyArr(i))
Next


بلغة C#


string[] MyArr={ "Mohamed", "Ahmed", "Ali", "Mahmoud" };
Array.Sort(MyArr);
for (int i = 0; i < MyArr.Length; i++)
{
MessageBox.Show(MyArr[i]);
}




كود الحصول على اسم مستخدم الجهاز

 كود الحصول على اسم مستخدم الجهاز

VB.net


Dim username As String = My.User.Name

MsgBox(username)


C#


string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;

MessageBox.Show(userName);



كود توليد رقم عشوائي


كود توليد رقم عشوائي

ملاحظة الكود لتوليد رقم بين 10 و 100
ويمكنك تغيير القيم كما تريد 

VB.net



Dim generator As New Random

Dim randomValue As Integer
randomValue = generator.Next(10, 100)


C#

Random generator = new Random();

int randomValue;
randomValue = generator.Next(10, 100);