20 (آسان) پرسش و پاسخ مصاحبه C# (2023)

به این سری جدید از مقالات خوش آمدید. اگر در حال خواندن این مطلب هستید، به این معنی است که شما در حال تمرین برای مصاحبه هستید؟ یادگیری چیزهای جدید؟ مسواک زدن در مورد آنچه شما در حال حاضر می دانید؟
هر چه! در این سری از مقالات پرسشها و پاسخهای مصاحبه سی شارپ، تمام سطوح تجربه را خواهید یافت تا بتوانید مفاهیم را مرور کنید و چیزهای جدیدی یاد بگیرید.
این بار به 20 ساده ترین پرسش و پاسخ مصاحبه سی شارپ می پردازیم. بیا شروع کنیم!
C# مخفف چیست؟
پاسخ
C# (تلفظ می شود به عنوان “C-sharp”) پس از یک نت موسیقی نامگذاری شده است، که در آن نماد “تیز” نشان می دهد که یک نت باید یک نیم صدای بالاتر نواخته شود. این یک قیاس از زبان برنامه نویسی C++ است که به این معنی است که C# نسخه پیشرفته و پیشرفته تر زبان C++ است.
کدام شرکت C# را توسعه داده است؟
پاسخ
مایکروسافت شرکتی است که زبان برنامه نویسی سی شارپ را توسعه داده است.
سی شارپ چه نوع زبانی است؟
پاسخ
سی شارپ یک زبان برنامه نویسی سطح بالا و چند پارادایم است، به این معنی که پارادایم های برنامه نویسی مختلفی مانند برنامه نویسی رویه ای، شی گرا و تابعی را در خود جای داده است. این یک زبان استاتیک تایپ شده و مدیریت شده است، به این معنی که انواع داده های متغیر در زمان کامپایل بررسی می شوند و C# از یک جمع کننده زباله برای مدیریت حافظه استفاده می کند.
سی شارپ در چه سالی منتشر شد؟
پاسخ
سی شارپ در سال 2000 منتشر شد.
آیا می توانید سازنده زبان سی شارپ را نام ببرید؟
پاسخ
Anders Hejlsberg خالق زبان سی شارپ است. او یک مهندس نرم افزار برجسته از دانمارک است که در توسعه زبان هایی مانند دلفی و تایپ اسکریپت نیز مشارکت داشته است.
کلمه کلیدی برای افزودن نظر در کد سی شارپ چیست؟
پاسخ
دو نوع کامنت در سی شارپ وجود دارد:
- نظرات تک خطی: برای ایجاد یک نظر تک خطی، از اسلش های دوبل رو به جلو (//) و سپس نظر خود استفاده کنید.
// This is a single-line comment
- نظرات چند خطی: برای ایجاد یک نظر چند خطی، از اسلش جلو و ستاره استفاده کنید(/) در ابتدا و علامت ستاره و اسلاید رو به جلو (/) در انتهای نظر.
/* This is a
multi-line
comment */
دستور ‘foreach’ چه نوع حلقه ای در سی شارپ ایجاد می کند؟
پاسخ
دستور ‘foreach’ در سی شارپ یک حلقه ایجاد می کند که روی یک مجموعه یا یک آرایه تکرار می شود. این به شما امکان می دهد بدون استفاده از متغیر شاخص با هر عنصر در مجموعه یا آرایه کار کنید.
string[] names = { "John", "Jane", "Doe" };
foreach (string name in names)
{
Console.WriteLine(name);
}
در این مثال، حلقه foreach از طریق آرایه “names” تکرار می شود و هر نام را در کنسول چاپ می کند.
آیا می توانید یک محیط توسعه یکپارچه C# (IDE) را نام ببرید؟
پاسخ
Visual Studio یک IDE پرکاربرد برای توسعه C# است. این توسط مایکروسافت توسعه یافته است و ویژگی ها و ابزارهای متعددی را برای توسعه کارآمد، آزمایش و اشکال زدایی برنامه های C# ارائه می دهد. برخی از جایگزین های ویژوال استودیو عبارتند از Visual Studio Code و JetBrains Rider.
پسوند فایل برای فایل های کد منبع سی شارپ چیست؟
پاسخ
فایل های کد منبع سی شارپ دارای پسوند فایل “.cs” هستند.
چگونه می توان یک متغیر را در سی شارپ اعلام کرد؟
پاسخ
برای اعلام یک متغیر در سی شارپ، اگر میخواهید متغیر را با مقداری در اعلان مقداردهی اولیه کنید، باید نوع داده و نام متغیر و عملگر تخصیص (=) را مشخص کنید. در اینجا یک مثال است:
int age = 25;
string name = "John Doe";
bool isRegistered = true;
در این مثال، ما سه متغیر را با انواع داده های مختلف اعلام و مقداردهی اولیه می کنیم: int (عدد صحیح)، رشته (متن) و bool (بولی).
سینتکس برای تعریف کلاس در سی شارپ چیست؟
پاسخ
یک کلاس را می توان با استفاده از C# تعریف کرد class
کلمه کلیدی به دنبال نام کلاس و یک جفت بریس فرفری که تعریف کلاس را در بر می گیرد. در اینجا دستور کلی برای تعریف کلاس در سی شارپ آمده است:
[access_modifier] class ClassName
{
// Class members (fields, properties, methods, events, etc.)
}
به عنوان مثال، برای ایجاد یک ساده Person
کلاس، نحو زیر را می توان استفاده کرد:
public class Person
{
// Fields, properties, methods, events
}
چگونه می توان یک شی از یک کلاس را در سی شارپ نمونه سازی کرد؟
پاسخ
برای نمونه سازی یک شی از یک کلاس در سی شارپ، از عبارت استفاده کنید new
کلمه کلیدی به دنبال نام کلاس و یک جفت پرانتز برای فراخوانی سازنده. نحو کلی برای ایجاد یک شی به شرح زیر است:
ClassName objectName = new ClassName();
به عنوان مثال، برای ایجاد یک شی از Person
کلاس:
Person personObj = new Person();
متد print() در سی شارپ برای چیست؟
پاسخ
وجود ندارد print()
روش در سی شارپ در عوض، ما از Console.WriteLine()
یا Console.Write()
روش های خروجی متن به پنجره کنسول
-
Console.WriteLine()
: متن یا مقدار متغیر مشخص شده را به دنبال آن یک خط جدید می نویسد. -
Console.Write()
: متن یا مقدار متغیر مشخص شده را بدون اضافه کردن خط جدید می نویسد.
مثال:
Console.WriteLine("Hello, World!"); // Prints "Hello, World!" and moves to the next line
Console.Write("Hello, "); // Prints "Hello, " without moving to the next line
Console.WriteLine("World!"); // Prints "World!" and moves to the next line
هدف از متد Main() در سی شارپ چیست؟
پاسخ
این Main()
متد در سی شارپ به عنوان نقطه ورود برنامه عمل می کند. هنگامی که یک برنامه شروع به اجرا می کند، Main()
متد اولین متدی است که فراخوانی می شود. معمولاً حاوی کدی است که برنامه را شروع کرده و رفتار آن را مقداردهی اولیه می کند.
این Main()
روش را می توان با امضاهای مختلفی تعریف کرد، از جمله:
static void Main();
static void Main(string[] args);
static int Main();
static int Main(string[] args);
- روش باید باشد
static
و نوع بازگشتی از هر دو را داشته باشندvoid
یاint
. - اختیاری
string[] args
پارامتر برای ارسال آرگومان های خط فرمان به برنامه استفاده می شود.
نمونه ای از یک پایه Main()
روش:
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
چگونه می توان یک کامنت تک خطی در سی شارپ ایجاد کرد؟
پاسخ
برای ایجاد یک کامنت تک خطی در سی شارپ، از اسلش دوبل رو به جلو استفاده کنید //
. متنی که به دنبال اسلش دوتایی به جلو در همان خط می آید، به عنوان یک نظر تلقی می شود و توسط کامپایلر نادیده گرفته می شود.
مثال:
// This is a single-line comment
int x = 5; // This is also a single-line comment
کدام کلمه کلیدی برای ایجاد یک تابع در سی شارپ استفاده می شود؟
پاسخ
در سی شارپ، کلمه کلیدی void
یا یک نوع داده (مانند int
، float
، string
و غیره) برای ایجاد یک تابع استفاده می شود. تابع یک بلوک کد نامگذاری شده است که وظیفه خاصی را انجام می دهد و می تواند مقداری را برگرداند.
در اینجا سینتکس کلی برای اعلان یک تابع در سی شارپ آمده است:
[access_modifier] return_type FunctionName(parameters)
{
// Function body
}
-
access_modifier
: اختیاری. نمایان بودن تابع را تعیین می کند (به عنوان مثال،public
،private
،protected
،internal
). -
return_type
: نوع داده مقداری که تابع برمی گرداند. استفاده کنیدvoid
اگر تابع هیچ مقداری را برنگرداند. -
FunctionName
: نام تابع. -
parameters
: اختیاری. لیستی از مقادیر ورودی (آگومان ها) به تابع ارسال می شود.
مثال:
public int AddTwoNumbers(int num1, int num2)
{
return num1 + num2;
}
چگونه می توان یک آرایه در سی شارپ ایجاد کرد؟
پاسخ
در سی شارپ، آرایه ها با استفاده از نوع داده و به دنبال آن براکت ها ایجاد می شوند []
. برای ایجاد یک آرایه، باید نوع داده، اندازه، و (به صورت اختیاری) عناصر آن را در طول مقداردهی اولیه مشخص کنید.
چندین راه برای ایجاد آرایه در سی شارپ وجود دارد:
- یک آرایه را اعلام کنید و سپس عناصر آن را مقداردهی اولیه کنید:
int[] myArray = new int[5]; // Creates an array of 5 integers
myArray[0] = 1;
myArray[1] = 2;
myArray[2] = 3;
myArray[3] = 4;
myArray[4] = 5;
- به طور مستقیم یک آرایه را با عناصر مقداردهی اولیه کنید:
int[] myArray = new int[] { 1, 2, 3, 4, 5 };
- یک نحو کوتاهتر برای مقداردهی اولیه یک آرایه با عناصر:
int[] myArray = { 1, 2, 3, 4, 5 };
چگونه مقدار یک متغیر را مقداردهی اولیه می کنید؟
پاسخ
برای مقداردهی اولیه یک متغیر در سی شارپ، ابتدا آن را با استفاده از نوع داده و سپس نام متغیر اعلام کنید. سپس با استفاده از عملگر انتساب مقداری را تعیین کنید =
.
در اینجا نحو کلی برای مقداردهی اولیه یک متغیر آمده است:
data_type variable_name = value;
مثال ها:
int age = 30; // Initialize an integer variable
float price = 19.99f; // Initialize a float variable
string name = "John"; // Initialize a string variable
کلاس پایه برای همه کلاس های سی شارپ چیست؟
پاسخ
کلاس پایه برای تمام کلاس های سی شارپ همان است System.Object
کلاس که به آن نیز گفته می شود object
. هر کلاس در سی شارپ، به طور مستقیم یا غیرمستقیم، از آن ارث می برد object
کلاس هنگامی که یک کلاس جدید ایجاد می کنید، به طور ضمنی از آن ارث می برد object
اگر کلاس پایه دیگری مشخص نشده باشد.
مثال:
public class Person
{
// Fields, properties, methods
}
در این مثال، Person
کلاس به طور ضمنی از the به ارث می برد object
کلاس
فرمت مشخص کننده یک عدد صحیح در سی شارپ چیست؟
پاسخ
فرمت مشخص کننده یک عدد صحیح در سی شارپ است {index_number:D}
یا {index_number:Dn}
جایی که D
فرمت اعشاری را نشان می دهد و n
اگر می خواهید صفرهای ابتدایی را اضافه کنید، حداقل اندازه فیلد عدد صحیح را نشان می دهد.
این index_number
موقعیت آرگومان مورد نظر برای قالب بندی در لیست آرگومان های ارائه شده را نشان می دهد. برای استفاده از مشخصکنندههای قالب، آنها را در رشتهای که باید قالببندی شود وارد کنید و اعداد صحیح را به string.Format()
روش یا در داخل براکت های درونیابی در یک رشته درونیابی.
مثال ها:
int num = 42;
string formattedString1 = string.Format("The number is {0:D}", num);
Console.WriteLine(formattedString1); // Output: "The number is 42"
string formattedString2 = string.Format("The number with leading zeroes: {0:D5}", num);
Console.WriteLine(formattedString2); // Output: "The number with leading zeroes: 00042"
string interpolatedString1 = $"The number is {num:D}";
Console.WriteLine(interpolatedString1); // Output: "The number is 42"
string interpolatedString2 = $"The number with leading zeroes: {num:D5}";
Console.WriteLine(interpolatedString2); // Output: "The number with leading zeroes: 00042"
امیدوارم همانطور که در ابتدا گفتم، دانش خود را یاد گرفته باشید یا بر روی آن (در هر موردی که باشد) پیشرفت کرده باشید. من را دنبال کنید تا تمام سطوح دیگر سوالات مصاحبه C# را اول دریافت نکنید!