CHƯƠNG I: CƠ SỞ LÝ THUYẾT 1. Lý do chọn đề tài Vào những năm gần đây, việc ứng dụng CNTT về quản lý web ngày càng phát triển mạnh mẽ, giúp cho các cửa hàng kiếm được lợi nhuận nhiều hơn nhờ vào các trang website bán hàng trực tuyến. Hiểu được yêu cầu đó, em quyết định chọn đề tài “Xây dựng website bán thức ăn nhanh” làm mục tiêu chính cho đồ án lần này, với mong muốn kinh doanh các món ăn nhanh như gà rán, pizza, xúc xích xông khói, mì Ý và nước ngọt v. Ngoài ra, với giao diện website thân thiện cùng với tông màu đơn giản sẽ tạo thiện cảm cho khách hàng, giúp khách hàng đặt món tại nhà mà không cần tốn nhiều thời gian ra cửa hàng.
Đó là sự tiện lợi mà mọi khách hàng nào cũng muốn! 1. Mục tiêu nghiên cứu Xây dựng được một trang web bán hàng hoàn chỉnh. Hiểu được cấu trúc full-stack, sự tương tác giữa front-end và back-end. Nghiên cứu các công nghệ phát triển Website.
Giải quyết tối ưu hóa quá trình QL bán hàng và bán hàng. Phương pháp nghiên cứu Tìm hiểu, đọc thêm tài liệu cụ thể về front-end và back-end. Trang bị kiến thức cơ bản về HTML/CSS/JS và ngôn ngữ lập trình C#. Phân tích, hiểu rõ quá trình tương tác giữa người dùng và hệ thống website.
Nghiên cứu về giao diện tiện lợi, dễ sử dụng, thu hút khách hàng. Tìm hiểu về Full-stack Full-stack là sự tổng hợp từ kiến thức, sự hiểu biết trực quan và sâu sắc về cả front- end và back-end, cũng như nắm vững các khái niệm. Một Full-stack Web Developer là người có thể làm việc trên cả front-end và back-end của một ứng dụng. Front-end nói chung là phần mà người dùng có thể thấy được và tương tác được, còn back-end là phần ứng dụng xử lý logic, tương tác cơ sở dữ liệu, chứng thực người dùng, cấu hình máy chủ, v.v… Để có thể lập trình full-stack thì cần có các kỹ năng như sau: 2.
Html/Css/JavaScript - HTML hay còn được gọi là HyperText Markup Language – Ngôn ngữ đánh dấu siêu văn bản, là ngôn ngữ được sử dụng cho các tài liệu web. HTML không phải là một ngôn SV thực hiện: SV1 – SV2 7 ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB ngữ lập trình, HTML giống như một ngôn ngữ xác định đâu là ý nghĩa, mục đích và cấu trúc của một tài liệu. Cùng với CSS và JavaScript, HTML tạo ra bộ ba nền tảng kỹ thuật cho các website. Chức năng chính của HTML là xây dựng cấu trúc siêu văn bản trên một website, hoặc khai báo các tập tin kỹ thuật số (media) như hình ảnh, video, nhạc.
HTML thường được dùng để phân chia các đoạn văn, heading, links, blockquotes,… Với HTML, chúng ta có thể: Thêm tiêu đề, định dạng đoạn văn, ngắt dòng điều khiển. Tạo danh sách, nhấn mạnh văn bản, tạo ký tự đặc biệt, chèn hình ảnh, tạo liên kết. Xây dựng bảng, điều khiển một số kiểu mẫu - CSS là viết tắt của cụm từ “Cascading Style Sheets”, tạm dịch: ngôn ngữ tạo phong cách cho trang web. Ngôn ngữ lập trình này quy định cách các thành phần HTML của trang web thực sự sẽ xuất hiện trên front-end như thế nào.
Hiểu đơn giản, CSS sẽ giúp webmaster xác định styles và định nghĩa nhiều loại nội dung của website. CSS được tạo ra để kết hợp với ngôn ngữ markup HTML để tạo phong cách cho trang web. Có 3 loại style CSS chính: Style CSS Internal: là style được tải lên mỗi khi trang web được refresh. Style CSS Inline: có thể chỉnh sửa một yếu tố nào đó mà không cần truy cập trực tiếp vào file CSS.
External style: có thể tạo phong cách ở file khác áp dụng CSS vào trang tùy thích. External style sẽ cải thiện thời gian tải trang rất nhiều. - JavaScript hay còn gọi là “JS” là một ngôn ngữ lập trình được Brendan Eich (đồng sáng lập dự án Mozilla, quỹ Mozilla và tập đoàn Mozilla) cho ra mắt vào năm 1995 với tên LiveScript. JS có tác dụng giúp chuyển website từ trạng thái tĩnh sang động, tạo tương tác để cải thiện hiệu suất máy chủ và nâng cao trải nghiệm người dùng.
Hiểu đơn giản, JavaScript là ngôn ngữ được sử dụng rộng rãi khi kết hợp với HTML/CSS để thiết kế web động. Sử dụng JavaScript, chúng ta sẽ: Dễ dàng bắt đầu với các bước nhỏ, với thư viện ảnh, bố cục có tính thay đổi … nhờ sự linh hoạt của JavaScript. Có thể tạo ra các trò chơi, hoạt họa 2D hoặc 3D, ứng dụng cơ sở dữ liệu toàn diện,… Tăng cường các hành vi và kiểm soát mặc định của trình duyệt. - Một số front-end framework nổi tiếng: React.
SV thực hiện: SV1 – SV2 8 ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB Hình 1 3 thành phần cơ bản để thiết kế front-end 2. Back-end Language (C#) - C# (hay C sharp) là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội ngũ kỹ sư của Microsoft vào năm 2000. C# là ngôn ngữ lập trình hiện đại, hướng đối tượng và được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java. - Trong các ứng dụng Windows truyền thống, mã nguồn chương trình được biên dịch trực tiếp thành mã thực thi của hệ điều hành.
- Trong các ứng dụng sử dụng .NET Framework, mã nguồn chương trình (C#, VB.NET) được biên dịch thành mã ngôn ngữ trung gian MSIL (Microsoft intermediate language). Sau đó mã này được biên dịch bởi Common Language Runtime (CLR) để trở thành mã thực thi của hệ điều hành. Hình bên dưới thể hiện quá trình chuyển đổi MSIL code thành native code. SV thực hiện: SV1 – SV2 9 ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB Hình 2 Quá trình chuyển đổi MSIL code thành native code (C#) C# với sự hỗ trợ mạnh mẽ của .NET Framework giúp cho việc tạo một ứng dụng Windows Forms hay WPF (Windows Presentation Foundation), phát triển game, ứng dụng Web, ứng dụng Mobile trở nên rất dễ dàng.
Đặc trưng của ngôn ngữ C#: C# là ngôn ngữ đơn giản: - C# loại bỏ một vài sự phức tạp và rối rắm của những ngôn ngữ như Java và c+ +, bao gồm việc loại bỏ những macro, những template, đa kế thừa, và lớp cơ sở ảo (virtual base class). - Ngôn ngữ C# đơn giản vì nó dựa trên nền tảng C và C++. Nếu chúng ta thân thiện với C và C++ hoặc thậm chí là Java, chúng ta sẽ thấy C# khá giống về diện mạo, cú pháp, biểu thức, toán tử và những chức năng khác được lấy trực tiếp từ ngôn ngữ C và C++, nhưng nó đã được cải tiến để làm cho ngôn ngữ đơn giản hơn. C# là ngôn ngữ hiện đại: - C# có thể xử lý ngoại lệ, thu gom bộ nhớ tự động, những kiểu dữ liệu mở rộng và bảo mật mã nguồn.
C# là một ngôn ngữ lập trình thuần hướng đối tượng: - Lập trình hướng đối tượng (OOP: Object-oriented programming) là một phương pháp lập trình có 4 tính chất. Đó là tính trừu tượng (abstraction), tính đóng gói (encapsulation), tính đa hình (polymorphism) và tính kế thừa (inheritance). C# hỗ trợ cho chúng ta tất cả những đặc tính trên. C# là một ngôn ngữ ít từ khóa: - C# là ngôn ngữ sử dụng giới hạn những từ khóa.
Phần lớn các từ khóa được sử dụng để mô tả thông tin. Chúng ta có thể nghĩ rằng một ngôn ngữ có nhiều từ SV thực hiện: SV1 – SV2 10 ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB khóa thì sẽ mạnh hơn. Điều này không phải sự thật, ít nhất là trong trường hợp ngôn ngữ C#, chúng ta có thể tìm thấy rằng ngôn ngữ này có thể được sử dụng để làm bất cứ nhiệm vụ nào.NET Framework được Microsoft đưa ra chính thức từ năm 2002.NET Framework chỉ hoạt động trên Windows. Những nền tảng ứng dụng như WPF, Winforms, ASP.NET(1-4) hoạt động dựa trên.
Mono là phiên bản cộng đồng nhằm mang .NET đến những nền tảng ngoài Windows. Mono được phát triển chủ yếu nhằm xây dựng những ứng dụng với giao diện người dùng và được sử dụng rất rộng rãi: Unity Game, Xamarin… Cho đến năm 2013, Microsoft định hướng đi đa nền tảng và phát triển .NET core hiện được sử dụng trong các ứng dụng Universal Windows platform và ASP. Từ đây, C# có thể được sử dụng để phát triển các loại ứng dụng đa nền tảng trên các hệ điều hành khác nhau (Windows, Linux, MacOS,…) Hình 3 Microsoft. Database (Microsoft SQL Server) SQL: SQL là ngôn ngữ phi thủ tục, không yêu cầu cách thức truy cập cơ sở dữ liệu như thế nào.
Tất cả các thông báo của SQL rất dễ dàng sử dụng và ít mắc lỗi. SQL cung cấp các tập lệnh phong phú cho các công việc hỏi đáp dữ liệu như: - Chèn, xóa và cập nhật các hàng trong 1 quan hệ - Tạp, thêm, xóa và sửa đổi các đối tượng trong của cơ sở dữ liệu. - Điều khiển việc truy cấp tới cơ sở dữ liệu và các đối tượng của cơ sở dữ liệu để đảm bảo tính bảo mật, tính nhất quán và sự ràng buộc của cơ sở dữ liệu. Đối tượng của SQL Server là các bảng dữ liệu với các cột và các hàng.
Cột được gọi là trường dữ liệu và hàng là bản ghi của bảng. Cột dữ liệu và kiểu dữ liệu xác định tạo SV thực hiện: SV1 – SV2 11 ĐỒ ÁN MÔN HỌC LẬP TRÌNH WEB nên cấu trúc của bảng. Khi bảng được tổ chức thành một hệ thống cho một mục đích sử dụng cụ thể vào công việc nào đó sẽ trở thành một cơ sở dữ liệu. Microsoft SQL Server: - SQL server hay còn được gọi là Microsoft SQL Server, nó từ viết tắt của MS SQL Server.
Đây chính là một loại phần mềm đã được phát triển bởi Microsoft và nó được sử dụng để có thể dễ dàng lưu trữ cho những dữ liệu dựa theo tiêu chuẩn RDBMS. Từ đó, người ta sẽ lưu trữ dữ liệu dựa vào tiêu chuẩn RDBMS và nó cũng là một trong những hệ quản trị cơ sở dữ liệu dạng quan hệ đối tượng. - SQL Server có khả năng cung cấp đầy đủ các công cụ cho việc quản lý từ giao diện GUI đến sử dụng ngôn ngữ cho việc truy vấn SQL. Điểm mạnh của SQL điểm mạnh của nó là có nhiều nền tảng được kết hợp cùng như: ASP.NET, C# để xây dựng Winform cũng chính nó có khả năng hoạt động độc lập. Mục đích khi sử dụng SQL Server: SQL Server thông thường được sử dụng cho mục đích lưu trữ dữ liệu.