//
you're reading...
C#

Giới thiệu về ngôn ngữ C#

Bài viết này giới thiệu với bạn về ngôn ngữ C#- một ngôn ngữ mềm dẻo và rất phổ biến hiện nay. Qua đây bạn có thể về cơ bản nắm bắt được những nguyên tắc trong cách viêt code như là cách sử dụng từ khóa, từ định danh… đến những cấu trúc lệnh, khối lệnh…

Trong bài viết này tôi đề cập đến những vấn đề sau của C#

  • Từ khóa.
  • Tên và quy đặt tên
  • Câu lệnh
  • Khối lệnh
  • Ghi chú
  • Chữ hoa, chữ thường và lỗi cú pháp
  • Khoảng trắng.

 

Có thể đây là lần đầu tiên bạn làm quen với C# vì thế trước hết bạn nên có một chút kiến thức tổng quan về .NET framework và Visual Studio.NET

Trước khi tìm hiểu về C# hay bất cứ một ngôn ngữ lập trình nào khác bạn phải  hiểu thế nào là  một chương trình máy tính?

Một chương trình máy tính là một chuỗi các mã lệnh trên thực tế chỉ làm 2 công việc sau:

  • Lưu trữ dữ liệu.
  • Xử lý dữ liệu đó.

Có nhiều cách để thực hiện 2 công việc trên.

Ví dụ Microsoft Word là một chương  trình xử lý văn  bản. bạn có thể gõ một dòng chữ vào một trang sau đó có thể đổi màu chữ, tô đậm chữ, hoặc là cắt dán… Một ví dụ khác là Adobe Photoshop một chương trình dùng để xử lý ảnh . Đối với chương trình này thì dữ liệu được xử lý là các bức ảnh. Và bạn có thể hình dung chúng ta viết ra những dòng lệnh cho chương trình này để thao tác với các bức ảnh.

Nếu bạn đã từng học một ngoại ngữ tiếng Pháp chẳng hạn có thể đầu tiên sẽ gặp rất nhiều khó khăn. Nhưng sau một thời gian rèn luyện có thể nó lại trở nên đơn giản. Học một ngôn ngữ lập trình cũng vậy. Lúc đầu thật không dễ dàng gì nhưng càng về sau bạn sẽ nhận thấy rằng bạn dễ dàng viết được những đoạn mã lệnh mà không cần đến bất kì sự tham khảo nào. Chỉ vài giây nữa thôi khi đọc tiếp bài viết này bạn sẽ biết thêm nhiều điều để viết và tổ chức các đoạn mã.
Từ khóa

 

Trong cuộc sống, mọi ngôn ngữ đều chứa những từ khóa và những từ này hiểu được bởi người nói ra nó. Điều đó cũng đúng với C#. Từ khóa trong C# là những từ đặc biệt và mang nghĩa đặc biệt chỉ dành riêng cho ngôn ngữ này.

Trong Visual Studio.net những từ khóa sẽ có màu xanh da trời.

 

 Tên và quy tắc đặt tên

 

Mọi sự vật hiện tượng trong cuộc sống đều có tên gọi để phân biệt với nhau và điều đó cũng đúng đối với một chương trình máy tính. Ví dụ  bạn xấy dựng một chương trình máy tính để cộng 2 số. Bạn phải đặt tên cho 2 biến chứa 2 giá trị đó để phân biệt chúng với nhau và với các số khác.

Vậy tên gọi và từ khóa khác nhau thế nào?  Từ khóa là những từ đặc biệt và có sẵn trong ngôn ngữ lập trình. Bạn có thể sử dụng chúng nhưng không thay đổi được chúng. Tên gọi là do bạn đặt ra. Tên gọi không bao giờ được trùng với từ khóa.

Khi bạn đặt tên cần chú ý đến các nguyên tắc sau:

            Kí tự đầu tiên  phải là một chữ cái (có thể là chữ hoa  hoặc thường) hoặc là dấu gạch dưới/

            Kí tự tiếp theo có thể lấy bất kì.

           

Tên không được trùng với từ khóa.

 

 

Câu lệnh

 

Một  cách đơn giản và dễ hiểu , bạn hãy hình dung câu lệnh trong một ngôn ngữ lập trình giống như một câu nói (hoặc viết) trong một ngôn ngữ thật trong cuộc sống. Nó cũng phải tuân theo một số nguyên tắc nào đó. Nếu ngôn ngữ trong đời sống bạn phải diễn đạt cho mọi người xung quanh hiểu thì trong ngôn ngữ lập trình một câu lệnh được viết với mục đích làm cho trình biên dịch hiểu.

            Khi bạn viết  tôi thích c#.

Mọi người đọc đều có thể hiểu được nhưng khi bạn viết : tôi thích. thì mọi người sẽ không hiểu bạn thích gì? Đó là một câu không hoàn chỉnh.

            Hãy xét một câu lệnh hoàn chỉnh trong C# khi bạn muốn cộng 2 số và gán kết quả cho biến memory

memory = 2 + 5;

 

Đó là một câu lệnh đúng trong C#. Một câu lệnh trong C# luôn được kết thúc bằng dấu “; ” cũng giống như một câu văn luôn được kết thúc bằng dấu “.” 

Có một điều bạn phải biết trong C# đó là các câu lệnh có thể được đặt vào một nhóm như sau:

 

{

Câu lệnh 1;

Câu lệnh 2;

Câu lệnh 3;

}

 

Khối lệnh

 

 

Một câu lệnh trong C# có thể là một phần của một khối lệnh. Khối lệnh trong C# cũng giống như một đoạn văn trong một bài văn. Đoạn văn bao gồm các câu văn khác nhau và dùng để mô tả một nội dung nào đó, còn khối lệnh gồm các câu lệnh khác nhau dùng để thực hiện một công việc. một khối lệnh có thể chỉ chứa một hoặc nhiều câu lệnh hoặc có thể không chứa câu lệnh nào cả. Một khối lệnh sẽ được đặt trong cặp dấu {}. Hãy xem ví dụ sau:

{
    int memory = 2 + 5;
    Console.WriteLine(memory);
    Console.WriteLine(“so it's 7, right?”);
}

Trong ví dụ trên:

int là một từ khóa nó sẽ có màu xanh da trời.

mối câu lệnh đều có kết thúc bằng dấu “;”

Mỗi dòng chỉ chứa một câu lệnh.

 

Bạn cũng có thể viết nhiều lệnh trên một dòng nhưng các lệnh phải cách nhau bởi dấu “;”. Khối lệnh trên có thể được viết lại như sau:

{
    int memory = 2 + 5;Console.WriteLine(memory);Console.WriteLine(“so it's 7, right?”);
}

Mỗi khối lệnh có thể nằm trong một khối lệnh khác. Cách viết như sau hoàn toàn đúng và có ý nghĩa như cách viết ban đầu.

{
    int memory = 2 + 5;
    if(memory == 7)
    {
        Console.WriteLine(“hi, I'm Michael”);
    }
}

 

Ghi chú

 

Cũng giống các ngôn ngữ khác, khi viết mã C# bạn có thể thêm chú thích. Chú thích là một đoạn văn bản dễ hiểu bạn viết ra để giải thích hoặc miêu tả mã lệnh. Ví dụ bạn viết một đoạn chương trình cộng 2 số và  bạn muốn miêu tả việc làm đó

{
    // câu lệnh này cộng 2 số lại
   // kết quả trả về cho biến memory
    int memory = 2 + 5;
}

Có 2 cách để viết chú thích trong C#. Cách thứ nhất dùng chú thích trên nhiều dòng , các thứ 2 sử dụng với một dòng. Nhiều dòng chú thích sẽ được đặt trong cặp dấu /**/ như sau:

Khi viết chú thích nhiều dòng bạn cần lưu ý khi bạn mở chú thích tức là bạn gõ vào kí tự /*, tất cả những gì nắm sau dấu chú thích đó đều được hiều là nội dung chú thích và không có ý nghĩa gì trong chương trình. Những nội dung này sẽ được tô màu đậm để phân biệt với mã lệnh. Sau khi kết thúc phần giải thích bạn phải nhớ đóng lại bằng kí tự */.

 

Chữ hoa, chữ thường và các lỗi cú pháp.

 

C# là một ngôn ngữ có phân biệt chữ hoa, chữ thường. Điều đó nghĩa là gì? Trong C# một phần tử ví dụ “Michael” với chữ M được viết hoa sẽ khác với “michael”. Trình biên dịch C# sẽ không hiểu Michael=michael do đó nó sẽ coi đây là 2 phần tử khác nhau. Các bạn nên lưu ý điều này khi đặt tên cho các phần từ khác.

Đoạn mã sau sẽ đưa ra một dòng lên màn hình

using System;
namespace ConsoleApplication2
{
    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    class Class1
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            Console.WriteLine(“Hello, I&apos;m Michael”);
        }
    }
}

Có lẽ các bạn đã hiểu chút ít ý nghĩa của đoạn mã trên. Bạn biết ý nghĩa của các kí tự màu xanh da trời, đó là các từ khóa còn các dòng có màu xanh lục là các dòng chú thích tuy nhiên chúng ta chỉ quan tâm đến sự phân biệt chữ hoa, chữ thường.

Các từ khóa đều được viết bởi các chữ cái thường. Nếu bạn cố gắng xóa chúng hoặc viết hoa chúng thì chúng sẽ không còn là màu xanh nữa. Khi bạn biên dịch chương trình chắc chắn sẽ gặp lỗi.Sau này bạn sẽ được học những gì có thể viết hoa và những gì bắt buộc phải viết thường, bây giờ bạn đã biết từ khóa luôn được viết thường.Như lúc trước tôi đã nói, nếu bạn viết “michael” thay cho “Michael” trình biên dịch sẽ báo lỗi và lỗi này được gọi là lỗi cú pháp.Điều đó cũng giống với việc bạn viết sai lỗi chính tả. với C# trình biên dịch sẽ báo lỗi cho bạn và thông báo này sẽ khác nhau ứng với mõi tình huống cụ thể.

Lỗi cũ pháp không chỉ đơn giản là do sự phân biệt chữ hoa chữ thường. Các bạn hãy đọc ví dụ sau và tìm ra lỗi cú pháp.

{
Console.WriteLine(“Hello”);
Như chúng tôi đã nói, khối lệnh của C# luôn được đặt trong {}. Trong ví dụ trên chúng ta mở ngoặc nhưng chưa đóng ngoặc vì thế nó chứa một lỗi cú pháp.

Để tránh lỗi phổ biến này bạn có thể thực hiện các cách sau:

            1.Viết luôn cặp {}

            2. Nhấn phím enter 2 lần để tạo một đoạn trống giữa 2 dấu ngoặc

                       
{

}

            3.Sau đó viết mã lệnh vào giữa 2 dấu ngoặc.

           

 

Xét thêm một lỗi cú pháp nữa:

{
    Console.WriteLine(“Hello”)
}

Trong ví dụ này, Tôi không quên đóng ngoặc tuy nhiên tôi đã không đặt dấu “;” vào cuối câu lệnh và điều đó cũng làm phát sinh lỗi cú pháp. VS.Net Sẽ gạch dưới các dòng lệnh chứa lỗi tuy nhiên đôi lúc lỗi sẽ nằm ở dòng lệnh sau.

Có rất nhiều lý do khác nhau để dẫn đến lỗi cú pháp. Đừng lo, chúng ta sẽ tìm hiểu dần về chúng. Trước khi tìm hiểu sâu hơn về C# bạn cần biết đến lỗi cú pháp vì 2 lý do. Thứ nhất và cũng là quan trọng nhất no liên quan đến quy tắc viết hoa viết thường, thứ 2, hiểu lỗi cú pháp bạn có thể tránh được nó một cách tối đa.

Bạn phải biết rằng chương trình của bạn sẽ không bao giờ được biên dịch hoặc thực thi trước khi bạn đã sửa hết tất cả các lỗi cú pháp trong mã lệnh của bạn. VS.Net sẽ giúp bạn tìm ra dấu vết của lỗi cú pháp bằng cách đưa ra các thông báo lỗi, là những thông báo miêu tả cụ thể lỗi bạn mắc phải và những dòng lệnh chứa lỗi sẽ được gạnh dưới. Lỗi cú pháp cũng được gọi là lỗi soạn thảo hay lỗi biên tập.

 

Khoảng trắng

 

Chúng ta hay xét 2 ví dụ sau:

{
    int x = 2    +    5 ; int y = x + 5;
    Console.WriteLine(x); Console.WriteLine(y);
}

{
    int x = 2 + 5;
    int y = x + 5;
    Console.WriteLine(x);
    Console.WriteLine(y);
}

2 đoạn lệnh trên hoàn toàn giống nhau về nội dung, điều khác nhau duy nhất giữa chúng đấy là các kí tự trắng.

Kí tự trắng là các kí tự như là space, tab….Lập trình viên thường sử dụng kí tự trắng làm cho mã lệnh họ viết dễ đọc hơn và ngăn nắp hơn.
Sau bài viết này các bạn đã có những hiểu biết rất cớ bản về ngôn ngữ C#. Chúng tôi sẽ lần lượt giới thiệu những khái niệm khác của C# nói riêng và lập trình hướng đối tượng nói chung tới các bạn.

Discussion

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: