Khác biệt giữa các bản “C Sharp (ngôn ngữ lập trình)”

n
Kiểm tra giá trị ngày tháng, replaced: . → . using AWB
(PNG -> SVG)
n (Kiểm tra giá trị ngày tháng, replaced: . → . using AWB)
{{Infobox programming language
|name = C#
|logo = [[FileTập tin:C Sharp logo.svg|150px]]
|paradigm = [[Lập trình cấu trúc]], [[Imperative programming|imperative]], [[Lập trình hướng đối tượng]], [[Event-driven programming|event-driven]], [[The Task-based Asynchronous Pattern|task-driven]], [[Functional programming|functional]], [[Generic programming|generic]], [[Reflective programming|reflective]], [[Concurrent computing|concurrent]]
| family = [[C (ngôn ngữ lập trình)|C]]
|designer = [[Microsoft]]
|developer = Microsoft
|latest release version = 7.2<ref>{{citechú thích web|title=Welcome to C# 7.2|url=https://blogs.msdn.microsoft.com/dotnet/2017/11/15/welcome-to-c-7-2-and-span|website=Microsoft Docs|publisher=Microsoft|access-dateaccessdate =2017-11- ngày 15 tháng 11 năm 2017}}</ref>
|latest release date = {{start date and age|2017|11|15}}
| latest preview version = 8.0<ref>{{citechú thích web|title=Nullable Reference Types Preview|url=https://github.com/dotnet/csharplang/wiki/Nullable-Reference-Types-Preview|website=GitHub|publisher=Microsoft|access-dateaccessdate =2017-12- ngày 15 tháng 12 năm 2017}}</ref>
| latest preview date =
|typing = [[Static typing|static]], [[Dynamic typing|dynamic]],<ref name="dynamic">{{citechú thích web |url = http://code.msdn.microsoft.com/csharpfuture/Release/ProjectReleases.aspx?ReleaseId=1686 |title = New features in C# 4.0 |first = Mads |last = Torgersen |date = Octoberngày 27, tháng 10 năm 2008 |publisher = [[Microsoft]] |accessdate = Octoberngày 28, tháng 10 năm 2008 }}</ref>
[[Type system#Strong and weak typing|strong]], [[Type system#Safely and unsafely typed systems|safe]], [[Nominative type system|nominative]], [[Type inference|partially inferred]]
|implementations = [[Microsoft Visual C Sharp|Visual C#]], [[.NET Framework]], [[Mono (software)|Mono]], [[DotGNU]]
|dialects = [[Cω]], [[Spec Sharp|Spec#]], [[Polyphonic C Sharp|Polyphonic C#]], [http://ecsharp.net Enhanced C#]
|influenced_by = [[C++]],<ref name="influenced by CPP">{{cite journal |last = Naugler |first = David |date=May 2007 |title = C# 2.0 for C++ and Java programmer: conference workshop |journal = Journal of Computing Sciences in Colleges |volume = 22 |issue = 5 |quote = Although C# has been strongly influenced by Java it has also been strongly influenced by C++ and is best viewed as a descendant of both C++ and Java.}}</ref>
[[Eiffel (ngôn ngữ lập trình)|Eiffel]], [[Java (ngôn ngữ lập trình)|Java]],<ref name="influenced by CPP" /> [[Modula-3]], [[Object Pascal]],<ref name="influenced by op">{{citechú thích web |url = http://www.computerworld.com.au/article/261958/a-z_programming_languages_c_/?pp=7 |title = The A-Z of Programming Languages: C# |date = Octoberngày 1, tháng 10 năm 2008 |publisher = [[Computerworld]] |first = Naomi |last = Hamilton |accessdate = Februaryngày 12, tháng 2 năm 2010 |quote = We all stand on the shoulders of giants here and every language builds on what went before it so we owe a lot to C, C++, Java, Delphi, all of these other things that came before us. ([[Anders Hejlsberg]]) }}</ref> [[ML (ngôn ngữ lập trình)|ML]], [[Visual Basic|VB]], [[Icon (ngôn ngữ lập trình)|Icon]], [[Haskell (ngôn ngữ lập trình)|Haskell]], [[Rust (ngôn ngữ lập trình)|Rust]], [[J Sharp|J#]], [[Cω]], [[F Sharp (ngôn ngữ lập trình)|F#]],<ref group="note">không đồng bộ</ref> [[Visual J++|J++]]
|influenced = [[Chapel (programming language)|Chapel]],<ref name="chplspec">{{citechú thích web|title=Chapel spec (Acknowlegements)|url=http://chapel.cray.com/spec/spec-0.98.pdf|date =2015- ngày 1 tháng 10-01 năm 2015 |accessdate =2016-01- ngày 14 tháng 1 năm 2016 |publisher=Cray Inc}}</ref> [[Crystal (programming language)|Crystal]],<ref name="rel_0.18.0">
{{citechú thích web
| url = http://crystal-lang.org/2016/06/14/crystal-0.18.0-released.html#comment-2732771703
| title = Crystal 0.18.0 released!
| quote = It's heavily inspired by Ruby, and other languages (like C#, Go and Python).
}}
</ref> [[D (ngôn ngữ lập trình)|D]], [[J Sharp|J#]], [[Dart (ngôn ngữ lập trình)|Dart]],<ref>{{citechú thích web|title=Web Languages and VMs: Fast Code is Always in Fashion. (V8, Dart) - Google I/O 2013|url=https://www.youtube.com/watch?v=huawCRlo9H4&t=30m10s|publisher=[[Google]]|accessdate=ngày 22 Decembertháng 12 năm 2013}}</ref> [[F Sharp (programming language)|F#]], [[Hack (ngôn ngữ lập trình)|Hack]], [[Java (ngôn ngữ lập trình)|Java]],<ref>Java 5.0 added several new language features (the [[foreach loop|enhanced for loop]], [[Object type (object-oriented programming)#Autoboxing|autoboxing]], [[variadic function|varargs]] và [[Java annotation|annotations]]), after they were introduced in the similar (and competing) C# language [http://www.barrycornelius.com/papers/java5/] [http://www.levenez.com/lang/]</ref><ref name="influenced">{{citechú thích web |url = http://www.barrycornelius.com/papers/java5/onefile/ |title = Java 5 catches up with C# |date = Decemberngày 1, tháng 12 năm 2005 |publisher = [[University of Oxford]] Computing Services |first = Barry |last = Cornelius |accessdate = Junengày 18, tháng 6 năm 2014 |quote = In my opinion, it is C# that has caused these radical changes to the Java language. ([[Barry Cornelius]]) }}</ref> [[Kotlin (ngôn ngữ lập trình)|Kotlin]], [[Monkey (ngôn ngữ lập trình)|Monkey]], [[Nemerle]], [[Oxygene (programming language)|Oxygene]], [[Ring (ngôn ngữ lập trình)|Ring]]<ref name="Ring programming language and other languages">{{citechú thích web |url=http://ring-lang.sourceforge.net/doc1.6/introduction.html#ring-and-other-languages |title=Ring programming language and other languages |author=Ring Team |date=ngày 5 Decembertháng 12 năm 2017 |work=ring-lang.net |publisher=[[ring-lang]]}}</ref>, [[Rust (ngôn ngữ lập trình)|Rust]], [[Swift (ngôn ngữ lập trình)|Swift]],<ref name="lattner2014">{{citechú thích web|url=http://nondot.org/sabre/|title=Chris Lattner's Homepage|last=Lattner|first=Chris|date = ngày 3 tháng 6 năm 2014-06-03 |accessdate = ngày 3 tháng 6 năm 2014-06-03 |publisher=Chris Lattner|quote=The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, CLU, and far too many others to list.}}</ref> [[Vala (ngôn ngữ lập trình)|Vala]]
|platform = [[Common Language Infrastructure]]
|license = [[Common Language Runtime|CLR]]: [[MIT License|MIT/X11]]<ref>https://github.com/dotnet/coreclr/blob/master/LICENSE.TXT</ref><br/>
'''C#''' (đọc là '''"C thăng"''' hay '''"C sharp"''' ''("xi-sáp")'') là một [[ngôn ngữ lập trình]] [[lập trình hướng đối tượng|hướng đối tượng]] được phát triển bởi [[Microsoft]], là phần khởi đầu cho kế hoạch [[.NET Framework|.NET]] của họ. Tên của ngôn ngữ bao gồm ký tự thăng theo Microsoft nhưng theo [[ECMA]] là '''C#''', chỉ bao gồm dấu số thường. Microsoft phát triển C# dựa trên [[C++]] và [[Java (ngôn ngữ lập trình)|Java]]. C# được miêu tả là ngôn ngữ có được sự cân bằng giữa C++, [[Visual Basic]], [[Delphi (ngôn ngữ lập trình)|Delphi]] và [[Java (ngôn ngữ lập trình)|Java]].
 
C# được thiết kế chủ yếu bởi [[Anders Hejlsberg]] kiến trúc sư phần mềm nổi tiếng với các sản phẩm [[Turbo Pascal]], [[Delphi (ngôn ngữ lập trình)|Delphi]], J++, WFC. Phiên bản gần đây nhất là 8.0, được phát hành vào năm 2019 cùng với [[Visual Studio]] 2019 phiên bản 16.3.<ref name="new_features_in_8">{{Citechú thích web|url=https://docs.microsoft.com/en-us/visualstudio/releases/2019/release-notes?view=vs-2019#16.3.0|title=Visual Studio 2019 version 16.3 Release Notes|last=|first=|date=|website=Microsoft Docs}}</ref>
 
== Mục tiêu của việc phát triển C# ==
| Tháng 11 năm 2007
|
[[.NET Framework 2.0]] (Except LINQ)<ref name="danielmoth1">{{Chú thích web|url=http://www.danielmoth.com/Blog/using-c-30-from-net-20.aspx |tiêu đề=Using C# 3.0 from.NET 2.0 |nhà xuất bản=Danielmoth.com |ngày tháng=Mayngày 13, tháng 5 năm 2007 |ngày truy cập=Octoberngày 4, tháng 10 năm 2012}}</ref><br/>
[[.NET Framework 3.0]] (Except LINQ)<ref name="danielmoth1"/><br/>
[[.NET Framework 3.5]]
|-
| C# 5.0
| {{partial|Trong quá trình}}<ref name="ecma_5">{{Chú thích web|tiêu đề=Mono and Roslyn|url=http://tirania.org/blog/archive/2014/Apr-09.html|website=Tirania Blog|nhà xuất bản=Miguel de Icaza|ngày truy cập=ngày 9 Apriltháng 4 năm 2014}}Work in progress for C# 5.0.</ref>
| {{no|Không}}<ref group="note">Không có thông số kỹ thuật ECMA hoặc ISO / IEC cho C # 3.0, 4.0, 5.0, 6.0 hoặc 7.0.</ref>
| [https://www.microsoft.com/en-us/download/details.aspx?id=7029 Tháng 6 năm 2013]
Cấp cao hơn nữa được cung cấp bởi khái niệm này là ''assembly''. Một ''assembly'' là một file hoặc nhiều file được liên kết với nhau (thông qua file al.exe), chứa đựng nhiều namespace và object. Các chương trình cần các lớp để thực thi một chức năng đặc biệt nào đó sẽ tham chiếu các ''assembly'' chẳng hạn như System.Drawing.dll và System.Windows.Forms.dll cũng như các core library (lưu trong file mscorlib.dll).
 
== .Net Core ==
<br />
 
== .Net Core ==
<br />
== Ví dụ đơn giản Hello World ==