Đang chuẩn bị liên kết để tải về tài liệu:
Tối ưu hoá chương trình C#

Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ

Đây là một số kinh nghiệm về tối ưu hóa mã nguồn C# sau một khoảng thời gian làm việc với nó. Bạn có thể áp dụng một số thủ thuật này trong các ngôn ngữ khác như VB.Net, Java | WWW.CSHARPVN.COM c Co Bản Tối ưu Hóa Chương Trình C Đây là một số kinh nghiệm về tối ưu hóa mã nguồn C sau một khoảng thời gian làm việc với nó. Bạn có thể áp dụng một số thủ thuật này trong các ngôn ngữ khác như VB.Net Java. Để đo thời gian thực thi của các đoạn mã ví dụ bên dưới bạn có thể dùng DateTime.Now.Ticks lưu thời điểm bắt đầu và kết thúc. Tuy nhiên .Net cung cấp cho bạn sẵn đối tượng Stopwatch đồng hồ bấm giờ nằm trong không gian tên System.Diagnostics để dùng cho những công việc dạng này. Trong mỗi phần tôi sẽ so sánh hai phương pháp đoạn mã phương pháp thứ hai sẽ là phương pháp tối ưu hơn cho bạn lựa chọn. Mặc dù các giải pháp thay thế có thể tốt hơn nhưng không hẳn đã là tối ưu việc tối ưu một đoạn mã đòi hỏi sự hiểu biết và phân tích khá sâu vào nền tảng .Net hơn nữa còn phụ vào thuật toán bạn sử dụng trong từng trường hợp. 1. So sánh chuỗi Ở đây tôi dùng hai phương pháp so sánh chuỗi thường sử dụng có phân biệt hoa thường . Điểm khác biệt giữa hai phương thức này là phương thức thứ 1 là tĩnh static nên ta có thể gọi trực tiếp từ lớp String. - 1 int String.Compare string strA string strB bool ignoreCase - 2 bool string.Equals string value StringComparison comparisonType string s1 aaa string s2 AAA Đoạn mã 1 for int i 0 i 100000 i bool b String.Compare s1 s2 true 0 Đoạn mã 2 for int i 0 i 100000 i Biên tập thienthanit@yahoo.com Nguồn Internet WWW.CSHARPVN.COM c Co Bản bool b s1.Equals s2 StringComparison.OrdinalIgnoreCase Đoạn mã thứ nhất chạy chậm hơn đoạn thứ hai hơn 3 lần. Tuy nhiên nếu bạn sử dụng tham số StringComparison.CurrentCultureIgnoreCase cho phương thức Equals thì tốc độ giữa hai đoạn mã là xấp xỉ. Một số người dùng cách chuyển cả hai chuỗi về dạng chữ hoa hoặc chữ thường rồi so sánh sẽ tốn thời gian lâu nhất hơn 2 lần so với cách một . 2. Xây dựng chuỗi - String và StringBuilder Đây có lẽ là điều bạn thường gặp và cũng đã nắm bắt được sự khác biệt rõ ràng giữa chúng. Với số lần lặp tương đối lớn bạn sẽ có một khoảng thời gian chờ tương .