Không còn legacy nữa,
hãy vượt qua quá khứ và tiến về tương lai!
『Awesome Laravel』 của Jeong Sang-woo
Lập trình PHP 7+
Từ ngữ pháp cơ bản đến hàm tích hợp, bảo mật web, tạo bảng tin cho đến nhập môn và sơ cấp, tôi đã tạo ra khóa học này với tâm huyết muốn nó trở thành cuốn cẩm nang cho những ai bắt đầu học ngôn ngữ PHP.
Chương trình học
Trong khóa học này, chúng ta sẽ bắt đầu từ cú pháp cơ bản của lập trình PHP và đi đến các hàm tích hợp, bảo mật web, tạo bảng tin - những phần có thể trở thành nền tảng trong phát triển web. Tôi đã cấu trúc khóa học này để có thể cải thiện chất lượng code thông qua việc tìm hiểu các hàm tích hợp khác nhau không được đề cập trong khóa học 'Lập trình PHP 7+' trước đây, cũng như không chỉ dừng lại ở việc triển khai đơn giản trong bảng tin mà còn thông qua việc hàm hóa.
Cú pháp cơ bản PHP cần thiết phải biết
Học các cú pháp cơ bản tương ứng với phiên bản PHP 7+. Khóa học này về cơ bản dựa trên phiên bản PHP 7.2 nhưng được cấu trúc để có thể bao gồm cả Arrow Function, Spread Operator in Array xuất hiện trong phiên bản PHP 7.4. Do đó, nếu bạn từ từ theo dõi bài giảng, bạn có thể học được đến phiên bản PHP 7.4 - phiên bản mới nhất tại thời điểm khóa học được tạo ra.
Các hàm tích hợp sẵn của PHP được sử dụng nhiều
String, Password Hashing và các hàm tích hợp cần thiết phải biết khi lập trình PHP. Nội dung có thể trông nhiều, nhưng phần lớn sẽ được sử dụng trong việc tạo bảng tin. Tuy nhiên, vì được tiến hành theo cách liệt kê đơn giản nên có thể hơi nhàm chán. Do đó, một cách khác là tiến hành tạo bảng tin trước rồi sau đó xem phần hàm tích hợp.
*Có nhiều người bỏ cuộc giữa chừng ở chương hàm tích hợp sẵn hơn so với các chương khác. Vì được tiến hành theo phương pháp tham khảo nên khá nhàm chán. Đừng cố gắng học hết tất cả, tốt nhất là nên học khi bạn nghĩ rằng mình cần đến chức năng đó.
Đừng quên bảo mật.
Session, XSS và các vấn đề bảo mật web khác. PHP có rào cản gia nhập thấp hơn so với các ngôn ngữ khác, chính vì thế mà các vấn đề bảo mật thường không được tuân thủ. Điều này có thể gây ra vấn đề khi phát triển ứng dụng web và dù chúng ta không phải là chuyên gia bảo mật, chúng ta vẫn cần tuân thủ các nguyên tắc bảo mật cơ bản.
Cuối cùng, bạn sẽ phải tạo một bảng thông báo.
Tạo bảng tin với dự án legacy. Dự án bắt đầu từ việc viết index.php từ trang trắng. Dự án bảng tin như thế này có thể không phù hợp với thế giới ứng dụng web hiện tại đang phát triển chủ yếu dựa trên framework. Tuy nhiên, để hiểu được dù chỉ một chút về Laravel - framework của PHP, thì cần phải thử viết dự án theo cách legacy, và thật ngạc nhiên là trong thực tế cũng có rất nhiều ứng dụng PHP 4, PHP 5 được viết theo cách legacy.
Đến khi nào thì hết legacy?
Dự án bảng tin được viết bằng legacy sẽ mô tả và làm theo tương tự 'kiến trúc nào đó'. Vì không phải là 'thực sự' được triển khai theo hướng đối tượng nên sẽ không đề cập đến. Tuy nhiên, bằng cách chuyển đổi code hiện tại thành các hàm, bạn có thể thấy code thay đổi một cách đáng kể. Việc triển khai theo hướng đối tượng sẽ được thảo luận trong 『PHP 7+ Programming: Object-Oriented』.
Những thứ cần thiết trước khi nghe bài giảng
Máy chủ phát triển sử dụng máy chủ tích hợp sẵn, nhưng tùy theo nhu cầu, bạn có thể sử dụng các công cụ như WAMP hoặc tham khảo PHP Manual.
- PHP 7.4.21 TS(Thread Safe) (64bit)
- XDebug 3.0.4 TS (64bit)
- Trình soạn thảo mã: Sử dụng VSCode(Visual Studio Code).
- Mã ví dụ: Có thể tải xuống từ bài giảng 『00 - 환경 (Environment)』.
Sử dụng CSS Framework cho frontend và CKEditor 5 làm trình soạn thảo văn bản.
Q&A
Từ ngày 24 tháng 07 năm 2023, tôi không nhận câu hỏi về khóa học vì lý do cá nhân. Tuy nhiên, bạn có thể xem lại các câu hỏi và trả lời đã được viết trong nhiều năm qua. Tôi khuyên bạn nên tìm kiếm câu hỏi trong cộng đồng.
Tài liệu chính thức & Sách
Q. Sau khóa học này thì nên học gì tiếp theo?
A. Bạn nhất định phải học phần lập trình hướng đối tượng. Tài liệu tham khảo thì xem tài liệu PHP sẽ tốt hơn. Tất nhiên, PHP cũng có thể thực hiện lập trình hàm nên tìm hiểu về điều đó cũng rất tốt. Ngoài ra, bạn cần tìm hiểu về PHP Coding Standard, PSR(PHP Standard Recommendation) v.v. Một điều chắc chắn là trước khi học lập trình hướng đối tượng, việc chuyển sang framework Laravel thì nên tránh.
Khóa học tiếp theo của khóa học này là 『PHP 7+ Programming: Hướng đối tượng』. Nếu như trong khóa học này chúng ta chủ yếu nói về hàm, thì trong hướng đối tượng chúng ta sẽ chủ yếu nói về lớp và đối tượng, và không chỉ vậy, chúng ta còn tìm hiểu những nội dung sâu hơn như package manager.
Ngày 09 tháng 06 năm 2020, khóa học 『Lập trình PHP 7+: Hướng đối tượng』 đã được công bố.
Bây giờ là lúc phải tiến thêm một bước về phía trước với lập trình hướng đối tượng
『PHP 7+ Programming: Hướng đối tượng』