nói dối e blog

Sự Trở Lại Của Ngôn Ngữ C

Vào cuối tuần vừa rồi, tôi có chuyến công tác đến một thành phố khác để giải quyết một số vấn đề kỹ thuật cho dự án của công ty. Trên đường ra sân bay trở về, tôi tranh thủ lướt Google Reader bằng điện thoại để giết thời gian. Ngay lập tức, bài viết mới nhất của Meng Yan với tiêu đề “Cha đẻ Linux: Nói thẳng nói thật về ngôn ngữ C và C++” đã thu hút sự chú ý của tôi. Khi chuyển sang blog của Liu Jiang, tôi đọc hết bài “Linux Torvalds chỉ trích C++: Ngôn ngữ dành cho lập trình viên kém cỏi” và cảm thấy vô cùng đã tai. Ngay lập tức, tôi gửi đường link bài viết này qua SMS cho vài người bạn.

Thủ Công Mỹ Nghệ

Những người chơi trò Dungeons & Dragons hẳn đều biết rằng trò chơi này đòi hỏi những loại xúc xắc đặc biệt không dễ tìm thấy trong đời thường - những khối đa diện bốn mặt, tám mặt, mười mặt, mười hai mặt và đặc biệt là khối nhị thập diện đều hai mươi mặt. Loại xúc xắc sáu mặt quen thuộc mà chúng ta thường thấy ở các tiệm tạp hóa dường như chỉ dành riêng cho các tay chơi mạt chược.

Xác Thực Người Dùng Độc Lập Cho Trò Chơi

Tất cả các sản phẩm của NetEase, bao gồm cả các trò chơi, đều sử dụng hệ thống NetEase Pass (URS) để xác thực danh tính người dùng. Đây là một phương pháp hiệu quả để giảm thiểu rào cản cho người dùng mới khi tiếp cận các sản phẩm. Giống như nhiều nhà cung cấp dịch vụ mạng khác, NetEase cũng xây dựng hệ thống xác thực thống nhất của riêng mình, được gọi là URS. Công ty đã đầu tư rất nhiều nguồn lực vào hệ thống này, nhưng hiệu suất của nó luôn không theo kịp nhu cầu thực tế. Cá nhân tôi từ năm 2003 đã liên tục đề xuất các cải tiến về bảo mật, nhưng do hệ thống này ảnh hưởng quá rộng, việc thực hiện những thay đổi thực sự gặp rất nhiều khó khăn.

Xáo Bài Hiệu Quả: Hành Trình Tối Ưu Hóa Thuật Toán

Trong ngày Quốc khánh vừa qua, khi kiểm tra mã nguồn từ kho lưu trữ SVN, tôi tình cờ gặp một đoạn code xử lý xáo bài do đồng nghiệp viết. Càng đọc kỹ, tôi càng nhận ra nhiều điểm chưa hợp lý trong cách triển khai thuật toán. Đặc biệt, độ phức tạp thời gian của phương pháp hiện tại khiến tôi không khỏi băn khoăn.

Phân tích phương pháp cũ

Phiên bản gốc được thiết kế như sau: Với bộ bài gồm N lá, chương trình sẽ ngẫu nhiên rút từng lá bài một. Mỗi lần rút, hệ thống phải kiểm tra xem lá bài này đã xuất hiện trước đó chưa. Nếu đã rút rồi, quá trình lại lặp lại từ đầu. Cứ thế tiếp diễn cho đến khi thu được dãy bài hoàn chỉnh được xáo trộn.

Xử Lý Đối Tượng Lặp Chính Xác

Hôm qua khi xây dựng một module AOI, tôi lại gặp phải bài toán cũ về việc lặp đối tượng trong thiết kế hệ thống. Đây là vấn đề cần được xử lý cẩn trọng, xin ghi lại kinh nghiệm này.

Nguyên nhân sự cố: Khi đối tượng A bước vào vùng AOI của B sẽ kích hoạt sự kiện Enter. Sự kiện này được xử lý thông qua cơ chế callback. Nếu trong hàm callback lại tiếp tục gọi đến module AOI, tạo ra đệ quy gián tiếp, rất dễ làm gián đoạn quá trình lặp nội bộ của module AOI.

Đồng Nhân Dân Tệ Tăng Giá?

Câu chuyện về việc đồng Nhân dân tệ tăng giá trị?

Khoảng năm 2003, trong tài khoản ngân hàng của tôi bất ngờ có một khoản tiền USD. Xuất phát từ sự tò mò, tôi bắt đầu tham gia giao dịch ngoại hối thực. Cũng từ đó, tôi bắt đầu theo dõi sát sao biến động tỷ giá của các đồng tiền lớn trên thế giới và giá vàng. Thời điểm đó, đồng Nhân dân tệ duy trì tỷ giá cố định với USD ở mức 8.27. Tỷ giá USD/EUR dao động quanh 1.1-1.2, USD/GBP ở mức 1.6-1.7, còn USD/JPY dao động trong khoảng 110-120. Đó cũng là lần đầu tiên tôi ra nước ngoài công tác, đến Úc, khi đó tỷ giá USD/AUD khoảng 0.6.

0%