خروجی
کلمه بین گیومهها را عوض کنید و صفحه همراهش عوض میشود. نوع آموزشی هنوز Pine است و فراخوانی نوشتن هنوز Console.WriteLine. دفعهٔ قبل گیومهها pine داشتند، پس صفحه pine بود. کلمهٔ دیگری بین همان گیومهها بگذارید، خط نوشتن دوم اضافه کنید، و بعد ببینید وقتی خط نوشتن خط را تمام نمیکند صفحه چه میکند. دوباره SDK را نصب نمیکنید. یادداشتهای صفحهٔ قبل در این دمو نیستند مگر خودتان برگردانیدشان.
کلمه بین گیومهها
فایل Pine را باز کنید و Console.WriteLine("pine"); را پیدا کنید. صفحه کلمه بین گیومهها را نشان میدهد. خود گیومهها حرف صفحه نیستند. جایی که آن کلمه شروع و تمام میشود را علامت میزنند. کلمه را عوض کنید. بقیهٔ خط را همان بگذارید: Console.WriteLine بماند، گیومهٔ باز بماند، گیومهٔ بسته بماند، سمیکالن بماند. فقط حرفهای بین گیومهها عوض میشوند. جایی که فایل pine داشت، leaf بنویسید، همه با حرف کوچک. خط حالا Console.WriteLine("leaf"); است. فایل را ذخیره کنید. نام کلاس هنوز Pine است چون خط public class Pine هنوز نوع را نام میگذارد. این صفحه نوع را عوض نام نمیکند.
فایلی که نگه میدارید
این شکل آموزشی را نگه دارید. یک خط نوشتن دارد و آن خط بین گیومهها leaf دارد. در این فایل یادداشت نیست. هنوز خط نوشتن دوم نیست.
using System;
public class Pine
{
public static void Main()
{
Console.WriteLine("leaf");
}
}
از بالا بخوانید و تصمیم بگیرید صفحه چه چیزی میتواند بگیرد. خط using System; نامهای کوتاه را آماده میکند و صفحه را نمینویسد. خط کلاس public class Pine است. آن خط نوع را نام میگذارد. صفحه را نمینویسد. خط بعد public static void Main() است. runtime از اینجا شروع میکند. هیچکدام از آن کلمهها حرف صفحه نیستند. داخل Main یک فرمان هست: Console.WriteLine("leaf");. Console.WriteLine فرمان نوشتن است. گیومهها leaf دارند. سمیکالن فرمان را تمام میکند. runtime آن فرمان را اجرا میکند چون داخل Main است و پشت // نیست. صفحه leaf را میگیرد. گیومه، سمیکالن، کلمهٔ Console یا Main را نمیگیرد.
با dotnet run در پوشهٔ پروژه اجرا کنید. صفحه leaf نشان میدهد. یک خط. بدون گیومه. بدون سمیکالن. کلمهٔ pine روی صفحه نیست، چون دیگر بین گیومهها نیست. اگر صفحه هنوز pine نشان میدهد، گیومهها هنوز pine دارند. قبل از اجرای دوباره به حرفهای بین گیومهها نگاه کنید. برای صفحهای که هنوز pine میگوید دوباره .NET SDK را نصب نمیکنید.
صفحه حرفهای بین گیومهها را کپی میکند، همانطور که هستند. Console.WriteLine("Leaf"); مقدار Leaf با L بزرگ مینویسد. Console.WriteLine("leaf"); مقدار leaf با l کوچک مینویسد. فایلی که نگه میدارید l کوچک دارد، پس صفحهاش leaf است نه Leaf. فاصله هم حرفی است که صفحه میتواند نشان دهد، اگر فاصله را داخل گیومه تایپ کنید. Console.WriteLine("leaf stem"); یک خط مینویسد: leaf stem، با همان فاصلهای که بین دو کلمه گذاشتید. گیومهها هنوز ظاهر نمیشوند. این یک خط نوشتن است، پس یک خط صفحه است، حتی اگر دو کلمه داخلش باشد. جفت گیومهٔ خالی فرق دارد. Console.WriteLine(""); خطی بدون حرف مینویسد و بعد آن خط را تمام میکند. صفحه خالی به نظر میرسد. فرمان اجرا شد. گیومهها فقط چیزی نداشتند. آن خط خالی فایل نگهداشته نیست. فایل نگهداشته leaf دارد.
خط دوم
یک خط نوشتن یک خط صفحه میدهد. خط صفحهٔ دوم به خط نوشتن دوم نیاز دارد. زیر Console.WriteLine("leaf"); مقدار Console.WriteLine("stem"); را اضافه کنید. هر فرمان گیومه و سمیکالن خودش را دارد. leaf در جفت اول میماند. stem با حرف کوچک در جفت دوم میرود. runtime فرمان اول را اجرا میکند، آن خط را تمام میکند، بعد فرمان دوم را اجرا میکند و آن خط را هم تمام میکند. ترتیب صفحه ترتیب فایل است. فرمانی که اول نوشتید خطی است که صفحه اول نشان میدهد.
این فایل دوم است. دارید دو خط صفحه میبینید. فایلی که نگه میداشتید یک خط نوشتن داشت و صفحه leaf بود. این یکی دو خط نوشتن دارد. وقتی میخواهید این صفحه را ببینید از آن استفاده کنید، بعد اگر فایل نگهداشتهٔ این درس را میخواهید خط نوشتن تکی را برگردانید.
using System;
public class Pine
{
public static void Main()
{
Console.WriteLine("leaf");
Console.WriteLine("stem");
}
}
dotnet run بزنید. صفحه leaf نشان میدهد و خط بعد صفحه stem است. دو خط. leaf بالاست چون Console.WriteLine("leaf"); اولین فرمان نوشتن است. stem زیر آن است چون Console.WriteLine("stem"); دومی است. گیومه روی هیچ خطی نیست. اگر stem بالا و leaf پایین باشد، دو خط نوشتن در فایل همان ترتیب جابهجا را دارند. صفحه ترتیب خودش را انتخاب نمیکند. فرمان stem را دوباره زیر leaf ببرید، ذخیره کنید، دوباره اجرا کنید. برای خط دوم به نوع فرمان تازه نیاز ندارید. به Console.WriteLine دوم نیاز دارید، با کلمهٔ خودش بین گیومههای خودش.
Write خط را تمام نمیکند
به پایان فرمان نوشتنی که استفاده میکردید نگاه کنید. WriteLine با حروف Line تمام میشود. آن حرفها پایان خطاند. فرمان حرفهای بین گیومه را مینویسد و بعد خط را تمام میکند، پس فرمان نوشتن بعدی از خط تازه شروع میکند. Write همان کمککنندهٔ نوشتن بدون آن حرفهاست. Console.Write("leaf"); مقدار leaf را مینویسد و خط را تمام نمیکند. Console.Write بعدی از جایی که آن کلمه ایستاد شروع میکند. هیچچیز در فرمان برای شما فاصله نمیگذارد. اگر جفت اول leaf و جفت دوم stem داشته باشد و هیچکدام فاصله نداشته باشد، صفحه leafstem را بهعنوان یک خط نشان میدهد.
این فایل سوم است. فایلی که نگه میدارید نیست. آنقدر نگه دارید که خط تکی leafstem را ببینید. هر دو فرمان Write هستند، نه WriteLine. داخل هیچ جفت گیومه فاصله نیست.
using System;
public class Pine
{
public static void Main()
{
Console.Write("leaf");
Console.Write("stem");
}
}
dotnet run بزنید. صفحه leafstem نشان میدهد. یک خط. بدون فاصله بین leaf و stem. بدون گیومه. leaf هنوز اول است چون Console.Write("leaf"); فرمان اول است، و stem بعد از آن چسبیده چون Console.Write("stem"); خط تازه شروع نمیکند. اگر leaf و بعد stem روی خط دوم ببینید، فرمانهای فایل WriteLine هستند نه Write. حروف Line هنوز روی فرماناند، پس هر فرمان خطش را تمام کرده. اگر صفحهٔ موردنظر کلمهٔ تکی leafstem است، Line را از هر دو فرمان بردارید.
برنامه leafstem را مینویسد و بدون تمام کردن خط تمام میشود. ترمینال ممکن است اعلان خودش را روی همان خط، بعد از leafstem، بکشد. اعلان مال ترمینال است. کلمه از فایل Pine نیست و بخشی از خطی که چک میکنید نیست. حرفهای بین گیومه را چک کنید: leafstem. سعی نکنید اعلان را جور کنید. Windows و macOS اعلانهای مختلف میکشند و این صفحه آن اعلانها را یاد نمیدهد. خط برنامه روی هر دو یکی است: leafstem، بدون پایان خط بعد از آن.
فاصله باید داخل گیومه باشد
اگر روی همان خط فاصله میخواهید، فاصله باید یکی از حرفهای بین گیومه باشد. فرمان نوشتن آن را اختراع نمیکند. فرمان اول را به Console.Write("leaf "); با فاصله بعد از f، هنوز داخل گیومه، عوض کنید. فرمان دوم را Console.Write("stem"); بگذارید. C# اول leaf مینویسد، بعد فاصلهای که بعد از f گذاشتید، بعد stem، و هنوز خط را تمام نمیکند. صفحه leaf stem نشان میدهد. فاصلهای که میبینید همان فاصله داخل گیومهٔ اول است. فاصلهای که بیرون گیومه، بین دو فرمان، تایپ میکنید فقط شکاف فایل است. حرف صفحه نیست. میتوانید دو فرمان را در فایل روی دو خط بشکنید، یا بینشان خط خالی بگذارید، و صفحه هنوز یک خط است. شکست خط در فایل پایان خط صفحه نیست. فقط فرمان پایانخط، WriteLine، خط صفحه را تمام میکند. Write هرگز تمام نمیکند، هرطور فایل دورش فاصله داشته باشد.
اشتباهی که گیومه را برمیدارد
کلمهای که صفحه نشان میدهد باید بین گیومه بنشیند. اشتباه این است که گیومه را حذف کنید و کلمه را برهنه بگذارید: Console.WriteLine(leaf);. leaf بدون گیومه کلمهٔ صفحه نیست. C# آن را بهعنوان نام میخواند و این فایل هنوز آن نام را ندارد. صفحهٔ بعد دربارهٔ نامهاست. این صفحه روی گیومه میایستد. این شکل چهارم را فقط آنقدر نگه دارید که ببینید ساخت آرام نمیماند، بعد گیومه را برگردانید. این فایلی نیست که نگه میدارید.
using System;
public class Pine
{
public static void Main()
{
Console.WriteLine(leaf);
}
}
dotnet run بزنید یا پروژه را بسازید. اینبار کامپایلر خطا مینویسد. آرام نمیماند. فایل خوب نیست، چون leaf گیومه ندارد و هنوز در این فایل معنی ندارد. به عین کلمات آن خطا نیاز ندارید. واقعیت مفید این است که ساخت اصلاً خط نوشته. وقتی ساخت خطا مینویسد، تا فایل دوباره خوب نشود به صفحهٔ تازه اعتماد نکنید. گیومه را برگردانید تا خط دوباره Console.WriteLine("leaf"); شود. ذخیره کنید. دوباره اجرا کنید. حالا ساخت برای اجرا آرام میماند و صفحه leaf نشان میدهد. گیومه کل تعمیر بود. SDK را دوباره نصب نمیکنید و خط نوشتن را حذف نمیکنید. خط نوشتن بدون گیومه صفحهٔ خالی ناشی از یادداشت نیست. یادداشت ساخت را آرام میگذاشت. این اشتباه کامپایلر را به حرف میآورد. عادتهای باقیماندهٔ Java با System.out.println را اینجا به Console.WriteLine و System.out.print را به Console.Write نگاشت کنید. ساختن مسیرهای ASP.NET را از این صفحه دور نگه دارید.
صفحه همان کلمهٔ گیومهدار است
حالا میتوانید با عوض کردن حرفهای بین گیومه صفحه را عوض کنید. Console.WriteLine("leaf"); مقدار leaf را مینویسد و خط را تمام میکند. Console.WriteLine دوم خط بعد را مینویسد، به ترتیبی که فرمانها را در فایل نوشتید. Console.Write حرفهایش را مینویسد و خط را تمام نمیکند، پس Write بعدی روی همان خط ادامه میدهد، و فاصله فقط وقتی ظاهر میشود که داخل گیومه بگذارید. اگر ساخت روی کلمهٔ برهنه خطا بنویسد، گیومه کم است. وقتی از دیدن leafstem فارغ شدید فایل را به نگهداشته برگردانید. خط نوشتن در فایل نگهداشته Console.WriteLine("leaf"); است و خط نوشتن دوم نیست. صفحهٔ بعد به کلمه نام میدهد تا خط نوشتن بتواند آن نام را بهجای فقط کلمهٔ گیومهدار استفاده کند.
🧠 دانش خود را بیازمایید
دانش خود را بیازمایید
خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کردهاید
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود