لسا مخلص الفيديو وحقيقي فرحان جدا اني لقيت محتوى عربي ب التفاصيل الدقيقة دي , أي حد من معارفي لو حد فيهم حابب ال C# في بداية ترشيحاتي ليهم هتبقى القناة دي ان شاء الله تحياتي ❤
جزاك الله خيرا فديو مهم جدا جدا و خصوصا آخر تلات دقايق الجزء الخاص بال string بس كنت محتاج حضرتك تشرح تفاصيل اكثر عن ال string اتمنى تعمل فديو خاص للجزئية دى
جمال والله خصوصاً نقطة ال string اللي في الأخر دي معلومة خطيرة فعلاً بغض النظر اني معرفش تفاصيل الموضوع و الميموري لكن استشعرت من كلامك خطورة الموضوع واني لو ماخدتش بالي من نقطة ال string أداء البرنامج او استهلاكة لموارد الجهز هتكون كارثية
كنت ناوي أبدأ .Net وسمعت كم واحد أجنبي عجبني شرحهم بس حسيتهم بيتجاهلوا تفاصيل كثير ومهمة لما لقيتك فرحت جدا والله ف جزاك الله خيرا .. ثانيا هو مش ال Array دا بيتخزن في الستاك علشان ما كتبناش = new .. ؟ ولا الدنيا في ال C# مختلفة؟
لوتفضلت يبشمهندس ,حضرتك قلت ان string هو ref Type انا عرفت string واديته قيمه وعملت دالة تعدل عليه وبعدين رجعت طبعته , اطبعت القيمة القديمة فممكن توضيح اي الي حصل؟؟
الحمد لله توصلت للحل , حضرتك نوهت عنه ف الفيديو وهو ال strings are immutable غير قابله للتغيير , انت لما بتعرف string وتديله قيمة وبعدين تبعته ل function وتعدل عليه , الي بيحصل انه التعديل ده بيتخزن في مكان تاني ف الميموري ومفيش حاجة بتحصل علي المتغير الاصلي , وانت لو عايز انك تعدل علي المتغير الاصلي , فبتبعته by ref اتمني اكون فاهم صح؟ وجزاك الله كل خير
بالنسبة للReference types العنوان بيتخزن في الstack انما القيم بتتخزن في الheap
الheap دا بقا بيتخزن فيه القيم متتالية + Length بتاع الArray مثال: ;int[] numbers = {1, 5, 2} * الstack بيتخزن فيه قيمة واحدة فقط ألا وهي location اول قيمة متخزنة في الheap * الheap بيشيل 4 قيم متتالية: - رقم 3 اللي هو الLength بتاع الArray اللي اسمه number ودي القيمة اللي بيتخزن الlocation بتاعها في الstack - الرقم 1 - الرقم 5 - الرقم 2
فايدة تخزين الLength ان كل ما احب اعرف length الArray يبقا فيه قيمة جاهزة اعرف فيه الlength قد اي مش كل مرة هعد العناصر اللي فيه ونفس اللي بيحصل في الArray بيحصل في الstring
سؤال اذا سمحت .. هو ايه سبب انه الdata type بتتخزن بال stack اما ال array بتتخزن بال heap ؟ طيب ما هما التنين عبارة عن data type . يعني ال array نوع من أنواع الdata type ! بكل الاحوال شكرا جزيلا لمجهودك الكبير ...بارك الله فيك
ال array هي data structure وليست data type أحد أسباب تخزين ال value types في ال stack هو أن معظمها يحجز مساحة محددة ومعروفة وصغيرة إلى حد ما وده بيسهل عملية تخزينها واسترجاعها من ال stack بشكل أسرع أما ال heap بيستخدم في تخزين ال dynamically-allocated objects يعني ال objects الغير معلوم حجمها مسبقا وقد يتغير حجمها بتغير البيانات اللي فيها زي ال array وال classes بشكل عام
اللي يتخزن في لستاك Pointer يحتوي على Address الخاص باول عنصر ب Array في heap وعن طريق address اول عنصر نقدر نوصل لباقي العناصر الارراي لانها تتخزن بشكل متجاور في الذاكرة وكل Reference type اللي يتخزن في الهيب هو الاوبجكت واللي يتخزن في لستاك هو pointer يحتوي على address هدا الاوبجكت عشان ايأشر عليه معلوماتي صح ولا فيها خطأ مهندس
@@PassionateCoders علي فكرة يهندسة انا عدت الفيديو اكتر من مرة عشان استمتع بكمية المعلومات اللي الواحد استفادها من حضرتك مع ان نفس الموضوع ده درسناه في الكلية الترم ده بس الدكتور كروت الشرح شكرا يهندسة على الشرح الجميل الوافي وربنا يجعله في ميزان حسناتك والحمد لله انا فهمت الفيديو كاملا بعد شوية بحث بسيط عن ال stack and heap
من اهم الفيديوهات التي رايتها في المجال عموما , جزاك الله خير
18:36 هنا يأتي دور StringBuilder class
لسا مخلص الفيديو وحقيقي فرحان جدا اني لقيت محتوى عربي ب التفاصيل الدقيقة دي , أي حد من معارفي لو حد فيهم حابب ال C# في بداية ترشيحاتي ليهم هتبقى القناة دي ان شاء الله
تحياتي ❤
جزاك الله خيرا
فديو مهم جدا جدا و خصوصا آخر تلات دقايق الجزء الخاص بال string
بس كنت محتاج حضرتك تشرح تفاصيل اكثر عن ال string
اتمنى تعمل فديو خاص للجزئية دى
الحمد الله بعد بحث وسماع الفيديو فهمت الدرس ربنا يباركلك ياساذ محمد
كنت لسه ها اسأل على string لقيتك بتشرحه بجد شغل عالي
كلام مهم جدا شكرا يا هندسة ربنا يجعله في ميزان حسناتك يارب
ربنا يجازيك بالخير فى حياتك
ماشاء الله عليك يا هندسه ربنا يجازي حضرتك خير يارب ♥️♥️
شرح روعة... شكرا لك وبارك الله فيك.(تعرفت على فيديوهاتك من صفحة الزيرو على الفيس)
جمال والله خصوصاً نقطة ال string اللي في الأخر دي معلومة خطيرة فعلاً بغض النظر اني معرفش تفاصيل الموضوع و الميموري لكن استشعرت من كلامك خطورة الموضوع
واني لو ماخدتش بالي من نقطة ال string أداء البرنامج او استهلاكة لموارد الجهز هتكون كارثية
دايما بنستفيد من حضرتك ..شكرااا
عظيم♥
ربنا يباركلك ياهندسه ويجازيك خير يارب ♥
ربنا يباركلك ياهندسه ويجازيك خير يارب
جزاك الله كل خير ونفع بك 🤎
great job keep going 💯
اسطورة ما شاء الله♥
بارك الله فيك يا هندسة وجزاك الله خيرا
ربنا يجازيك كل خير يا رب
الله أكبر الله أكبر الله أكبر ولله الحمد ❤
شرحك فوق الممتاز
ربنا يبارك فيك ياهندسة
بارك الله فيك
رجاءً رجاءً رجاءً استمررررررررررررررررررر
نصيحه شوف الفيديو اكتر من مره , مهم جدا
كنت ناوي أبدأ .Net وسمعت كم واحد أجنبي عجبني شرحهم بس حسيتهم بيتجاهلوا تفاصيل كثير ومهمة لما لقيتك فرحت جدا والله
ف جزاك الله خيرا ..
ثانيا
هو مش ال Array دا بيتخزن في الستاك علشان ما كتبناش = new .. ؟
ولا الدنيا في ال C# مختلفة؟
اللي فهمته من حضرتك انه ال pointer متخرن في الستاك لكن الداتا نفسها في ال Heap
هل دا في كل الحالات؟
لوتفضلت يبشمهندس ,حضرتك قلت ان string هو ref Type
انا عرفت string واديته قيمه وعملت دالة تعدل عليه
وبعدين رجعت طبعته , اطبعت القيمة القديمة
فممكن توضيح اي الي حصل؟؟
الحمد لله توصلت للحل , حضرتك نوهت عنه ف الفيديو وهو ال strings are immutable غير قابله للتغيير , انت لما بتعرف string وتديله قيمة وبعدين تبعته ل function وتعدل عليه , الي بيحصل انه التعديل ده بيتخزن في مكان تاني ف الميموري ومفيش حاجة بتحصل علي المتغير الاصلي , وانت لو عايز انك تعدل علي المتغير الاصلي , فبتبعته by ref
اتمني اكون فاهم صح؟
وجزاك الله كل خير
صحيح
string is an immutable ref type
وبالتالي التعديل عليه بينشئ فيمة جديدة كأنه value type
كان عندي سؤال بخصوص ال Reference types عنوان الذاكرة بيتخزن في ال heap و القيمة بتتخزن في ال stack و لا الاثنين بيتخزنوا في ال heap ؟
بالنسبة للReference types العنوان بيتخزن في الstack انما القيم بتتخزن في الheap
الheap دا بقا بيتخزن فيه القيم متتالية + Length بتاع الArray
مثال:
;int[] numbers = {1, 5, 2}
* الstack بيتخزن فيه قيمة واحدة فقط ألا وهي location اول قيمة متخزنة في الheap
* الheap بيشيل 4 قيم متتالية:
- رقم 3 اللي هو الLength بتاع الArray اللي اسمه number ودي القيمة اللي بيتخزن الlocation بتاعها في الstack
- الرقم 1
- الرقم 5
- الرقم 2
فايدة تخزين الLength ان كل ما احب اعرف length الArray يبقا فيه قيمة جاهزة اعرف فيه الlength قد اي مش كل مرة هعد العناصر اللي فيه
ونفس اللي بيحصل في الArray بيحصل في الstring
@@ahmedtalat4420 شكرا لحضرتك يا بشمهندس
جزاك الله خير ياهندسة سؤال بس معلش
- هل زيادة حجز مساحات كتير داخل ال heap ممكن يأثر بالسلب على ال performance بتاع ال execution، وليه ؟
السؤال ده محتاج تفصيل، هاشرحه في درس الفرق بين الstack والheap
❤
وبالنسبة ل out حضرتك متكملتش عنها هل ليها استخدامها ضرورى
فيه درس جاي عنها ان شاء الله
سؤال اذا سمحت .. هو ايه سبب انه الdata type بتتخزن بال stack اما ال array بتتخزن بال heap ؟ طيب ما هما التنين عبارة عن data type . يعني ال array نوع من أنواع الdata type !
بكل الاحوال شكرا جزيلا لمجهودك الكبير ...بارك الله فيك
ال array هي data structure وليست data type
أحد أسباب تخزين ال value types في ال stack هو أن معظمها يحجز مساحة محددة ومعروفة وصغيرة إلى حد ما وده بيسهل عملية تخزينها واسترجاعها من ال stack بشكل أسرع أما ال heap بيستخدم في تخزين ال dynamically-allocated objects يعني ال objects الغير معلوم حجمها مسبقا وقد يتغير حجمها بتغير البيانات اللي فيها زي ال array وال classes بشكل عام
@@PassionateCoders شكرا ع الرد جزيل الشكر.. بارك الله فيك أستاذنا الفاضل
اللي يتخزن في لستاك Pointer
يحتوي على Address الخاص باول عنصر ب Array في heap
وعن طريق address اول عنصر
نقدر نوصل لباقي العناصر الارراي لانها تتخزن بشكل متجاور في الذاكرة
وكل Reference type
اللي يتخزن في الهيب هو الاوبجكت واللي يتخزن في لستاك هو pointer يحتوي على address هدا الاوبجكت
عشان ايأشر عليه
معلوماتي صح ولا فيها خطأ مهندس
نعم صحيح
5:55
قولي ابعتلك عربية بطيخ يا هندسة بس مش مسئول لو فيهم حاجة قرعة😅
ياعم أي حاجة بتمشي ابعت انت بس وانا هازرعله شعر 😅
@@PassionateCoders علي فكرة يهندسة انا عدت الفيديو اكتر من مرة عشان استمتع بكمية المعلومات اللي الواحد استفادها من حضرتك مع ان نفس الموضوع ده درسناه في الكلية الترم ده بس الدكتور كروت الشرح
شكرا يهندسة على الشرح الجميل الوافي وربنا يجعله في ميزان حسناتك والحمد لله انا فهمت الفيديو كاملا بعد شوية بحث بسيط عن ال stack and heap