Biểu tượng website Khó ăn cát bê tông

Danh mục: Học PHP

Học lập trình web với ngôn ngữ PHP từng bước một, vững vàng

Nhiều bạn thích học lập trình web nhưng loay hoay mãi như gà mắc tóc. Chúng tôi hay nói vui là “không đến được bãi đỗ xe”.

Tình trạng này, anh em KACBT chúng tôi ở đây đều từng vướng phải, loay hoay mất nhiều năm mới thoát khỏi, có thể học được chút ít đạt mức đi làm kiếm cơm.

Do đó, KACBT cho rằng không có đúng sai/ phải trái, cứ kể như kể chuyện, liệt kê những gì biết để cho người đọc tự biết nên làm gì sau khi ngấm các bài đọc.

Lập trình chính là giải bài toán/ làm nên sản phẩm

Để tránh khó hiểu, chúng tôi so sánh một người viết code với một người thợ mộc.

Thợ mộc có các mức: học việc, thợ, thợ chính, nghệ nhân.

Tương ứng, lập trình viên có các mức: fresher, junior, senior, expert, guru.

Các mức chia trên là tương đối để chỉ từ thấp đến cao chứ không phải quy chuẩn nhất định. Một người vào nghề không phải ai cũng đạt mức cao nhất của nghề, nhưng phải đạt ở mức trung bình – khá, hoặc khá mới có thể sống được với nghề. Mức giỏi, xuất sắc dành cho số ít người, họ là những người có tiếng tăm, tiếng nói trong ngành nghề, lĩnh vực đó.

Lộ trình học PHP chôm từ trang dev.to

Điều kiện tiên quyết để theo nghề lập trình đó là tiếng Anh phải ở mức đọc hiểu được sách lập trình. Có thể ban đầu bạn chưa chuẩn bị được nhưng phải cố gắng học tiếng Anh trong quá trình lập trình.

Chúng tôi thường nhận thấy những bạn học tiếng Anh thất bại, khả năng học lập trình thất bại cũng cao. Tương tự, nếu bạn học tiếng Anh tốt, bạn cũng có tiềm năng để học lập trình dễ dàng.

Một sản phẩm phần mềm viết bằng PHP bởi 1 người từng tay chơi nhạc rock

Một số bạn có sự ảo tưởng rằng tiếng Anh không cần đọc hiểu được các bài viết, tài liệu về lập trình mà chỉ cần dùng Google dịch hoặc đọc được đoạn ngôn ngữ mà thôi. Theo chúng tôi, đây chẳng qua là sự chống chế cho việc lười hoặc không có khả năng học tiếng Anh. Chúng tôi thường nói vui, tiếng Anh đối với lập trình máy tính cũng giống như Bảng Cửu chương với Toán. Bạn giải Toán kiểu gì khi không thuộc Bảng Cửu chương, vậy thì, bạn cũng lập trình thế nào khi tiếng Anh dở ẹc.

Cách tiếp cận vấn đề theo hai hướng chính

Qua thực tế làm việc, KACBT nhìn xung quanh mình, những người đồng nghiệp cùng công ty và khác công ty thì thấy rằng phần lớn những lập trình viên web nói chung, lập trình viên ngôn ngữ PHP nói riêng đều đến từ một trong hai hướng sau:

Hướng 1: tìm hiểu kỹ lúc còn trẻ, vào nghề qua con đường cao đẳng, đại học

Ở nước ngoài, nếu bạn có ý định làm việc trong ngành công nghệ thông tin theo hướng trở thành người viết mã, lập trình viên, bạn cần ghi danh vào một trường đại học và học ngành Computer Science (viết tắt CS).

Tương tự, ở Việt Nam thì tên gọi khác nhau, nhưng nhìn chung, trước khi đăng ký bạn sẽ thấy trường đó có khoa công nghệ thông tin hoặc có chữ gì đó liên quan đến máy tính, phần mềm.

Ví dụ, ở website Trường Đại học Công nghệ Thông tin chúng tôi nhìn thấy hàng tá ngành học như sau:

  • Công nghệ thông tin
  • Hệ thống thông tin
  • Khoa học máy tính
  • Kỹ thuật phần mềm
  • Kỹ thuật máy tính
  • Mạng máy tính và truyền thông dữ liệu
  • An toàn thông tin
  • Thương mại điện tử
  • Khoa học dữ liệu
  • Trí tuệ nhân tạo

Bạn có thể tìm hiểu cụ thể từng ngành trước khi nộp đơn để định hướng cho đúng. Việc này nên làm sớm, trước khi bước vào lớp 12 để còn có thời gian điều chỉnh khi cần. Tránh để đến năm học cuối cấp thì loay hoay rồi chọn vội vàng, gây hậu quả tai hại vì hoá ra khi vào học không có gì giống tưởng tượng (vì có tìm hiểu kỹ lưỡng đâu mà biết nó thế nào).

Sau khi tìm được ngành học rồi, xem thử khi tốt nghiệp ra người ta sẽ làm những gì? Ở đâu tuyển.

Một vài nhầm lẫn rằng chơi game giỏi là có thể học lập trình tốt. Điều này không có căn cứ. Học giỏi Toán cũng chưa chắc trở thành lập trình viên xịn mà chỉ ở dạng tiềm năng, có sự hứa hẹn tương lai.

Một số khác cũng cần phải làm rõ đó là những người giỏi khoa học xã hội thì không thể theo ngành lập trình. Có thể những năm học phổ thông, ít học các môn tự nhiên nên ghi danh vào học ngành công nghệ thông tin kém lợi thế, nhưng vẫn có những người đủ điểm xét tuyển hoặc họ chọn khối D nên vẫn đủ điểm. Cũng có người hông theo con đường đại học chính quy cần phải xét tuyển theo khối A. Và như vậy, lập trình thực ra không quá khó đến mức phải giỏi Toán mới học được.

Cần biết rằng học lập trình, làm nghề lập trình chính là làm việc trong ngành kỹ thuật giống như những kỹ sư khác. Do đó, người học cần có tư duy về độ chính xác, giao tiếp với máy móc, có những cái làm không đúng máy không chạy, khác với những ngành mang tính xã hội, tương tác con người với nhau.

Vì thế, nếu bạn ghét phải ngồi nhiều giờ trước màn hình máy tính để xử lý những đoạn mã, bạn cần cân nhắc trước khi dấn thân vào nghề viết mã.

Túm lại, đó là cách tiếp cận bạn không có sự yêu thích, định hướng đặc biệt rõ ràng mà chỉ cảm thấy mình muốn học và làm ngành nghề nọ kia có liên quan đến máy tính. Trong thực tế, việc học một đàng, làm một nẻo ở Việt Nam rất nhiều. Nhưng để trụ được với nghề, không nên chọn nghề chỉ vì nghe người ta nói nghề đó ra dễ kiếm việc và/ hoặc lương cao, đây là sự lựa chọn tệ hại nhất vì một sự nghiệp mấy chục năm mà làm cái thứ mình luôn mơ hồ về nó, e rằng kinh khủng còn hơn bị cầm tù.

Hướng này nếu học hành không nợ môn, đều đều thẳng tiến 3-5 năm tuỳ theo học cao đẳng, đại học hoặc một khoá chứng chỉ quốc tế đào tạo dài hạn, người học sẽ được trang bị kiến thức nền tảng. Người tốt nghiệp có thể làm việc với nhiều ngôn ngữ lập trình khác nhau, thậm chí là cũng có thể làm về mạng máy tính, hoặc biết đủ để tham gia vào những dự án về công nghệ thông tin lớn phức tạp.

Hướng 2: nghề lập trình chọn lấy người lập trình

Phần lớn những người đi theo hướng này đều là người trưởng thành. Một số người đã đi làm một số năm ở lĩnh vực khác lân cận với công nghệ thông tin.

Cũng có một số người một ngày kia tình cờ thấy mình có thể làm việc được với máy tính, muốn “nhảy việc” sang làm chính thức trong ngành công nghệ thông tin, cụ thể là trở thành người viết mã, kỹ sư phân mềm.

Lập trình là nghề nặng nhọc

Hướng đi này thường 10 người có ý định, rơi rụng hết 7-8 người, chỉ còn số ít có thể học hành và nhảy việc thành công. Nếu chịu quan sát kỹ hơn, chúng ta dễ dàng nhận thấy những người nhảy việc thành công thường có thành tích tốt về học tập, làm việc.

Những người nghe người ta bàn với nhau, đọc báo, xem mạng xã hội,… rằng làm lập trình nhiều tiền rồi đâm đầu vào là hoàn toàn rủi ro hoặc thiếu sự đầu tư nghiêm túc. Với tâm thế như vậy, chúng tôi cho rằng số lượng có thể trở thành người víết mã, nhận lương tháng ở các công ty phần mềm là hiếm hoi.

Những người làm về kinh tế, marketing, kỹ sư, kiến trúc sư, bác sĩ, luật sư,… những nghề mà đã có chút gì đó gọi là phải nỗ lực nhiều, học hành chăm chỉ, bài bản thì chuyển sang học và làm việc như một lập trình viên không phải là việc gì đó mơ mộng, hoàn toàn hiện thực.

Do vậy, nếu đang muốn trở thành một lập trình viên lập trình web, và chọn một ngôn ngữ “xấu xí nhưng thông dụng, được việc”, bạn có thể bắt tay học với vài cuốn sách.

Thị trường việc làm cho lập trình viên PHP ở Việt Nam khá dễ tiếp cận. Chỉ có điều bạn sẽ phải vượt trên nhiều lập trình viên khác nhau bởi vì mức độ rât khó đoán bởi PHP dường như thuộc loại tự học. Hầu như không có trường đại học, cao đẳng nào ở Việt Nam dạy PHP chín khoá bởi nó được xem là ngôn ngữ được thiết kế xấu.

Cách học cho người chỉ muốn làm nghiệp dư chơi cho vui

Điều khôi hài đó là nhóm người “lập trình viên PHP” ở Việt Nam rất đông ở dạng này. Họ đến với PHP không thông qua một bài bản nào hết mà ban đầu có thể học làm một trang web nào đó cho cá nhân. Chúng tôi còn biết rằng 10 người trong số đó có 7-8 người biết đến PHP thông qua mà nguồn WordPress, NukeViet hoặc một mã nguồn làm forum thảo luận như vBulletin, XenForo.

Cách này xem ra rất thú vị bởi vì người học thoải mái tinh thần, theo kiểu “tình yêu đến em không mong đợi gì, tình yêu đi em không hề hối tiếc”. Cô nàng học lập trình cứ giống như đi dạo, hát hoa bắt bướm trên đường, đi được tới đâu không phải là vấn đề cô ấy lăn tăn.

PHP là ngôn ngữ bị ghét nhất

Ngay cả người viết bài này cũng tiếp cận theo hướng như này. Nhưng dù sao trước đó cũng đã trải qua một số nguôn ngữ lập trình khác, cũng tự học không qua trường lớp bài bản, có theo giáo trình của những người bạn thuê trọ cùng nhà.

Đọc nãy giờ chán rồi, tui muốn lên đường cùng PHP, làm sao đây?

Bạn đã xác định tư tưởng rồi? Vậy thì bắt đầu thôi. Ở đây, chúng tối sẽ đi theo hướng bắt đầu từ lập trình web với PHP. Còn cái đoạn học lập trình và học về web làm việc như thế nào bạn phải tự trang bị lấy kiến thức.

Thực sự, bất cứ chọn ngôn ngữ lập trình nào bạn cũng phải học và thực hành rất nhiều, làm từ những cái đơn giản nhất, thường được gọi là Hello World rồi qua mỗi ngày, mỗi tuần, mỗi tháng nhiều thêm lên.

Để có thể gọi là tạm sử dụng được một ngôn ngữ tự nhiên nói chung, ngôn ngũ lập trình nói riêng (dù ngôn ngữ lập trình là ngôn ngữ nhân tạo), một người bình thường tiêu tốn trung bình 700 giờ học. Nếu bạn đã giỏi một ngôn ngữ không phải tiếng mẹ đẻ, học thêm một ngôn ngữ khác sẽ ít hơn 700 giờ. Học ngôn ngữ lập trình cũng tương tự như vậy, nhưng ở đây cho rằng bạn cũng chỉ mới biết ngôn ngữ khác ở mức chưa thành thạo, chủ yếu làm quen với lập trình.

Với người có nền về công nghệ thông tin, chúng tôi không dám lạm bàn vì múa rìu qua mắt thợ. Bài viết này cũng trở thành thứ nhảm nhí với họ. Còn người không có nền về IT, có thể học theo cách như này.

Cơ bản phải nắm vững, chậm mà chắc

Nếu bạn chưa quen với lập trình, tốt nhất là bắt đầu với những điều cơ bản. Bạn có thể bắt đầu bằng cách học các nguyên tắc cơ bản của cú pháp PHP và khai báo biến.

Khi tui đã nắm bắt tốt những điều cơ bản, bạn có thể chuyển sang các chủ đề nâng cao hơn như làm việc với các đối tượng, toán tử số học, câu lệnh điều kiện, vòng lặp, hàm và mảng.

Có rất nhiều tài nguyên trực tuyến có sẵn có thể giúp bạn học PHP. Dưới đây là một số tài nguyên mà bạn có thể thấy hữu ích:

  1. PHP: The Right Way: đây là một trang web chỉ nói về PHP, nó có mọi thứ cần thiết cho người mới bắt đầu học PHP.
  2. PHP Courses của Codeademy: có một số khoá PHP cơ bản, miễn phí dành cho người bắt đầu.

Lý thuyết và thực hành đan xen, học đều các ngày trong tuần

Học theo cách của những người học ngoại ngữ

Dựng môi trường để học PHP

Cách nhanh nhất để dựng môi trừng học PHP đó là ta tải một phần mềm web server có tích hợp sẵn PHP để làm môi trường phát triển nội bộ, còn gọi là localhost.

Lựa chọn hàng đầu hiện nay đó là phần mềm máy chủ web XAMPP, click biểu tượng bên dưới để tải về.

Logo XAMPP. Click hình để vào trang download XAMPP

Nên chọn dòng chính giữa để phiên bản không quá mới cũng không quá cũ.

Cài đặt khá đơn giản. Chỉ xin lưu ý một điều: khi cài đặt sửa đường dẫn ổ đĩa C:\xampp thành D:\xampp bởi vì ổ C: thường là ổ đĩa cài đặt hệ điều hành, nhỡ cài lại hệ điều hành mọi thứ mất hết sẽ khiến cho những gì làm ra trong quá trình học phát triển web với PHP trôi sông trôi biển.