« Home « Kết quả tìm kiếm

Tìm hiểu công nghệ và xây dựng framework giúp phát triển nhanh các Website.


Tóm tắt Xem thử

- Nguyễn Thanh Hùng - Viện Công Nghệ Thông Tin và Truyền Thông - Đại học Bách Khoa Hà Nội.
- Các vấn đề thực tế trong việc phát triển Website.
- Ngôn ngữ lập trình.
- Tích hợp phát triển ứng dụng web trên một website đã có sẵn.
- Đề xuất giải pháp giúp phát triển nhanh các website.
- Các công nghệ áp dụng.
- Công nghệ Google Web Toolkit (GWT.
- Công nghệ Google App Engine.
- Môi trường ứng dụng.
- Tốc độ xử lý của website có sử dụng Smarty.
- Application Layer - lớp ứng dụng.
- Sử dụng quan hệ kế thừa để áp dụng Core functions cho nhiều dự án.
- Sử dụng Google Web Toolkit.
- Sử dụng Template Engine.
- Sử dụng kết hợp Google Web Toolkit và Template Engine.
- Cấu hình ứng dụng.
- Sử dụng Google App Engine.
- Sử dụng hosting Apache.
- Các đóng góp và kết quả áp dụng Ligker framework trong việc phát triển nhanh các ứng dụng Web.
- Đóng góp chung cho ba ứng dụng thực tế.
- So sánh việc không sử dụng và có sử dụng Framework trong việc phát triển các Website.
- Đưa ứng dụng ra cộng đồng.
- 30 Hình 3.3: Minh họa việc sử dụng Core functions cho nhiều dự án.
- 46 Hình 3.19: Một thư mục chứa template của dự án có sử dụng Ligker framework.
- 46 Hình 3.20: Vị trí file Javascript sử dụng mặc định của Ligker framework.
- 47 Hình 3.21: Vị trí file cấu hình của hệ thống sử dụng Ligker framework.
- 49 Hình 3.22: Sử dụng Google App Engine trên máy tính cá nhân.
- 56 Hình 3.25 : Một số giao diện của ứng dụng Quản lý Công văn trên nền tảng điện thoại di động.
- Đối với những dự án vừa và nhỏ, kinh nghiệm của chúng tôi cho thấy rằng nếu sử dụng các website framework có sẵn trên thị trường sẽ làm ảnh hưởng tới tốc độ tải trang.
- và đặc biệt sẽ gặp khó khăn khi nâng cấp hệ thống để tích hợp với các công nghệ mới.
- Với các lý do nêu trên, tôi đã quyết định theo học Thạc sỹ trường Đại học Bách Khoa Hà Nội, theo hướng nghiên cứu: “Tìm hiểu công nghệ và xây dựng Framework giúp phát triển nhanh các Website”.
- Đối tượng nghiên cứu - Nghiên cứu các vấn đề trong việc phát triển website.
- Nghiên cứu các công nghệ mới liên quan đến lập trình web.
- Trong đó chú trọng tới việc áp dụng các công nghệ mới để xây dựng framework.
- Phạm vi và phương pháp nghiên cứu Hiện nay có rất nhiều công nghệ hỗ trợ cho việc phát triển Website.
- Trong phạm vi luận văn này, tác giả luận văn kết hợp sử dụng các phương pháp nghiên cứu là “Nghiên cứu lý thuyết” và “Nghiên cứu thực nghiệm” tập trung nghiên cứu các công nghệ: Google Web Toolkit, Google App Engine, Smarty Template Engine, MVC Pattern, PHP OOP, PHP Data Objects (PDO).
- 8 Trong luận văn, tác giả luận văn có đề xuất giải pháp xây dựng một Website framework để phát triển nhanh các Website.
- thứ hai, Website đó sử dụng cơ sở dữ liệu MySql hoặc Google Cloud SQL.
- Một số đóng góp mới của luận văn Luận văn đã đề xuất giải pháp giúp phát triển nhanh các website, phù hợp với các dự án vừa và nhỏ.
- Website framework trình bày trong luận văn có sử dụng kết hợp các công nghệ mới: Google Web Toolkit, Google App Engine, Smarty Template Engine.
- Với Website framework này, ứng dụng Web có thể hoạt động trên môi trường máy chủ hoặc điện toán đám mây.
- Lập trình viên sử dụng Website framework được hỗ trợ và chuẩn hóa việc sinh mã truy vấn cơ sở dữ liệu.
- Với các đóng góp nêu trên, tác giả kỳ vọng rằng website framework trình bày trong luận văn này sẽ hỗ trợ các lập trình viên phát triển nhanh website.
- 9 CHƯƠNG 2: CƠ SỞ THỰC TIỄN VÀ CƠ SỞ LÝ THUYẾT Với trình độ khoa học hiện nay, các công nghệ mới được phát triển và cập nhật từng phút từng giây.
- Những con số đó đã phản ánh một nhu cầu trong thực tế, đó là: áp dụng công nghệ và phát triển nhanh website là xu thế tất yếu.
- Bằng kinh nghiệm làm việc thực tế tại công ty Nước sạch Hà Nội và tham gia các dự án lập trình Web với công ty phần mềm Koolsoft, tác giả luận văn nhận thấy việc phát triển nhanh các Website gặp một số trở ngại như: để xây dựng một Website 2.0 có áp dụng kỹ thuật Ajax gặp nhiều khó khăn.
- lựa chọn một ngôn ngữ lập trình Web phù hợp với xu thế hiện nay.
- nhiều trường hợp khách hàng có nhu cầu xây dựng và tích hợp ứng dụng Web vào một Website đã có sẵn.
- Để giải quyết các vấn đề thực tế nêu trên, tác giả luận văn xin đề xuất giải pháp: “xây dựng framework giúp phát triển nhanh các website” trong đó có sử dụng kết hợp các công nghệ: Google Web Toolkit, Goolge App Engine, PHP hướng đối tượng theo mô hình MVC, Smarty Template Engine.
- Trong chương này, luận văn sẽ trình bày các vấn đề khó khăn trong việc phát triển Website và các vấn đề lý thuyết liên quan đến các công nghệ nêu trên.
- Các vấn đề thực tế trong việc phát triển Website 2.1.1.
- Web 2.0 và kỹ thuật Ajax Website 2.0 hiện nay không còn quá xa lạ với người sử dụng Internet.
- Trong giai đoạn đầu Web 2.0 tập trung vào yếu tố công nghệ, nhấn mạnh các nền tảng ứng dụng.
- Các công nghệ chỉ là phần được nhìn thấy trong Web 2.0, người dùng mới là thành phần tạo nền tảng của Website.
- Thứ nhất: các ứng dụng web chạy chậm hơn so với các ứng dụng desktop vì nó liên tục phải tải lại trang khi có các sự kiện thay đổi nội dung.
- Nó được sử dụng ngày càng phổ biến vì khả năng tương tác cao, làm cho các ứng dụng web gần với ứng dụng desktop hơn.
- Google và một số tổ chức đã sử dụng Ajax để xây dựng những gì có tính chất cộng đồng được mong đợi giống như những gì mà một ứng dụng web có thể thực hiện.
- Ajax cho phép thực hiện điều này tốt hơn, thông minh hơn mà chỉ sử dụng các kỹ thuật đã được cài đặt sẵn trên các máy tính hiện đại.
- Ví dụ, dịch vụ Google App Engine cung cấp những ứng dụng kinh doanh trực tuyến thông thường, có thể truy cập từ một trình duyệt web, còn các phần mềm và dữ liệu đều được lưu trữ trên các máy chủ.” Vậy, để một Website hướng tới việc đạt chuẩn web 2.0, trước hết website đó phải được thiết kế theo hướng tương tác với người dùng, sử dụng kỹ thuật Ajax.
- Đồng thời, Website đó có thể sử dụng nền tảng điện toán đám mây.
- Tác giả luận văn xin đề xuất giải pháp: “Sử dụng công nghệ Google Web Toolkit và Google App Engine” để giải quyết hai vấn đề trên.
- Ngôn ngữ lập trình Để lập trình web phía server, có thể kể đến một số ngôn ngữ: C#, Java, .NET… Tuy nhiên, các ngôn ngữ này là các ngôn ngữ lập trình đa mục đích, có thể giải quyết nhiều loại vấn đề, nhiều dạng bài toán chứ không chỉ riêng ứng dụng web.
- 12 Trong khi đó, ngôn ngữ PHP ra đời khoảng năm 1997, được thiết kế gần như tập trung vào web, làm sao nhanh chóng xây dựng được một website hoàn chỉnh nên khi thao tác, người phát triển web sẽ được tiếp xúc với những khái niệm gần với web nhất có thể.
- PHP là một ngôn ngữ kịch bản máy chủ (server-side) được sử dụng rộng rãi trên Internet - nó chạy trên 75% của tất cả các máy chủ Web - và là sức mạnh phía sau của các nền tảng như WordPress, Wikipedia, và thậm chí là một phần của Facebook.
- PHP thường được sử dụng kết hợp với MySQL hoặc Google Cloud SQL để truy xuất thông tin từ cơ sở dữ liệu và hiển thị thông tin tới người dùng.
- Kể từ phiên bản PHP 5, PHP đã có hỗ trợ lập trình hướng đối tượng và lập trình viên hoàn toàn có thể sử dụng mô hình MVC để xây dựng một website.
- Các vấn đề về giao diện Thông thường, để viết một ứng dụng web, lập trình viên sẽ viết lẫn cả phần HTML với mã lệnh lập trình web trên một trang.
- Nếu lập trình theo cách trên thì sẽ phải viết lại hoàn toàn từ đầu, không thể tái sử dụng mã của trang web đã làm trước đó.
- Với tốc độ tăng trưởng của các ứng dụng website phức tạp, một vấn đề đã được đưa ra là: làm thế nào để tách biệt riêng ngôn ngữ lập trình web ra khỏi ngôn ngữ thiết kế giao diện (HTML), hoặc nói chung là làm thế nào để phân cách bên lập trình ra riêng với bên thiết kế.
- Tác giả luận văn xin đề xuất giải pháp: “Sử dụng Smarty Template Engine” để giải quyết vấn đề trên.
- Tích hợp phát triển ứng dụng web trên một website đã có sẵn Hiện nay, trên thị trường web đã có rất nhiều sản phẩm CMS mang tính đóng gói và sẵn dùng.
- Đó là một xu hướng phát triển website rất phù hợp với nhu cầu bùng nổ thông tin hiện này và thực sự đã đem lại những thuận tiện và lợi ích không thể phủ nhận.
- Tuy nhiên, cần xem xét tới mặt trái của giải pháp phát triển website bằng các công cụ CMS.
- Với những website được xây dựng theo cách này tiềm ẩn vô số vấn đề trong việc kiểm soát an toàn hệ thống và khả năng phát triển mở rộng trong tương lai.
- Để mở rộng chức năng, người dùng chỉ có thể cài đặt và sử dụng các thành phần mở rộng (plug-in).
- Do đó, đối với các yêu cầu phát triển hệ thống là phức tạp, dữ liệu lớn, đòi hỏi kết quả chính xác…, khi đó, việc dùng thêm các plug-in một mặt sẽ bị hạn chế rất nhiều, mặt khác, cần phải quan tâm đến việc xung đột plug-in mới với các plug-in đã có sẵn.
- Hiện nay, người dùng có nhu cầu phát triển thêm nhiều phân hệ quản lý trên nền website có sẵn nhưng vì các lý do khác nhau (thay đổi nhân sự, chuyển hướng kinh doanh, không đủ năng lực.
- Trong trường hợp này, người dùng bắt buộc phải có một trong hai lựa chọn: xây dựng lại website từ đầu hoặc thuê đơn vị khác tích hợp phát triển trên nền website đã có.
- Như vậy, trên thực tế, người xây dựng web cần có một công cụ phát triển ứng dụng có thể tích hợp một cách hiệu quả vào một hệ thống đã có sẵn mà không làm ảnh hưởng đến những chức năng của hệ thống đó.
- Đề xuất giải pháp giúp phát triển nhanh các website Như đã trình bày ở các phần trên, xin được tóm lược các nhu cầu thực tế đối với việc xây dựng một ứng dụng web, đó là: Xu hướng phát triển công nghệ web 2.0, kỹ thuật Ajax, nền tảng điện toán đám mây.
- Các công nghệ áp dụng 2.2.1.
- Công nghệ Google Web Toolkit (GWT) Google Web Toolkit (GWT) là một giải pháp khá toàn diện cho Java developer để xây dựng các ứng dụng AJAX mà không cần phải biết quá nhiều ngôn ngữ lập trình.
- Khái niệm GWT GWT là một Java framework mã nguồn mở cho phép lập trình viên thoát khỏi ma trận các công nghệ để viết các ứng dụng AJAX quá khó khăn và nhiều lỗi.
- Với GWT, các developer có thể phát triển và kiểm tra lỗi các ứng dụng AJAX bằng ngôn ngữ Java, sử dụng các công cụ phát triển Java tuỳ theo ý thích.
- Khi triển khai ứng dụng, bộ biên dịch của GWT sẽ dịch ứng dụng từ Java sang Javascript và HTML.
- Và kết quả của việc sử dụng GWT theo tác giả Ryan Dewsbury (2007, Google Web Toolkit Applications): “As a result, you will save a substantial amount of time debugging and maintaining the application while creating a much better user experience.
- Một ứng dụng GWT có thể chạy theo 2 cách: Hosted mode (Ứng dụng sẽ chạy như một ứng dụng Java với JVM.
- Cách này chỉ sử dụng cho developer) và Web mode (Ứng dụng là Javascript và HTML thuần, được biên dịch ra từ các đoạn code Java.
- Cách này là dành cho người sử dụng).
- Thành phần này dùng để dịch tất cả các mã nguồn Java của ứng dụng GWT sang code Javascript và HTML.
- Thành phần này dùng để các developer chạy ứng dụng GWT bằng hosted mode (sử dụng với JVM).
- Thành phần này gồm hai thư viện chuẩn của Java được sử dụng trong GWT là java.lang và java.util.
- Thành phần này là các giao diện và các lớp được tạo sẵn hoặc do người dùng tự tạo, dùng để tạo các đối tượng AJAX bằng Java trong các ứng dụng GWT.
- Công nghệ Google App Engine 2.2.2.1.
- Khái niệm Google App Engine Google App Engine (gọi tắt là GAE hay App Engine) là một môi trường phát triển ứng dụng dựa trên công nghệ điện toán đám mây.
- Ở đó Google cung cấp một hệ thống gồm: ngôn ngữ lập trình, hệ cơ sở dữ liệu, các thư viện lập trình, người lập trình sẽ viết ứng dụng và ứng dụng này sẽ chạy trên các máy chủ của Google.
- Google App Engine được cung cấp miến phí cho mỗi ứng dụng trong một giới hạn, khi các ứng dụng vượt qua mức quá hạn mức thì phải trả thêm khoản phí cho mức vượt quá này.
- Google App Engine cho phép bạn chạy các ứng dụng web trên cơ sở hạ tầng của Google.
- App ứng dụng công cụ dễ dàng để xây dựng, dễ bảo trì, dễ dàng để quy mô như lưu lượng truy cập của bạn và nhu cầu lưu trữ dữ liệu lớn.
- Với App Engine, không có máy chủ để duy trì: người dùng chỉ cần tải ứng dụng lên là ứng dụng đó đã ở trạng thái sẵn sàng hoạt động.

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt