Chắc hẳn đã có lần bạn từng băn khoăn khi khi đứng trước việc lựa chọn cho mình một ngôn ngữ lập trình để theo đuổi, gắn bó. Đặc biệt là với các bạn mới bước chân vào thế giới lập trình. Nếu bạn may mắn sớm tìm ra được con đường của riêng mình thì xin chúc mừng, bạn là ngoại lệ! Còn nếu bạn là nửa còn lại, thì chúng ta sẽ cùng nhau đi tìm cho mình câu trả lời chính xác nhất nhé!
Có một sự thật không mấy dễ chịu, đó là: chúng ta không lựa chọn ngôn ngữ. Chúng ta lựa chọn một lĩnh vực cụ thể, đi kèm với một, hoặc vài ngôn ngữ lập trình nào đó. Những ngôn ngữ đó đã được chọn sẵn bởi ngành, thị trường, bởi một người khởi xướng nào đó trong quá khứ đã lựa chọn như thế. Với những người mới bắt đầu, chúng ta thường tập trung vào các ngôn ngữ, cú pháp của ngôn ngữ. Tất cả những thành phần của một ngôn ngữ lập trình đó có vẻ như rất quan trọng, lạ lẫm đến mức thu hút mọi sự chú ý của chúng ta. Nhưng thực ra đó mới chỉ là phần nổi của tảng băng chìm, vậy thì cái phần chìm phía dưới mặt nước kia có gì mà quan trọng thế? Mình sẽ liệt kê ra ngay sau đây một số các tiêu chí liên quan:
Thế thì ngôn ngữ nào là tốt nhất? Câu trả lời sẽ được giải đáp sau khi chúng ta mổ xẻ xong mấy cái vấn đề kia nhé.
Chất lượng của ngôn ngữ không đóng vai trò quan trọng. Ví dụ như Java không phải là một ngôn ngữ tốt ngay cả tại thời điểm nó được tạo ra. Nó chỉ thuận tiện hơn so với các ngôn ngữ khác. Tuy nhiên, máy ảo của nó hóa ra là một bước đột phá thực sự vào thời điểm đó. Java cho cho phép hoạt động đa nền tảng, và ta không có lựa chọn tương ứng nào. Đó là lý do tại sao Java trở thành ngôn ngữ hàng đầu hoàn toàn hợp lý trong lịch sử. Go thì từng bị gán cho cái mác là tồi tệ, ngôn ngữ nguyên thủy và đơn giản ngay từ đầu. Kết quả là gì? Nó đã đạt top 20 ngôn ngữ đáng dùng nhất trong một vài năm – một trường hợp duy nhất. Điều tương tự có thể lặp lại một lần nữa hay không? Câu trả lời là điều đó rất khó xảy ra. Tóm lại, hãy bắt đầu suy nghĩ bằng việc lựa chọn nền tảng chứ không phải ngôn ngữ.
Hầu như tất cả các tập đoàn CNTT mà bạn biết đều quảng bá ngôn ngữ của họ và chống lại việc quảng bá ngôn ngữ của các đối thủ cạnh tranh. Các ví dụ điển hình đó là: Apple: Swift and Objective C. Google: Golang, Dart, JS (V8), Java (Android) Microsoft: C#, F#, TypeScript Mozilla: JS, Rust Oracle: Java Facebook: JS, PHP Sự hỗ trợ ngôn ngữ của một tập đoàn lớn sẽ tạo ra ảnh hưởng về tài chính rất đáng kể. Một ngôn ngữ lập trình được tạo bởi bạn sẽ không được ai quan tâm ngoại trừ những người quen của bạn. Nhưng một ngôn ngữ lập trình được tạo và quảng bá bởi Google lại là một câu chuyện hoàn toàn khác. Tuy nhiên, chính sự hỗ trợ này có ý nghĩa ràng buộc với sự thành công của mỗi tập đoàn. Nếu Apple phá sản thì các nhà phát triển sử dụng Swift và Objective-C chắc chắn sẽ phải tìm một lựa chọn khác. Khi Google quyết định rằng Google Plus là không còn cần thiết, kéo theo hàng chục ngàn người làm SEO khóc mếu vì mô hình kinh doanh bị chia tách. Như vậy, trước khi đưa ra lựa chọn bạn hãy tìm hiểu xem ai là người sở hữu ngôn ngữ và cách thức hoạt động của họ trong thời gian gần đây.
Có thể bạn quan tâm
Top 10 ngôn ngữ lập trình tốt nhất để học năm 2019
Học ngay Javascript đi vì nó vẫn sẽ là ngôn ngữ phổ biến nhất 2019
Có rất nhiều trang thông tin đáng tin cậy mà bạn có thể tham khảo. Ví dụ điển hình như là Stack Overflow và các trang tuyển dụng trực tuyến chẳng hạn. Những thông tin thống kê hàng năm và các dự báo họ đưa ra có thể coi như là một tài liệu đáng tin cậy để bạn tham khảo. Hình dưới minh họa cho top các ngôn ngữ lập trình phổ biến nhất năm 2018. Bạn đọc có thể tham khảo tại đây
Như vậy, bạn hãy chọn một trong những ngôn ngữ phổ biến nhất như minh họa trong hình trên (JavaScript hay HTML, CSS chẳng hạn) là ngôn ngữ đầu tiên. Nếu một ngôn ngữ không có video hướng dẫn, không có các bài viết, ví dụ cụ thể về các ứng dụng thực tế thì cơ hội hỏi cộng đồng một câu hỏi sẽ rất chậm và khó mà theo học được.
Không phải cứ chọn đại một lĩnh vực hay công việc nào đó là xong. Trước khi đưa ra lựa chọn, hãy thử lên các trang tuyển dụng hàng đầu như TopITWork chẳng hạn để tham khảo xem nhu cầu và số lượng công việc có liên quan đến ngôn ngữ hay kĩ năng nào đó có nhiều cơ hội việc làm hay không. Nếu lựa chọn của bạn nằm trong top những kĩ năng có nhu cầu tuyển dụng cao thì đó hẳn là lựa chọn hợp lý. Việc của bạn là tiếp tục mài dũa các kĩ năng cho tới khi đủ tự tin đi ứng tuyển hay có thể thực hiện các mong muốn của bản thân. Hình dưới đây minh họa kết quả tìm kiếm cho kĩ năng liên quan đến Java:
Để chọn nền tảng và sau đó, nếu chúng ta có lựa chọn ngôn ngữ, chúng ta nên xác định các tiêu chí. Đối với hầu hết mọi người, các tiêu chí cơ bản là như sau:
1. Nhu cầu của thị trường: Được xác định bởi tổng số vị trí tuyển dụng chia cho tổng số hồ sơ xin việc. Nhu cầu cao tạo ra nguồn cung cao Khi tính toán số lượng vị trí tuyển dụng, đừng quên nhìn vào sự cạnh tranh và giảm xóc. Hãy chú ý đến các xu hướng. Một framework đang hot có thể trở nên nguội lạnh trong khi bạn học nó.
2. Tổng số vị trí tuyển dụng: Sự cạnh tranh trên thị trường quyết định sự khó khăn khi kiếm việc làm. Tránh các lĩnh vực không phổ biến, nếu bạn không biết chính xác những gì bạn muốn thực hiện.
3. Định hình công việc tương lai: hãy định hình công việc mong muốn của bạn tương ứng với thực tế. Bạn muốn làm việc toàn thời gian, bán thời gian hay làm việc tại nhà?
4. Tuổi của thị trường: Thị trường càng cũ, nó càng ít quan tâm đến những người mới bắt đầu. Tất cả các chủ đề về tuyển dụng đều có đầy đủ những người mới bắt đầu và rằng họ không thể tìm được việc làm. Bạn cần phải có kinh nghiệm để có được công việc.
5. Mức lương: Tất cả những người mới bắt đầu hầu như đều được trả lương không nhiều lắm. Các chuyên gia lại thường được trả lương cao hơn rất nhiều. Đây là những gì bạn phải biết.
6. Cơ hội để hoàn thiện bản thân: Đối với ngôn ngữ đầu tiên, tất cả đều không thành vấn đề. Theo dõi ý kiến của dư luận về các vấn đề này sẽ là quyết định đúng đắn nhất
Phù. Chắc các bạn cũng vằn hết mắt rồi. Hy vọng bài viết này đã giải đáp được phần nào câu hỏi của các bạn. Cảm ơn các bạn đã theo dõi!
Nguồn: Sưu tầm từ internet via Viblo