Làm thế nào để bắt đầu học PHP một cách đúng nhất

by Thien

on Nov 24/16 at 03:16

Làm thế nào để bắt đầu học PHP một cách đúng nhất, tôi nhận khả là nhiều câu hỏi từ các bạn sinh viên muốn học lập trình web bằng PHP, nhưng không biết bắt đầu như thế mặc dù trên mạng có khá nhiều hướng dẫn.

Do đó việc đầu tiên trước khi đưa ra lời khuyên cho các bạn thì mình có xem các video đa số đều dạy PHP khá cũ, và cũng không cập nhật các công cụ mới nhất đê phát triển PHP, do đó trong bài viết này mình sẽ hướng dẫn các bạn, chú ý bài viết phù hợp cho begin!

Môi trường phát triển

Hãy nhớ, không bao giờ dùng XAMP hoặc WAMP để chạy các ứng dụng PHP cho dù nó có giúp bạn cài đặt môi trường nhanh chóng như thế nào, vì thực tế khi các bạn làm các dự án PHP thì đều chạy trên máy chủ Linux

Nhưng có bạn nói máy em chạy Windows thế thì phải làm sao, ok quá đơn giản bạn có thể dùng Vagrant kết hợp với VirtualBox, tôi nghĩ ngày nay đa số laptop các bạn đều có cấu hình ổn để chạy nó, nếu bạn nào chưa biết Vagrant là gì thì xem thêm https://blog.saigonphp.com/blog/35/cung-tim-hieu-ve-vagrant

Giải pháp cuối cùng là bạn có thể dùng dịch vụ online để dev như https://codeanywhere.com/, có gói free cho các bạn, hổ trợ PHP 7, bạn chỉ cần 3 cái click là có ngay môi trường phát triển Linux

Đừng bỏ cuộc khi cài đặt Vagrant, hãy chạy cho tới khi nào thành công và đây cũng là thời gian tốt nhất cho các bạn biết thêm cách dùng Linux

Tôi giả sử bạn đã cài đặt git và Vagrant, để có git bạn có thể cài đặt GUI của github https://desktop.github.com/, sau khi cài đặt nó xong, chỉ cần chạy lệnh bên dưới dây là đã có ngay môi trường phát triển

$ git clone https://github.com/rlerdorf/php7dev.git
...
$ cd php7dev
...
$ vagrant up

Sau đó truy cập Url http://192.168.7.7 để thấy kết quả, nếu có lỗi xảy ra hãy để bình luận bên dưới

Chọn IDE hoặc Editor

Có khá nhiều công cụ để viết code PHP như Atom, Sublime tex, PHPSTORM..., nhưng tôi thích nhất là Sublime và PHPSTORM

Sublime: phù hợp cho các bạn mới bắt đầu vì lúc đầu bạn cần phải gõ các function php thủ công để cho bạn nhớ nó, sau khi bạn làm được một thời gian dự án bạn trể nên lớn có quá nhiều function và class bạn không nhớ nỗi lúc này bạn nên dùng PHPSTORM, vì nó là IDE nên có chức năng Autocompletion khá là bá đạo.

Chú ý rằng với Sublime ta cũng có thể làm được chuyện đó với các plugin hỗ trợ. Hình dưới đây là màn hình làm việc của tôi về 2 công cụ đó, bên trái là Sublime và bên phải là PHPSTORM

GitHub hoặc Bitbucket

Việc đầu tiên của viết code đó là bạn cần quản lý các đoạn code của chúng ta do đó, bạn cần một nơi lưu trữ code và xem lịch sử code, tôi thường dùng github để làm chuyện đó, vậy github là gì

Github http://github.com, còn được gọi là social network dành cho developer đi vào hoạt động tháng 2 năm 2008, là một dịch vụ sử dụng hệ thống quản lý phân tán GIT giúp người dùng lưu trữ source code cho các dự án. Tính năng của GIT như bài trước mình đã nói, nó có mọi tính năng của một source control như SVN và hơn thế nữa.

Xem cách hướng dẫn tại đây https://daynhauhoc.com/t/huong-dan-dung-github-tren-windows-co-ban-step-by-step/6526, ok bạn cần dành 2 ngày để hiểu git và github trước khi viết code, không gì phải vội vàng cả chỉ cần hiểu căn bản nó thôi vì khi đi làm bạn sẽ phải dùng đến nó

Tài liệu

Bạn có thể bắt đầu với cuốn sách PHP căn bản bằng tiếng việt, chỉ đọc để hiểu khái niệm cơ bản thôi việc này diễn ra trong 1 tuần sau đó hãy kiếm cuốn sách tiếng anh và hãy làm theo nó, nếu bạn không giỏi tiếng anh ok, lúc này là thời điểm thích hợp cho bạn nâng cao từ vựng tiến anh, tôi nghĩ kết hợp với google transalte chuyện đó không khó với các bạn

Đây là cuốn sách yêu thích của tôi khi bắt đầu học PHP https://www.sitepoint.com/premium/books/php-mysql-novice-to-ninja-5th-edition, và đây http://www.phptherightway.com/ cuốn này chỉ cho bạn cách tiếp cận PHP một cách đúng nhất

Tất nhiên cái gì không biết cứ google chắc chắn sẽ có, ngoài ra bạn có thể làm theo hướng dẫn của series này https://laracasts.com/series/php-for-beginners, nếu bạn không hiểu tiếng anh OK không sao, chỉ cần làm theo video :) tôi nghĩ serri video đó khá là hay cho các bạn mới bước vào PHP

Thực hành

Trước khi học PHP tôi nghĩ các bạn nên dành vài ngày tìm hiểu HTML, CSS, tôi không cần phải giải thích ở đây vì nó khá là đơn giản để hiểu, bạn chỉ cần nắm bắt cơ bản thôi.

Đầu tiên các bạn học các fucntion , dòng lệnh if hay for của PHP để xử lý các điều kiện hay lọc dữ liệu tôi nghĩ bạn cần 1 tuần để học nó, sau khi nắm bắt cơ bản bạn bắt đầu làm ví dụ đơn giản như login hay logout, viết blog mini để hiểu cách tương tác với cơ sở dử liệu.

Có khá là nhiều bạn khi làm các demo muốn có giao diện đẹp để tăng cảm giác code, nhưng lại tốn khá nhiều thời gian cho nó do đó tôi khuyên bạn nên dùng bootstrap để làm layout cái ứng dụng bạn viết, nếu là giao diện admin thì tôi không thể không giới thiệu em này https://github.com/almasaeed2010/AdminLTE, khá là đẹp để làm quảng lý trang admin.

Tất nhiên để làm web bạn cần phải biêt JAVASCRTIP và MYsql, chứ không phải chỉ học mỗi PHP, về JAVASCRIPT bạn có thể bắt đầu dùng ngay luôn Jquery một thư viện không thể tuyệt vời cho học JS

Sau khi trải qua các bước trên bạn có thể có 2 con đường, có thể bạn sẽ thích làm thiên về Front-end hơn thì bạn có thể dừng lại không cần phải dùng PHP cao cấp nữa, nếu như bạn thực sự yêu thích Back-end thì bạn có thể học tiếp với từ khoá như, Composer, viết PHP unit test, sau đó hãy kiếm một Framework mà học chẳn hạn như Laravel, Zend, Phalcon PHP, cá nhân tôi chọn Phalcon PHP, do đó tôi sẽ giúp để nếu bạn có thắc mắt bất kỳ vấn đề về Phalcon PHP

Ngoài ra bạn có thể học cách sử dụng CMS như Wordpres, Drupal, Joomla để làm các Website cá nhân, tin tức giới thiệu công ty, và bán hàng online, nó sẽ giúp cho các bạn khá là nhanh khi xây dựng sản phẩm. Nhưng bạn sẽ mất khá là nhiều thới gian để hiểu bản chất nó

Kết luận

Trên đây là cách mà tôi học PHP, chỉ muốn chia sẻ cho các bạn nào bắt đầu muốn đi con đường phát triển web và tất nhiên là ngôn ngữ PHP, nếu bạn có nhiều kinh nghiệm hãy để bình luận bên dưới cho nhiều bạn tham khảo

Chú ý trong thời gian tới tôi sẽ giới thiệu loạt serries căn bản PHP 7 cho các em newbie, với một cách học chuẩn nhất cho dân dev PHP.