nói dối e blog

Cách Triển Khai Mảng Động Trong C

Lần trước, chúng ta đã đề cập đến một kiểu dữ liệu trừu tượng (ADT) phổ biến là sequence và cách hiện thực hóa nó trong ngôn ngữ C. Thông thường, chúng ta không sử dụng trực tiếp sequence, mà thường tận dụng nó để xây dựng các cấu trúc dữ liệu phục vụ nhu cầu cụ thể. Ví dụ như hàng đợi thông báo, ngăn xếp lệnh, v.v. Một sequence được thiết kế tốt sẽ mang lại lợi ích đáng kể: ngay cả khi bạn chỉ sử dụng một phần chức năng, hiệu suất (về mặt thời gian và không gian) cũng không bị ảnh hưởng nghiêm trọng do các tính năng không dùng đến.

Hành Trình Tự Tay Làm Bộ Trò Chơi ACQUIRE

!
Kể từ trận phiêu lưu cuối cùng trong hang động (trò chơi Descent) cùng nhóm bạn, đã trôi qua một tháng trời trên thế giới thực. Mỗi tuần tụi mình đều hăm hở lập kế hoạch quay lại khám phá dungeon để rửa mối hận bị DM “vùi dập” nhưng lần nào cũng vướng lịch trình ngược xuôi. Nào là công tác, nào là lễ hội âm nhạc, nào là hội thảo Erlang… Lần này cả nhóm quyết tâm “đi không được thì chạy” nên chốt lịch gặp mặt vào thứ Bảy.

LuaJIT Đã Chính Thức "Lên Đời" Sau Bao Ngày Mong Đợi

Vài tháng về trước, Mike Pall đã làm cả cộng đồng Lua xôn xao khi tuyên bố trên mailing list rằng phiên bản LuaJIT 2.0 sắp ra mắt sẽ áp dụng một thuật toán hoàn toàn mới, hứa hẹn nâng hiệu năng lên một tầm cao chưa từng thấy. Đến tận bây giờ tôi vẫn nhớ ánh mắt rực sáng của anh bạn Soloist khi anh ấy hào hứng chia sẻ với tôi về điều này. Chính vì thế mà sự ra đời của LuaJIT 2.0 đã trở thành một trong những sự kiện được chờ đón nhất trong suốt cả năm nay, đặc biệt là với các lập trình viên đang hoạt động trong cộng đồng Lua.

Nâng Cấp Ubuntu 9.10

Vài ngày gần đây, tôi đã thành công nâng cấp mượt mà hệ điều hành Ubuntu trên vài chiếc máy tính bàn từ phiên bản 9.04 lên 9.10. Nhân đây xin tiếp tục gửi lời khen ngợi đến NetEase và các đồng nghiệp phụ trách nguồn mirrors.163.com - tốc độ tải về tại đây cực kỳ ấn tượng, có thể đạt đến ngưỡng băng thông tối đa của văn phòng tôi (1MB/s). Nhờ vậy, thời gian nâng cấp chỉ còn phụ thuộc vào tốc độ xử lý của CPU mà thôi.

Nội Suy Và Hòa Trộn Hoạt Hình Xương 3D

Sau ba ngày vật lộn với vấn đề đã làm tôi đau đầu suốt nửa năm trời, hôm nay tâm trạng vô cùng hào hứng muốn chia sẻ. Vấn đề nằm ở hệ thống hoạt hình xương trong engine 3D của chúng tôi - khi chuyển đổi giữa hai animation có sự khác biệt lớn, hiệu ứng chuyển động luôn bị “giật” hoặc “vỡ” không tự nhiên. Điều này khiến tôi nhận ra một thực tế thú vị trong đồ họa 3D: sự chính xác không chỉ dựa trên số liệu mà còn phụ thuộc vào cảm nhận thị giác con người.

Triển Khai Sequence Trong C

Dạo này tôi dành hầu hết thời gian viết code, mỗi tuần khoảng 3-4 nghìn dòng. Vì thế không còn thời gian dư dả để viết blog. Có lẽ một thời gian nữa tôi mới có dịp tổng hợp các ý tưởng của mình.

Vài năm gần đây tôi chủ yếu sử dụng C để thiết kế và lập trình hệ thống (dĩ nhiên cũng viết khá nhiều đoạn mã Lua). Điều khiến tôi băn khoăn nhất chính là xác định các yêu cầu tối thiểu trong lập trình hệ thống. C++ cung cấp quá nhiều thứ, nhưng C lại quá ít. Khi làm việc lâu dài với C, chúng ta chắc chắn cần nhiều hơn thế.

0%