PHP hay Javascript, cụ thể là AngularJS
em thì dùng được cả 2 cái này. mức độ junior
em đang phân vân 2 cái này để đi sâu, phát triển thành senior. chọn làm nghiệp cả đời
So sánh php và javascript (js framework nói chung) thì:
php khó đọc hơn, code chậm hơn, khó debug hơn. nói chung là code không sướng bằng js. nếu hệ thống lớn thì rất tốn tài nguyên. config khá tốn thời gian, công sức.
tuy nhiên lượng việc php là rất lớn, deploy ngay được. phù hợp cho website nhỏ.
js thì giải quyết hết mấy cái trên, chạy trên trình duyệt, code sướng. kể cả nodejs hay front-end js. nhưng ít việc.
trên đây là nhận xét thiển cận của junior, các senior chỉnh sửa, tư vấn cho em nha
Xu hướng hiện tại JS đang rất phát triển, PHP giảm nhiều rồi.
Bạn có thể tham khảo ở đây
http://studenthackers.devpost.com/
Theo mình thì thấy thích cái nào thì theo cái đó
Các ngôn ngữ lập trình luôn có thế đứng của nó tại mỗi lĩnh vực, ko nên dựa vào máy chỉ số chung chung mà đánh giá. Thêm cả, mỗi ngôn ngữ có thế mạnh riêng, đừng có khen hay chê này nọ rồi đem ra so sánh khác.
Cài này là sai nhé.
Code PHP là code kết hợp scripting, OOP, có syntax kết hợp rõ ràng (kết hợp từ C, C++, Perl, Java).
Code PHP không hề chậm, nếu so với Java, Ruby thì nó còn nhanh hơn nhiều về bản chất.
Khi làm việc một sản phẩm thì vấn đề performance ko phải là câu chuyện mỗi ngôn ngữ lập trình, đó là cả một hệ sinh thái, ví dụ: mạng phân tán (distributed network), hệ thống cache (Redis), hệ thống đẩy message (RabbitMQ, ZeroMQ, Beanstalkd…), CDN, Load Balancer, …
Facebook và Instagram là hai mạng xã hội cực kì lớn, backend sử dụng Hack (ngôn ngữ mở rộng từ PHP), thế này đủ mạnh chưa?
Thêm cả, các hệ thống thương mại điện tử mã nguồn mở lớn toàn PHP, ví dụ: Magento, Presta Shop, osCommerce, WooCommerce (plugin của WordPress…
Các hệ thống CRM mã nguồn mở lớn cũng là PHP: SuiteCRM, OroCRM…
Ôi, còn nhiều lắm…chỗ đứng của nó khá cứng vì nó dính với thương mại điện tử khá lâu.
Hoạ chăng em code PHP mà website chạy chậm, lởm khởm … vậy xem xét lại bản thân, chưa làm và tìm hiểu cho đến nơi đến chốn.
Javascript cũng chỉ là ngôn ngữ lập trình, thì nó được tạo từ cha đẻ trình duyệt Netscape để tương tác users nên tất nhiên là tiên phong cho việc sử dụng trên các Browser sau này rồi.
Việc cho NodeJS và Front-end nhan nhản ra nhé, đầy luôn. Nhưng chẳng ai đi tuyển đồng chí biết mỗi ngôn ngữ Javascript, mà phải biết nhiều thư viện và frameworks, vì các thư viện và frameworks đó được các ông lớn chuyên gia trong lĩnh vực công nghệ nghiên cứu và phát triển, và đã chứng minh được ứng dụng của nó vào các ứng dụng lớn và hoạt động hiệu quả.
Làm front-end chí ít phải biết: jQuery và các plugins phổ biến cho jQuery (lightbox, smooth scroll…), hay MVC front-end như VueJS, AngularJS, Backbone, Knockout, ExtJS, hay View Render: ReactJS (cái này hot), rồi tới hệ tooling system như: Gulp, Grunt, Bower, Yeoman, NpmJS, Webpack, SystemJS, Broccoli…, rồi Javascript các version mới như ES6 (2015), ES7(2017), và transpiler như: traceur, babeljs…
Làm backend thì chí ít phải biết: basic NodeJS, ExpressJS, hapi, SailsJS…
Rồi tương tác các DB: sqlite, mongodb (với mongoose), redis, firebase, parse…
Làm Fullstack: EmberJS, MEAN, MERN, Koa…
Thôi còn nhiều lắm…
Chốt lại là, ngôn ngữ lập trình nào cũng có chỗ đứng của nó, nó ko tự sinh ra và cũng chưa biết bao giờ mất đi…(COBOL được sinh ra từ năm nảo năm nào, giờ vẫn còn ứng dụng trong ngành công nghiệp nặng như hệ thống robot sản xuất oto, tự động quá trình sản xuất gang thép…)
Hãy tự chọn cho bản thân một ngôn ngữ mà bản thân thấy có khả năng thích ứng tốt nhất (cú pháp, độ gần gũi, tốc độ học, tốc độ làm,…). Lấy đó làm bàn đạp để phát triển sự nghiệp bản thân.
Quy tắc xã hội: cái gì càng nhiều thằng biết thì càng rẻ, cái gì càng ít thằng biết thì càng đắt; trong số đó, ai càng chuyên sâu thì càng có giá. Nếu theo hệ quy chiếu như em nói ở trên, PHP nhiều và JS ít, vậy hãy: HOẶC LÀ CỰC GIỎI VỀ PHP, HOẶC LÀ KHÁ VỀ JAVASCRIPT.
Điểm 10 cho bác laptrinhio
Bác chém gió kinh vãi, học bao lâu thì chém được như bác nhỉ
cảm ơn anh đã trả lời câu hỏi của em.
nhưng em vẫn chưa hiểu, mong anh giải đáp cho em.
em cũng đang muốn so sánh php với nodejs cho backend
cú pháp của php có oop, nhưng syntax thì rối (=> , -> , :: )
nếu bác muốn filter và map trong js chẳng hạn
var=[2,4,5,6].map(func).filter(fun);
còn php
var=array_map(xxxx); var=array_filter(xxxx);
tại sao vậy ạ, em tưởng PHP không thể so sánh với Java (nếu code đã tối ưu)?
bọn facebook, wordpress… cũng muốn chuyển sang cái khác lắm. chẳng qua là việc chuyển tốn kém cho nên nó không làm. bác tham khảo thêm ở đây Why hasn’t Facebook migrated away from PHP?
em không nói nó mạnh yếu khi nó được dùng bởi một hệ thống lớn.
ba cái này không liên quan tới việc backend dùng ngôn ngữ nào
cái này anh nói quá đúng ạ. support và hệ sinh thái của nó quá lớn.
chính xác ạ. em vẫn là junior
Anh trả lời thế này nhé:
Em đang bị hiểu không đúng.
Javascript là ngôn ngữ functional, không phải object-oriented; còn PHP là ngôn ngữ object-oriented, không phải functional.
Functional và Object-Oriented là hai nhóm khác nhau nên cú pháp sử dụng khác nhau.
Syntax của PHP là rất rất rõ ràng, nếu em ko thấy rõ ràng, vậy xem lại kiến thức cơ bản của cả PHP và Javascript. Khi chưa thạo một ngôn ngữ lập trình mà tự dưng tìm hiểu nhiều ngôn ngữ lập trình cùng một lúc thì sẽ hoảng loạn. Tập trung một cái thôi.
Không nên đưa các ngôn ngữ lập trình ra so sánh với nhau vì các ngôn ngữ lập trình đều có mặt mạnh riêng của nó, và có vai trò riêng.
Đây là câu chuyện của các ông lớn, không bàn chuyện này vì chúng ta không phải người trong cuộc. Và đấy chỉ là bàn luận của người trong Quora, không có phát ngôn chính thức từ Facebook, ai biết thực hư ra sao? Không quan tâm, hãy kệ họ đi. Lo việc bản thân trước chứ nhỉ?
Khi nào em đi làm thực tế nhiều năm rồi sẽ hiểu nó còn quan trọng hơn cả ngôn ngữ lập trình.
Anh chốt lại với vài lời khuyên thế này nhé:
Đây là dựa trên kinh nghiệm chứ không phải chém gió
Ngoài lề. @petehouston là @laptrinhio phải không?
Mình xin đóng góp chút ý kiến nhé. Mình đã từng code cả php và nodejs và nhận mình thấy code php bây giờ ko khó đọc như bạn nghĩ và code js chả có gì là sung sướng cả nếu bạn động phải callback hell, mà cũng có thể do khẩu vị của từng người thôi nhưng cảm quan cá nhân mình là vậy. Js ra đời là ngôn ngữ front-end nên hiện tại làm back-end chưa thể so với php được ngoài cái performance ra.
Nhưng dù khá là chê bai JS nhưng mình vẫn khuyên bạn chọn nó vì nhiều lý do mà có thể sau này bạn sẽ thấy
P/S: Chê vậy thôi chứ thật sự mình thích JS chính vì cái kiểu free style của nó
Tiếp tục một cuộc chiến không đến hồi kết
Xu hướng bây giờ chuyển dịch sang mobile, web app, … nên em vote cho js.
Cái gì giờ cũng thấy có mặt anh JS, JS Everywhere
Mấy bạn có kinh nghiệm cho mình hỏi PHP hay Nodejs học ngôn ngữ nào thì hơn ạ. Dưới góc độ là cái nào dễ tiếp cận, dễ học, dễ dàng thuận tiện làm 1 website cá nhân vừa và nhỏ hoàn chỉnh, chẳng hạn như 1 website bán hàng, 1 website tin tức, 1 website phim chẳng hạn hay 1 trang học online như edumall.vn ?
nodejs hay (và vi diệu hơn) hơn, PHP dễ học hơn và dễ làm web nhé bạn