YAML là gì?

YAML là 1 định dạng dũ liệu trung gian được thiết kế để người dùng và các ngôn ngữ lập trình cùng hiểu được. YAML được dùng vào mục đích tương tự JSON, XML nhưng nó lại có nhiều tính năng nổi bật hơn vì cấu trúc dữ liệu linh hoạt hơn, hỗ trợ nhiều ngôn ngữ lập trình, diễn đạt và mở rộng dữ liệu hơn và dễ sử dụng vì khá có nhiều kiểu dữ liệu lập trình. chi tiết tại http://www.yaml.org/

Ví dụ về 1 đoạn YAML được biểu diễn như sau:

http://yaml-online-parser.appspot.com/ Là 1 trang chuyển đổi YAML sang JSON. Bạn nên dùng trang này trong lúc đọc sẽ nhanh hiểu hơn.

Đang xem: Yaml là gì, yaml file là gì

YAML dùng làm gì?

Tương tự JSON hay XML, YAML có thể dùng để chứa đựng thông tin ở dạng text. Dùng cho các file config, lưu giá trị hằng…

YAML và JSON

– JSON là YAML, nói cách khác JSON có thể đọc được bởi các trình đọc YAML, điều ngược lại không đúng. – JSON đáp ứng tốt hơn mục đích trao đổi dữ liệu ( thông qua AJAX…), YAML để xử lý các dữ liệu offline (file config…). Chắc vì JSON thường được xử lý nhanh hơn (http://stackoverflow.com/questions/2451732/how-is-it-that-json-serialization-is-so-much-faster-than-yaml-serialization-in-p)

YAML và XML

– YAML không có các thẻ thuộc tính như XML nhưng thay vào đó nó hỗ trợ các kiểu khai báo để xử lý dữ liệu.

Ví dụ 1 đoạn XML

Bob Abooey adv 555-1212 ahunter
example1.com babooey
example2.com
1 đoạn YAML

babooey: computer : cpu1 firstname: Bob lastname: Abooey cell: 555-1212 addresses: – address: babooey
example1.com password: xxxx – address: babooey
example2.com password: xxxx
Muốn lấy thông tin của 1 user: với XML bạn tìm đến thẻ user có id=”babooey”, với YAML bạn tìm đến key: babooey.

Xem thêm:

– Sau 2 ví dụ trên, bạn thấy cách viết nào tối ưu ngắn gọn và linh hoạt trong việc chỉnh sửa hơn!

Ưu điểm YAML – Hỗ trợ comment trong file – Tính linh hoạt trong biểu diễn dữ liệu cao nhờ có hỗ trợ kiểu dữ liệu: float, array, list… – Hỗ trợ phép gán (anchor)… – YAML dễ đọc-hiểu-viết, cú pháp ngắn gọn làm đoạn code YAML trong khá thoáng đãng.- Hiện tại YAML có rất nhiều thư viện cho các ngôn ngữ khác nhau: Chi tiết xem ở đây http://yaml.org/

Cú pháp sử dụng YAML

– Giống cú pháp của Python, YAML yêu cầu thụt đầu dòng trước mỗi câu. Thụt đầu dòng bởi các dấu cách (tùy cấu trúc (khối lệnh – block) mà dùng 1 hay 2,4… dấu cách), không dùng tab.

– Dùng dấu # để bắt đầu comment.

– dấu “-” để bắt đầu cho 1 list các phần tử

Ví dụ:

# start YAML- a- b- – c1 – c2- – – d1 – d2
Kết quả: Do link dài nên rút gọn – Click vào đây

– “—” để bắt đầu cho 1 đoạn YAML, và … để kết thúc đoạn đó ( … có thể có hoặc không )

Ví dụ: Link

– Với các giá trị lặp lại hoặc dùng nhiều lần,dùng “&” để gán và “*” để lấy giá trị ra: Ví dụ: Link Ở đây pink được gán nhãn cl bằng “&cl” ở đầu. Để lấy lại giá trị pink dùng “*cl”. Cái này có vẻ giống con trỏ trong C & để ghi địa chỉ, * để lấy giá trị.

Xem thêm: Bảo Hiểm Du Lịch ( Travel Insurance Là Gì ? Nội Dung Định Nghĩa, Ví Dụ, Giải Thích

Tham khảo thêm về cú pháp khác ở đây: http://www.yaml.org/refcard.html

Post Navigation

*

Previous Post: AspectMock là gì? Tại sao dùng AspectMock với Codeception

*

Next Post: Những lệnh GIT thường sử dụng từ cơ bản đến nâng cao

Site Sidebar

Search for:
Danh mụcChia sẻ (51)Kiến thức lập trình (37)Php (15)Database (6)Frontend (3)Rock Tech (45)
Thẻ
Action Plan apache Apache Pulsar athenz Behavioral Pattern ConfigServer Security and Firewall Creational Pattern các lệnh firewalld cơ bản design patterns endpoint faker firewall firewalld git git commit git merge git rebase git stash hibernate hướng dẫn cài đặt mail server Integration Test Java kiểm tra PTR linux lệnh linux mail server mail server trên centos 7 maven multiple php version MySQL nginx nginx amplify Nginx Amplify Agent NGINX Amplify là gì php php 7.1 Product manager là gì product manager làm gì project management seeding database spring boot Structural Pattern Tôi làm việc gì trong công ty và tổ chức của tôi? Tôi là Product Manager web services

Site Footer

Powered by WordPress

Sliding Sidebar

About Me

*

Hello, my name is Dũng (Johnny). Welcome to my blog. As I’m a developer, I write about topics related to the field of programming, mainly from a technical point of view. On this blog you’ll find posts which encourage discussion, information about development trends, case studies, reviews, tutorials, tips on how to improve your effectiveness, and anything else that might be fascinating to people from the IT industry. I love PHP, NodeJS,… and Fullstack.Mail: ledung
8bitbase.com

Leave a Reply

Your email address will not be published. Required fields are marked *