Ngôn Ngữ C# Là Gì ?

0
214
views

Hôm nay là một ngày khá đẹp trời . Công việc ở công ty cũng không nhiều . Tôi đang ngồi thong thả nhấp từng ngụm cafe còn đang nghi ngút khói . Vương đôi vai cho đỡ mỏi, tôi dựa vào ghế và thả hồn theo từng điệu nhạc.

Bên kia anh bạn của tôi Boo vẫn đang say mê nghiên cứu một cái gì đó . Thỉnh thoảng lại nở một nụ cười đầy thích thú.

Tôi bèn hỏi :

– Này Boo đang xem gì thế ?

Boo trả lời :

– Một ngôn ngữ /wp-content/images/uploads/mới . Kèm theo nụ cười khoái chí.

Tôi lấy làm thích thú liền đứng dậy và đi lại chổ Boo để tận mắt xem nó là gì ?

Nó là gì thế ?

– Một ngôn ngữ lập trình mới được xây dựng bởi Anders Hejlsberg nó tên là C# hay còn gọi là C Sharp nó cũng thuộc họ nhà C đấy nhé chung một nhà với Microsoft.

Micorosft_NET

Oh cái tên Anders Hejlsberg tơ nghe rất quen – Tôi gãi đầu suy nghĩ ?

– Cậu đúng là …. Anders Hejlsberg là người đã viết nên trình biên dịch Pascal và có nhiều đóng góp cho Delphi cũng như Java. Chính vì vậy dù mang họ nhà C nhưng C# là một ngôn ngữ hướng đối tượng hiện đại và dễ học, chịu ảnh hưởng và học hỏi nhiều tính ưu việt từ Java, C++ và các ngôn ngữ khác.

– Tôi trầm hộ bởi sự hiểu biết của anh bạn Boo và cười trừ tỏ ý khâm phục.

– Thế ông C# này có được sự hỗ trợ của đàn anh gì không nhỉ ? Ngoài ra để giao tiếp với hệ điều hành và phần cứng thì nó cũng phải cần một công cụ nào đó trợ giúp chứ ? – Tôi hỏi.

Boo nói :

– Tất nhiên là có rồi . Nó là đàn em thì được thừa thưởng rất nhiều nhé . Đầu tiên nó sử dụng nền tảng .NET Framework . Có thể hiểu đơn giản đây là một trung tâm biên dịch trong đó tất cả các ngôn ngữ được hỗ trợ bởi .NET Framework sẽ được chuyển đổi ra MSIL (một dạng mã trung gian) rồi từ đấy mới được biên dịch tức thời (Just in time Compiler – JIT Compiler) thành các tập tin thực thi như exe.

– Còn để nó giao tiếp với phần cứng và hệ điều hành thì nó thông qua một kiến trúc quan trọng trong .NET Framework là CLR (.NET Common Language Runtime), khối chức năng cung cấp tất cả các dịch vụ mà chương trình cần giao tiếp với phần cứng, với hệ điều hành.

Vậy đấy tớ chỉ biết đến thế thôi.

Tôi không quen cảm ơn Boo về những thông tin của ngôn ngữ này . Có lẽ sắp tới tôi nên bỏ thời gian nghiên cứu ngôn ngữ này và tôi mong sẽ có ích cho tôi sau này


Tổng Kết :

C# là một ngôn ngữ lập trình hướng đối tượng được phát triển bởi Microsoft, là phần khởi đầu cho kế hoạch .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. C# được miêu tả là ngôn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và 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, J++, WFC.

C#, theo một hướng nào đó, là ngôn ngữ lập trình phản ánh trực tiếp nhất đến.NET Framework mà tất cả các chương trình.NET chạy, và nó phụ thuộc mạnh mẽ vào Framework này. Mọi dữ liệu cơ sở đều là đối tượng, được cấp phát và hủy bỏ bởi trình dọn rác Garbage-Collector (GC), và nhiều kiểu trừu tượng khác chẳng hạn như class, delegate, interface, exception, v.v, phản ánh rõ ràng những đặc trưng của.NET runtime.

So sánh với C và C++, ngôn ngữ này bị giới hạn và được nâng cao ở một vài đặc điểm nào đó, nhưng không bao gồm các giới hạn sau đây:

Các con trỏ chỉ có thể được sử dụng trong chế độ không an toàn. Hầu hết các đối tượng được tham chiếu an toàn, và các phép tính đều được kiểm tra tràn bộ đệm. Các con trỏ chỉ được sử dụng để gọi các loại kiểu giá trị; còn những đối tượng thuộc bộ thu rác (garbage-collector) thì chỉ được gọi bằng cách tham chiếu.
Các đối tượng không thể được giải phóng tường minh.
Chỉ có đơn kế thừa, nhưng có thể cài đặt nhiều interface trừu tượng (abstract interfaces). Chức năng này làm đơn giản hóa sự thực thi của thời gian thực thi.
C# thì an-toàn-kiểu (typesafe) hơn C++.
Cú pháp khai báo mảng khác nhau(“int[] a = new int[5]” thay vì “int a[5]”).
Kiểu thứ tự được thay thế bằng tên miền không gian (namespace).
C# không có tiêu bản.
Có thêm Properties, các phương pháp có thể gọi các Properties để truy cập dữ liệu.
Có reflection.

LEAVE A REPLY

Please enter your comment!
Please enter your name here