RSS

Chương 1 (cont): Các lợi ích của Domain-Specific Development

06 Jun

  • Một DSL cho khả năng làm việc dưới dạng problem space, với phạm vi ít hơn cho việc sinh ra các lỗi đến từ việc thể hiện nó trong một ngôn ngữ mục đích chung (general-purpose language).
  • Làm việc dưới dạng “problem space”, làm cho model có thể sử dụng được với những người không quen với công nghệ cài đặt, bao gồm cả những người kinh doanh.
  • Các model được thể hiện bằng cách sử dụng DSL có thể được validate (xác định tính hợp lệ) ở mức trừu tượng của problem space, có nghĩa là các lỗi trong sự hiểu biết hay sự thể hiện có thể được tìm kiếm một cách dễ dàng hơn trong quá trình phát triển.
  • Các model có thể được sử dụng để giả lập một giải pháp một cách trực tiếp, cung cấp feedback một cách trực tiếp trên sự thích hợp của model.
  • Các model cũng có thể được sử dụng để generate các model khác, và để cấu hình các hệ thống, network, và sản phẩm khác, có thể trong sự kết hợp với các công nghệ cho phép khác như các wizard.
  • Một domain-specific language cung cấp một domain-specific API cho việc thao tác trên các model của nó, vì vậy cải tiến năng suất của nhà phát triển.
  • Các artifact được phát sinh từ một DSL không cần phải là tất cả các artifact cài đặt công nghệ; một model thích hợp có thể được sử dụng để phát sinh các build script, purchase order, tài liệu, hóa đơn hay các material, kế hoạch, bộ khung của các hợp đồng hợp lệ.
  • Một khi kiến thức kính doanh quan trọng được capture trong một model, nó trở nên dễ dàng một cách đáng kể để di trú một giải pháp từ một công nghệ này tới một công nghệ khác, hay giữa các phiên bản của cùng một công nghệ. Việc này thường được thực hiện một cách đơn giản bằng các thay đổi khiêm tốn tới các trình phát sinh (generator) hay trình thông dịch (interpreter).
 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: