Mở đầu - _ Nội dung chính của báo cáo: - _ Nghiên cứu tìm hiểu, lựa chọn giải pháp công nghệ dé xây dựng phần mềm - Qué trình triển khai, quản lý thực hiện đề tài - Két quả nghiên cứu - Tén tại, hạn chế, nguyên nhân - _ Một số giải pháp nâng cao chất lượng - Keét luận và kiên nghị DANH MỤC TỪ VIET TAT STT VIẾT TẮT VIET DAY DU 1. |HTML Hyper Text Markup Language 2. CSS Cascading Style Sheets 3. | API Application Programming Interface Giao diện lập trình ứng dụng 4.
SQL Structured Query Language 5. IIS Internet Information Services 6. | CSDL Co sở dữ liệu 7. |MVC Model — View — Controller 8.
GUI Graphical User Interface NỘI DUNG CHÍNH NGHIÊN CỨU TỎNG QUAN, LỰA CHỌN GIẢI PHÁP CÔNG NGHỆ DE XÂY DUNG PHAN MEM 1. Tổng quan một số công nghệ, môi trường phát triển phan mềm ứng dụng Web pho biến hiện nay và lựa chọn giải pháp: Đề có thể xây dựng và triển khai các ứng dụng Web ta cần quan tâm đến các công nghệ sau: - _ Ngôn ngữ lập trình FrontEnd: o Front End là những gì mà người dùng sẽ nhìn thấy và tương tác khi vào website. Nó hoàn toàn là về thiết kế giao diện, thé hiện hiệu ứng, cách bố trí và hình anh nhăm tạo ra trải nghiệm sử dụng tốt nhất cho người dùng. Các ngôn ngữ thường được sử dụng bởi lập trình phía FrontEnd bao gồm: HTML, CSS, jQuery và JavaScript.
= HTML là chữ viết tắt của Hypertext Markup Language. Nó giúp người dùng tạo và cau trúc các thành phan trong trang web hoặc ứng dụng, phân chia các đoạn văn, heading, links, blockquotes. " CSS-Cascading Style Sheets (CSS): Là các tập tin định kiểu theo tang được dùng dé miêu ta cách trình bày các tai liệu viết bằng ngôn ngữ HTML và XHTML. Ngoài ra ngôn ngữ định kiểu theo tầng cũng có thể dùng cho XML, SVG, XUL.
Thay vì đặt các thẻ quy định kiểu dáng cho văn bản HTML (hoặc XHTML) ngay trong nội dung của nó, bạn nên sử dụng CSS. CSS giúp định kiểu mọi thứ trên một file khác, có thé tạo phong cách trước rồi sau đó tích hợp file CSS lên trên cùng của file HTML. Việc này giúp HTML markup rõ ràng và dễ quản lý hơn nhiều. Với CSS người lập trình không cần lặp lại các mô ta cho từng thanh phan giúp tiết kiệm thời gian, làm đoạn code ngắn lại và có thé kiểm soát lỗi dé dàng hơn.
CSS 10 giúp người lập trình có nhiều styles trên một trang web HTML. = JavaScript là ngôn ngữ lập trình của trình duyệt - phạm vi tiếp cận của nó đã lan rộng ra ngoài giới hạn lập trình của trình duyệt với các mục đích sử dụng khác như mã code phía máy chủ. Với mục đích chính là ngôn ngữ lập trình phía máy khách được viết vào mọi trình duyệt internet, chịu trách nhiệm cho các yếu t6 tương tác, động trên một trang web, chăng hạn như tuân theo và phản ứng với thông tin đầu vào của người dùng. = JQuery là một thư viện JavaScript.
Có nghĩa đó là một tập hợp các mã code JavaScript được tập hợp cùng nhau có thể được truy cập băng một dòng mã code đơn giản hơn nhiều, do đó giúp các nhà phát triển triển khai JavaScript dễ dàng hơn mà không phải viết mã code JavaScript phức tạp, nhờ mã code được viết sẵn trong jQuery. Ngôn ngữ lập trình BackEnd: o Lập trình web không chi cần những giao diện ở front-end mà can những đữ liệu và xử lý ở mức Server. Hay nói cách khác, để có được những gi thể hiện trên Website ở front-end phải có các dit liệu, thông tin từ các chức năng do lập trình Web back-end cung cấp. Từ “hậu trường”, lập trình viên back-end sẽ xây dựng và thực hiện các giải thuật dé tính toán, truy cập và xử lý dữ liệu dé cung cấp chính xác, nhanh chóng theo các yêu cầu nhận được.
Có rất nhiều ngôn ngữ để lập trình Back-end như: PHP, ASP.NET, Java, Python,. cho phép lập trình viên viết các đoạn mã lệnh (source code) mà sẽ được biên dich và thi hành tại Web server, sau đó trả kết quả về client dưới dạng HTML, CSS và JavaScript. Với lập trình back-end, có thé lập trình, xây dựng các trang web động, có tương tác với cơ sở đữ liệu và kết nối với các dịch vụ Web (Web Service) phục vụ đa dạng yêu cầu của người dùng trong thực tế. 11 Cơ sở dữ liệu, máy chủ Web, hệ điều hành: Dé có được ứng dụng hoàn chỉnh, nếu chỉ có lập trình viết mã lệnh không thì chưa đủ, cần có cơ sở dữ liệu để lưu thông tin của ứng dụng, cần có webserver, hệ điều hành có thé triển khai ứng dụng mà từ đó người dùng có thê khai thác được.
Tập hợp tất cả các phần mềm, công nghệ này tạo thành chồng giải pháp gọi là solution stack, hệ thống nên tang dé ứng dung có thé hoạt động được. o_ Một số solution stack thông dụng: Hình 1. Chồng giải pháp LAMP LAMP-Stack: ngôn ngữ lập trình PHP, Python, Perl; cơ sở dữ liệu MYSQL; Webserver Apache, hệ diéu hanh dùng Linux. LAM-Stack được dùng khá phổ biến, hầu hết các website đều sử dung stack này và các hosting cho PHP cũng dang dùng stack này.
Chồng giải pháp WAMP WAMP sử dụng ngôn ngữ lập trình PHP, Python, Perl; cơ sở dit liệu MySQL; máy chủ Web Apache; hệ điều hành dùng Windows. WAMP-Stack tương tự như LAMP Stack nhưng khác ở hệ điều hành Windows. WAMP Stack được dùng trong học tập, nghiên cứu nhiều hơn do đã quá quen thuộc với hệ điều hành Windows. Chồng giải pháp WINS WINS- Stack sử dụng các ngôn ngữ lập trình .NET; cơ sở dữ liệu SQL Server; máy chủ Web IIS; hệ điều hành WINDOWS.
WINS-Stack này bao gồm các công nghệ của Microsoft. Trong đó Windows là hệ điều hành, web server là internet information Service, NET là môi trường phát triển ứng dụng khá phổ biến với ngôn ngữ lập trình hướng đối tượng C# và SQL Server là hệ quản tri co sở dữ liệu quan hệ. Đây là lựa chọn cho các giải pháp mang tính thống nhất vì việc phối hợp giữa các thành phan sẽ dé dàng hơn va mang tính bao mật khá 6n định hơn. Lựa chọn giải pháp dé xây dựng ứng dung phần mềm đăng ky online và phê duyệt đề tài luận văn cao học Trường Đại học Luật Hà Nội: Thông qua việc tìm hiểu các giải pháp công nghệ ở trên, nhóm nghiên cứu nhận thấy mô hình WINS phù hợp với môi trường ứng dụng công nghệ thông tin hiện tại của Trường đại học Luật do hiện nay toàn bộ máy chủ của Trường đại học Luật đều là hệ điều hành Windows.
14 o Hệ điều hành: Windows Server 2016. o Ngôn ngữ lập trình ứng dụng Web được lựa chon sẽ là ngôn ngữ ASP. o Cơ sở dt liệu chúng tôi chon SQL Server 2014. © Máy chủ Web: IIS- Internet Information Services 2.
Giải pháp kết nối trung gian giữa các ứng dụng qua API( giao diện lập trình ứng dụng): - Khai niệm API: API là viết tắt của Application Programming Interface — phương thức trung gian kêt nôi các ứng dụng và thư viện khác nhau. Nó cung cấp khả năng truy xuất đến một tập các hàm hay dùng, từ đó có thé trao đổi dữ liệu giữa các ứng dụng. Application Functionality Backend Systems Data Web & Mobil Web APIs Applications Hình 4. Mô hình hoạt động của API Có thé nói API là khớp nối giữa các thành phần phần mềm.
Giả sử có một tính năng cần cung cấp cho module khác phần mềm khác thì ta sẽ mở một API để tác giả của module/ phần mềm truy cập vảo. Ví dụ, trên các thiết bị điện toán thì hệ điều hành là phần mềm duy nhất có khả năng truy cập tới các thiết bị phần cứng. Do đó, hệ điều hành sẽ phải cung 15 cấp API dé ghi file, doc file, doc dữ liệu. Mỗi ứng dụng khi hoạt động sé gọi tới API tương ứng của hệ điều hành.
Khi một phần mềm gọi tới API, phần mềm gọi có thể cung cấp dữ liệu đầu vào và đòi hỏi dữ liệu đầu ra từ API hoặc không, nhưng trong mọi trường hợp, phần mềm gọi dé có thé tiếp tục hoạt động thì nó cần phần mềm cung cấp phải thực hiện những gi đã cam kết qua API. - Những ứng dụng của API: Web API: là hệ thống API được sử dụng trong các hệ thống website. Hầu hết các website đều ứng dụng đến Web API cho phép kết nối, lay dữ liệu hoặc cập nhật cơ sở dữ liệu. Ví dụ: thiết kế chức năng login thông Google, Facebook, Twitter, Github.
Điều này có nghĩa là các ứng dụng đều lay dữ liệu thông qua API. Web API sử dụng thông qua giao thức HTTP (hoặc HTTPS), dữ liệu được trả về thông thường ở dạng XML hoặc JSON, ngày nay người ta thường sử dụng JSON vì những điều tuyệt vời của nó. Web API hỗ trợ những phương thức như GET/POST/PUT/DELETE. -_Ä B_- Client sends a request HTTP methods Server sends a request Hình 5.
Phương thức trao đổi dữ liệu của Web API API trên hệ điều hành: Windows hay Linux có rất nhiều API, họ cung cấp các tài liệu API là đặc tả các hàm, phương thức cũng như các giao thức kết nối. Nó giúp lập trình viên có thé tạo ra các phần mềm ứng dụng có thé tương tác trực tiếp với hệ điều hành. API của thư viện phần mềm hay framework: API mô tả và quy định các hành động mong muôn mà các thư viện cung câp. Một API có thê có nhiêu 16 cách triển khai khác nhau và nó cũng giúp cho một chương trình viết bằng ngôn ngữ này có thể sử dụng thư viện được viết bằng ngôn ngữ khác.
Ví dụ bạn có thê dùng Php dé yêu cầu một thư viện tạo file PDF được viết bằng C++. - Những ưu điểm nỗi bật của API: Giao diện lập trình ứng dụng này là một framework mới cho phép lập trình viên xây dựng các HTTP service một cách đơn giản và tiết kiệm thời gian tối đa. Các ứng dụng sẽ giao tiếp với nhau hiệu quả hơn nhờ vào tính chất tối giản và ưu việt của API. Với mã nguồn mở, người dùng có thé sử dụng bat kỳ Client nào có sử dụng XML hoặc JSON.
Không chỉ vậy, API còn có khả năng hỗ trợ các thành phần khác như: HTTP: URI, request/response headers, caching, versioning. - C6 thé tong kết các ưu điểm của API: = Cho phép kết nối moi lúc mọi nơi nhờ vào Internet = Cần xác nhận trong các giao dich giao tiếp song phương = Tăng độ tin cậy của thông tin nhờ vào giao tiếp hai chiều = Cấu hình đơn giản so với WCS = Hỗ trợ chức năng Rest full =» Mã nguôn mở 3.