PDA

View Full Version : Giúp mình hiểu rõ về các thuật ngữ API , Framework... ?



FTP
04-03-2010, 15:51
Mình đang chuẩn bị nghiên cứu làm web nâng cao,và định làm đề tài tương tự như các trang http://vietbando.com,hay http://diadiem.com ...
Tìm đọc trên các forum,mình cũng biết được một số đều cơ bản.Nhưng bên cạnh đó mình mình không hiểu và phân biệt được một số thuật ngữ sau : API ,Framework, và các thứ gọi như là Ajax kèm theo đó là Jquery , Prototype , Mootool.
Rất mong được các bạn chia sẽ kiến thức cho mình phân biệt được các thuật ngữ trên và mối quan hệ giữa chúng
Cảm ơn các bạn rất nhiều.

fotech_nd
04-03-2010, 20:04
Hỏi anh gồ What does stand for ***, với *** là các từ khóa định tìm hiểu :)

FTP
05-03-2010, 09:15
Hiện tại mình đọc bài này có đôi chỗ chưa hiểu:

1.Là API có phải là Framework hay không. Đồng thời Jquery,Prototype,Motool cũng là Framework không - và AJAX có liên quan gì tới chúng.

2.Tại sao có cái phải trả tiền gì đó,còn có cái free.Mình lướt trên trang diadiem.com có thấy trả tiền gì đâu.Chỉ trả tiền cước hàng tháng thôi.

3.API và các thứ như Jquery,Prototype,Motool có thể tự ngồi viết (định nghĩa ) lại theo cách riêng của mình được không?

Rất mong được các bạn gỡ rối...:)
Xin trích bày chia sẻ các bạn





Tại sao tôi chọn Map API của Google ?
http://bloghoctap.com/wp-content/uploads/2009/12/mapapi-google-banner.jpg
Hiện tại có 1 dự án cộng đồng cần nhúng phần bản đồ cho các thành viên. Quả thật những chức năng đụng tới địa chỉ mà có bản đồ thì rất là tuyệt. Thế là mình bắt đầu tìm giải pháp bản đồ cho website. Để làm được công việc nhúng bản đồ, cho phép tìm kiếm địa chỉ trong website của mình, các bạn cần phải tìm một Map API (Application Programming Interface) và tích hợp vào website của mình và dùng cơ chế do API đó cung cấp để truy vấn tìm kiếm địa chỉ.

Map API là gì?
Đó là một phương thức cho phép 1 website B sử dụng dịch vụ bản đồ của site A (gọi là Map API) và nhúng vào website của mình (site B). Một Map API tối thiểu phải cho phép tìm kiếm một địa điểm và đánh dấu trên bản đồ. Đồng thời, người dùng có thể sử dụng chuột để rê trên bản đồ (trực tiếp trên site B) để tìm kiếm vị trí mình muốn.

Dạo một vòng thị trường cung cấp Map API ở Việt Nam thì tìm thấy 4 nhà cung cấp đáng để xem xét tiếp, đó là: 1650km, diadiem, vietbando và google map. Mỗi công ty có mỗi cách thức cung cấp API khác nhau và style hiển thị bản đồ cũng khác nhau. Mình viết bài này nhằm giúp các Web Developer có cái nhìn sơ về thị trường Map API ở Việt Nam.

Xem hình dưới đây cũng tóm tắt được phần nào style, chi phí khi triển khai các Map API này.

http://bloghoctap.com/wp-content/uploads/2009/12/map-api-compare-1650km-diadiem-vietbando-google.jpg

Đầu tiên là 1650km (1650km.com), API của họ là miễn phí nên không cần lo ngại, chỉ theo các bước họ chỉ dẫn trong trang http://www.1650km.com/Api/MapApiRegister.aspx là có thể nhúng được bản đồ vào website. Còn về nó trông như thế nào thì coi cái hình ở trên. API của 1650km là hoàn toàn miễn phí, do đó chức năng hiện tại mình không thấy có gì ngoài việc nhúng cái bản đồ vô, nhưng hầu hết trường hợp, chức năng như vậy là cũng đủ với ứng dụng thông thường rồi. Đánh giá 3 sao.

Tiếp theo là nói đến vietbando(vietbando.vn), API của họ cũng miễn phí (http://vietbando.vn/api/userguide.aspx), nhưng cái chức năng quan trọng nhất là tìm vị trí của 1 địa chỉ lại…thu phí, và giá hàng tháng khoảng từ 1triệu-20triệu và tính dựa trên số request. Đối với dự án cộng đồng không có tài trợ như mình thì gánh chịu 1 số tiền như vậy là không nổi rồi, nên đành tìm giải pháp khác, ít ra là miễn phí cho tới thời điểm bây giờ. Tuy nhiên, API của vietbando cũng khá hoành tráng, có khá nhiều chức năng (class, phương thức) giúp việc thao tác trên bản đồ được phong phú hơn, cú pháp và cách hoạt động khá giống với Map API của google. Đánh giá 3 sao.

Tiếp nữa là diadiem(diadiem.com.vn), website này hình như đang manh nha triển khai mạng xã hội nữa thì phải, chắc hôm nào ghé qua “thử” xíu. Diadiem thi có lẽ nhiều người xài và cũng biết cái bản đồ nó rồi, khá bắt mắt nhưng cũng khá…rối. Mặc dù mình chưa có điều kiện tiếp xúc với Map API của nó (thằng này ác hơn, thu phí mới thấy được mặt mũi API) nhưng đoán là chi phí và API chắc hao hao như thằng vietbando thôi. Đánh giá 1 sao (đã làm API mà không open thì cũng lạy ^^!)

Cuối cùng là google map (maps.google.com), nói tới google thì API của nó sử dụng free là tất nhiên rồi, và bản đồ thì bản đồ thế giới. Còn về chức năng thì khỏi nói, tha hồ mà nghiên cứu và sử dụng, bản đồ thì cũng sáng sủa hơn mấy chú kia, tìm hiểu tại http://code.google.com/apis/maps/documentation/examples/index.html. Chức năng tìm kiếm và đánh dấu một địa chỉ trên bản đồ khá đơn giản. Vậy là mình chọn Map API của google cho ứng dụng của mình là đảm bảo về thời gian và chi phí nhất. Đánh giá 4 sao.

Tuy nhiên, cũng có 1 vấn đề mà hiện nay google chưa hỗ trợ cho bản đồ Việt Nam thì phải, đó là chức năng tìm đường giữa 2 địa điểm. Thử các địa điểm trên thế giới thì tìm đường xả láng, đến Việt Nam thì tịt, mặc dù tìm địa chỉ riêng rẻ vẫn xuất hiện trên bản đồ. Hy vọng 1 ngày đẹp trời nào đó sẽ sử dụng được vụ tìm đường đi giữa 2 địa điểm tại Việt Nam. Chức năng này Map API của vietbando đã có và diadiem chắc cũng có, tuy nhiên nếu muốn tìm ở Việt Nam và muốn “bị thu phí” thì hãy sử dụng các dịch vụ của họ.

Tóm lại, việc sử dụng API của ai là việc lựa chọn của bạn. Tùy vào nhu cầu về địa chỉ (Việt Nam hay là thế giới), ngân sách của dự án và khả năng ứng dụng của dự án mà bạn và công ty quyết định sử dụng Map API nào. Chúc bạn có 1 dự án tích hợp bản đồ tốt nhất cho mình.

Nguồn : bloghoctap.com.
Link : Click here (http://bloghoctap.com/web-programming/tai-sao-toi-chon-map-api-cua-google.html).

thuyduongcd
05-03-2010, 11:06
1. API thường được hiểu như một tập hợp các quy tắc để 1 ứng dụng này có thể tương tác với ứng dụng khác. Còn framework là nền tảng để chạy 1 ứng dụng. Muốn sử dụng framework thì phải load framework đó (tương tự như muốn chạy winword phải có Window vậy). Ngược lại, muốn sử dụng API chỉ cần gọi câu lệnh theo đúng cú pháp của nhà cung cấp API đó là OK. Ví dụ như khi giao dịch với ngân hàng, muốn rút tiền (request data) thì phải điền thông tin vào form và đưa CMND, tương tự API muốn lấy dữ liệu (bản đồ khu vực của Google Maps chẳng hạn) thì phải cung cấp tọa độ và key xác thực...
2. API cũng như là một dịch vụ/ ứng dụng nên nếu nhà cung cấp bắt trả tiền thì trả còn cho free thì free, có gì khó hiểu. Cũng như Window thì bán còn Linux thì free.
3. Tất cả đều do người ta viết ra. Người ta viết được thì mình cũng có thể viết được (ngay cả HĐH Window). Quan trọng là khả năng đến đâu thôi.

FTP
05-03-2010, 13:19
Cảm ơn bạn mình đã gỡ rối được nhiều khúc mắc rồi. :)
Như vậy theo bạn là trang diadiem.com,vietbando.com,1650km.com là họ tự viết framework hay dựa trên có sẵn, và cái có sẵn đó là gì?

Và API nữa,theo bài viết về API ở trên và ý của bạn thì những trang diadiem.com,vietbando là họ tự viết ra ứng dụng API và ai muốn sử dụng thì họ thu phí.

Và còn thư viện Javascript thì họ sử dụng cái có sẵn(như Jquery, Prototype, Motool ) hay họ cũng tự tay viết lại?
Mình thấy trang diadiem.com,họ dùng Prototype thì phải.Sao biết nó là hàng Public hay do tự code.

Viết cái API có khó không bạn.Nếu bạn biết bài viết nào hay chỉ về API gửi cho mình được không.Cảm ơn bạn!

thuyduongcd
05-03-2010, 14:07
Những vấn đề băn đặt ra thuộc chuyện riêng của họ mình xin không bàn tới.
Còn API bản chất nó cũng là 1 ứng dụng nên cũng không có gì khó. Search trên mạng bạn sẽ tìm được rất nhiều tài liệu hướng dẫn.
Đây là bài hướng dẫn tạo API đơn giản dùng PHP
http://www.codewalkers.com/c/a/Miscellaneous/Create-Your-Own-Custom-API/

ngoc_viet08
05-03-2010, 18:07
bạn nên google hoặc vào wiki để tìm hiểu mấy thông tin này thì hơn , mỗi người hiểu theo 1 hướng và trình bày theo ý kiến bản thân , cứ read nguồn = tiếng anh để đảm bảo mình có cái hiểu đúng đắn ( nếu mình good :D )

ps : ko phải chê hay phê phán gì bro thuyduongcd đâu nha , tại ftp cứ hỏi hỏi mấy cái nhỏ nhỏ mà ko chịu read nên mới ý kiến thôy

FTP
05-03-2010, 21:25
Cảm ơn các bạn đã chia sẽ.
Mình định làm bằng ASP.NET