nói dối e blog

Nguyên Tắc Dễ Dàng Chỉnh Sửa

Nguyên tắc Dễ thay đổi
Trong tháng vừa qua, tôi đã bắt đầu dịch cuốn “The Pragmatic Programmer” bản thứ hai. Đến nay đã hoàn thành hơn 100.000 từ, gần bằng một nửa toàn bộ tác phẩm.
Công việc vô cùng gian nan và mệt mỏi. Dịch thuật hoàn toàn khác biệt so với việc đọc hiểu thông thường. Dù bản thân đã nắm bắt được nội dung, việc diễn đạt sao cho rõ ràng mạch lạc lại là điều không dễ dàng. Có những câu văn mang tính mơ hồ, muốn hiểu thấu đáo bản chất thật sự không hề đơn giản.毕竟思想终究不是绝对真理,翻译者只能竭尽全力 truyền tải đúng tinh thần tác giả.

Con Đường Tu Luyện Của Lập Trình Viên Phiên Bản Thứ Hai Đã Bắt Đầu Được Dịch

Tôi đã bắt đầu dịch bản thứ hai của cuốn “The Pragmatic Programmer”. Thật bất ngờ khi cuốn sách này lại cho ra đời bản cập nhật mới vào tháng trước, đánh dấu 20 năm kể từ khi bản gốc đầu tiên xuất bản.

Cách đây hơn một thập kỷ, khi lần đầu tiên tiếp xúc với tác phẩm này, tôi đã bị cuốn vào phong cách viết đầy sức sống và những triết lý lập trình sâu sắc. Sau đó khi bản tiếng Trung tái bản, tôi còn được mời viết lời bình luận cho sách. Thấm thoắt mười năm trôi qua, không ngờ lần này nhà xuất bản lại tìm đến tôi với đề nghị dịch bản thứ hai của tác phẩm này.

Vấn Đề Độ Trễ Máy Chủ Trong Game Chiến Tranh Tam Quốc Phiên Bản Chiến Lược

Tác phẩm mới nhất của chúng tôi - Chiến Tranh Tam Quốc phiên bản chiến lược - đã ra mắt được một thời gian ngắn. Tuy nhiên, phản ứng từ thị trường rất tích cực khi thu hút được lượng lớn người chơi. Cùng với sự gia tăng nhanh chóng của người dùng, hệ thống máy chủ cũng gặp phải tình trạng độ trễ nghiêm trọng, đặc biệt là vào khung giờ cao điểm mỗi ngày.

Hệ Thống Kinh Tế Của Các Ngôi Sao

Hệ thống kinh tế trong Stellaris

Stellaris là một trò chơi chiến lược vô cùng phức tạp. Tôi đã chơi tựa game này được hơn 3 năm với tổng thời gian hơn 600 giờ. Trong suốt quãng thời gian đó, tôi còn tham gia hiệu đính và dịch thuật hàng chục vạn từ nội dung cho bản dịch tiếng Việt của trò chơi, điều này đủ để thấy mức độ đam mê của tôi dành cho tựa game này.

Quản Lý Cấu Trúc Phân Cấp Cảnh Game

Vài tháng đầu năm nay, tôi đã có ý định ghi chép lại thiết kế mô-đun quản lý cấu trúc phân cấp cảnh trong engine game của chúng tôi. Mỗi lần định viết đều phát sinh vài thay đổi nhỏ, mãi đến gần đây các thuật toán và cấu trúc dữ liệu mới ổn định. Hôm nay xin ghi lại chi tiết để lưu trữ.

Trong game, các đối tượng cảnh thường được lưu trữ dưới dạng cấu trúc cây. Lý do là vì trạng thái không gian của mỗi đối tượng thường bị ảnh hưởng bởi đối tượng cấp trên gắn kết với nó. Về mặt quản lý, mỗi đối tượng nên biết rõ phạm vi ảnh hưởng của mình và phải nắm được đối tượng cha đang tác động đến nó. Điều này dẫn đến việc sử dụng phổ biến cấu trúc cây - đặc biệt quan trọng trong thiết kế editor khi cấu trúc này được hiển thị trực quan trên giao diện. Tuy nhiên, tôi cho rằng trong runtime, việc duyệt từ cha sang con không thực sự cần thiết và có thể được xử lý riêng khi cần thiết. Về bản chất dữ liệu, việc cả cha nhớ con và con nhớ cha là sự trùng lặp thông tin mối quan hệ. Nếu không cần lưu thứ tự anh em của đối tượng con, trong cấu trúc dữ liệu cốt lõi chỉ cần để con ghi nhớ cha là đủ.

Kỹ Thuật Chuyển Đổi Động Giữa Các Luồng Hệ Điều Hành Trong Thời Gian Chạy Lua

Trong quá trình phát triển engine gần đây, chúng tôi đã gặp phải một vấn đề kỹ thuật liên quan đến hệ điều hành và tìm ra một giải pháp hết sức sáng tạo. Tôi cho rằng đây là một chủ đề thú vị đáng được ghi lại để chia sẻ với cộng đồng kỹ thuật.

Trên nền tảng iOS, nếu ứng dụng không kịp xử lý các thông điệp hệ thống (như sự kiện chạm màn hình), hệ điều hành có thể đánh giá ứng dụng đang gặp sự cố và chủ động chấm dứt tiến trình. Điều này đòi hỏi phải có cơ chế xử lý thông điệp hệ thống hiệu quả.

0%