Trong thế giới của công nghệ, những tính chất nền tảng như sự chặt chẽ, khoa học, công thức, hay quy tắc được ưu tiên hàng đầu và quan trọng hơn các xu thế lập trình. Nhưng điều đó không có nghĩa là môn lập trình không có xu hướng. Có những công nghệ mới hiện nay có khả năng tăng hiệu quả cao, độ tùy biến mở rộng, dễ sử dụng, liên tục thay đổi và có khả năng làm lu mờ các thế hệ đi trước.
Xu hướng đang nóng: Preprocessors - tiền xử lý
Cách đây không lâu, việc tạo ra một ngôn ngữ lập trình mới có nghĩa là xây dựng tất cả mọi thứ để biến các đoạn mã thành các bit chỉ thị cho máy tính. Tuy nhiên, giờ đây chúng ta có một ý tưởng thông minh hơn. Chỉ cần viết một trình biên dịch mã tiền xử lý mới kết hợp với kho tài nguyên phong phú của các thư viện và các API, việc lập trình sẽ trở nên dễ dàng hơn.
Tiền xử lý giúp các nhà lập trình trở nên dễ dàng hơn
Ngôn ngữ lập trình Groovy là một trong những công cụ được yêu thích hiện nay với khả năng hoạt động trên JVM và hòa nhập thông suốt đối với ngôn ngữ Java. Groovy sử dụng cú pháp gần giống với Java nhưng lại không cần sử dụng dấu chấm phẩy ở cuối mỗi dòng. Nó cũng tự động dịch sang bytecode và chạy trên máy ảo Java. Nếu bạn muốn biên dịch mã JavaScript sang CoffeeScript, bạn có thể sử dụng một Preprocessor cho phép mã hóa mà không sử dụng dấu chấm câu. Hàng chục ngôn ngữ như Scala hay Clojure cũng chạy trên JVM nhưng chỉ có một JVM duy nhất. Groovy có thể tích hợp thông suốt đối với các mã nguồn hiện có của lập trình viên . Groovy không thay thế ngôn ngữ Java, mà chỉ là một bộ phận hỗ trợ phát triển.
JavaScript MV* framework
Mô hình JavaScript MVC được ứng dụng nhiều nhất
Trước kia, viết JavaScript chỉ để hiển thị hộp cảnh báo hoặc kiểm tra xem địa chỉ email có chứa ký tự @ hay không. Nhưng hiện nay, các ứng dụng HTML AJAX đã cho phép người mới bắt đầu dễ dàng hơn. Mô hình JavaScript MV* đơn giản chỉ là một kiến trúc phần mềm với ba thành phần chính là Model, View, và một phần còn lại có thể là bất kỳ tính năng nào khác. Hiện nay có hàng chục framework như Kendo, Sencha, jQuery Mobile, AngularJS, Ember, Backbone, Meteor JS... và tất cả đều sẵn sàng để xử lý các sự kiện và nội dung cho ứng dụng web và trang của bạn.
CSS frameworks
Để tăng khả năng trình diễn của website, trong file CSS sẽ xuất hiện nhiều lệnh, ví dụ như thiết lập các phông chữ với font-style:italic
. Tuy nhiên, bây giờ các website không còn sử dụng các lệnh thô sơ như trước nữa. Thay vào đó, chúng ta sử dụng CSS frameworks - bộ công cụ, thư viện, quy ước và ứng dụng. Những đặc tính trong CSS đã được tách ra thành các nhiệm vụ và tích hợp vào nhiều module chung để có thể tái sử dụng.
CSS frameworks tương tự như SASS hay người anh em Compass. Những nền tảng này giúp tăng năng suất và tránh các lỗi thông thường, tính tương tích trình duyệt tối ưu, ổn định mã hóa bằng cách cung cấp các cấu trúc lập trình như biến thực (real variable), quy tắc xếp chồng... Những công cụ này không phải là bước đột phá mới, nhưng đã cải thiện rất nhiều hiệu suất trong lập trình web .
SVG + JavaScript trên Canvas
SVG xử lý hình ảnh tối ưu hơn so với nền tảng cũ
Trước đây, Flash đã mang lại những điều tuyệt vời, nhưng cũng là sự khó chịu của nhiều người dùng. Người ta đã tìm thấy cách tích hợp các lớp DOM từ định dạng mới như SVG (Scalable Vector Graphics). SVG và HTML đã làm việc thiết kế, xây dựng hình ảnh trở nên dễ dàng cho các nhà phát triển web. Sau đó, các API lớn cung cấp bản vẽ được xây dựng trên đối tượng Canvas, thường là với sự giúp đỡ của card video. Khi kết hợp những điều trên, không có lý do gì phải sử dụng Flash nữa.
Game frameworks
Nhà phát triển game sử dụng thư viện để tập trung vào cốt chuyện, nhân vật cũng như đồ họa nhiều hơn
Cách đây một thời gian, phát triển một tựa game đòi hỏi việc thuê nhiều nhà phát triển viết tất cả mọi thứ từ đầu và bắt đầu từ ngôn ngữ lập trình c . Hiện nay, hầu hết các nhà phát triển game đã từ bỏ niềm tự hào của họ nhiều năm trước đồng thời chuyển sang sử dụng các thư viện như Unity, Corona hoặc LibGDX để xây dựng hệ thống của họ. Về bản chất, người chơi không quá quan tâm tới các nền tảng xây dựng trò chơi, mà họ quan tâm tới nội dung, nhân vật và tính nghệ thuật. Điều đó khiến các nhà sản xuất ưu tiên vào các nền tảng đã được dựng sẵn, không quá quan tâm đến chi tiết lập trình.
Ứng dụng Single-page Web
Các ứng dụng web mới biểu thị giai đoạn đầu trước khi cơ sở dữ liệu chứa đầy nội dung. Khi các ứng dụng web muốn thông tin, chúng chỉ cần kéo cơ sở dữ liệu và đổ vào khuôn địa phương. Các lớp dữ liệu hoàn toàn tách biệt với các lớp trình bày và định dạng. Nhờ sự phát triển của điện toán di động, chúng ta có thể biến một trang web thành ứng dụng.
Ứng dụng Mobile Web cho nhiều lựa chọn trên các nền tảng
Lập trình cho GPU
Trượt ngón tay trên màn hình cảm ứng
GitHub - Hệ thống quản lý mã nguồn
Mạng xã hội của mã nguồn
Giao diện Web
Thiết kế trực quan