Cuối cùng là giới thiệu về giao diện, chức năng, tài liệu hướng dẫn sử dụng của phần mềm cùng chương tổng kết về các khó khăn và những thành quả trong suốt quá trình phát triển ASP.NET M
TỔNG QUAN
Giới thiệu đề tài
Trong thời đại công nghệ thông tin phát triển vượt bậc, cuộc sống của chúng ta đã có những thay đổi đáng kinh ngạc, như việc di chuyển bằng xe ôm công nghệ, đặt phòng khách sạn trực tuyến, và sử dụng nhà thông minh Điều này đã dẫn đến nhu cầu ngày càng tăng về việc tìm hiểu và áp dụng công nghệ trong cuộc sống hàng ngày.
Đề tài này được phát triển từ nhu cầu thực tế và xu hướng hiện đại, nhằm xây dựng một ASP.NET MVC cho phép người dùng đánh giá và tìm hiểu về các công nghệ tiên tiến, món ăn, địa danh, phim ảnh, thời trang, và nhiều lĩnh vực khác Người dùng sẽ nhận được thông tin hữu ích và có thể chia sẻ những thông tin thiết yếu, giúp cộng đồng nắm bắt các đề tài mới Qua đó, giải quyết vấn đề thời gian tìm kiếm và chi phí di chuyển một cách hiệu quả.
Các chương tiếp theo sẽ khám phá ASP.NET MVC, bao gồm các đặc điểm, tính năng, công cụ và thành phần của framework này Nội dung sẽ chuyển sang lập trình trên ASP.NET MVC với ngôn ngữ C# Cuối cùng, tài liệu sẽ giới thiệu giao diện, chức năng, hướng dẫn sử dụng phần mềm và chương tổng kết về những khó khăn cũng như thành quả trong quá trình phát triển ASP.NET MVC.
Nhiệm vụ đồ án
Web được phát triển trên nền tảng ASP.NET MVC nhằm đáp ứng nhu cầu tìm hiểu về các công nghệ mới và cũ Đây là nơi lý tưởng để đánh giá và giúp người dùng trải nghiệm những công nghệ tiên tiến một cách dễ dàng hơn.
Người dùng có thể truy cập ASP.NET MVC trên mọi thiết bị như smartphone, máy tính bảng và laptop với các kích thước màn hình khác nhau Họ có thể nhanh chóng trò chuyện và chia sẻ thông tin công nghệ trên nền tảng mới, đồng thời đảm bảo tính bảo mật thông tin cá nhân.
Chức năng đánh giá giúp người dùng dễ dàng tìm kiếm và lựa chọn thông tin cần thiết, tham khảo mức giá trung bình, và sau khi lựa chọn, họ có thể đưa ra những bình luận cá nhân của mình.
Chức năng đăng ký trên ASP.NET MVC cho phép người dùng dễ dàng tạo tài khoản mà không cần giấy tờ vật lý, chỉ cần nhập số điện thoại hoặc địa chỉ Gmail.
Sơ đồ cấu trúc đề tài
Hình 1.1 Sơ đồ cấu trúc trang web
Bình luận Đóng góp bài viết
Quản lý bài viết Đăng bài viết
CƠ SỞ LÝ THUYẾT
Tổng quan về C#
Ngôn ngữ C# được xây dựng dựa trên nền tảng C++ và Java, mang lại sự đơn giản cho người dùng Những ai quen thuộc với C, C++ hoặc Java sẽ nhận thấy C# có nhiều điểm tương đồng về diện mạo, cú pháp, biểu thức và toán tử, nhưng đã được cải tiến để trở nên dễ sử dụng hơn Một số cải tiến bao gồm việc loại bỏ các phần dư thừa và thay đổi cú pháp C# là ngôn ngữ lập trình hiện đại, đơn giản, hướng đối tượng, được phát triển bởi Microsoft và được công nhận bởi European Computer Manufacturers Association (ECMA) và International Standards Organization (ISO).
C# là ngôn ngữ lập trình được phát triển bởi Anders Hejlsberg và nhóm của ông trong quá trình xây dựng Net Framework Ngôn ngữ này được thiết kế cho Common Language Infrastructure (CLI), bao gồm mã thực thi và môi trường chạy, cho phép sử dụng nhiều ngôn ngữ cấp cao trên các nền tảng và kiến trúc máy tính khác nhau.
Dưới đây là các lý do làm C# là ngôn ngữ lập trình chuyên nghiệp được sử dụng rộng rãi:
Nó là một ngôn ngữ lập trình hiện đại, mục đích tổng quát
Nó là hướng đối tượng
Nó dễ dàng để học
Nó là một ngôn ngữ được cấu trúc
Nó tạo các chương trình hiệu quả
Nó có thể được biên dịch trên nhiều nền tảng máy tính khác nhau
Nó là một phần của Net Framework
C# là một ngôn ngữ lập trình hướng đối tượng, có cấu trúc tương tự như các ngôn ngữ high-level truyền thống như C và C++ Nó cũng có nhiều điểm tương đồng với Java và sở hữu nhiều đặc điểm lập trình mạnh mẽ, khiến nó trở thành lựa chọn ưa thích của lập trình viên trên toàn thế giới.
Tên C# được lấy cảm hứng từ ký hiệu âm nhạc, với dấu thăng “#” biểu thị nốt cao hơn Tương tự, C++ sử dụng “++” để chỉ sự tăng giá trị của biến Biểu tượng # cũng tương tự như 4 ký tự ++ trong lưới 2x2, cho thấy C# là phiên bản nâng cấp của C++ Tuy nhiên, việc hiển thị bị giới hạn bởi các font chuẩn và trình duyệt.
♯)) không hiện diện trong đa số các bàn phím, ký tự (U+0023 # NUM SIGN (HTML
#)) đã được chọn để diễn đạt một cách tương đương trong cách viết tên ngôn ngữ
Hậu tố "#" đã được áp dụng trong một số ngôn ngữ NET, bao gồm J# (ngôn ngữ do Microsoft phát triển dựa trên Java 1.1), A# (từ Ada) và F# (ngôn ngữ lập trình chức năng) Phiên bản đầu tiên của Eiffel for NET được gọi là Eiffel# Ngoài ra, hậu tố này cũng được sử dụng cho các thư viện như Gtk# (wrapper NET cho GTK+ và các thư viện GNOME khác) và Cocoa#.
C# đã trải qua các phiên bản sau:
Hình 2.1 Các phiên bản của C#
C# là một trong những ngôn ngữ lập trình mới nhất, nhưng lại được biết đến rộng rãi nhờ vào sự phát triển của Tập đoàn Microsoft và cam kết của NET Trước khi ra mắt C#, Microsoft đã gặp khó khăn với Microsoft Bob, một sản phẩm không thành công do không đáp ứng được nhu cầu của lập trình viên C# đã được phát triển để thay thế Bob và nhanh chóng trở thành ngôn ngữ lập trình phổ biến, đáp ứng nhiều tiêu chí của người lập trình và hiện đang được ưa chuộng trên toàn thế giới.
Hiện nay, có hơn 100.000 ứng dụng quản lý được phát triển bằng C# và hoạt động trên 2,7 tỷ thiết bị khác nhau, bao gồm các ứng dụng quản lý nhân sự, nhà hàng và quán cà phê.
Từ đó cho thấy C# đang được sử dụng rất rộng rãi và dần len lỏi vào nhiều lĩnh vực cũ và mới
C# có thể viết hầu hết tất cả các chương trình ứng dụng trong đó tiêu biểu như:
Ứng dụng cho thiết bị di động
Khả năng tiếp cận getter/setter riêng biệt
Phương pháp nhóm chuyển đổi (delegate)
Co- và Contra-variance cho các delegates (delegate)
Cải tiến trong việc khởi tạo đối tượng
Các biểu thức lambda: listOfFoo.Where(delegate(Foo x) { return x.size>10;}) trở thành listOfFoo.Where(x => x.size>10);
Mặc định gõ các biến cục bộ, ví dụ var x = "hello"; có thể hoán đổi với string x
Các property được tự động hiện thực hóa
Đối số được đặt tên và tùy chọn
Co- và contravariance dạng generic
Các kiểu interop nhúng ("NoPIA")
Tìm thông tin thành phần gọi hàm
Nhập các thành viên kiểu static vào không gian tên
Await trong các khối catch/finally
Tự động cài đặt property
Các thành viên trong thân biểu thức
Toán tử kiểm tra null
Constructor and finalizer trong thân biểu thức
Getter và setter trong thân biểu thức
Throw cũng có thể được dùng làm biểu thức
Tên các phần tử tuple được nội suy
Reference ngữ nghĩa với các loại giá trị
Các đối số được đặt tên không có đuôi
Giới hạn truy cập private protected cho các field
Tổng quan về NET FRAMEWORK
2.2.1 Giới thiệu về NET FRAMEWORK
.NET Framework là nền tảng lập trình và thực thi ứng dụng chủ yếu trên hệ điều hành Microsoft Windows, được phát triển bởi Microsoft Các chương trình viết trên nền tảng này được triển khai trong môi trường phần mềm gọi là Common Language Runtime (CLR), một máy ảo cung cấp dịch vụ như an ninh phần mềm, quản lý bộ nhớ và xử lý lỗi ngoại lệ Việc tái sử dụng và thích ứng một Engine để tạo ra nhiều website khác nhau thường tiêu tốn nhiều thời gian và kinh phí.
.NET framework là một tập hợp các thư viện lập trình phong phú, hỗ trợ phát triển phần mềm bao gồm lập trình giao diện, truy cập và kết nối cơ sở dữ liệu, ứng dụng web, cũng như các thuật toán và cấu trúc dữ liệu Hai thành phần chính của NET framework là CLR và bộ thư viện này.
.NET framework giúp lập trình viên dễ dàng phát triển ứng dụng nhờ vào các thành phần được thiết kế sẵn Người dùng chỉ cần nắm vững cách sử dụng và kết hợp các thành phần này theo sự sáng tạo của mình Ngoài ra, nhiều công cụ hỗ trợ cũng được phát triển để tối ưu hóa quá trình xây dựng ứng dụng.
9 dụng.NET, và IDE (Integrated Developement Environment) được phát triển và hỗ trợ bởi chính Microsoft là Visual Studio
Hình 2.2 Các phiên bản của NET Framework
.NET Framework 1.0 là phiên bản đầu tiên được phát hành vào năm 2002, hỗ trợ các hệ điều hành Windows 98, NT 4.0, 2000 và XP Microsoft đã chính thức ngừng hỗ trợ phiên bản này vào ngày 10/7/2007, nhưng thời gian hỗ trợ mở rộng đã được kéo dài đến 14/7/2009.
Phiên bản nâng cấp đầu tiên được phát hành vào 4/2003 Sự hỗ trợ của Microsoft kết thúc vào 14/10/2008, và hỗ trợ mở rộng được định đến 8/10/2013
Những thay đổi so với phiên bản 1.0:
Tích hợp hỗ trợ mobile ASP.NET (trước đây chỉ là phần mở rộng tùy chọn)
Thay đổi về kiến trúc an ninh - sử dụng sandbox khi thực thi các ứng dụng từ Internet
Tích hợp hỗ trợ ODBC và cơ sở dữ liệu Oracle
Hỗ trợ IPv6 (Internet Protocol version 6)
Vài thay đổi khác trong API
Kể từ phiên bản này, NET Framework đã hoàn toàn hỗ trợ nền tảng 64-bit, cùng với một số thay đổi trong API Nó cũng hỗ trợ các kiểu "generic" và bổ sung tính năng cho ASP.NET Thêm vào đó, NET Micro Framework được giới thiệu như một phiên bản liên quan đến Smart Personal Objects Technology.
.NET Framework 3.0 không phải là một phiên bản hoàn toàn mới, mà chỉ là bản nâng cấp của NET 2.0 Phiên bản này, còn được gọi là WinFX, bao gồm nhiều thay đổi để hỗ trợ phát triển và chuyển đổi ứng dụng trên Windows Vista Tuy nhiên, NET Compact Framework 3.0 không được phát hành trong lần này.
Bốn thành phần chính trong phiên bản 3.0:
1) Windows Presentation Foundation (WPF - tên mã là Avalon): Đây là một công nghệ mới, và là một nỗ lực của Microsoft nhằm thay đổi phương pháp hay cách tiếp cận việc lập trình một ứng dụng sử dụng giao diện đồ họa trên Windows với sự hỗ trợ của ngôn ngữ XAML
2) Windows Communication Foundation (WCF - tên mã là Indigo): Một nền tảng mới cho phép xây dựng các ứng dụng hướng dịch vụ (service-oriented)
3) Windows Workflow Foundation (WF): Một kiến trúc hỗ trợ xây dựng các ứng dụng workflow (luồng công việc) một cách dễ dàng hơn WF cho phép định nghĩa, thực thi và quản lý các workflow từ cả cách nhìn theo hướng kĩ thuật và hướng thương mại
4) Windows CardSpace (tên mã là InfoCard): một kiến trúc để quản lý định danh (identity management) cho các ứng dụng được phân phối
.NET Framework 3.5, được phát hành vào tháng 11 năm 2007, sử dụng CLR 2.0 và tương đương với sự kết hợp của NET Framework 2.0 SP1 và NET Framework 3.0 SP1 Cùng thời điểm này, NET Compact Framework 3.5 cũng được giới thiệu.
Các thay đổi kể từ phiên bản 3.0:
Các tính năng mới cho ngôn ngữ C# 3.0 và VB.NET 9.0
Hỗ trợ Expression Tree và Lambda
Các phương thức mở rộng (Extension methods)
Các kiểu ẩn danh (Anonymous types)
Phân trang (paging) cho ADO.NET
API cho nhập xuất mạng không đồng bộ (asynchronous network I/O)
Peer Name Resolution Protocol resolver
Cải thiện WCF và WF
Tích hợp ASP.NET AJAX
Microsoft ADO.NET Entity Framework 1.0
Cũng như phiên bản 3.0, có thể minh họa sự thay đổi của.NET 3.5 bằng công thức:
NET 3.5 =.NET 3.0 + LINQ + ASP.NET 3.5 + REST
Phiên bản beta đầu tiên của.NET 4 xuất hiện vào 5/2009 và phiên bản RC (Release
Candidate) được ra mắt vào 2/2010 Bản chính thức của.NET 4 được công bố và phát hành cùng với Visual Studio 2010 vào 12/4/2010
Các tính năng mới được Microsoft bổ sung trong.NET 4:
Hỗ trợ các tập tin ánh xạ bộ nhớ (memory-mapped files)
Mô hình lập trình mới cho các ứng dụng đa luồng (multithreaded) và bất đồng bộ (asynchronous)
Cải thiện hiệu năng, các mô hình workflow
Những thông tin đầu tiên của.NET 4.5 được Microsoft công bố vào 14/9/2011 tại BUILD Windows Conference, và nó chính thức được ra mắt vào 15/8/2012
Kể từ phiên bản này, Microsoft bắt đầu cung cấp 2 gói cài đặt riêng biệt, gói đầy đủ và gói giản chức năng client profiles.
Tổng quan về ASP.NET MVC 5
2.3.1 Giới thiệu về ASP.NET MVC 5
ASP.NET MVC là một framework web do Microsoft phát triển, áp dụng mô hình MVC (model–view–controller) Đây là phần mềm mã mở, tách biệt với ASP.NET Web Forms Hiện nay, ASP.NET MVC đang trở thành phương pháp phát triển web hàng đầu.
MVC là một mẫu thiết kế phổ biến mà nhiều lập trình viên quen thuộc, phù hợp với một số loại ứng dụng web Trong khi đó, một số ứng dụng khác lại ưa chuộng ASP.NET Web Forms và cơ chế postbacks Thậm chí, có những ứng dụng kết hợp cả hai kiến trúc này.
Nền tảng MVC bao gồm các thành phần dưới đây:
Các đối tượng Models trong ứng dụng đóng vai trò quan trọng trong việc thiết lập logic dữ liệu Chúng thường lấy và lưu trữ trạng thái của model trong cơ sở dữ liệu (CSDL) Chẳng hạn, một đối tượng Product (sản phẩm) sẽ truy xuất dữ liệu từ CSDL, thực hiện các thao tác cần thiết và cập nhật lại thông tin vào bảng Products trong SQL Server.
Views là các thành phần hiển thị giao diện người dùng (UI), thường được tạo ra từ thông tin dữ liệu của model Chẳng hạn, khi cập nhật bảng Products, view sẽ hiển thị các hộp văn bản, danh sách thả xuống và các ô chọn dựa trên trạng thái hiện tại của đối tượng Product.
Controllers là các thành phần quản lý tương tác người dùng, làm việc với model và chọn view để hiển thị giao diện người dùng trong một ứng dụng.
Trong mô hình MVC, view chỉ có nhiệm vụ hiển thị thông tin, trong khi controller quản lý và phản hồi các tương tác của người dùng Cụ thể, controller xử lý dữ liệu người dùng gửi lên (giá trị query-string) và chuyển các giá trị này đến model, từ đó model sẽ truy xuất dữ liệu từ cơ sở dữ liệu dựa trên các giá trị đã nhận.
2.3.2 Ưu điểm của mô hình MVC
Nền tảng ASP.NET MVC mang lại những lợi ích sau:
• Dễ dàng quản lý sự phức tạp của ứng dụng bằng cách chia ứng dụng thành ba thành phần model, view, controller
• Nó không sử dụng view state hoặc server-based form Điều này tốt cho những lập trình viên muốn quản lý hết các khía cạnh của một ứng dụng
Mẫu Front Controller giúp quản lý tất cả các yêu cầu thông qua một Controller duy nhất, từ đó cho phép thiết kế một hạ tầng quản lý định tuyến hiệu quả.
• Hỗ trợ tốt hơn cho mô hình phát triển ứng dụng hướng kiểm thử (TDD)
Nó cung cấp hỗ trợ hiệu quả cho các ứng dụng phát triển bởi các đội ngũ lập trình viên và thiết kế đông đảo, đồng thời vẫn đảm bảo quản lý tốt các tính năng của ứng dụng.
2.3.3 Tính năng của nền tảng MVC
Tách bạch các tác vụ của ứng dụng như logic nhập liệu, business logic và logic giao diện giúp dễ dàng kiểm thử và áp dụng phương pháp phát triển TDD Tất cả các tính năng chính của mô hình MVC được cài đặt dựa trên interface và kiểm thử bằng các đối tượng mocks, cho phép mô phỏng các tính năng của đối tượng thực Việc kiểm thử unit-test cho ứng dụng không cần chạy controller trong tiến trình ASP.NET, mang lại sự nhanh chóng và tiện dụng Bạn có thể sử dụng bất kỳ nền tảng unit-testing nào tương thích với nền tảng NET.
MVC là nền tảng mở rộng và khả nhúng, cho phép thay thế và tùy chỉnh các thành phần dễ dàng Bạn có thể thêm view engine, cơ chế định tuyến cho URL, và cách kết xuất tham số của action-method ASP.NET MVC hỗ trợ linh hoạt trong việc phát triển ứng dụng web.
Dependency Injection (DI) và Inversion of Control (IoC) là hai khái niệm quan trọng trong lập trình DI cho phép gắn các đối tượng vào một lớp mà không cần lớp đó tự khởi tạo, trong khi IoC quy định rằng các đối tượng sẽ lấy các phụ thuộc từ nguồn bên ngoài, như tập tin cấu hình Việc áp dụng DI và IoC không chỉ giúp mã nguồn trở nên linh hoạt hơn mà còn làm cho việc kiểm thử trở nên dễ dàng hơn.
ASP.NET MVC cung cấp một thành phần ánh xạ URL mạnh mẽ, giúp xây dựng các ứng dụng với địa chỉ URL ngắn gọn và dễ tìm kiếm Các URL này không cần phần mở rộng tên tập tin, được thiết kế để tối ưu hóa tìm kiếm và phù hợp với lập địa chỉ theo kiểu REST.
Support for using specifications (tags) of ASP.NET pages (.aspx), user controls (.ascx), and master pages (.master) is available You can leverage built-in features of ASP.NET, such as nesting master pages, using inline expressions (), server controls, templates, data binding, localization, and more.
ASP.NET hỗ trợ nhiều tính năng quan trọng như xác thực người dùng, quản lý thành viên và quyền truy cập Nó cũng cung cấp các cơ chế caching cho dữ liệu và output, cùng với quản lý session và profile Hệ thống này còn cho phép quản lý tình trạng ứng dụng và cấu hình một cách hiệu quả.
ASP.NET MVC 5 introduces a new view engine called Razor View Engine, which enables the quick and easy setup of views, requiring less effort compared to the traditional Web Forms view engine.
Tổng quan về HTML
HTML, viết tắt của Hyper Text Markup Language (Ngôn ngữ đánh dấu siêu văn bản), là công cụ chính để tạo ra các trang web Mỗi trang web có thể chứa nhiều tài liệu HTML, thường được gọi là tập tin HTML Tim Berners-Lee, người sáng lập HTML, cũng là người sáng lập World Wide Web và là chủ tịch của World Wide Web Consortium (W3C), tổ chức chịu trách nhiệm thiết lập các tiêu chuẩn trên Internet.
Một tài liệu HTML được cấu thành từ các phần tử HTML, được xác định bởi các cặp thẻ bao gồm thẻ mở và thẻ đóng, ví dụ như Các cặp thẻ này thường được bao bọc bởi dấu ngoặc ngọn.
Các văn bản muốn được định dạng bằng HTML cần được khai báo trong cặp thẻ, chẳng hạn như Đây là chữ in đậm Tuy nhiên, một số thẻ đặc biệt không có thẻ đóng, và dữ liệu sẽ được khai báo trong các thuộc tính, ví dụ như thẻ .
Một tập tin HTML sẽ bao gồm các phần tử HTML và được lưu lại dưới đuôi mở rộng là html hoặc htm
2.4.2 Cách HTML được xử lý
Khi một tập tin HTML được tạo ra, trình duyệt web sẽ xử lý nội dung của nó Trình duyệt đảm nhận vai trò đọc và hiểu các thẻ HTML, chuyển đổi chúng thành văn bản đã được đánh dấu để người dùng có thể đọc, nghe hoặc để các bot máy tính hiểu.
2.4.3 Vai trò của HTML trong website
HTML là ngôn ngữ đánh dấu siêu văn bản, có vai trò xây dựng cấu trúc siêu văn bản trên website và khai báo các tập tin kỹ thuật số như hình ảnh, video, nhạc Tuy nhiên, HTML không phải là ngôn ngữ duy nhất để tạo ra website, mà chỉ đóng vai trò hình thành cấu trúc cơ bản cho nó Một website thường được hình thành từ nhiều ngôn ngữ khác nhau.
• HTML – Xây dựng cấu trúc và định dạng các siêu văn bản
• CSS – Định dạng các siêu văn bản dạng thô tạo ra từ HTML thành một bố cục website, có màu sắc, ảnh nền,…
• Javascript – Tạo ra các sự kiện tương tác với hành vi của người dùng (ví dụ nhấp vào ảnh trên nó sẽ có hiệu ứng phóng to)
PHP là một ngôn ngữ lập trình được sử dụng để xử lý và trao đổi dữ liệu giữa máy chủ và trình duyệt, chẳng hạn như lưu trữ các bài viết trên máy chủ.
• MySQL – Hệ quản trị cơ sở dữ liệu truy vấn có cấu trúc (SQL – ví dụ như các bài viết sẽ được lưu lại với dạng dữ liệu SQL).
Tổng quan về CSS
CSS, viết tắt của Cascading Style Sheets, là ngôn ngữ dùng để tìm kiếm và định dạng các phần tử được tạo ra bởi các ngôn ngữ đánh dấu như HTML.
HTML định dạng các phần tử trên website như đoạn văn, tiêu đề và bảng, trong khi CSS thêm phong cách cho các phần tử HTML bằng cách thay đổi màu sắc, kiểu chữ và cấu trúc.
CSS hoạt động bằng cách tìm kiếm các vùng chọn, bao gồm tên thẻ HTML, ID, class và nhiều kiểu khác Sau khi xác định được vùng chọn, CSS sẽ áp dụng các thuộc tính cần thay đổi lên đó.
Tổng quan về Javascript
JavaScript là ngôn ngữ lập trình chính để phát triển các trang web tương tác Những tính năng như slideshow, pop-up quảng cáo và autocomplete của Google đều được xây dựng bằng JavaScript Ngôn ngữ này được sáng tạo lần đầu bởi Brendan Eich tại công ty Netscape vào năm 1995.
Vào năm 1995, ngôn ngữ lập trình được gọi là Mocha trong quá trình phát triển, sau đó phát hành phiên bản beta với tên LiveScript Cuối cùng, nó được đổi tên thành JavaScript nhằm tận dụng sự phổ biến của Java vì lý do marketing.
Ban đầu, JavaScript không được các lập trình viên coi trọng như các ngôn ngữ phát triển phía máy chủ như Java, Ruby hay Python Nó chỉ được xem như một lớp phủ cho trải nghiệm người dùng, tương tự như phần kem trên bề mặt chiếc bánh Tuy nhiên, ngôn ngữ này đã tiếp tục phát triển và khẳng định vị thế của mình trong lĩnh vực lập trình.
17 triển và ngày càng trở nên phổ biến, nó thường được đề xuất là ngôn ngữ lập trình nên học đầu tiên dành cho người mới bắt đầu
2.6.2 Sự phổ biến của Javascript
JavaScript là ngôn ngữ kịch bản phía máy khách duy nhất, được sử dụng rộng rãi trên hầu hết các trang web hiện nay Đây là lý do Codecademy chọn JavaScript làm ngôn ngữ đầu tiên cho người học Khác với các ngôn ngữ cổ điển trong chương trình khoa học máy tính, JavaScript chắc chắn sẽ hữu ích trong công việc của các nhà phát triển web.
JavaScript có thể chạy trực tiếp trong trình duyệt mà không cần tải phần mềm nào, chỉ cần một trình soạn thảo văn bản như TextWrangler hoặc TextEdit và một trình duyệt web Điều này mang lại lợi ích lớn cho các lập trình viên mới vào nghề.
Mặc dù JavaScript mang lại nhiều tiện ích, nhưng nhiều lập trình viên không xem đây là ngôn ngữ tinh tế nhất do cú pháp có phần lộn xộn CoffeeScript ra đời nhằm cải thiện điều này, giúp JavaScript trở nên giống như Ruby hay Python bằng cách loại bỏ dấu ngoặc nhọn, dấu chấm phẩy, và bổ sung khoảng trắng cùng với căn lề thụt đầu dòng.
Những thay đổi này giúp mã nguồn trở nên dễ đọc hơn, cho phép chúng ta dễ dàng xem lại các đoạn code cũ và nhớ được chức năng của chúng, cũng như thuận tiện hơn khi làm việc cùng các lập trình viên khác trong một dự án chung.
JavaScript có thể xây dựng toàn bộ trang web khi kết hợp với Node.js và MongoDB Node.js, với tính năng bất đồng bộ, mang lại khả năng mở rộng cao, rất phù hợp cho việc xử lý dữ liệu lớn Chẳng hạn, một nhà phát triển đã gửi 600 email chỉ trong 3 giây với Node.js, trong khi PHP mất đến 30 giây MongoDB, là cơ sở dữ liệu hướng tài liệu, được thiết kế để mở rộng và cung cấp các chức năng tối ưu cho cả hai thế giới.
JavaScript là ngôn ngữ phát triển ứng dụng web phổ biến nhất hiện nay và được sử dụng rộng rãi trên Github Nhiều trang web lớn như Klout, Storify và Yammer được xây dựng bằng Node Việc sử dụng cùng một ngôn ngữ cho cả front-end và back-end giúp các nhà phát triển phần mềm dễ dàng hơn trong quá trình phát triển.
JavaScript đóng vai trò quan trọng trong việc tạo ra các hiệu ứng động trên trang web, như cửa sổ pop-up và khả năng cập nhật dữ liệu mà không cần làm mới trang nhờ vào AJAX Một ví dụ thực tế về AJAX là khi bạn nhấp vào một hình ảnh trên trang, địa chỉ URL sẽ thay đổi và dữ liệu mới sẽ được hiển thị mà không cần tải lại toàn bộ trang AJAX, viết tắt của Asynchronous JavaScript And XML, chỉ có thể được sử dụng trong ngữ cảnh của JavaScript.
Tổng quan về Bootstrap
Bootstrap là một framework HTML, CSS và JavaScript hàng đầu cho việc phát triển các trang web phản hồi và tích hợp di động Nếu bạn muốn tạo ra một website responsive, tương thích với mọi trình duyệt và thiết bị di động, công nghệ này là lựa chọn không thể thiếu.
Bootstrap cung cấp mã CSS và HTML cơ bản cho các thành phần như typography, forms, buttons, tables, grids, và navigation, giúp các designer tiết kiệm thời gian bằng cách tránh lặp lại các class CSS và đoạn mã HTML Các style của phần tử HTML trong Bootstrap được thiết kế đơn giản và thanh lịch, bao gồm các hiệu ứng như đổ bóng trong input, highlight cho bảng biểu, và các mã CSS cho cảnh báo, tabs, và phân trang.
Bootstrap ngày càng trở nên phổ biến nhờ tính năng Tùy chỉnh (Customize) mới được bổ sung, giúp các nhà thiết kế linh hoạt hơn trong việc lựa chọn các thuộc tính và phần tử.
19 phù hợp với dự án họ đang theo đuổi Chức năng này cũng cho phép bạn không cần phải tải toàn bộ mã nguồn về máy
Bootstrap là một công cụ dễ sử dụng, không yêu cầu kiến thức phức tạp Chỉ cần có hiểu biết cơ bản về HTML, CSS, Javascript và Jquery, bạn có thể tạo ra một website chuyên nghiệp và đáp ứng đúng yêu cầu của mình.
Bootstrap là một framework được phát triển bởi những chuyên gia công nghệ hàng đầu toàn cầu Tính tương thích của nó với các trình duyệt và thiết bị đã được kiểm tra kỹ lưỡng, giúp bạn yên tâm khi lựa chọn Bootstrap để tạo ra những sản phẩm chất lượng cao.
Bootstrap hỗ trợ Responsive nhờ vào việc sử dụng Grid System, với xu hướng Mobile First, ưu tiên tương thích trên thiết bị di động Việc áp dụng công nghệ này cho website giúp nó tương thích với mọi kích thước màn hình, điều này rất quan trọng cho trải nghiệm người dùng.
Bootstrap hoạt động theo xu hướng mã nguồn mở nên bạn có thể vào mã nguồn của nó để thay đổi và chỉnh sửa tùy ý
PHÂN TÍCH THIẾT KẾ
Phân tích
Website đánh giá công nghệ được thiết kế để người dùng có thể dễ dàng tìm hiểu về các sản phẩm công nghệ mọi lúc, mọi nơi, giúp tiết kiệm thời gian và chi phí liên quan đến việc mua sắm trực tiếp.
Khi đánh giá, người dùng cung cấp thông tin cá nhân để hệ thống lưu trữ trong cơ sở dữ liệu, nhằm thuận tiện cho việc quản lý và trả kết quả sau này.
Sản phầm bao gồm các chức năng chính sau:
Sau khi nhận được đề tài từ giáo viên, chúng em đã tiến hành nghiên cứu và tham khảo nhiều ý tưởng trên mạng Chúng em thiết kế và tùy biến toàn bộ giao diện của website, đồng thời thêm một số chức năng nhằm nâng cao trải nghiệm người dùng.
- User : là người trực tiếp sử dụng phần mềm ở đây cụ thể là người muốn đánh giá hoặc tìm hiểu về món đồ công nghệ
- Admin: là quản trị viên, nhân viên, có khả năng đăng bài viết mới và các chức năng bên trong của hệ thống như : thêm, xoá, sửa dữ liệu
- Tương thích với tất cả các thiết bị di động, máy tính
- Chạy được trên mọi trình duyệt, hệ điều hành
3.1.5 Mô hình thực thể kết hợp
Hình 3.2 Mô hình thực thể kết hợp
Cơ sỡ dữ liệu
USERS(id_user, username, password, name, phonenumber, email, role)
STT Tên Trường Kiểu dữ liệu Khoá
1 id_user int Khoá chính
Bảng 3.1 Bảng dữ liệu Users
STT Tên Trường Kiểu dữ liệu Khoá
1 id_category Int Khoá chính
Bảng 3.2 Bảng dữ liệu Categories
POSTS(id_posts, id_category, id_users, title_post, description, content_post, image_post, date_post, status_post, meta)
STT Tên Trường Kiểu dữ liệu Khoá
1 Id_post int Khoá chính
2 Id_category int Khóa ngoại
3 Id_user int Khóa ngoại
Bảng 3.3 Bảng dữ liệu Posts
SLIDER(ID_Slide, image_slide, URL, status_slide)
STT Tên Trường Kiểu dữ liệu Khoá
1 ID_Slide Int Khoá chính
Bảng 3.6 Bảng dữ liệu Slider
KẾT QUẢ THỰC NGHIỆM
Giao diện trang chủ
Hình 4.1 Giao diện trang chủ
Giao diện bao gồm nút home, nút review, logo và nút chức năng mở rộng nằm ở góc trên cùng bên phải, sẽ hiển thị khi người dùng di chuột vào.
- Tên của trang web là Review World
- Giao diện chính Web thân thiện, chức năng đơn giản Ai cũng có thể sử dụng và trên mọi thiết bị.
Giao diện chọn bài viết
Hình 4.2 Giao diện chọn bài viết
Người dùng có thể chọn bài viết mà họ muốn tìm hiểu, và hệ thống sẽ cung cấp những tin tức liên quan cùng với thông tin chi tiết về bài viết đó.
Giao diện bài viết
Hình 4.3 Giao diện bài viết.
Giao diện bình luận
Hình 4.4 Giao diện thông báo đăng nhập để bình luận
4.5 Giao diện đăng nhập admin
Hình 4.5 Giao diện thông báo đăng nhập admin
Hình 4.6 Giao diện quản lý bài viết
Hình 4.6 Giao diện quản lý thể loại