Thumbnail

Style guide là gì?

Thumbnail

Feb Dao

|

Nếu bạn tò mò muốn biết làm thế nào để tạo được giao diện của một website vừa nhanh chóng, dễ dàng, lại vừa chính xác và tối ưu, hãy ngồi tự cho mình một cốc cafe và đọc bài viết này, tôi sẽ kể cho bạn nghe về một huyền thoại mang tên "Style guide"

Từ thủa sơ khai của internet, khi mà người ta bắt đầu tạo ra website, mục đích của nó chỉ đơn giản là truyền tải nội dung và thực hiện 1 chức năng nào đó. Khi ấy điều quan trọng là website đó phải thực hiện tốt chức năng của nó, còn về mặt giao diện thì không được chú ý đến nhiều

Hãy nhìn giao diện của Google và Facebook khi mới xuất hiện

ggfb

"Phú quý sinh lễ nghĩa" các cụ nói chẳng sai, khi mà người ta có thể tạo ra những website có khả năng thực hiện những chức năng phức tạp, thì điều "quan trọng" lúc này lại là làm thế nào để tăng được sự tương tác giữa website và người dùng, đặc biệt là phần nhìn nhưng vẫn đảm bảo được sự tối ưu, khả năng bảo trì và mở rộng thêm sau này.

Theo cách thông thường, mỗi website sẽ được tính theo đơn vị là trang (page), tức là khi chúng ta nói chuyện với khách hàng về việc tạo một website cho họ, nội dung câu chuyện sẽ xoay quanh câu vấn đề:

  • Website này có bao nhiêu page
  • Trên mỗi page có những thành phần (component) nào được hiển thị

Sau khi bản vẽ thiết kế được chấp nhận, back-end sẽ là người “xử lý” nó trước bằng cách build markup cho các page, sau đó front-end sẽ tiếp quản và style cho giống với những gì mà bản thiết kế yêu cầu.

Nhưng mọi chuyện đã thay đổi từ khi khái niệm “Style guide” ra đời

st

Lúc này, đơn vị để xác định thời gian hoàn thành một website đã được thay đổi thành “component”, vì thực tế, mỗi một page là 1 sự kết hợp của nhiều component lại với nhau và đôi khi nhiều page có thể sử dụng chung một component. Thật là dư thừa nếu như cứ phải làm đi làm lại các component đó cho mỗi page.

Thử tưởng tượng component là món đồ thời trang, nó có thể là cái áo sơ mi trắng, cái đồng hồ Rolex, chiếc quần bò… mỗi page được tạo ra giống như việc bạn chọn bộ trang phục phù hợp bằng việc kết hợp các món đồ thời trang lại với nhau. Ví dụ khi đi dự tiệc: bạn có thể dùng áo sơ mi trắng, kết hợp với quần âu; bạn cũng hoàn toàn có thể diện quần âo và áo sơ mi trắng khi đi hội thảo, chẳng có lý do gì mà bạn phải sắm riếng bộ đồ đó trong các tình huống khác nhau như vậy.

Bạn hoàn toàn có thể chia nhỏ các component thành các component nhỏ hơn để tiện quản lý và sử dụng lồng ghép trong các trường hợp khác nhau, cấp độ thấp nhất được đề cập đến là cấp độ các phần tử HTML, ví dụ như: thẻ a, heading từ H1 đến H6, các thành phần của form: button, textbox…, 

ptl

Túm lại, lúc này, style-guide sẽ là nơi để front-end dev có thể show ra cho khách hàng thấy sự hiển thị của tất cả những thứ trên website của họ như thế nào: từ HTMl elements, đến header, footer, các components và các pages mà không cần bất kỳ sự góp sức nào của back-end, markup được sử dụng lúc nào hoàn toàn là do front-end dev quyết định. Khách hàng hoàn toàn có đủ những thứ cần thiết để test về mặt giao diện của website, khi có sự thay đổi về mặt thiết kế, người front-end cũng đơn giản thay đổi lại trong style-guide và khách hàng có thể kiểm tra trực tiếp được ngay. Khi này công việc của Back-end dev đơn giản chỉ là tập trung vào xây dựng cấu trúc dữ liệu và gọi data thông qua các api để truyền vào template mà front-end đã định nghĩa!

Hy vọng sau bài viết này, bạn sẽ nắm được phần nào đó khái niệm về Style-guide, hãy đón đọc bài viết tiếp theo với tiêu đề “Style-guide định hướng lập trình như thế nào?” để hiểu thêm chi tiết về vấn đề hấp dẫn này nhé!

Add new comment

The content of this field is kept private and will not be shown publicly.

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.

Comments

  • Allowed HTML tags: <em> <strong> <cite> <blockquote cite> <ul type> <ol start type> <li> <dl> <dt> <dd> <p>
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.
  • Use [gist:#####] where ##### is your gist number to embed the gist
    You may also include a specific file within a multi-file gist with [gist:####:my_file].

Spread the word