Thai  Son

Thai Son

1647221878

Kiểm Thử Phần Mềm - Hướng Dẫn Cho Người Mới Bắt đầu

Kiểm thử phần mềm là gì?

Giả sử bạn đang làm việc trong một dự án mã hóa. Bạn đã viết một đống mã và thức khuya để sửa lỗi. Tất cả điều này là một phần của quá trình trước khi bạn phát hành sản phẩm phần mềm đó.

Sau đó, bạn sẽ kiểm tra mã của mình để xác minh rằng nó thực sự thực hiện những gì được lập trình để làm. Đây là lúc thử nghiệm phần mềm xuất hiện.

Bài viết này sẽ thảo luận về các hạng mục Kiểm thử phần mềm và các loại kiểm thử khác nhau mà nhà phát triển sử dụng phổ biến nhất. Bạn sẽ thấy rằng một số bài kiểm tra được đặt tên cho chức năng của chúng. Vì vậy, khi tôi nói kiểm tra API, tôi đang đề cập đến các bài kiểm tra được thực hiện trên các API được sử dụng trong mã nguồn của bạn.

Nhưng trước khi đi xa hơn, hãy đảm bảo rằng chúng ta biết ý nghĩa của Kiểm thử phần mềm.

Nói một cách dễ hiểu, Kiểm thử phần mềm là quá trình kiểm tra các khía cạnh khác nhau của một sản phẩm phần mềm để xác nhận các thông số kỹ thuật của phần mềm và đảm bảo rằng nó đã sẵn sàng để sử dụng.

Mục tiêu của Kiểm thử phần mềm

Từ một mã dòng đơn đến một khối mã, và thậm chí đến thành phẩm, bạn kiểm tra phần mềm để:

  • kiểm tra các khuyết tật và đảm bảo rằng sản phẩm hoạt động như quy định
  • đảm bảo rằng sản phẩm đáp ứng các tiêu chuẩn thị trường
  • giải quyết mọi sơ hở trong giai đoạn sản xuất
  • ngăn ngừa sự cố trong tương lai của sản phẩm

Đặc điểm của Kiểm thử phần mềm

Khi bạn kiểm tra phần mềm của mình, bạn muốn đảm bảo rằng các bài kiểm tra của bạn là:

  • Thực dụng
  • Đáng tin cậy
  • Thật
  • Có khả năng tìm ra lỗi
  • Có khả năng kiểm tra tính hợp lệ của phần mềm của bạn

Khi nào bạn nên kiểm tra phần mềm của mình?

Khi bạn kiểm tra phần mềm của mình sẽ phụ thuộc vào việc bạn muốn thực hiện kiểm tra nào.

Bạn có thể kiểm tra phần mềm của mình trong giai đoạn phát triển phần mềm - nghĩa là khi viết mã nguồn, như trong trường hợp kiểm thử đơn vị, kiểm tra API và những người khác.

Bạn cũng có thể kiểm tra sau khi phần mềm đã được phát triển, chẳng hạn như trong Kiểm tra giao diện người dùng (UI).

Khi nào thì nên dừng thử nghiệm?

Bạn có thể ngừng kiểm tra phần mềm của mình khi:

  • Tất cả các thử nghiệm cần thiết đã được thực hiện một cách hiệu quả
  • Các lỗi trong mã nguồn đã được giảm xuống mức tối thiểu nhất hoặc bị loại bỏ
  • Người kiểm tra đang kiểm tra xong
  • Sản phẩm được bảo mật đầy đủ trước các mối đe dọa
  • Sản phẩm được phát hành

Phương pháp kiểm tra phần mềm

Bây giờ bạn đã biết Kiểm thử phần mềm nghĩa là gì, nó được thực hiện chính xác như thế nào?

Kiểm thử phần mềm được thực hiện dựa trên hai phương pháp chính:

  1. Thử nghiệm chức năng
  2. Kiểm tra phi chức năng

Sự khác biệt chính giữa các loại Kiểm thử phần mềm này là Kiểm thử chức năng kiểm tra chức năng của một sản phẩm phần mềm trong khi kiểm thử phi chức năng tập trung vào hiệu suất của sản phẩm phần mềm.  

Thử nghiệm chức năng

Kiểm thử chức năng là quá trình kiểm tra phần mềm để xác nhận tính hữu dụng của nó đối với các thông số kỹ thuật của nó.

Nói một cách dễ hiểu, nó bao gồm các thử nghiệm khác nhau được thực hiện trên phần mềm nói chung để xác minh các chức năng của nó.

Kiểm thử chức năng giúp nhóm phần mềm biết liệu phần mềm có hoạt động theo yêu cầu hay không. Xin lưu ý bạn, Kiểm tra chức năng không có nghĩa là kiểm tra các chức năng hoặc mô-đun của đơn vị.

Ví dụ về Kiểm tra chức năng

Kiểm tra đơn vị

Trong kiểm thử đơn vị, bạn kiểm tra các đơn vị hoặc chức năng riêng lẻ của mã nguồn phần mềm của bạn. Kiểm thử đơn vị có thể được thực hiện tự động hoặc thủ công.

Kiểm tra đơn vị tự động xảy ra với sự hỗ trợ của con người trong khi kiểm tra đơn vị thủ công do con người chủ động thực hiện.

Sự khác biệt giữa hai phương pháp này là phương pháp trước được tự động hóa trong khi phương pháp sau yêu cầu mã hóa cứng.

Mục đích của kiểm thử đơn vị là để đảm bảo rằng mỗi thành phần đơn vị đang hoạt động như mong đợi.

Kiểm tra API

Giao diện lập trình ứng dụng (hoặc API) là liên kết giữa chương trình của bạn và nguồn bên ngoài. Vì vậy, nếu bạn muốn chương trình của mình làm được nhiều hơn những gì bạn viết mã, bạn cũng có thể sử dụng các tính năng của một chương trình khác. Đây là những gì tiêu thụ API là tất cả về.

Ví dụ: giả sử tôi muốn ứng dụng của mình có tính năng bản đồ. Thay vì viết mã từ đầu, tôi có thể tiết kiệm thời gian và sự căng thẳng cho mình bằng cách sử dụng một trong các API bản đồ sẵn có.  

Tuy nhiên, sử dụng API, đặc biệt là từ các nguồn bên ngoài, đi kèm với ưu và nhược điểm của nó. Và tôi cá là bạn muốn giảm thiểu khuyết điểm nhiều nhất có thể. Đây là lý do tại sao bạn cần kiểm tra API trước khi phát hành sản phẩm.

Khi bạn sử dụng API công khai hoặc riêng tư, trong khi phát triển phần mềm của mình, bạn nên kiểm tra độ tin cậy, bảo mật và hiệu quả của API trong sản phẩm của bạn trước khi phát hành.

API

API đại diện hình ảnh

Kiểm tra giao diện người dùng (Giao diện người dùng)

Giao diện Người dùng là kênh giao tiếp giữa người dùng và phần mềm.

Mỗi sản phẩm phần mềm được phát triển với các thông số kỹ thuật nhất định cho Giao diện Người dùng. Điều này có nghĩa là cách người dùng tương tác với ứng dụng được xác định trước trước khi phát triển sản phẩm.

Để đảm bảo rằng các thông số kỹ thuật này được đáp ứng theo thiết kế, bạn có thể thực hiện các thử nghiệm trên giao diện người dùng - và đây được gọi là Thử nghiệm giao diện người dùng.

Kiểm tra giao diện người dùng bao gồm những việc như kiểm tra xem trang Đăng ký có chấp nhận đầu vào một cách chính xác hay không, kiểm tra xem nút gửi có hoạt động hay không và một loạt các tính năng giao diện người dùng khác.

Trang đăng ký3--1-

Hình ảnh của một trang thanh toán

Thử nghiệm hội nhập

Đưa các thành phần vào các nhóm để thử nghiệm được gọi là thử nghiệm tích hợp. Kiểm tra tích hợp liên quan đến việc kiểm tra cách từng thành phần riêng biệt hoạt động cùng nhau để đạt được mục đích chung của sản phẩm.

Ví dụ: trong ứng dụng thương mại điện tử, các bài kiểm tra tích hợp có thể kiểm tra cách Trang chủ kết nối với trang Giỏ hàng khi nhấp vào menu Giỏ hàng.

Mục đích của kiểm thử tích hợp là để đảm bảo rằng các thành phần đang hoạt động đồng bộ - nghĩa là thành phần A hoạt động tốt với thành phần B.

LOGIN_SIGNUP-PAGE

Hình ảnh của hai trang giao diện người dùng

Kiểm tra hồi quy

Phát triển phần mềm liên quan đến việc lặp lại, điều này thường xảy ra do các lỗi trong mã nguồn.

Sau khi gỡ lỗi mã, cập nhật chương trình phần mềm hoặc thực hiện bất kỳ thay đổi nào khác đối với mã của bạn, bạn nên kiểm tra phần mềm đó để xác nhận chức năng của nó. Kiểm thử này được gọi là kiểm thử hồi quy.

Ví dụ về kiểm tra hồi quy là kiểm tra hồi quy sửa chữa, kiểm tra hồi quy có chọn lọc, kiểm tra hồi quy lũy tiến, và các loại khác.

Kiểm tra hiệu suất hoặc phi chức năng

Thử nghiệm phi chức năng đề cập đến các thử nghiệm khác nhau được thực hiện trên một sản phẩm để kiểm tra mức độ sẵn sàng đưa ra thị trường của sản phẩm. Thử nghiệm phi chức năng còn tiến thêm một bước nữa để đảm bảo tính khả thi của sản phẩm và giá trị của sản phẩm.

Ví dụ về Kiểm tra phi chức năng

Kiểm tra âm lượng

Điểm mạnh của mọi sản phẩm nằm ở khả năng xử lý các khối lượng dữ liệu khác nhau. Một số phần mềm có thể không hoạt động với cơ sở dữ liệu lớn. Để tránh bị vỡ như vậy, bạn có thể làm các bài kiểm tra âm lượng.

Kiểm tra khối lượng bao gồm việc cung cấp một cơ sở dữ liệu lớn cho phần mềm để kiểm tra chức năng của nó dựa trên khối lượng lớn dữ liệu. Thử nghiệm sản phẩm của bạn trên các khối lượng dữ liệu khác nhau cho thấy rằng sản phẩm của bạn có thể chịu được nhiều hoặc ít dữ liệu hơn tại một thời điểm nhất định.

Kiểm tra bảo mật

Trên thế giới hiện nay, an ninh là một chủ đề quan trọng và được thảo luận nhiều. Mối quan tâm bao gồm từ an ninh vật lý cho đến không gian mạng - và mọi người đều muốn có sự đảm bảo an toàn khi họ truy cập internet.

Một trong những vấn đề bạn sẽ muốn tránh với tư cách là nhà phát triển phần mềm là các mối đe dọa đối với ứng dụng của bạn. Bạn có thể thực hiện kiểm tra bảo mật trên sản phẩm phần mềm của mình để kiểm tra mức độ dễ bị tổn thương.

Kiểm tra bảo mật bao gồm xác thực, bảo mật ủy quyền và các biện pháp khác cần thiết để bảo vệ phần mềm của bạn khỏi các rủi ro và mối đe dọa.

Nơi đặt các tệp thử nghiệm trong một thư mục chương trình

Các tệp thử nghiệm của bạn phải cùng trong một thư mục thử nghiệm bên trong thư mục gốc của dự án của bạn. Điều này là để dễ dàng điều hướng và tích hợp vào dự án của bạn.

Phần kết luận

Bây giờ bạn đã biết tầm quan trọng của kiểm thử trong phát triển phần mềm, bạn nên đảm bảo viết mã không có lỗi và không có lỗi khi kiểm tra.

Điều này sẽ làm giảm thời gian bạn lãng phí trong việc sửa lỗi và do đó sẽ làm cho ngày phát hành sản phẩm trở nên dễ dàng hơn.

Cuối cùng, hãy cẩn thận đặt các tệp thử nghiệm của bạn trong cùng một thư mục, đặc biệt là đối với các thử nghiệm khác với thử nghiệm đơn vị.

Nguồn: https://www.freecodecamp.org/news/software-testing-for-beginners/

#softwaretesting 

What is GEEK

Buddha Community

Kiểm Thử Phần Mềm - Hướng Dẫn Cho Người Mới Bắt đầu
Thai  Son

Thai Son

1647221878

Kiểm Thử Phần Mềm - Hướng Dẫn Cho Người Mới Bắt đầu

Kiểm thử phần mềm là gì?

Giả sử bạn đang làm việc trong một dự án mã hóa. Bạn đã viết một đống mã và thức khuya để sửa lỗi. Tất cả điều này là một phần của quá trình trước khi bạn phát hành sản phẩm phần mềm đó.

Sau đó, bạn sẽ kiểm tra mã của mình để xác minh rằng nó thực sự thực hiện những gì được lập trình để làm. Đây là lúc thử nghiệm phần mềm xuất hiện.

Bài viết này sẽ thảo luận về các hạng mục Kiểm thử phần mềm và các loại kiểm thử khác nhau mà nhà phát triển sử dụng phổ biến nhất. Bạn sẽ thấy rằng một số bài kiểm tra được đặt tên cho chức năng của chúng. Vì vậy, khi tôi nói kiểm tra API, tôi đang đề cập đến các bài kiểm tra được thực hiện trên các API được sử dụng trong mã nguồn của bạn.

Nhưng trước khi đi xa hơn, hãy đảm bảo rằng chúng ta biết ý nghĩa của Kiểm thử phần mềm.

Nói một cách dễ hiểu, Kiểm thử phần mềm là quá trình kiểm tra các khía cạnh khác nhau của một sản phẩm phần mềm để xác nhận các thông số kỹ thuật của phần mềm và đảm bảo rằng nó đã sẵn sàng để sử dụng.

Mục tiêu của Kiểm thử phần mềm

Từ một mã dòng đơn đến một khối mã, và thậm chí đến thành phẩm, bạn kiểm tra phần mềm để:

  • kiểm tra các khuyết tật và đảm bảo rằng sản phẩm hoạt động như quy định
  • đảm bảo rằng sản phẩm đáp ứng các tiêu chuẩn thị trường
  • giải quyết mọi sơ hở trong giai đoạn sản xuất
  • ngăn ngừa sự cố trong tương lai của sản phẩm

Đặc điểm của Kiểm thử phần mềm

Khi bạn kiểm tra phần mềm của mình, bạn muốn đảm bảo rằng các bài kiểm tra của bạn là:

  • Thực dụng
  • Đáng tin cậy
  • Thật
  • Có khả năng tìm ra lỗi
  • Có khả năng kiểm tra tính hợp lệ của phần mềm của bạn

Khi nào bạn nên kiểm tra phần mềm của mình?

Khi bạn kiểm tra phần mềm của mình sẽ phụ thuộc vào việc bạn muốn thực hiện kiểm tra nào.

Bạn có thể kiểm tra phần mềm của mình trong giai đoạn phát triển phần mềm - nghĩa là khi viết mã nguồn, như trong trường hợp kiểm thử đơn vị, kiểm tra API và những người khác.

Bạn cũng có thể kiểm tra sau khi phần mềm đã được phát triển, chẳng hạn như trong Kiểm tra giao diện người dùng (UI).

Khi nào thì nên dừng thử nghiệm?

Bạn có thể ngừng kiểm tra phần mềm của mình khi:

  • Tất cả các thử nghiệm cần thiết đã được thực hiện một cách hiệu quả
  • Các lỗi trong mã nguồn đã được giảm xuống mức tối thiểu nhất hoặc bị loại bỏ
  • Người kiểm tra đang kiểm tra xong
  • Sản phẩm được bảo mật đầy đủ trước các mối đe dọa
  • Sản phẩm được phát hành

Phương pháp kiểm tra phần mềm

Bây giờ bạn đã biết Kiểm thử phần mềm nghĩa là gì, nó được thực hiện chính xác như thế nào?

Kiểm thử phần mềm được thực hiện dựa trên hai phương pháp chính:

  1. Thử nghiệm chức năng
  2. Kiểm tra phi chức năng

Sự khác biệt chính giữa các loại Kiểm thử phần mềm này là Kiểm thử chức năng kiểm tra chức năng của một sản phẩm phần mềm trong khi kiểm thử phi chức năng tập trung vào hiệu suất của sản phẩm phần mềm.  

Thử nghiệm chức năng

Kiểm thử chức năng là quá trình kiểm tra phần mềm để xác nhận tính hữu dụng của nó đối với các thông số kỹ thuật của nó.

Nói một cách dễ hiểu, nó bao gồm các thử nghiệm khác nhau được thực hiện trên phần mềm nói chung để xác minh các chức năng của nó.

Kiểm thử chức năng giúp nhóm phần mềm biết liệu phần mềm có hoạt động theo yêu cầu hay không. Xin lưu ý bạn, Kiểm tra chức năng không có nghĩa là kiểm tra các chức năng hoặc mô-đun của đơn vị.

Ví dụ về Kiểm tra chức năng

Kiểm tra đơn vị

Trong kiểm thử đơn vị, bạn kiểm tra các đơn vị hoặc chức năng riêng lẻ của mã nguồn phần mềm của bạn. Kiểm thử đơn vị có thể được thực hiện tự động hoặc thủ công.

Kiểm tra đơn vị tự động xảy ra với sự hỗ trợ của con người trong khi kiểm tra đơn vị thủ công do con người chủ động thực hiện.

Sự khác biệt giữa hai phương pháp này là phương pháp trước được tự động hóa trong khi phương pháp sau yêu cầu mã hóa cứng.

Mục đích của kiểm thử đơn vị là để đảm bảo rằng mỗi thành phần đơn vị đang hoạt động như mong đợi.

Kiểm tra API

Giao diện lập trình ứng dụng (hoặc API) là liên kết giữa chương trình của bạn và nguồn bên ngoài. Vì vậy, nếu bạn muốn chương trình của mình làm được nhiều hơn những gì bạn viết mã, bạn cũng có thể sử dụng các tính năng của một chương trình khác. Đây là những gì tiêu thụ API là tất cả về.

Ví dụ: giả sử tôi muốn ứng dụng của mình có tính năng bản đồ. Thay vì viết mã từ đầu, tôi có thể tiết kiệm thời gian và sự căng thẳng cho mình bằng cách sử dụng một trong các API bản đồ sẵn có.  

Tuy nhiên, sử dụng API, đặc biệt là từ các nguồn bên ngoài, đi kèm với ưu và nhược điểm của nó. Và tôi cá là bạn muốn giảm thiểu khuyết điểm nhiều nhất có thể. Đây là lý do tại sao bạn cần kiểm tra API trước khi phát hành sản phẩm.

Khi bạn sử dụng API công khai hoặc riêng tư, trong khi phát triển phần mềm của mình, bạn nên kiểm tra độ tin cậy, bảo mật và hiệu quả của API trong sản phẩm của bạn trước khi phát hành.

API

API đại diện hình ảnh

Kiểm tra giao diện người dùng (Giao diện người dùng)

Giao diện Người dùng là kênh giao tiếp giữa người dùng và phần mềm.

Mỗi sản phẩm phần mềm được phát triển với các thông số kỹ thuật nhất định cho Giao diện Người dùng. Điều này có nghĩa là cách người dùng tương tác với ứng dụng được xác định trước trước khi phát triển sản phẩm.

Để đảm bảo rằng các thông số kỹ thuật này được đáp ứng theo thiết kế, bạn có thể thực hiện các thử nghiệm trên giao diện người dùng - và đây được gọi là Thử nghiệm giao diện người dùng.

Kiểm tra giao diện người dùng bao gồm những việc như kiểm tra xem trang Đăng ký có chấp nhận đầu vào một cách chính xác hay không, kiểm tra xem nút gửi có hoạt động hay không và một loạt các tính năng giao diện người dùng khác.

Trang đăng ký3--1-

Hình ảnh của một trang thanh toán

Thử nghiệm hội nhập

Đưa các thành phần vào các nhóm để thử nghiệm được gọi là thử nghiệm tích hợp. Kiểm tra tích hợp liên quan đến việc kiểm tra cách từng thành phần riêng biệt hoạt động cùng nhau để đạt được mục đích chung của sản phẩm.

Ví dụ: trong ứng dụng thương mại điện tử, các bài kiểm tra tích hợp có thể kiểm tra cách Trang chủ kết nối với trang Giỏ hàng khi nhấp vào menu Giỏ hàng.

Mục đích của kiểm thử tích hợp là để đảm bảo rằng các thành phần đang hoạt động đồng bộ - nghĩa là thành phần A hoạt động tốt với thành phần B.

LOGIN_SIGNUP-PAGE

Hình ảnh của hai trang giao diện người dùng

Kiểm tra hồi quy

Phát triển phần mềm liên quan đến việc lặp lại, điều này thường xảy ra do các lỗi trong mã nguồn.

Sau khi gỡ lỗi mã, cập nhật chương trình phần mềm hoặc thực hiện bất kỳ thay đổi nào khác đối với mã của bạn, bạn nên kiểm tra phần mềm đó để xác nhận chức năng của nó. Kiểm thử này được gọi là kiểm thử hồi quy.

Ví dụ về kiểm tra hồi quy là kiểm tra hồi quy sửa chữa, kiểm tra hồi quy có chọn lọc, kiểm tra hồi quy lũy tiến, và các loại khác.

Kiểm tra hiệu suất hoặc phi chức năng

Thử nghiệm phi chức năng đề cập đến các thử nghiệm khác nhau được thực hiện trên một sản phẩm để kiểm tra mức độ sẵn sàng đưa ra thị trường của sản phẩm. Thử nghiệm phi chức năng còn tiến thêm một bước nữa để đảm bảo tính khả thi của sản phẩm và giá trị của sản phẩm.

Ví dụ về Kiểm tra phi chức năng

Kiểm tra âm lượng

Điểm mạnh của mọi sản phẩm nằm ở khả năng xử lý các khối lượng dữ liệu khác nhau. Một số phần mềm có thể không hoạt động với cơ sở dữ liệu lớn. Để tránh bị vỡ như vậy, bạn có thể làm các bài kiểm tra âm lượng.

Kiểm tra khối lượng bao gồm việc cung cấp một cơ sở dữ liệu lớn cho phần mềm để kiểm tra chức năng của nó dựa trên khối lượng lớn dữ liệu. Thử nghiệm sản phẩm của bạn trên các khối lượng dữ liệu khác nhau cho thấy rằng sản phẩm của bạn có thể chịu được nhiều hoặc ít dữ liệu hơn tại một thời điểm nhất định.

Kiểm tra bảo mật

Trên thế giới hiện nay, an ninh là một chủ đề quan trọng và được thảo luận nhiều. Mối quan tâm bao gồm từ an ninh vật lý cho đến không gian mạng - và mọi người đều muốn có sự đảm bảo an toàn khi họ truy cập internet.

Một trong những vấn đề bạn sẽ muốn tránh với tư cách là nhà phát triển phần mềm là các mối đe dọa đối với ứng dụng của bạn. Bạn có thể thực hiện kiểm tra bảo mật trên sản phẩm phần mềm của mình để kiểm tra mức độ dễ bị tổn thương.

Kiểm tra bảo mật bao gồm xác thực, bảo mật ủy quyền và các biện pháp khác cần thiết để bảo vệ phần mềm của bạn khỏi các rủi ro và mối đe dọa.

Nơi đặt các tệp thử nghiệm trong một thư mục chương trình

Các tệp thử nghiệm của bạn phải cùng trong một thư mục thử nghiệm bên trong thư mục gốc của dự án của bạn. Điều này là để dễ dàng điều hướng và tích hợp vào dự án của bạn.

Phần kết luận

Bây giờ bạn đã biết tầm quan trọng của kiểm thử trong phát triển phần mềm, bạn nên đảm bảo viết mã không có lỗi và không có lỗi khi kiểm tra.

Điều này sẽ làm giảm thời gian bạn lãng phí trong việc sửa lỗi và do đó sẽ làm cho ngày phát hành sản phẩm trở nên dễ dàng hơn.

Cuối cùng, hãy cẩn thận đặt các tệp thử nghiệm của bạn trong cùng một thư mục, đặc biệt là đối với các thử nghiệm khác với thử nghiệm đơn vị.

Nguồn: https://www.freecodecamp.org/news/software-testing-for-beginners/

#softwaretesting 

Duong Tran

Duong Tran

1661408429

Hướng dẫn JSON: Hướng dẫn cho người mới bắt đầu về JSON

JSON (JavaScript Object Notation) là một định dạng để chia sẻ dữ liệu. Hướng dẫn này sẽ thảo luận về dữ liệu bạn có thể sử dụng trong các tệp JSON và cấu trúc và cú pháp chung của định dạng này.

JSON , viết tắt của JavaScript Object Notation , là một định dạng để chia sẻ dữ liệu. Như tên gọi của nó, JSON có nguồn gốc từ ngôn ngữ lập trình JavaScript, nhưng nó có sẵn để sử dụng bởi nhiều ngôn ngữ bao gồm Python, Ruby, PHP và Java. JSON thường được phát âm giống như tên “Jason”.

JSON cũng có thể đọc được, nhẹ, cung cấp một giải pháp thay thế tốt cho XML và yêu cầu ít định dạng hơn nhiều. Hướng dẫn thông tin này sẽ thảo luận về dữ liệu bạn có thể sử dụng trong các tệp JSON cũng như cấu trúc và cú pháp chung của định dạng này.


Hiểu cú pháp và cấu trúc

JSON sử dụng .jsonphần mở rộng khi nó đứng một mình và khi nó được định nghĩa ở định dạng tệp khác (như trong .html), nó có thể xuất hiện bên trong dấu ngoặc kép dưới dạng chuỗi JSON hoặc nó có thể là một đối tượng được gán cho một biến. Định dạng này truyền giữa máy chủ web và máy khách hoặc trình duyệt.

Đối tượng JSON là định dạng dữ liệu khóa-giá trị thường được hiển thị trong dấu ngoặc nhọn. Khi làm việc với JSON, bạn có thể gặp các đối tượng JSON trong một .jsontệp, nhưng chúng cũng có thể tồn tại dưới dạng một đối tượng hoặc chuỗi JSON trong ngữ cảnh của một chương trình.

Đây là một ví dụ về một đối tượng JSON:

{
  "first_name" : "Sammy",
  "last_name" : "Shark",
  "location" : "Ocean",
  "online" : true,
  "followers" : 987 
}

Mặc dù đây là một ví dụ ngắn và JSON có thể dài nhiều dòng, nhưng điều này chứng tỏ rằng định dạng thường được thiết lập với hai dấu ngoặc nhọn (hoặc dấu ngoặc nhọn) được thể hiện { }ở hai đầu của nó và với các cặp khóa-giá trị được điền vào Khoảng không gian giữa. Hầu hết dữ liệu được sử dụng trong JSON cuối cùng sẽ được đóng gói trong một đối tượng JSON.

Các cặp khóa-giá trị có dấu hai chấm giữa chúng như trong "key" : "value". Mỗi cặp khóa-giá trị được phân tách bằng dấu phẩy, do đó, phần giữa của JSON liệt kê như sau "key" : "value", "key" : "value", "key": "value":. Trong ví dụ trước, cặp khóa-giá trị đầu tiên là "first_name" : "Sammy".

Các khóa JSON nằm ở phía bên trái của dấu hai chấm. Chúng cần được đặt trong dấu ngoặc kép, như trong "key", và có thể là bất kỳ chuỗi hợp lệ nào. Trong mỗi đối tượng, các khóa cần phải là duy nhất. Các chuỗi khóa này có thể bao gồm khoảng trắng, như trong "first name", nhưng điều đó có thể khiến bạn khó truy cập hơn khi bạn đang lập trình, vì vậy tốt nhất bạn nên sử dụng dấu gạch dưới, như trong "first_name".

Các giá trị JSON được tìm thấy ở bên phải của dấu hai chấm. Ở cấp độ chi tiết, chúng cần phải là một trong sáu loại dữ liệu sau:

  • dây
  • con số
  • các đối tượng
  • mảng
  • Booleans (đúng hoặc sai)
  • vô giá trị

Ở cấp độ rộng hơn, các giá trị cũng có thể được tạo thành từ các kiểu dữ liệu phức tạp của đối tượng hoặc mảng JSON, sẽ được thảo luận trong phần tiếp theo.

Mỗi kiểu dữ liệu được chuyển vào dưới dạng giá trị vào JSON sẽ duy trì cú pháp của riêng chúng, nghĩa là các chuỗi sẽ nằm trong dấu ngoặc kép, nhưng số sẽ không như vậy.

Với .jsoncác tệp, thông thường bạn sẽ nhận được một định dạng được mở rộng trên nhiều dòng, nhưng JSON cũng có thể được viết tất cả trong một dòng, như trong ví dụ sau:

{ "first_name" : "Sammy", "last_name": "Shark",  "online" : true, }

Điều này phổ biến hơn trong một loại tệp khác hoặc khi bạn gặp một chuỗi JSON.

Viết định dạng JSON trên nhiều dòng thường làm cho nó dễ đọc hơn nhiều, đặc biệt là khi xử lý một tập dữ liệu lớn. Vì JSON bỏ qua khoảng trắng giữa các phần tử của nó, bạn có thể xóa dấu hai chấm và các cặp khóa-giá trị của mình để làm cho dữ liệu thậm chí còn dễ đọc hơn cho con người:

{ 
  "first_name"  :  "Sammy", 
  "last_name"   :  "Shark", 
  "online"      :  true 
}

Điều quan trọng cần lưu ý là mặc dù chúng có vẻ giống nhau, nhưng một đối tượng JSON không có cùng định dạng với một đối tượng JavaScript , vì vậy mặc dù bạn có thể sử dụng các hàm bên trong các đối tượng JavaScript, nhưng bạn không thể sử dụng chúng làm giá trị trong JSON. Thuộc tính quan trọng nhất của JSON là nó có thể được chuyển dễ dàng giữa các ngôn ngữ lập trình ở định dạng mà tất cả các ngôn ngữ tham gia đều có thể hoạt động. Ngược lại, các đối tượng JavaScript chỉ có thể được làm việc trực tiếp thông qua ngôn ngữ lập trình JavaScript.

JSON có thể ngày càng trở nên phức tạp với cấu trúc phân cấp bao gồm các đối tượng và mảng lồng nhau. Tiếp theo, bạn sẽ tìm hiểu thêm về các cấu trúc phức tạp này.

Làm việc với các kiểu phức tạp trong JSON

JSON có thể lưu trữ các đối tượng lồng nhau ở định dạng JSON ngoài các mảng lồng nhau. Các đối tượng và mảng này sẽ được chuyển dưới dạng các giá trị được gán cho các khóa và cũng có thể bao gồm các cặp khóa-giá trị.

Đối tượng lồng nhau

Trong users.jsontệp sau, đối với mỗi người trong số bốn người dùng (,,, "sammy") "jesse""drew"một "jamie"đối tượng JSON lồng nhau được chuyển làm giá trị cho mỗi người trong số họ, với các khóa lồng nhau của riêng nó "username""location"liên quan đến từng người dùng. Mỗi mục nhập của người dùng trong khối mã sau là một ví dụ về đối tượng JSON lồng nhau:

{ 
  "sammy" : {
    "username"  : "SammyShark",
    "location"  : "Indian Ocean",
    "online"    : true,
    "followers" : 987
  },
  "jesse" : {
    "username"  : "JesseOctopus",
    "location"  : "Pacific Ocean",
    "online"    : false,
    "followers" : 432
  },
  "drew" : {
    "username"  : "DrewSquid",
    "location"  : "Atlantic Ocean",
    "online"    : false,
    "followers" : 321
  },
  "jamie" : {
    "username"  : "JamieMantisShrimp",
    "location"  : "Pacific Ocean",
    "online"    : true,
    "followers" : 654
  }
}

Trong ví dụ này, dấu ngoặc nhọn được sử dụng xuyên suốt để tạo thành một đối tượng JSON lồng nhau với tên người dùng và dữ liệu vị trí được liên kết cho mỗi người trong số bốn người dùng. Như với bất kỳ giá trị nào khác, khi sử dụng các đối tượng, dấu phẩy được sử dụng để phân tách các phần tử.

Mảng lồng nhau

Dữ liệu cũng có thể được lồng trong định dạng JSON bằng cách sử dụng các mảng JavaScript được chuyển dưới dạng giá trị. JavaScript sử dụng dấu ngoặc vuông [ ]ở một trong hai đầu của kiểu mảng của nó. Mảng là các tập hợp có thứ tự và có thể chứa các giá trị của các kiểu dữ liệu khác nhau.

Ví dụ: bạn có thể sử dụng một mảng khi xử lý nhiều dữ liệu có thể được nhóm lại với nhau, như khi có nhiều trang web và hồ sơ mạng xã hội khác nhau được liên kết với một người dùng.

Với mảng lồng nhau đầu tiên, hồ sơ người dùng cho "Sammy"có thể được biểu diễn như sau:

{ 
  "first_name" : "Sammy",
  "last_name" : "Shark",
  "location" : "Ocean",
  "websites" : [
    {
      "description" : "work",
      "URL" : "https://www.digitalocean.com/"
    },
    {
      "desciption" : "tutorials",
      "URL" : "https://www.digitalocean.com/community/tutorials"
    }
  ],
  "social_media" : [
    {
      "description" : "twitter",
      "link" : "https://twitter.com/digitalocean"
    },
    {
      "description" : "facebook",
      "link" : "https://www.facebook.com/DigitalOceanCloudHosting"
    },
    {
      "description" : "github",
      "link" : "https://github.com/digitalocean"
    }
  ]
}

"websites"Mỗi khóa và khóa "social_media"sử dụng một mảng để lồng thông tin thuộc hai liên kết trang web của Sammy và ba liên kết hồ sơ mạng xã hội. Bạn có thể xác định rằng đó là các mảng do sử dụng dấu ngoặc vuông.

Sử dụng lồng trong định dạng JSON của bạn cho phép bạn làm việc với dữ liệu phân cấp và phức tạp hơn.

So sánh JSON với XML

XML , hay e X tensible M arkup L anguage, là một cách để lưu trữ dữ liệu có thể truy cập được mà cả con người và máy móc đều có thể đọc được. Định dạng XML có sẵn để sử dụng trên nhiều ngôn ngữ lập trình.

Theo nhiều cách, XML tương tự như JSON, nhưng nó đòi hỏi nhiều văn bản hơn, khiến việc đọc và ghi lâu hơn và tốn nhiều thời gian hơn. XML cũng phải được phân tích cú pháp bằng trình phân tích cú pháp XML, nhưng JSON có thể được phân tích cú pháp bằng một hàm tiêu chuẩn. Ngoài ra, không giống như JSON, XML không thể sử dụng mảng.

Đây là một ví dụ về định dạng XML:

<users>
    <user>
        <username>SammyShark</username> <location>Indian Ocean</location>
    </user>
    <user>
        <username>JesseOctopus</username> <location>Pacific Ocean</location>
    </user>
    <user>
        <username>DrewSquir</username> <location>Atlantic Ocean</location>
    </user>
    <user>
        <username>JamieMantisShrimp</username> <location>Pacific Ocean</location>
    </user>
</users>

Bây giờ, hãy so sánh cùng một dữ liệu được hiển thị trong JSON:

{"users": [
  {"username" : "SammyShark", "location" : "Indian Ocean"},
  {"username" : "JesseOctopus", "location" : "Pacific Ocean"},
  {"username" : "DrewSquid", "location" : "Atlantic Ocean"},
  {"username" : "JamieMantisShrimp", "location" : "Pacific Ocean"}
] }

JSON nhỏ gọn hơn nhiều và không yêu cầu thẻ kết thúc trong khi XML thì có. Ngoài ra, XML không sử dụng một mảng như ví dụ này của JSON (bạn có thể biết thông qua việc sử dụng dấu ngoặc vuông).

Nếu bạn đã quen với HTML, bạn sẽ nhận thấy rằng XML khá giống nhau trong việc sử dụng các thẻ. Mặc dù JSON gọn gàng hơn và ít dài dòng hơn XML và nhanh chóng sử dụng trong nhiều trường hợp, bao gồm cả các ứng dụng AJAX, trước tiên bạn muốn hiểu loại dự án bạn đang làm trước khi quyết định sử dụng cấu trúc dữ liệu nào.

Sự kết luận

JSON là một định dạng nhẹ cho phép bạn chia sẻ, lưu trữ và làm việc với dữ liệu. Như một định dạng, JSON đã được hỗ trợ nhiều hơn trong các API, bao gồm cả API Twitter . JSON cũng là một định dạng tự nhiên để sử dụng trong JavaScript và có nhiều triển khai có sẵn để sử dụng trong các ngôn ngữ lập trình phổ biến khác nhau. Bạn có thể đọc hỗ trợ ngôn ngữ đầy đủ trên trang web " Giới thiệu JSON ".

Bởi vì bạn có thể sẽ không tạo .jsontệp của riêng mình mà mua chúng từ các nguồn khác, điều quan trọng là phải suy nghĩ ít hơn về cấu trúc của JSON và nhiều hơn về cách sử dụng JSON tốt nhất trong các chương trình của bạn. Ví dụ: bạn có thể chuyển đổi CSV hoặc dữ liệu được phân cách bằng tab mà bạn có thể tìm thấy trong các chương trình bảng tính thành JSON bằng cách sử dụng công cụ nguồn mở Mr. Data Converter . Bạn cũng có thể chuyển đổi XML sang JSON và ngược lại với trang tiện ích -online.info được cấp phép bởi Creative Commons .

Cuối cùng, khi dịch các kiểu dữ liệu khác sang JSON hoặc tạo dữ liệu của riêng bạn, bạn có thể xác thực JSON của mình bằng JSONLint và kiểm tra JSON của bạn trong ngữ cảnh phát triển web với JSFiddle .

Nguồn bài viết gốc tại https://www.digitalocean.com 

#json #javascript 

Thai  Son

Thai Son

1650595304

Cách Bắt Đầu Với React - Hướng Dẫn Cho Người Mới Bắt Đầu

React (còn được gọi là React.js hoặc ReactJS) là một thư viện JavaScript front-end mã nguồn mở miễn phí để tạo giao diện người dùng dựa trên thành phần UI.

React được duy trì bởi Meta (trước đây là Facebook) cùng với một cộng đồng các nhà phát triển và tổ chức cá nhân.

Theo khảo sát dành cho nhà phát triển Stack Overflow năm 2021 , React đã vượt qua jQuery để trở thành web framework được sử dụng phổ biến nhất với khoảng 40,14% thị phần. Nó cũng được mong muốn nhất, cứ bốn nhà phát triển thì có một người sử dụng nó. React cũng được sử dụng bởi hơn 8000 nhà lãnh đạo trong ngành.

Trong bài viết này, chúng ta sẽ xem lý do tại sao bạn nên học React và cách bắt đầu với nó.

Tại sao nên học React?

Có nhiều lý do tại sao bạn nên học React, nhưng đây là một số điểm thường được đề cập nhất được nhiều chuyên gia React nhấn mạnh:

React rất dễ sử dụng

Nhiều người, bao gồm cả tôi, thích React vì tính đơn giản, linh hoạt, hiệu suất, khả năng sử dụng, DOM ảo, các thành phần và nhiều tính năng khác.

Làm việc với React đơn giản hóa cuộc sống của chúng tôi với tư cách là nhà phát triển vì cơ sở hạ tầng đơn giản và mô-đun của nó, cho phép chúng tôi xây dựng và bảo trì các ứng dụng của mình nhanh hơn nhiều.

Có nhu cầu cao đối với các nhà phát triển React

Tại Hoa Kỳ, mức lương trung bình hàng năm cho một nhà phát triển React là 120.000 đô la. Nhiều doanh nghiệp và công ty sử dụng React, điều này buộc họ phải tìm kiếm tài năng mới hàng ngày.

Nếu bạn có bất kỳ sự e ngại nào về việc học hoặc trở thành nhà phát triển React, hãy xem xét lại. Không cần phải lo lắng - rất có thể sẽ luôn có một công việc dành cho bạn với tư cách là nhà phát triển React vì có hàng nghìn vị trí đang mở ngay bây giờ (thậm chí từ xa).

Không khó để học những điều cơ bản về React

Điều này có thể được hiểu theo cách khác, vì học React như một lập trình viên mới bắt đầu hoàn chỉnh chắc chắn sẽ mất nhiều thời gian hơn học JavaScript như một chuyên gia. Nhưng ý tôi là React không khó để nắm bắt một khi bạn đã hiểu kỹ các nguyên tắc cơ bản của JavaScript.

React cũng cho phép bạn sử dụng lại các phần chức năng đơn giản trên ứng dụng web React của bạn.

Tóm lại, React tương đối đơn giản để học, có một cộng đồng hỗ trợ lớn với nhiều dự án mã nguồn mở trên Github và cung cấp nhiều cơ hội việc làm.

Học React cũng sẽ giúp bạn hiểu rõ hơn về JavaScript, điều này sẽ có ích trong suốt sự nghiệp của bạn.

Vì React là một khung công tác JavaScript, điều quan trọng là phải hiểu một số nguyên tắc cơ bản về JavaScript để có thể hiểu và hiểu React. Đây là một bài viết chi tiết về tất cả các khái niệm và phương pháp JavaScript cơ bản này như bản đồ, bộ lọc và nhiều phương pháp khác. Điều này sẽ giúp bạn học React nhanh hơn.

Cách cài đặt React

Cách tốt nhất để cài đặt React hoặc tạo một dự án React là cài đặt nó với create-react-app. Đây là một trong những bước mà hầu hết người mới bắt đầu gặp khó khăn, nhưng trong hướng dẫn này, chúng ta sẽ xem xét cách bắt đầu đúng cách và thành công.

Chúng tôi sẽ sử dụng thiết bị đầu cuối của mình cho việc này (bạn có thể sử dụng thiết bị đầu cuối tích hợp sẵn hoặc tải xuống bất kỳ thiết bị nào bạn thích). Một điều kiện tiên quyết là phải cài đặt Node.js trên PC của bạn, biết rõ rằng cần có NPM (hoặc, cách khác, Yarn). Chúng tôi sẽ sử dụng NPM cho hướng dẫn này.

Để xác nhận rằng bạn đã cài đặt Node trên PC, chỉ cần khởi chạy thiết bị đầu cuối / dấu nhắc lệnh và nhập node -vnpm -vđể xem bạn có phiên bản nào.

create-react-appyêu cầu bạn phải cài đặt NPX , nên bạn cần đảm bảo phiên bản Node của mình không nhỏ hơn v14.0.0 và phiên bản NPM của bạn không nhỏ hơn v5.6.

Giả sử bạn có phiên bản NPM cũ hơn, bạn có thể sử dụng lệnh sau để cập nhật nó:

npm update -g

Khi bạn đã tìm ra NPM, bây giờ bạn có thể cài đặt React với create-react-app.

Nếu bạn cảm thấy khó khăn khi làm việc với các thiết bị đầu cuối, bạn có thể xem bài viết này về cách sử dụng dòng lệnh cho người mới bắt đầu .

Tạo-phản ứng-ứng dụng là gì?

Mặc dù cái tên giải thích những gì nó làm, bạn có thể bắt đầu tự hỏi điều gì create-react-appthực sự có nghĩa.

Tạo một ứng dụng React theo cách thủ công rất phức tạp và tốn thời gian, nhưng create-react-applàm cho nó dễ dàng hơn nhiều bằng cách tự động hóa tất cả các cấu hình và cài đặt gói.

create-react-applà cách tốt nhất để bắt đầu xây dựng một ứng dụng trang đơn mới trong React.

Nếu bạn muốn tìm hiểu cách tạo ứng dụng React theo cách thủ công mà không có create-react-app, bạn có thể xem hướng dẫn này .

Cách tạo một ứng dụng React

Bước đầu tiên là khởi động terminal / command prompt của bạn, điều hướng đến thư mục mà bạn muốn lưu ứng dụng React của mình, sau đó thực hiện lệnh này:

npx create-react-app my-app

Lưu ý: my-app là tên của ứng dụng chúng ta đang tạo, tuy nhiên bạn có thể đổi nó thành bất kỳ tên nào mà bạn chọn.

Quá trình cài đặt có thể mất vài phút. Sau khi hoàn tất, bạn sẽ thấy một thư mục xuất hiện trong không gian làm việc của mình với tên mà bạn đã đặt cho ứng dụng của mình. Xin chúc mừng!

Cách chạy ứng dụng React của bạn

Bây giờ, quay lại terminal và điều đầu tiên bạn cần làm là điều hướng đến thư mục nơi ứng dụng đã được cài đặt bằng cách sử dụng cd my-app. Sau đó, cuối cùng chạy npm startđể xem ứng dụng của bạn trực tuyến trên localhost: 3000.

Bạn sẽ thấy một cái gì đó như thế này:

hình ảnh-9

Cấu trúc thư mục

Chúng tôi vừa hoàn thành phần đầu tiên của bài viết này. Bây giờ chúng ta hãy tìm hiểu xem mỗi tệp và thư mục trong ứng dụng React của chúng ta có ý nghĩa và chức năng gì. Điều này rất quan trọng với tư cách là người mới bắt đầu hoặc một nhà phát triển React có kinh nghiệm.

Cấu trúc thư mục của ứng dụng React mới được tạo của bạn trông giống như sau khi bạn mở nó:

hình ảnh-10

Bây giờ hãy bắt đầu bằng cách giải thích các thư mục này và chúng đại diện cho những gì:

thư mục node_modules

Thư node_modulesmục chứa tất cả các phụ thuộc của chúng tôi và thư mục này bị bỏ qua khi chúng tôi thiết lập kiểm soát nguồn. Nhưng điều quan trọng cần lưu ý là package.jsontệp hoạt động song song với node_modulesthư mục vì nó chứa thông tin về tất cả các phần phụ thuộc cũng như một số lệnh script.

Nếu bạn xóa node_modulesthư mục, ứng dụng sẽ bị hỏng vì bạn sẽ không còn các phụ thuộc của mình nữa.

Để cài đặt lại các phần phụ thuộc này, bạn có thể sử dụng npm install- thao tác này sẽ kiểm tra pakage.jsontệp để tìm danh sách các phần phụ thuộc và sau đó cài đặt tất cả chúng. Điều này sẽ giúp bạn dễ dàng đẩy mã của mình trực tuyến hoặc chia sẻ mã của bạn với người khác mà không cần phải chia sẻ node_modulesthư mục nặng.

Lưu ý: Điều này không chỉ dành cho create-react-app.

thư mục chung

Mặc dù phần lớn công việc sẽ được thực hiện trong srcthư mục, nhưng thư mục chung có chứa một số tệp tĩnh, chẳng hạn như tệp HTML. Ví dụ: bạn có thể thay đổi tiêu đề ứng dụng web của mình, thêm CDN như Google Fonts, v.v.

Lưu ý: Đừng sợ tệp này vì nó chỉ là một tệp HTML thông thường. Mã duy nhất cần nhớ là nơi divđặt id roottoàn bộ ứng dụng React.

<div id="root"></div>

tệp .gitignore

Đúng như tên gọi, đó là một tệp chỉ định tệp và thư mục nào sẽ bị kiểm soát nguồn của chúng tôi bỏ qua.

Khi bạn mở tệp, bạn sẽ thấy danh sách các tệp đang bị bỏ qua, bao gồm cả node_modulesthư mục và xây dựng. Bạn có thể quyết định thêm một số tệp hoặc thư mục cụ thể.

xây dựng thư mục

Thư mục xây dựng là một thư mục khác mà bạn không thể thấy ngay bây giờ, nhưng bạn sẽ thấy khi xây dựng dự án của mình.

Điều này sẽ tạo một thư mục nội dung tĩnh sẵn sàng sản xuất có thể được lưu trữ hoặc triển khai bằng cách sử dụng tùy chọn kéo và thả trên một nền tảng như Netlify.

thư mục src

Cho đến nay, chúng tôi đã đề cập đến một số thư mục cơ bản, nhưng mối quan tâm chính của chúng tôi là srcthư mục, nơi diễn ra quá trình phát triển. Đây là srcthư mục trông như thế nào:

hình ảnh-11

Hãy bắt đầu với các tệp cơ bản: ,, App.jsvà ( bạn có thể xóa mọi tệp khác ngay bây giờ).index.jsindex.cssApp.css

App.js

Đây là nơi mà tất cả các thành phần của bạn cuối cùng sẽ gặp nhau. Tên của tệp không quan trọng, nhưng bạn nên giữ tên này để các nhà phát triển khác có thể hiểu mã của bạn.

index.js

Đây là điểm khởi đầu cho ứng dụng của bạn. Cụ thể hơn, đây là nơi bạn nhắm mục tiêu root idtừ index.htmltệp và hiển thị App.jstệp, đây là nơi toàn bộ tệp của bạn (các thành phần và trang) sẽ đáp ứng.

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';

ReactDOM.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>,
  document.getElementById('root')
);

App.css và index.css

Cả hai đều chứa các kiểu cho ứng dụng của bạn. Tệp index.csschứa kiểu toàn cục và App.csstệp gần như hoạt động giống như cách làm đối với App.jstệp - nhưng việc chúng tôi sử dụng tệp CSS hay không là hoàn toàn tùy thuộc vào chúng tôi. Trong khi bắt đầu, chúng tôi có thể chọn xóa một tệp và chỉ sử dụng một tệp CSS.

Hiểu JSX

JSX là một Cú pháp mở rộng JavaScript được sử dụng trong React để dễ dàng viết HTML và JavaScript cùng nhau.

Viết mã trong React mất nhiều thời gian vì bạn phải sử dụng React.createElementhàm mọi lúc, ngay cả khi bạn chỉ thêm một hàm đơn giản div.

hình ảnh-12

Hình ảnh trên mô tả cùng một đoạn mã được viết bằng JSX và với React.createElement. Bạn có thể biết cái nào dễ viết, dễ hiểu và dễ quản lý hơn bằng cách so sánh hai cái đó.

create-react-appnội bộ sử dụng Babel để chuyển đổi JSX sang JavaScript, vì vậy bạn không phải lo lắng về việc định cấu hình cấu hình babel của riêng mình với Webpack.

Một số điều Nên và Không nên của JSX

Đảm bảo rằng bạn biết một số chi tiết quan trọng sau để một số lỗi không cản trở bạn:

  • Đánh dấu của bạn thường được đặt sau câu lệnh trả về, dưới dạng một dòng mã hoặc mã khối.
  • Tất cả mã của bạn nên được gói trong một thẻ duy nhất. Đây có thể là một div, một thẻ không có nội dung (<>) hoặc bất kỳ thẻ nào khác.
const App = () => {
  return (
      <h1>JSX Title</h1>
      <p>This is first JSX Element!</p>
      <p>This is another JSX Element</p>
  );
};

Điều này hoạt động tốt với đánh dấu thông thường nhưng sẽ dẫn đến một lỗi lớn vì React yêu cầu các phần tử liền kề phải được bao bọc trong thẻ cha. Điều này đơn giản có nghĩa là để mã này chạy, nó phải được bao bọc trong thẻ cha, chẳng hạn như div, section, article, v.v.

const App = () => {
  return (
    <div>
      <h1>JSX Title</h1>
      <p>This is first JSX Element!</p>
      <p>This is another JSX Element</p>
    </div>
  );
};

Bạn cũng có thể sử dụng React.Fragmentthành phần này.

Cách thêm nhận xét vào mã JSX

Là một nhà phát triển, hiện nay thông lệ tiêu chuẩn là luôn thêm nhận xét vào mã của bạn và JSX không phải là ngoại lệ. Bạn có thể sử dụng lệnh tắt (phím tắt Cmd + / (Mac) hoặc Ctrl + / để thêm hoặc xóa một nhận xét cụ thể).

Lưu ý: Chúng ta có thể làm được nhiều điều với JSX. Bạn có thể đọc bài viết này để tìm hiểu thêm về cách hoạt động của JSX.

Tóm lại, JSX chỉ cung cấp đường cú pháp cho React.createElement (component, props, ...children)hàm.

Tiếp theo là gì?

Bây giờ bạn đã biết cách bắt đầu với React, bước tiếp theo là tìm hiểu nó đúng cách, hiểu các chức năng của nó, v.v.

Ngày nay, có rất nhiều nguồn tài nguyên tuyệt vời dành cho việc học React, rất nhiều tài nguyên đến nỗi rất khó để xác định đâu là tài nguyên hiện tại và hữu ích.

Thay vì cố gắng tham gia nhiều khóa học cùng một lúc, điều tốt nhất nên làm là tìm một hướng dẫn hữu ích và hoàn thành nó. Hãy xem Khóa học React miễn phí của freeCodeCamp cho năm 2022 hoặc Học React - Khóa học đầy đủ cho người mới bắt đầu .

Sự kết luận

Qua bài viết này, bạn đã biết React là gì, tại sao bạn nên học React, cách cài đặt nó trên máy. Bạn cũng đã biết mỗi tệp trong cấu trúc thư mục của nó có chức năng gì.

Nguồn: https://www.freecodecamp.org/news/get-started-with-react-for-beginners/

#react #reactjs 

CODE VN

CODE VN

1640615422

Đường dẫn tương đối trong Python: Hướng dẫn cho người mới bắt đầu

Nếu bạn đã làm việc trên một dự án Python có nhiều hơn một tệp, khả năng là bạn đã phải sử dụng một câu lệnh nhập trước đó.

Đường dẫn tương đối là gì

Một  đường dẫn tương đối trỏ đến một vị trí có  liên quan  đến thư mục hiện tại. Các đường dẫn tương đối sử dụng hai ký hiệu đặc biệt, a dot (.)và a double-dot (..), dịch sang thư mục hiện tại và thư mục mẹ.

Đường dẫn tương đối trong Python

Các mô-đun OS bằng Python cung cấp các chức năng để tương tác với hệ điều hành. Các os.path module là một sub-mô-đun của mô-đun OS  bằng Python sử dụng cho tên đường dẫn chung thao tác.

Để đặt đường dẫn tương đối trong Python, bạn có thể sử dụng đoạn mã sau.

import os

dirname = os.path.dirname(__file__)
filename = os.path.join(dirname, 'your relative path to the file')

Đoạn mã trên sẽ cung cấp cho bạn đường dẫn tuyệt đối đến tệp bạn đang tìm kiếm.

Python os.path.relpath ()

Đây os.path.relpath()là một phương thức Python tích hợp được sử dụng để lấy một đường dẫn tệp tương đối đến đường dẫn nhất định từ thư mục làm việc hiện tại hoặc từ thư mục đã cho.

Thí dụ

import os

path = "/Users/krunal/Desktop/code/pyt/database"
  
start = "/Users/krunal"

relative_path = os.path.relpath(path, start)

print(relative_path)

Đầu ra

Desktop/code/pyt/database

Python: Đường dẫn tuyệt đối so với Đường dẫn tương đối

Đường dẫn tuyệt đối là đường dẫn mô tả vị trí của tệp hoặc thư mục bất kể thư mục làm việc hiện tại là gì; trong thực tế, nó là tương đối với thư mục gốc.

Một đường dẫn tương đối mô tả vị trí của tệp hoặc thư mục có liên quan đến thư mục làm việc hiện tại. Không giống như đường dẫn tuyệt đối, đường dẫn tương đối chứa thông tin chỉ tương đối với tài liệu hiện tại trong cùng một trang web, điều này tránh phải cung cấp đường dẫn tuyệt đối đầy đủ.

Đường dẫn tệp tuyệt đối bắt đầu bằng dấu gạch chéo phía trước và mô tả cách truy cập tệp hoặc thư mục nhất định, bắt đầu từ thư mục gốc của hệ thống tệp. Đường dẫn tệp tương đối không bắt đầu bằng dấu gạch chéo phía trước và được diễn giải theo quan điểm của thư mục làm việc hiện tại.

Nếu bạn không biết người dùng sẽ thực thi tập lệnh từ đâu, cách tốt nhất là tính toán đường dẫn tuyệt đối trên hệ thống của người dùng bằng cách sử dụng os__file__ . Các __FILE__ là một biến bộ toàn cầu trên tất cả các kịch bản Python mà trả về đường dẫn tương đối đến *.pytập tin chứa nó.

Đường dẫn tương đối đến tuyệt đối trong Python

Để lấy đường dẫn tệp tuyệt đối bằng Python, hãy sử dụng os.path.abspath()hàm.

import os

abspath = os.path.abspath("app.py")
print(abspath)

Đầu ra

/Users/krunal/Desktop/code/pyt/database/app.py

Đó là nó cho hướng dẫn này.

Hoang  Kim

Hoang Kim

1633323158

Solidity: Hướng dẫn cho người mới bắt đầu

Solidity là một ngôn ngữ lập trình cấp cao, hướng đối tượng để tạo các hợp đồng thông minh trên blockchain tự động hóa các giao dịch. Ngôn ngữ này được tạo ra bởi những người tham gia dự án Ethereum khi nó được đề xuất vào năm 2014. Ngôn ngữ này chủ yếu được sử dụng để tạo các hợp đồng thông minh trên chuỗi khối Ethereum.

Theo tài liệu của nó, "Solidity là một ngôn ngữ ngoặc nhọn. Nó bị ảnh hưởng bởi C ++, Python và JavaScript và được thiết kế để nhắm mục tiêu Máy ảo Ethereum (EVM)."

Solidity cũng được coi là một phương ngữ của JavaScript. Điều này ngụ ý rằng nếu bạn biết JavaScript, việc học Solidity sẽ trở nên đơn giản. Trước khi tìm hiểu thêm về solidity, chúng ta hãy hiểu một số thuật ngữ cơ bản của blockchain.

Máy ảo Ethereum

Máy ảo Ethereum (EVM) là môi trường thời gian chạy hợp đồng thông minh Ethereum. Máy ảo Ethereum tập trung vào việc cung cấp bảo mật và cho phép các máy trên toàn thế giới thực thi các chương trình.

Máy ảo tạo ra một lớp trừu tượng giữa mã và máy thực thi nó một cách hiệu quả. Nó được yêu cầu để thúc đẩy tính di động của phần mềm và đảm bảo rằng các chương trình được cách ly với nhau và với máy chủ của chúng.

Máy ảo Ethereum được tạo ra để phục vụ như một môi trường thời gian chạy cho các hợp đồng thông minh dựa trên Ethereum.Độ rắn (2) .png

Hợp đồng thông minh

Hợp đồng thông minh là một chương trình phi tập trung đáp ứng các sự kiện bằng cách thực thi logic nghiệp vụ. Việc trao đổi tiền, cung cấp dịch vụ, mở khóa thông tin được kiểm soát bởi quản lý quyền kỹ thuật số và các hình thức thao túng dữ liệu khác, chẳng hạn như thay đổi tên trên quyền sở hữu, tất cả đều là kết quả có thể xảy ra khi thực hiện hợp đồng thông minh. Hợp đồng thông minh thường được viết bằng Solidity.

Các ngôn ngữ hợp đồng thông minh như Solidity không thể được thực thi trực tiếp bởi Máy ảo Ethereum. Thay vào đó, chúng được chuyển đổi thành các lệnh máy cấp thấp được gọi là mã quang.

Bây giờ bạn đã có ý tưởng về EVM và Hợp đồng thông minh, chúng ta có thể tiếp tục tìm hiểu về Sự vững chắc

Thiết lập môi trường

Trước khi cài đặt Solidity, bạn cần đảm bảo rằng bạn đã cài đặt Node.js và NPM trên máy tính của mình. Để cài đặt node.js trong Linux (Ubuntu), bạn có thể làm theo bài viết này .

Khi bạn đã cài đặt thành công Node.js và NPM trong máy của mình, bạn có thể tiến hành cài đặt trình biên dịch Solidity như sau:

sudo npm install -g solc

Lệnh trên sẽ cài đặt Solcjs và cung cấp nó trên toàn cầu trên toàn hệ thống. Bây giờ bạn có thể chạy

solcjs --version

Nếu mọi thứ diễn ra tốt đẹp, bạn sẽ thấy thứ gì đó tương tự như bên dưới trong thiết bị đầu cuối của mình

0.8.9+commit.e5eed63a.Emscripten.clang

Bạn cũng có thể sử dụng một trình soạn thảo trực tuyến có tên là Remix IDE để Biên dịch và Chạy mã Solidity của bạn.

Từ khóa dành riêng

Sau đây là các từ khóa dành riêng trong Solidity:

abstractafteraliasapply
autocasecatchcopyof
defaultdefinefinalimmutable
implementsininlinelet
macromatchmutablenull
ofoverridepartialpromise
referencerelocatablesealedsizeof
staticsupportsswitchtry
typedeftypeofunchecked 

Nhập các tệp khác trong Solidity

Nhập tệp trong Solidity tương tự như JavaScript, để nhập tệp, bạn có thể chỉ cần ghi

import "file";

Tất cả các ký hiệu toàn cục từ "tệp" được nhập vào phạm vi toàn cầu hiện tại bằng câu lệnh trên. Nhưng nếu bạn muốn tạo một biểu tượng toàn cầu mới someName với tất cả các biểu tượng toàn cầu từ "tệp" với tư cách là thành viên, bạn có thể viết

import * as someName from "file";

Nhận xét trong Solidity

Cũng giống như các ngôn ngữ lập trình khác, Solidity hỗ trợ cả nhận xét một dòng và nhiều dòng.

  • Bắt đầu dòng với //để bao gồm một nhận xét một dòng.
  • Bắt đầu bằng /*và kết thúc bằng */để bao gồm một nhận xét nhiều dòng.
 // This is a single-line comment
 /*
   but this is a multi-line comment in solidity
   It is easy, right?
 */

Các biến trong Solidity

Chủ yếu có hai loại biến có sẵn trong Solidity.

  • Biến cục bộ : Các biến có giá trị sẽ tồn tại cho đến khi hoàn thành chức năng
  • Biến trạng thái : Các biến có giá trị được lưu giữ vĩnh viễn trong hệ thống lưu trữ hợp đồng

Biến số đưa ra

Các biến trạng thái lưu trữ giá trị vĩnh viễn trong bộ lưu trữ hợp đồng. Mỗi phương thức nên có phạm vi riêng và các biến trạng thái nên được khai báo bên ngoài bất kỳ hàm đã xác định nào.

Biến trạng thái.png

Biến cục bộ

Ngữ cảnh của biến cục bộ được chứa bên trong hàm và nó không thể được truy xuất từ ​​bên ngoài nó. Các biến này thường được sử dụng để lưu trữ các giá trị tạm thời.

Biến cục bộ.png

Các nhà khai thác trong Solidity

Các toán tử quan trọng trong mọi ngôn ngữ lập trình vì chúng thiết lập nền tảng cho việc lập trình. Tương tự, chức năng của Solidity cũng không hoàn thiện nếu không sử dụng các toán tử.

Solidity hỗ trợ các loại toán tử sau:

  • Toán tử số học
  • Toán tử quan hệ
  • Toán tử logic
  • Toán tử Bitwise
  • Toán tử chuyển nhượng
  • Các nhà khai thác có điều kiện

Tuy nhiên trong bài viết này, chúng ta sẽ chỉ nghiên cứu 3 trong số chúng nhưng trong bài viết sau, tôi sẽ cố gắng giải thích tất cả chúng :)

Toán tử số học

Các toán tử này được sử dụng để thực hiện các phép toán.

OperatorDenotationDescription
Addition+Used to add two operands
SubtractionUsed to subtract the second operand from first
Multiplication*Used to multiply both operands
Division/Used to divide numerator by denominator
Modulus%Gives the remainder after integer division
Increment++Increases the integer value by one
DecrementDecreases the integer value by one

Toán tử quan hệ

Các toán tử này được sử dụng để so sánh hai giá trị

OperatorDenotationDescription
Equal==Checks if two values are equal or not, returns true if equals, and vice-versa
Not Equal!=Checks if two values are equal or not, returns true if not equals, and vice-versa
Greater than>Checks if left value is greater than right or not, returns true if greater, and vice-versa
Less than<Checks if left value is less than right or not, returns true if less, and vice-versa
Greater than or Equal to>=Checks if left value is greater and equal than right or not, returns true if greater and equal, and vice-versa
Less than or Equal to<=Checks if left value is less than right or not, returns true if less and equals, and vice-versa

Toán tử logic

Các toán tử này được sử dụng để kết hợp hai hoặc nhiều điều kiện

OperatorDenotationDescription
Logical AND&&Returns true if both conditions are true and false if one or both conditions are false
Logical OR||Returns true if one or both conditions are true and false when both are false
Logical NOT  

Phần kết luận

Tôi hy vọng bạn thấy bài viết này hữu ích, nếu bạn cần bất kỳ sự giúp đỡ nào, hãy cho tôi biết trong phần bình luận.

#blockchain #solidity #smartcontract #ethereum