Những xu hướng lập trình trong năm 2016

Ngoc Huynh

Đây là khoảng thời gian tuyệt vời dành cho các nhà công nghệ và các lập trình viên trên khắp thế giới. Số lượng các ngôn ngữ lập trình và các framework hiện có, cũng như các công cụ phát triển và các tài liệu liên quan đến lập trình tiếp tục tăng mạnh.

Mặc dù tất cả các nguồn tài nguyên đều nằm trong tầm tay của các lập trình viên, nhưng lại không nắm rõ những xu hướng hàng đầu nào đang dẫn dắt chúng ta. Trong khuôn khổ bài viết hôm nay chúng tôi xin liệt kê ra những xu hướng lập trình phổ biến trong năm 2016.

Phiên bản mới nhất của JavaScript

ECMA Script 6, phiên bản kế tiếp của Javascript hay ECMAScript 5 (ES5) đã được phát hành chính thức vào tháng 6/2015, đây là một trong những bản phát hành quan trọng nhất trong phát triển web kể từ phiên bản ES5 đã được phát hành vào năm 2009.

JavaScript là ngôn ngữ lập trình thông dụng nhất thế giới, có mặt ở hầu khắp các máy tính cá nhân và thiết bị di động cùng với một trình duyệt web có khả năng chạy JavaScript. Vì vậy, tác động của ES6 và một số lượng lớn các tính năng mới dành cho phát triển web hiện đại là khá lớn.

Các tính năng mới bao gồm arrows nhằm làm đơn giản hóa cú pháp closure, lớp (classes), chuỗi mẫu (template strings), destructuring, parameters, từ khóa mới let và const…Phiên bản mới nhất của JavaScript nhanh chóng nhận được sự hỗ trợ từ các trình duyệt nổi tiếng.

Đồng thời, các lập trình viên có thể bắt đầu sử dụng phần lớn các tính năng mới của ES6 bằng cách sử dụng bộ biên dịch (transpiler) chẳng hạn như Babel, để biên dịch lập trình ES6 nhằm mục đích hoàn toàn tương thích với ES5 JavaScript để có thể hoạt động trong các trình duyệt hiện đại.

Tính ưu thế của Backend as a Service (BaaS)

Trong một vài năm sắp tới, lập trình hiện đại sẽ tiếp tục chuyển đổi từ việc tạo ra một quy trình lập trình hoàn toàn khép kín, toàn bộ là các ứng dụng tự quản. Thay vào đó, sự phát triển sẽ ngày càng tập trung vào việc sử dụng các dịch vụ của bên thứ ba để xử lý phần lớn những khía cạnh khác của một dự án như lưu trữ đám mây, push notifications và quản trị người dùng.

BaaS là một thuật ngữ phổ biến cho những tiện ích này, và sự phổ biến của chúng sẽ ngày càng tăng cao, đặc biệt là đối với người dùng doanh nghiệp nơi mà khả năng mở rộng đặt ra một gánh nặng cho các ứng dụng lớn. Với một BaaS như Parse, thì các nhóm kỹ thuật và vận hành có thể tập trung vào việc thiết lập công ty khỏi sự cạnh tranh, trong khi các tính năng cơ sở và chi phí liên kết thì được xử lý bởi hoàn toàn một bên khác.

Dễ dàng triển khai và quản lý các container

Mặc dù Backend as a Service đang đáp ứng nhu cầu của lập trình viên nhằm dễ dàng liên kết các dự án vào lưu trữ đám mây và mạng lưới xã hội APIs, nhưng nhiều ứng dụng vẫn còn phụ thuộc vào các development stack cục bộ và các máy chủ dự phòng để hoạt động một cách đúng đắn. Thật không may, server provisioning thì vốn đã làm khó khăn và tốn thời gian. Do vậy, chúng ta không mấy bất ngờ khi thấy được sự tăng lên nhanh chóng của các container và provisioning tự động.

Các dịch vụ chẳng hạn như Packer và Docker cho phép các kỹ sư nhanh chóng tạo ra các machine image cùng với các phiên bản rõ ràng của hệ điều hành, các thư viện, các ngôn ngữ và framework. Các machine image này có tên gọi là container, và được sao chép một cách dễ dàng nhằm mở rộng các dịch vụ hiện có hay nhanh chóng tạo ra một dịch vụ mới. Nếu nhóm vận hành không quan tâm đến vấn đề này, thì bây giờ họ nên nghĩ đến.

Tăng sự phụ thuộc vào các ngôn ngữ lập trình hàm

Khi các ứng dụng hiện đại ngày càng đòi hỏi nhiều băng thông, bộ nhớ và quá trình xử lý, thì rõ ràng là các mô hình máy đơn không thể đáp ứng những yêu cầu này. Để thực sự scale một hệ thống, chúng ta nên song song hóa nó càng nhiều càng tốt, điều này dẫn tới nhu cầu ngày càng tăng đối với các ngôn ngữ lập trình hàm chẳng hạn như Haskell, Clojure, Scala và Erlang. Theo đó, nhu cầu dành cho các lập trình viên cũng sẽ tăng cao.

Chuyển dịch theo material design và sự tương đồng các thiết kế mẫu

Thiết kế web phẳng (Flat design) đã là mốt thịnh hành trong những năm gần đây như là một phương pháp tiếp cận tối giản để tạo ra giao diện người dùng hiện đại, nhưng năm 2016 có thể mang sự chú trọng đến material design. Ví dụ như vào năm 2006, Microsoft lần đầu tiên máy nghe nhạc cầm tay Zune, lúc đó họ đã khai sinh một cách tiếp cận mới về thiết kế, là nền tảng cho thiết kế của giao diện Metro hiện nay trên các sản phẩm như Windows Phone 7 và Windows 10.

Khi material design chuyển sang các xu hướng hàng đầu vào năm nay, có thể chúng ta sẽ thấy nhiều thiết kế UI mới, do các nhà thiết kế phần mềm tiếp tục theo đuổi responsive design. Đặc biệt Web UI có thể trở nên quen thuộc hơn, nhưng đây không phải là một điều không tốt. Ngược lại, các nhà thiết kế đang hiểu rõ các thiết kế cơ bản chẳng hạn như màn hình đăng nhập và trình đơn điều hướng, tất cả đều phải quen thuộc với người dùng.

Kết luận

Đây sẽ là một năm thú vị dành cho phần mềm web, từ những công nghệ nền tảng cho tới trải nghiệm người dùng. Với ECMASScript6, một ngôn ngữ web phổ biến đã có những cập nhật mới. Với BaaS và sự triển khai các container, nhiều provisioning và các tính năng cơ bản phức tạp có thể được loại bỏ. Các ngôn ngữ hàm sẽ là ngôn ngữ chủ đạo và reframe (tái định hình) cách chúng ta tiếp cận sự song song.

Material design hướng tới mục tiêu mang đến độ bền lâu cho các môi trường người sử dụng (user element), và các framework phổ biến có thể liên kết các trải nghiệm người dùng ở khắp các thiết bị.

Chia sẻ bài viết ngay

Nguồn bài viết : http://techcrunch.com/