سی شارپ (به انگلیسی: #C) یک زبان برنامه نویسی همگردان، سطح بالا، شیءگرا، ساخت یافته، رویداد محور، تابعی، دستوری و جنریک است که توسط شرکت مایکروسافت در سال 2000 میلادی از خانوادهٔ زبانهای چارچوب داتنت معرفی شد. زبان سی شارپ همچنین از خانواده زبانهای برنامهنویسی سی نیز است.
زبان سی شارپ، یک زبان برنامهنویسی چند الگویی و منظم شده مدلهای تابعی، اَمری، عمومی، شیءگرا و جز گرا و در بستر چارچوب دات نت میباشد. این زبان توسط شرکت مایکروسافت و جزئی از دات نت به وجود آمد و بعداً استانداردهای ECMA و ISO را نیز دربر گرفت. سی شارپ یکی از ۴۴ زبان برنامهنویسی است که توسط زمان اجرای زبان مشترک از چارچوب داتنت پشتیبانی میشوند و در همه جا به وسیله مایکروسافت ویژوال استودیو شناخته میشود.
زبان سی شارپ با قدرت و در عین حال سطح بالایی خود توانسته توجه بسیاری از برنامه نویسان را به خود جلب کند.
این زبان برپایه سادگی، مدرن بودن، همه منظوره و شئ گرا بودن ساخته شد. آندرس هجلزبرگ، طراح زبان برنامهنویسی دلفی، سرپرستی تیم طراحان زبان سی شارپ را بر عهده داشت. این زبان دارای دستوری شیءگرا مشابه ++C است و به شدت از زبانهای جاوا و دلفینیازمندمدرک تأثیر پذیرفتهاست. در ابتدا نام این زبان COOL بود که مخفف C like Object Oriented Language بود، هر چند در ژوئیه ۲۰۰۰م، زمانی که مایکروسافت پروژه را عمومی اعلام کرد، اسم آن به سی شارپ تغییر پیدا کرد.
اهداف طراحی زبان
استاندارد ECMA این اهداف طراحی زبان را برای سی شارپ برآورده میسازد:
سی شارپ یک زبان برنامهسازی ساده، مدرن، برای اهداف عمومی و شیءگرا است.
به دلیل اهمیت داشتن موضوع نیرومندی و دوام و بهرهوری برنامهنویس، زبان دارای چککننده Strong Type، چککننده مرزهای آرایه، تشخیص حالتهایی که یک متغیر مقداردهی اولیه نشدهاست، قابلیت انتقال کدها و Garbage Collection خودکار است.
این زبان برای استفاده در اجزای توسعه نرمافزار برای دستیابی به مزایای سامانههای توزیعی در نظر گرفته شدهاست.
قابلیت انتقال برنامهنویس بسیار مهم است، خصوصاً برای آن دسته از برنامهنویسانی که با زبانهای C و ++C آشنا هستند.
پشتیبانی از این زبان برای بینالمللی شدن بسیار مهم است.
زبان سی شارپ برای نوشتن برنامهها برای سامانههای تعبیه شده و میزبان در نظر گرفته شدهاست، سیستمعاملهای پیچیده بسیار بزرگ گرفته تا توابع اختصاصی بسیار کوچک.
هر چند برنامههای نوشته شده با سی شارپ طوری هستند که از لحاظ حافظه و پردازنده مورد نیاز مقرون به صرفه باشند، ولی خود زبان از لحاظ اندازه و کارایی به خوبی زبانهای C و اسمبلی نیست.
--
C# (pronounced C sharp) is a general-purpose, multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines. It was developed around 2000 by Microsoft within its .NET initiative and later approved as a standard by Ecma (ECMA-334) and ISO (ISO/IEC 23270:2006). C# is one of the programming languages designed for the Common Language Infrastructure.
C#'s development team is led by Mads Torgersen. The most recent version is C# 7.3, which was released in 2018 alongside Visual Studio 2017 version 15.7.2.
Design goals
The ECMA standard lists these design goals for C#
The language is intended to be a simple, modern, general-purpose, object-oriented programming language.
The language, and implementations thereof, should provide support for software engineering principles such as strong type checking, array bounds checking, detection of attempts to use uninitialized variables, and automatic garbage collection. Software robustness, durability, and programmer productivity are important.
The language is intended for use in developing software components suitable for deployment in distributed environments.
Portability is very important for source code and programmers, especially those already familiar with C and C++.
Support for internationalization is very important.
C# is intended to be suitable for writing applications for both hosted and embedded systems, ranging from the very large that use sophisticated operating systems, down to the very small having dedicated functions.
Although C# applications are intended to be economical with regard to memory and processing power requirements, the language was not intended to compete directly on performance and size with C or assembly language.