19 bí mật để trở thành dev NodeJS xịn xò 2020 – phần 1

Trong ngành CNTT, đặc biệt là lập trình. Công nghệ luôn thay đổi từng phút từng giây. Vì vậy để luôn phát triển nghề nghiệp và có nền kiến thức vững chắc. Danh sách dưới đây là tổng hợp 19 điều để giúp bạn trở thành dev NodeJS xịn xò như con cò luôn. Học xong hết đống này bạn không thành tài cũng "thành tật".6 min


1067
1.7k shares, 1067 points

1. Học thêm về types và schema. Typescript là ứng cử viên tuyệt vời trong năm 2020

Code theo cách typeless được chứng minh là phản tác dụng(counter-productive) và rất dễ bị lỗi. Thay vào đó hãy chọn mức độ schema mong muốn bằng cách xác thực các thực thể (entities) / model sử dụng  JSON schema. Nên chọn việc gõ tĩnh cho JavaScript (hãy xem flow của Facebook) hoặc sử dụng cú pháp Typescript trong NodeJS. Năm 2019 là năm đáng nhớ của Typescript, với rất nhiều nỗ lực để khẳng định chổ đứng trong cộng đồng NodeJS. Hãy chọn Typescript.

Tài liệu tham khảo:

2. Làm phong phú thêm Linters của bạn

Linter là một công cụ dùng để phân tích source để phát hiện những lỗi sai, bug, vi phạm lỗi sai viết code.

Trong thực tế, linter để bảo đảm code mình viết ra theo đúng chuẩn (do mình hoặc team đặt ra). Các team sử dụng linter để thống nhất style code / coding convention. Vì vậy nên phát triển học hỏi thêm Linters

Tài liệu tham khảo:

3.  Đào sâu kiến ​​thức về kiến ​​trúc(architecture)

Rất ít kiến ​​thức architecture và design được nói xung quanh NodeJS, mọi người đều nói về microservice. Hầu hết đều là các khái niệm MVC và các pattern từ Ruby.  MVC được xây dựng để phục vụ nội dung và là một kỹ thuật tuyệt vời để architecture phần back-end. Liệu bạn có thể mô tả toàn bộ logic kinh doanh, quy tắc, dữ liệu, giao tiếp với các Microservices trong hai lớp Controller & Model không ? Nên hãy học hỏi nhiều hơn về architecture

Tài liệu tham khảo:

4. Cách sử dụng Async-Hook để tiếp cận trace và context

Mô hình luồng async-hook có nhược điểm lớn : khi chúng qua nhiều tệp và thực hiện các hoạt động không đồng bộ(async). Nó có một cơ chế inject code bất cứ lúc nào khi nào chạy async. Và các biến không được bảo toàn trong suốt vòng đời. Năm 2020 mang đến những thứ tốt hơn và async-hook là một trong số đó.

Tài liệu tham khảo :

5. Hiểu về tính năng Serverless

Lưu ý: FaaS và Serverless được sử dụng hoán đổi cho nhau mặc dù chúng không hoàn toàn giống nhau. Thực tế tôi đang đề cập đến dịch vụ FaaS trên nền tảng đám mây như Lambda và Google Function

Ban đầu FaaS phát triển để dùng cho các tác vụ vi mô chứ không phải cho ứng dụng microservice trên NodeJS. Khi càng phổ biến, sự khao khát của các nhà cung cấp cloud vendors, tạo ra rất nhiều tính năng mớ.

Tài liệu tham khảo :

6. Học hỏi các tính năng JavaScript mới nhất

Thỉnh thoảng, một số tính năng Javascript thực sự có giá trị được trình bày (như giới thiệu async /await b năm trước). Vì vậy, xem danh sách TC39 proposal và node.green để xác định các tính năng mới hấp dẫn phù hợp với phong cách code của bạn

Ví dụ:

7. Làm quen với API trên NodeJS

API rất phù hợp với mục đích mà nó được xây dựng cho: có quyền kiểm soát lớn đối với các sửa đổi và truy vấn.  Tuy nhiên, kiểu REST hoàn toàn đáp ứng mọi trường hợp sử dụng rất phổ biến khác như thực hiện các truy vấn tương tự có thể trả về một tập hợp dữ liệu khác.  

Ví dụ:

8. Cách sử dụng unit & integration tests

Bạn cần phải sử dụng quen cách bài test kim tự tháp, đơn vị, tích hợp và thử nghiệm đầu cuối(end-to-end) chưa?  Tuy nhiên, trong 10 năm qua, thế giới phát triển đã trải qua những thay đổi mạnh mẽ nhưng các mô hình test vẫn còn nguyên vẹn khiến tôi tự hỏi làm thế nào để test những thứ như microservice, frontends và Serverless. 

Tài liệu tham khảo :

9. Học thêm về DevOps

Vào năm 2020, ứng dụng cỡ trung bình có thể tạo thành hàng tá bộ phận chuyển động vật lý và đứng trên đỉnh của dàn nhạc lớn này nên được thực hiện một cách cẩn thận. Hầu hết các nhà phát triển đã không dành thời gian của họ để học giám sát(monitoring) và cảnh báo(alert). 

Các nhà phát triển thường ưu tiên và tập trung vào các số liệu phần cứng bên trong như CPU ​​và bộ nhớ. Thay vì bắt đầu từ các số liệu ảnh hưởng trực tiếp và không thể chối cãi đến người dùng cuối như tỷ lệ lỗi hoặc độ trễ. 

Tài liệu tham khảo :

10. Tăng mức độ bảo mật bằng cách học công cụ và kỹ thuật tấn công

Nếu bạn không thể nghĩ bị một kẻ tấn công, thì bạn không thể phòng thủ. Năm 2020, không nên thuê bên thứ ba để bảo mật hoặc chỉ dựa vào máy quét bảo mật tĩnh. Số lượng các loại tấn công trên NodeJS là quá nhiều, ứng dụng không thể đo lường được.

Một khi bạn bắt đầu làm điều này, hóa ra nó không đáng sợ. Chỉ cần làm quen với các công cụ phổ biến, vẽ kiến ​​trúc. Sau đó suy nghĩ cách tấn công ứng dụng. Theo thời gian, vô thức bạn sẽ bắt đầu bảo mật tâm trí trong mọi quyết định thiết kế và mọi dòng code trên ứng dụng NodeJS

Ví dụ:

Kết luận

Qua bài này chúng ta đã biết được 10 điều cần nên cải thiện trong năm 2020 để nâng cao trình độ về NodeJS. Hãy đăng ký nhận tin và tiếp tục chờ đón phần 2 để biết 9 điều còn lại nhé.


Like it? Share with your friends!

1067
1.7k shares, 1067 points

What's Your Reaction?

hate hate
0
hate
confused confused
0
confused
fail fail
0
fail
fun fun
0
fun
geeky geeky
0
geeky
love love
1
love
lol lol
1
lol
omg omg
1
omg
win win
1
win