Lập trình viên Web PHP hay còn gọi là PHP Web Developer là một vị trí được rất nhiều nhà tuyển dụng săn đón.
Lộ trình học để trở thành lập trình viên web Php
Vậy bắt đầu học gì để trở thành lập trình viên web php? người mới học thì nên học theo thứ tự như thế nào? Hãy tìm hiểu phần dưới đây:
Lộ trình học Front-end
Để trở thành lập trình viên web thì ngôn ngữ đầu tiên phải học đó là:
- Html
- CSS
- Javascript
Về html thì không có gì nhiều để nói, bạn chỉ cần biết khoảng 40 thẻ html thì đã sử dụng ngon lành rồi. Cái cần là biết kết hợp html với css sao cho thật nhuần nhuyễn.
Về CSS, để sử dụng ngon CSS thì cần khoảng hơn 100 thẻ. Nhưng như vậy là chưa đủ. Để trở thành master css thì còn lâu còn dài, bạn cần tìm hiểu thêm CSS frameworks để quá trình viết code css trở nên nhanh chóng và chuẩn hơn.
Hiện nay CSS thì có 2 loại chính đó là:
- Grid System: Framework này chỉ có một chức năng chính là hỗ trợ bạn chia cột trong website nhanh chóng mà không cần phải viết đi viết lại đoạn CSS float qua bên này bên kia và clear float tùm lum. Thông thường mỗi Grid System sẽ có từ 12 hoặc 24 cột trong một hàng, bạn có thể chỉ định một hàng sử dụng bao nhiêu cột, ví dụ như bạn có một hàng 12 cột và chia mỗi cột sử dụng 3 cột trong grid system.
- CSS UI Framework: Loại framework này sẽ là một bộ các thành phần UI (User Interface) hoàn chỉnh như có sẵn CSS cho các nút bấm, menu, form,…nói chung là tất tần tật những thành phần trong website, thậm chí là các hiệu ứng Javascript để người sử dụng có thể xây dựng một giao diện website thông qua UI của framework đó nếu designer muốn tiết kiệm tối đa thời gian.
Khi nào thì nên sử dụng?
Grid System
Khi bạn muốn tự mình viết CSS cho các thành phần bên trong website và chỉ muốn có sẵn một framework hỗ trợ chia cột nhanh gọn. Ưu điểm là nhẹ vì không có nhiều CSS.
CSS UI System
Khi bạn muốn sử dụng framework như một công cụ hỗ trợ làm giao diện website từ A đến Z bao gồm có sẵn các CSS cho nút bấm, menu, form, chữ,….để bạn tập trung thời gian vào thiết kế layout tổng thể. Tuy nhiên các bộ UI này sẽ nặng hơn nhiều so với Grid System.
CSS Frameworks bạn nên sử dụng là Bootstrap, Foundation... đây là 2 CSS UI Sytstem hỗ trợ tốt nhất hiện tại. Bootstrap rất mạnh vì tính cộng đồng lớn, Foundation thì thiên về thiết kế phẳng. Bạn có thể học sử dụng để xây dựng website đẹp hơn, đẩy nhanh tiến độ dự án của mình.
... Chậm... như vậy vẫn chưa đủ. Đối với kỹ năng CSS thì bạn còn cần có kinh nghiệm làm việc với CSS Preprocessors. SASS hoặc LESS là 2 CSS Preprocessors thường dùng nhất. Đây là cách bổ sung cho chức năng của CSS để CSS có khả năng mở rộng và dễ làm việc hơn.
Thêm nữa, khả năng Responsive và thiết kế di động là bắt buộc bởi hiện tại số lượng người trải nghiệm các dịch vụ thông qua Mobile là rất lớn...
Tiếp theo thì bạn nên học thành thạo Javascript.
Javascript là ngôn ngữ để thêm các yếu tố tương tác vào trang web của bạn. Là ngôn ngữ phổ biến nhất thế giới, nó chắc chắn tác động rất lớn đến sự nghiệp của bạn. Khi đã thành thạo Javascript thì bạn nên học cách sử dụng thư viện javascript như jQuery để đẩy nhanh tiến độ.
Ngoài ra còn phải tìm hiểu thêm AJAX, JSON
Đến đây thì trình độ vẫn chưa trở thành master được, nhà tuyển dụng còn yêu cầu bạn phải biết ít nhất 1 Frameworks JS (bao gồm AngularJS, Backbone, Ember và ReactJS). Ở đây băt buộc bạn phải chọn học 1 thứ thật thành thạo. Cá nhân tôi thì ủng hộ bạn chọn Frameworks đại ca để theo. Bởi vì nó có nhiều nhà phát triển đóng góp, được hậu thuẫn, nhiều người dùng như AngularJS, ReactJS.
Hơn thế nữa còn cần biết thêm về Node JS.
Có kinh nghiệm làm việc cùng với REST và API là điều rất tốt nếu bạn muốn mức lương cao hơn khi ứng tuyển.
Cần học thêm:
- Sử dụng npm, grunt, … để optimize, minimize HTML/CSS/JS
- UI/UX (Thiết kế giao diện theo trải nghiệm người dùng)
Một điểm nữa, bạn cần có kinh nghiệm fixbug và kinh nghiệm phát triển đáp ứng cho nhiều trình duyệt khác nhau. Các trình duyệt hiện đại làm việc khá tốt nhưng vẫn có sự khác nhau trong quá trình biên dịch mã code. Do đó để trình duyệt thực hiện đúng những gì mà chúng ta yêu cầu thì đó là kỹ năng rất quan trọng cho bạn nâng điểm trong mắt nhà tuyển dụng.
Như vậy là đã qua một phần của PHP web developer. Thực tế thì sẽ có người đảm nhiệm chuyên sâu phần bên trên (Front-end) nếu công ty bạn ứng tuyển có mức độ chuyên môn cao. Nếu vị trí bạn lựa chọn là chuyên sâu về Back-end thì phải tiếp tục học tiếp:
Lộ trình học Back-end
- Ngôn ngữ lập trình cơ sở dữ liệu SQL, MS SQL Server, MySQL, … Gần đây một số database NoSQL đang khá thịnh hành: Neo4j, MongoDB, …
- Ngôn ngữ lập trình PHP
- Thành thạo lập trình ứng dụng với PHP -> Thành thạo lập trình API với PHP.
- Học Frameworks của PHP
Theo như kinh nghiệm từ những chuyên gia lập trình thì bạn nên chọn những Frameworks lớn đang được sử dụng rộng rãi để học như Codeigniter framework, Lavarel.
Thứ nhất, Frameworks lớn thì sẽ có cộng đồng hỗ trợ lớn, gặp vấn đề gì cũng có thể hỏi và nhận câu trả lời trong thời gian sớm nhất.
Thứ hai, Frameworks lớn thì có sự hậu thuẫn lớn. Yên tâm về việc sử dụng trong lâu dài.
Thứ ba, Framewoks lớn thì nhiều doanh nghiệp dùng nên cơ hội việc làm sẽ cao hơn.
Tuy nhiên, tôi cũng ủng hộ các bạn tìm hiểu Frameworks nhỏ hơn nếu thời gian cho phép bởi vì nó có nhiều thứ rất hay ho và cũng có thể đó là Frameworks xu hướng trong tương lai.
Thêm nữa, còn phải có khả năng viết Unit test, biết clean code, viết code có cấu trúc tốt, rõ ràng, dễ hiểu, dễ mở rộng, dễ bảo trì.
Html, XHTML - > Css -> Css Frameworks (Có kinh nghiệm làm việc với Css Preprocessors) -> Javascript -> JS Frameworks -> PHP cơ bản -> PHP nâng cao -> Lập trình ứng dụng với PHP, SQL, MySQL -> Lập trình API với PHP -> Frameworks PHP (Codeigniter hoặc Lavarel)
Nhưng nếu bạn chỉ cần học đến khi hoàn thành Front-end thì lộ trình học như sau:
Front-end Developer
Html, XHTML - > Css -> Css Frameworks (Có kinh nghiệm làm việc với Css Preprocessors) -> Javascript -> Thư viện jQuery -> Học ít nhất 1 JS Frameworks (AngularJS, Backbone, Ember và ReactJS) -> Có kinh nghiệm làm việc với RESTful và API -> Responsive và thiết kế di động, UI/UX -> Phát triển Cross-Browser -> Wordpress, Joomla, Drupal, và Magento -> Sử dụng Git để làm việc.
Ngoài ra còn phải biết sử dụng Photoshop, illutrator cơ bản, đọc hiểu tài liệu tiếng Anh, có kỹ năng giải quyết vấn đề.
Front-end thì bị kẹp giữa rất nhiều đối tượng như Designer, Back-end, Khách hàng (Kỹ năng giải quyết vấn đề là rất quan trọng). Vì thế làm Front-end cũng không phải đơn giản, Front-end chuyên nghiệp hoàn toàn có mức lương cao ngất ngưởng.
Thông thường thì biết sử dụng một ngôn ngữ lập trình hướng đối tượng thì việc chuyển sang học ngôn ngữ khác cũng rất dễ dàng, các lập trình viên có kinh nghiệm 2-3 năm thường mất 1 tháng để học một ngôn ngữ mới. Do đó bạn đừng lo lắng hay phân vân nên học ngôn ngữ nào. Ngôn ngữ nào cũng có tác dụng của nó cả, quan trọng là cái đích đến của bạn, công việc bạn sẽ làm là gì.
Với các lập trình viên chuyên nghiệp để có được mức lương cao thì tiếng Anh là một yếu tố cực kỳ quan trọng. Bởi vì, làm việc cho Tây thường được trả công "cao hơn" và "sướng hơn".
Chúc bạn học tốt và sớm trở thành lập trình viên web php
> Tham gia ngay Khóa học PHP (Full stack) nếu muốn trở thành lập trình viên PHP nhanh hơn, chuẩn hơn:
0 nhận xét:
Đăng nhận xét