Chương 1 CƠ SỞ LÝ THUYẾT 1. Visual Studio Code Là một trình biên tập lập trình code miễn phí dành cho Windows, Linux và macOS, Visual Studio Code được phát triển bởi Microsoft. Nó được xem là một sự kết hợp hoàn hảo giữa IDE và Code Editor. Visual Studio Code hỗ trợ chức năng debug, đi kèm với Git, có syntax highlighting, tự hoàn thành mã thông minh, snippets, và cải tiến mã nguồn.
Nhờ tính năng tùy chỉnh, Visual Studio Code cũng cho phép người dùng thay đổi theme, phím tắt, và các tùy chọn khác. Một số tính năng nổi bật: - Hỗ trợ nhiều ngôn ngữ lập trình - Hỗ trợ đa nền tảng - Ít dung lượng, nhẹ - Tính năng mạnh mẽ - Cung cấp kho tiện ích mở rộng - Kho lưu trữ an toàn - Visual Studio Code hỗ trợ nhiều ứng dụng web. Ngoài ra, nó cũng có một trình soạn thảo và thiết kế website. - Lưu trữ dữ liệu dạng phân cấp - Hỗ trợ viết Code - Visual Studio Code có tích hợp thiết bị đầu cuối, giúp người dùng khỏi phải chuyển đổi giữa hai màn hình hoặc trở về thư mục gốc khi thực hiện các thao tác - Người dùng Visual Studio Code có thể mở cùng lúc nhiều tệp tin và thư mục – mặc dù chúng không hề liên quan với nhau.
- Intellisense: có thể phát hiện nếu bất kỳ đoạn mã nào không đầy đủ. Thậm chí, khi lập trình viên quên không khai báo biến, Intellisense sẽ tự động giúp họ bổ sung các cú pháp còn thiếu. - Hỗ trợ Git 3 SVTH: Bùi Việt Thịnh Xây dưng website kết nối nhà trường với doanh nghiệp 1. PhpMyAdmin PhpMyAdmin là phần mềm mã nguồn mở được viết bằng ngôn ngữ PHP giúp quản trị cở sở dữ liệu MySQL thông qua giao diện web.
Tính đến nay, phpMyAdmin đã có đến hàng triệu lượt sử dụng và vẫn không ngừng tăng. Vậy tính năng hữu ích mà phpMyAdmin mang lại là gì: - Quản lý user (người dùng): thêm, xóa, sửa (phân quyền). - Quản lý cơ sở dữ liệu: tạo mới, xóa, sửa, thêm bảng, hàng, trường, tìm kiếm đối tượng. - Nhập xuất dữ liệu(Import/Export): hỗ trợ các định dạng SQL, XML và CSV.
- Thực hiện các truy vấn MySQL, giám sát quá trình và theo dõi. - Sao lưu và khôi phục(Backup/Restore): Thao tác thủ công. Bên cạnh việc cung cấp nhiều tính năng cần thiết như đã đề cập, phpMyAdmin còn có thể vừa làm việc với một đối tượng vừa xử lý các tình huống bất ngờ. Một vài ví dụ kể đến như SQL injection, các vấn đề phát sinh, lỗi database… Dù có nhiều ưu điểm song phpMyAdmin vẫn khó tránh khỏi một vài điểm yếu cố hữu.
Đặc biệt, trong việc sao lưu dữ liệu thủ công sẽ không có một vài tính năng cần thiết như: Scheduling, Storage Media Support. Postman Postman là một công cụ cho phép chúng ta thao tác với API, phổ biến nhất là REST. Postman hiện là một trong những công cụ phổ biến nhất được sử dụng trong thử nghiệm các API. Với Postman, ta có thể gọi Rest API mà không cần viết dòng code nào.
Postman hỗ trợ tất cả các phương thức HTTP (GET, POST, PUT, PATCH, DELETE, …). Bên cạnh đó, nó còn cho phép lưu lại lịch sử các lần request, rất tiện cho việc sử dụng lại khi cần. Những lợi ích khi sử dụng Postman: - Sử dụng Collections (Bộ sưu tập) – Postman cho phép người dùng tạo bộ sưu tập cho các lệnh gọi API của họ. Mỗi bộ sưu tập có thể tạo các thư mục con và nhiều yêu cầu (request).
Điều này giúp việc tổ chức các bộ thử nghiệm. - Collaboration – Collections và environment có thể được import hoặc export giúp chia sẻ tệp dễ dàng. - API Testing – Test trạng thái phản hồi HTTP. 4 SVTH: Bùi Việt Thịnh Xây dưng website kết nối nhà trường với doanh nghiệp - Gỡ lỗi – Bảng điều khiển Postman giúp kiểm tra dữ liệu nào đã được truy xuất giúp dễ dàng gỡ lỗi kiểm tra.
- Các chức năng cơ bản - Cho phép gửi HTTP Request với các method GET, POST, PUT, DELETE. - Cho phép post dữ liệu dưới dạng form (key-value), text, json. - Hiện kết quả trả về dạng text, hình ảnh, XML, JSON. - Hỗ trợ authorization (Oauth1, 2).
- Cho phép thay đổi header của các request. Hệ quản trị cơ sở dữ liệu Mysql Ra mắt người dùng hoàn toàn miễn phí, hệ quản trị cơ sở dữ liệu MySQL mang đến rất nhiều những lợi ích thiết thực, được ứng dụng trong nhiều dự án của các công ty công nghệ, một trong số đó có thể kể đến những công ty chuyên lập trình như MonaMedia, Misa… Hệ quản trị cơ sở dữ liệu MySQL không những mang lại hiệu năng sử dụng cao. Mà nó còn đưa ra một trong số những engine giao dịch cơ sở dữ liệu tốt nhất trên thị trường hiện nay. Tính năng này bao gồm: Khóa mức dòng không hạn chế; hỗ trợ giao dịch ACID hoàn thiện; khả năng giao dịch được phân loại và hỗ trợ giao dịch đa dạng mà người đọc không cản trở cho người viết và ngược lại.
Với MySQL, dữ liệu sẽ được đảm bảo trong suốt quá trình server có hiệu lực. Các mức giao dịch độc lập sẽ được chuyên môn hóa, nếu phát hiện có lỗi khóa chết ngay tức thì 1. Bootstrap Thiết kế một giao diện web đẹp, trực quan không phải là điều dễ dàng với hầu hết lập trình viên. Tuy giao diện không phải là thành phần quan trọng nhất của một ứng dụng, nhưng nếu giao diện quá khó coi thì sẽ gây mất cảm tình với người dùng.
Lập trình viên nào cũng muốn ứng dụng trông thật bắt mắt, nhưng họ lại không muốn tốn nhiều thời gian và công sức để thiết kế giao diện. Do vậy, Bootstrap được xem như là vị cứu tinh trong tình huống khó xử này. Bootstrap là một framework nổi tiếng trong cộng đồng lập trình web, và cũng là dự án được theo dõi nhiều nhất trên Github. Bootstrap không đòi hỏi người dùng phải có kiến thức về thiết kế hoặc mỹ thuật để tạo ra một giao diện đẹp.
Mọi thứ trong Bootstrap 5 SVTH: Bùi Việt Thịnh Xây dưng website kết nối nhà trường với doanh nghiệp đều đã được xây dựng sẵn. Chỉ cần dùng những thành phần (component) có sẵn này cho mục đích riêng của mình. Bootstrap khởi đầu là một dự án nội bộ của Twitter. Sau khi nhận ra được tính hữu ích của nó đối với cộng đồng, nhóm lập trình viên của Twitter quyết định mở nguồn cho Bootstrap và đăng tải nó lên Github vào năm 2011.
Đến nay, Bootstrap đã được 5 tuổi và hiện đang ở phiên bản 3, và sẽ ra mắt phiên bản 4 trong thời gian sắp tới. Bất kỳ ai cũng có thể dùng Bootstrap, kể cả khi người không có khiếu thẩm mỹ hoặc không rành về CSS. Nếu có tay nghề cao, có thể tùy biến Bootstrap theo ý thích riêng, hoặc tự tạo theme dựa trên Bootstrap. Nếu không chuyên về công nghệ front-end, hãy dùng kỹ thuật copy và paste đoạn code ví dụ có sẵn trên documentation của Bootstrap.
Tuy nhiên, đây chỉ là phương thức chữa cháy lúc mới bắt đầu học mà thôi. Sau này, nên nâng cao hiểu biết về Bootstrap để không phải phụ thuộc code mẫu nữa. Bootstrap được cấu tạo từ các file CSS và JavaScript. Để dùng Bootstrap, bạn chỉ cần thêm link đến những file này trong HTML.
Sau đó, hãy xem qua các component có trong documentation, rồi chọn ra component ưng ý. Kế đến, copy những đoạn code minh họa và paste vào file HTML. Framework Laravel Đối với mỗi developer, đặc biệt là các PHP developer chắc hẳn ai cũng biết đến Laravel một open source framework đứng đầu về số lượt download trên Packagist cũng như số lượng sao đạt được trên Github. Laravel được tạo ra bởi Taylor Otwell với phiên bản đầu tiên được ra mắt vào tháng 6 năm 2011.
Từ đó cho đến này, Laravel đã phát triển một cách mạnh mẽ, vượt qua những framework khác và vươn lên trở thành framework PHP có thể nói được ưa chuộc và được cộng đồng sử dụng nhiều nhất khi phát triển web với PHP. Lý do đầu tiên khiến Laravel nhanh chóng được cộng đồng đón nhận và sử dụng nhiều là do nó rất dễ để có thể sử dụng. Ngay cả khi bạn chỉ mới chỉ có những kiến thức cơ bản nhất về lập trình web với PHP thì việc bắt đầu sử dụng Laravel cũng chỉ mất vài giờ là bạn có thể bắt tay vào việc làm một project nhỏ. Document mà Laravel cung cấp trên trang chủ của mình được viết rất rõ ràng và dể hiểu giúp cho bạn nhanh chóng có thể tìm được những gì mình muốn.
6 SVTH: Bùi Việt Thịnh Xây dưng website kết nối nhà trường với doanh nghiệp Laravel được xây dựng và phát triển theo mô hình MVC (Model-View-Controller) nhờ đó mà cấu trúc và cách tổ chức code trong project được sắp xếp một cách hợp lý dễ dàng cho việc maintain cũng như phát triển về lâu dài. Để giúp lập trình viên có thể tối đa thời gian tập chung vào việc phát triển các tính năng, Laravel đã cung cấp sẵn cho người dùng các tính năng bảo mật cơ bản như: - ORM của Laravel sử dụng PDO thay vì mysqli để chống lại tấn công SQL Injection. - Laravel sử dụng một field token ẩn để chống lại tấn công kiểu CSRF. - Các biến được đưa ra view mặc định đều được Laravel escape để tránh tấn công XSS Hình 1.1: Laravel php Chắc hẳn trong quá trình làm việc, bạn có thể sẽ gặp rất nhiều những vấn đề, nhưng bug phát sinh nhưng chưa tìm được câu trả lời.
Nhưng may thay nếu bản sử dụng Laravel vướng mắc của bạn có thể đã được người khác giải quyết và bạn có thể lập tức sử dụng đáp án đó hoặc nếu không khi bạn đặt câu hỏi trên các diễn đàn thì cộng đồng đông đảo người sử dụng Laravel sẽ hỗ trợ bản giải quyết vấn đề đó.js là một thư viện Javascript đang nổi lên trong những năm gần đây với xu hướng Single Page Application. Trong khi những framework khác cố gắng hướng đến một mô hình MVC hoàn thiện thì React nổi bật với sự đơn giản và dễ dàng phối hợp với những thư viện Javascript khác. Nếu như AngularJS là một Framework cho phép nhúng code javasscript trong code html thông qua các attribute như ng-model, ng-repeat.thì với react là một library cho phép nhúng code html trong code javascript nhờ vào JSX, 7 SVTH: Bùi Việt Thịnh Xây dưng website kết nối nhà trường với doanh nghiệp bạn có thể dễ dàng lồng các đoạn HTML vào trong JS. Tích hợp giữa javascript và HTML vào trong JSX làm cho các component dễ hiểu hơn.
React là một thư viện UI phát triển tại Facebook để hỗ trợ việc xây dựng những thành phần (components) UI có tính tương tác cao, có trạng thái và có thể sử dụng lại được.