Ajax – Tìm hiểu về XMLHttpRequest

Đối tượng XMLHttpRequest đã xuất hiện khá sớm vào năm 1998, khi Microsoft giới thiệu nó lần đầu trong phiên bản trình duyệt IE 4.0. Tuy nhiên lúc bấy giờ, nó khá hạn chế về chức năng, và sau đó nó đã trở thành một ActiveXObject trong IE 5.0. Việc ứng dụng đối tượng này trở nên phổ biến trong một số dự án của Google, ví dụ như Google Maps và quen thuộc hơn với chúng ta là GMail.

Tiếp tục đọc

Advertisements

LINQ – Từ Lambda Expression đến LINQ

Một khi đã làm quen với Lambda Expression, bạn có thể dễ dàng tiếp cận và sử dụng LINQ (Language-Integrated Query)  để thao tác với các collection. Ra đời từ phiên bản .Net 3.5 gắn liền với Extension Methodcác chức năng lập trình mới, LINQ đã trở thành “cầu nối để xóa đi khoảng cách giữa hai thế giới: objectdata”.

Tiếp tục đọc

C# – Ví dụ về VirtualMode trong ListView: Nạp danh sách tập tin trong thư mục

VirtualMode là một phương pháp để bạn tự quản lý dữ liệu trong ListView (hoặc DataGridView) với mục đích chính là tăng tốc độ hiển thị trong những trường hợp phải nạp quá nhiều dữ liệu lên ListView. Với phương pháp này, dữ liệu sẽ không được thêm trực tiếp vào ListView mà chúng sẽ được tạo động khi cần thiết để hiển thị. Trong bài viết này tôi sẽ làm một ví dụ để nạp và tìm kiếm tập tin trong một thư mục trên ListView.

Tiếp tục đọc

.Net – Tạo, sử dụng và quản lý Event trong C#

Event là một thứ mà hầu như bạn phải sử dụng tới trong bất kì ứng dụng nào sử dụng giao diện đồ họa người dùng (GUI). Các control của .Net cung cấp đầy đủ những event cần thiết để bạn có thể sử dụng một cách dễ dàng. Tuy nhiên có những trường hợp bạn cần tạo thêm event cho một lớp nào đó (chẳng hạn event để thông báo khi một collection bị thay đổi nội dung, truyền nội dung giữa hai Form,…). Những thắc mắc hay vấn đề liên quan đến event, bạn có thể sẽ tìm thấy trong bài viết này.

Tiếp tục đọc

C# 3 – Tìm hiểu về Extension Method

Một trong những tính năng mà tôi thấy đơn giản và đáng giá nhất trong phiên bản C# 3 là Extension Method. Extension method giúp bạn tạo thêm các phương thức cho một lớp mà không cần thừa kế lại lớp đó. Với tính năng này, thậm chí khi đối tượng của bạn là null, bạn vẫn có thể thực hiện các phương thức extension của đối tượng đó một cách an toàn.

Tiếp tục đọc

ILSpy –.Net Assembly Browser và Decompiler (open-source)

Sau khi công cụ .Net Reflector của RedGate không còn được cung cấp miễn phí (2 Feb 2011), nhóm phát triển SharpDevelop đã bắt đầu một dự án để tạo ra sản phẩm thay thế là ILSpy. Mặc dù phiên bản hiện tại chưa được phổ biến như .Net Reflector tuy nhiên với lợi thế miễn phí và open-source, ILSpy có thể phát triển để trở thành một công cụ thay thế hoàn hảo cho .Net Reflector.

Tiếp tục đọc

Algorithm: Floyd–Warshall và bài toán đường đi ngắn nhất giữa mọi cặp đỉnh trên đồ thị

Thuật toán Floyd-Warshall hay còn gọi là Floyd, Roy-Floyd là thuật toán tìm đường đi ngẵn nhất giữa mọi cặp đỉnh trong đồ thị có trọng số được công bố năm 1962 bởi Robert Floyd . Trong bài này tôi sẽ giới thiệu cách cài đặt thuật toán này trong chương trình Y2 Visual Graph đã giới thiệu trước đây.

Tiếp tục đọc