Lựa chọn ngôn ngữ lập trình

Một phần của tài liệu XÂY DỰNG CÔNG CỤ HỖ TRỢ CÔNG TÁC GIAO ĐỀ TÀI BÁO CÁO TỐT NGHIỆP (Trang 39 - 45)

Chương 3. Xây dựng ứng dụng công cụ hỗ trợ công tác giao đề tái báo cáo tốt nghiệp

3.1. Lựa chọn ngôn ngữ lập trình

3.1.1. Giới thiệu ngôn ngữ lập trình PHP và hệ quản trị CSDL MySQL Ngôn ngữ lập trình PHP:

 PHP (Viết tắt hồi quy “PHP: Hypertext Preprocessor”) là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML.

 Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới.

 Mặt khác, PHP là ngôn ngữ hoạt động cận kề với Webserver để thông dịch các yêu cầu từ World Wide Wed, sau đó nhận các trả lời từ Websserver chuyển tải đến trình duyệt Web nhằm đáp ứng các nhu cầu nào đó.

Hệ quản trị CSDL MySQL:

 MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng.

 MySQL được biên dịch dựa trên các nền khác nhau như Linux, Windows...

 MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,…

Sự kết hợp giữa PHP và My SQL:

 Sự kết hợp giữa PHP và MySQL tạo nên một nền tảng tốt cho trang web.

Số lượng người sử dụng ngôn ngữ này càng cao trong cộng đồng lập trình web, PHP và MySQL trở nên rất thông dụng.

3.1.2. Đặc điểm nổi bật của PHP và hệ quản trị CSDL MySQL Đặc điểm nổi bật của PHP:

 PHP là mã nguồn mở hỗ trợ nhiều framework.

 Tốc độ nhanh, dễ sử dụng.

 Chạy trên nhiều hệ điều hành.

 Truy cập bấy kỳ loại CSDL nào.

 Luôn được cải tiến và cập nhật.

 Tương thích với hầu hết các Server đang sử dụng hiện nay như Apache, IIS,...

Đặc điểm nổi bật của hệ quản trị CSDL Mysql:

 Dễ dàng sử dụng: MySQL có thể dễ dàng cài đặt. Với các công cụ bên thứ 3 làm cho nó càng dễ đơn giản hơn để có thể sử dụng.

 Giàu tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được mong chờ từ một hệ quản trị cơ sở dữ liệu quan hệ cả trực tiếp lẫn gián tiếp.

 Bảo mật: Có rất nhiều tính năng bảo mật, một số ở cấp cao đều được xây dựng trong MySQL.

 Khả năng mở rộng: MySQL có thể xử lý rất nhiều dữ liệu và hơn thế nữa nó có thể được mở rộng nếu cần thiết.

 Nhanh và mạnh: Việc đưa ra một số tiêu chuẩn cho phép MySQL làm việc rất hiệu quả và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi.

3.1.3. Mô hình MVC và HMVC

Hình 3.5 Mô hình MVC (Model-View-Controller)

Mô hình MVC (Hình ) là viết tắt của Model-View-Controller, đây là một mô hình được tạo ra với mục đích quản lý và xây dựng dự án phần mềm có hệ thống hơn, cho phép tách biệt các mã nghiệp vụ và giao diện thành các phần riêng biệt giúp lập trình viên có thể quản lý và chỉnh sửa dễ dàng. Trong đó:

 Model: Có nhiệm vụ thao tác với CSDL, nghĩa là nó chứa tất cả các hàm, các phương thức truy vấn trực tiếp với dữ liệu và Controller sẽ thông qua các hàm, phương thức đó để lấy dữ liệu rồi gửi qua View.

 View: Có nhiệm vụ tiếp nhận dữ liệu từ Controller và hiển thị nội dung sang các đoạn mã HTML, nói các khác View chính là các giao diện mà người dùng nhìn thấy trên trình duyệt.

 Controller: Đóng vai trò trung gian giữa Model và View. Nó có nhiệm vụ tiếp nhận yêu cầu từ Client sau đó xử lý request, load Model tương ứng và gửi data qua View tương ứng sau đó trả kết quả về cho Client. Nghĩa là nó giữ nhiệm vụ điều hướng các yêu cầu từ người dùng và gọi đúng các phương thức xử lý.

Ưu điểm:

 Hệ thống phân chia các thành phần độc lập nên giúp phát triển ứng dụng nhanh, dễ nâng cấp, và bảo trì.

 Chia thành nhiều module nhỏ nên nhiều người có thể chung dự án.

 Dễ dàng debug trong quá trình xây dựng.

 Thể hiện tính chuyên nghiệp trong lập trình, phân tích thiết kế.

Hình 3.6 Mô hình HMVC (Hierarchical Model-View-Controller)

Mô hình HMVC (Hình ) là viết tắt của Hierarchical Model-View-Controller, là một mô hình cấu trúc vô cùng mạnh mẽ. Được thiết kế tối ưu hóa để áp dụng cho các hệ thống lớn. Nó giúp khả năng mở rộng vả quản lý hệ thống rất đơn giản.

Ưu điểm:

 Khả năng module hóa: Giảm sự phụ thuộc giữa các phần riêng biệt của hệ thống.

 Tái sử dụng : Việc cấu trúc theo mô hình HMVC làm tăng khả năng tái sử dụng của từng module.

 Khả năng mở rộng : Mô hình này giúp tăng khả năng tái mở rộng của hệ thống về sau.

 Có tính tổ chức: Mỗi phần của một module được lưu bằng một thư mục, giúp việc quản lý đơn giản hơn.

3.1.4. Lý do lựa chọn Framework

Framework là một thư viện các lớp đã được xây dựng hoàn chỉnh, bộ khung để phát triển các phần mềm ứng dụng. Có thể ví framework như tập các “vật liệu”

ở từng lĩnh vực cho người lập trình viên, thay vì họ phải mất nhiều thời gian để tự thiết kế trước khi dùng. Do vậy, người lập trình viên chỉ cần tìm hiểu và khai thác các vật liệu này rồi thực hiện (Tức lập trình) để gắn kết chúng lại với nhau, tạo ra sản phẩm.

Lí do nên lựa chọn framework để phát triền phần mềm:

 Tiết kiệm thời gian: Với framework, ta đã có một khung sườn làm việc. Ta không mất thời gian phân tích kiến trúc ứng dụng để “sáng tạo” những thứ người khác đã làm rất tốt, viết lại những thứ quá đỗi nhàm chán.

 Mã nguồn sạch: Ta sẽ có một ứng dụng với mã nguồn sạch, dễ dàng phát triển nâng cấp, bảo trì.

 Tái sử dụng code: Có thể sử dụng lại nhiều đoạn code, những module, extension, plugin gắn vào ứng dụng của mình mà không tốn công sức để phát triển cho các chức năng đó.

 Hiệu năng và bảo mật: Được cập nhật thường xuyên nhờ cộng đồng phát triển framework đó.

 Cộng đồng phát triển: Những lập trình viên cùng sử dụng một framework sẽ tạo nên một cộng đồng, mọi thắc mắc sẽ nhanh chóng được giải đáp.

 Bảo trì và nâng cấp: Framework có hệ thống tổ chức file rõ ràng theo mô hình MVC nên dễ dàng cho việc nâng cấp và bảo trì.

3.1.5. Framework CodeIgniter

CodeIgniter là một nền tảng ứng dụng web (Web Application Framework) nguồn mở được dùng để xây dựng các ứng dụng web động tương tác với PHP. Nó cho phép các nhà phát triển xây dựng một ứng dụng web nhanh hơn so với việc viết mã hỗn tạp bằng cách cung cấp 1 bộ thư viện đầy đủ cho các tác vụ thông thường, cũng như cung cấp một mô hình tương tác đơn giản và dễ hiểu cho việc kết nối tới những bộ thư viện đó.

Những ưu điểm của CodeIgniter Framework:

 Footprint nhỏ: Dung lượng CodeIgniter 3 chỉ tốn 2MB khi download, bao gồm cả file cài đặt lẫn hướng dẫn sử dụng.

 Hướng dẫn sử dụng rõ ràng, dễ hiểu: Hướng dẫn sử dụng CodeIgniter được đính kèm trong file tải xuống. Nó bao gồm phần giới thiệu, hướng

dẫn, một số hướng dẫn “Làm thế nào để…”, và tài liệu tham khảo cho các lập trình viên hoàn thiện website của mình.

 Khả năng tương thích với lưu trữ chuẩn: CodeIgniter 3 chỉ cần PHP 5.3.7, và có thể hoạt động tương thích với hầu hết các hosting chia sẻ hoặc hosting riêng. Nhiều ứng dụng web cần một cơ sở dữ liệu, và CodeIgniter cũng hỗ trợ phổ biến nhất, bao gồm cả MySQL.

 Được thiết kế theo mô hình Model-View-Controller: Mô hình MVC giúp tách thành phần hiển thị giao diện và xử lý của một phần mềm thành các phần độc lập, từ đó giúp cho việc thiết kế, xử lý và bảo trì mã nguồn dễ dàng hơn.

 Hệ thống thư viện đa dạng: CodeIgniter cung cấp các thư viện phục vụ cho những tác vụ thường gặp nhất trong lập trình web, chẳng hạn như truy cập cơ sở dữ liệu, gửi email, kiểm tra dữ liệu, xử lí hình ảnh,…

 Cấu hình gần như bằng không: Phần lớn cấu hình CodeIgniter được thực hiện theo quy ước, ví dụ như đặt mô hình trong một mô hình thư mục.

Bên cạnh đó còn có một số tùy chọn cấu hình có sẵn, thông qua các tập lệnh trong thư mục config.

 Tốc độ nhanh: CodeIgniter được đánh giá là một PHP framework có tốc độ xử lý nhanh. Một server bình thường có thể đáp ứng được hàng triệu truy cập/ngày.

 Miễn phí: CodeIgniter được phát hành dưới giấy phép Apache/BSD mở rộng, cho phép người dùng tự do thay đổi, phát triển và phân phối mã nguồn mở này theo sự sáng tạo của bản thân.

 Hỗ trợ SEO: Cấu trúc URL của CodeIgniter rất thân thiện với các công cụ tìm kiếm. Điều này nghiễm nhiên giúp cho website của bạn tăng thứ hạng nhanh hơn mà không cần phải đầu tư quá nhiều phần mềm hay công cụ.

 Bảo mật hệ thống: Cơ chế kiểm tra dữ liệu chặt chẽ, ngăn ngừa XSS và SQL Injection của CodeIgniter giúp giảm thiểu các nguy cơ xâm nhập, làm hại đến hệ thống.

Một phần của tài liệu XÂY DỰNG CÔNG CỤ HỖ TRỢ CÔNG TÁC GIAO ĐỀ TÀI BÁO CÁO TỐT NGHIỆP (Trang 39 - 45)

Tải bản đầy đủ (DOCX)

(80 trang)
w