TOC

This article is currently in the process of being translated into Vietnamese (~99% done).

Debugging:

Stepping through the code

Trong chương này, chúng ta sẽ xem cách duyệt code, là một phần quan trọng của gỡ lỗi. Chúng ta sẽ xem một ứng dụng đơn giản:

namespace DebugTest
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 5;
            a = a * 2;
            a = a - 3;
            a = a * 6;
            Console.WriteLine(a);
        }
    }
}

Chúng ta chỉ đơn giản làm việc với biến "a" và xuất ra kết quả cuối cùng. Thử đặt breakpoint như đã mô tả trong chương trước, ở dòng đầu tiên mà chúng ta dùng (và được khai báo). Bây giờ chạy ứng dụng. Chương trình sẽ dừng và bạn có thể di chuột vào a, để đảm bảo rằng những gì chúng ta học ở các chương trước là đùng thì: Biến chỉ chứa giá trị mặc định, vì code gán giá trị cho nó (trong trường hợp này là 5), không được chạy nhưng hãy thay đổi. Từ menu Debug, chọn "Step over", hay ấn phím F10. Trình gỡ lỗi sẽ nhảy đến dòng tiếp theo và nếu bạn di chuột qua biến thì bạn sẽ thấy nó có giá trị. Bạn tiếp tục làm vậy và bạn sẽ thấy giá trị thay đổi theo hàng được thực hiện cho đến hết.

Đó là những kiến thức cơ bản nhưng rất hữu ích như bạn thấy một khi bạn bắt đầu viết nhiều code phức tạp hơn. Trong ví dụ này, dòng code rất đơn giản, vì chúng ta chỉ có một hàm đơn nhưng nếu code của bạn có nhiều lớp hay hàm thì sao? Hãy thử ví dụ này:

namespace DebugTest
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 5;
            int b = 2;
            int result = MakeComplicatedCalculation(a, b);
            Console.WriteLine(result);
        }

        static int MakeComplicatedCalculation(int a, int b)
        {
            return a * b;
        }
    }
}

Đặt điểm breakpoint ở dòng đầu của hàm Main và chạy ứng dụng. Bây giờ dùng "Step over" để chạy qua từng dòng. Như bạn thấy, nó đi qua từng lời gọi hàm mà không cần để ý gì - chỉ đơn giản là xem cách gỡ lỗi ra so. Bây giờ, chúng ta thử lại từ đầu và một khi bạn chạy từng dòng tới MakeComplicatedCalculation() thì bạn chọn Debug -> Step into, hay dùng phím tắt F11. Trình gỡ lỗi giời sẽ nhảy vào trong hàm và cho phép bạn vào trong hàm đó. Như vậy bạn có thể tưởng tượng nó cho phép bạn chạy qua đoạn code phức tạp vào vào trong phần hàm mà bạn quan tâm.

Nếu bạn nhảy vào trong hàm và sau đó nhận ra rằng bạn muốn trở về phần trước, thì bạn dùng lựa chọn rất logic trong menu Debug là "Step out" (phím tắt là Shift + F11). Nó sẽ trả về cho bạn phần trước đó, có nhĩa bạn có thể nhay vào bất kỳ hàm nào mà bạn muốn và sau đó trở về chương trình cũ.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!