Nên học ngôn ngữ lập trình nào đầu tiên

      741
Giới thiệu

Đây một thắc mắc mà mình thường nhận ra từ những em sinh viên bắt đầu ra trường, new vào đại học, hoặc không biết gì về lập trình: “Giờ mình đề nghị học ngữ điệu lập trình làm sao đây?”.

Bạn đang xem: Nên học ngôn ngữ lập trình nào đầu tiên

Nghe solo giản, nhưng đây là 1 câu hỏi có độ cạnh tranh khá cao, sánh ngang cùng với câu “Em bắt buộc làm nghề gì, vào đh nào …” của các em học viên cấp 3. Trong phạm vi nội dung bài viết này, mình sẽ đưa ra một câu trả lời, dựa theo chủ ý cá nhân.

Tóm tắt nội dung bài viết :

Trước khi hỏi câu này, hãy trường đoản cú hỏi : mình muốn học lập trình để làm gì?Lựa chọn thật ra không quan trọng. Học một ngôn ngữ mới là chuyện đối kháng giản.Lời khuyên

Phần 1 - trước khi hỏi câu này, hãy tự hỏi : mình thích học lập trình để gia công gì?

Khi được hỏi “Giờ mình cần học ngôn từ lập trình nào đây?”, mình luôn hỏi lại câu này “Bạn/Em ý muốn học lập trình để làm gì?”. Vấn đáp được thắc mắc này, các bạn đã khẳng định được 1/2 ngôn ngữ mình cần học. Dưới đây là 1 số câu vấn đáp mình hay nhấn được.

Em vừa ra trường, trường chỉ dạy dỗ C, C++, … giờ em nên học ngôn từ gì để dễ dàng kiếm việc làm, lương cao? thị trường việc làm cho IT hiện tại rất nhiều, tạm chia thành 3 mảng: embedded, web cùng mobile.

Kết luận: nếu như muốn học để kiếm tiền, hãy xác minh mình sẽ làm mảng các bước nào, kế tiếp chọn ngôn ngữ được yêu cầu nhiều. Hiện tại tại có 1 số ngôn ngữ như Rails, Python,… ít tín đồ học, developer tốt ngôn ngữ này cũng đều có thu nhập khá (Vì hiếm cần quý =))).

Mình hy vọng làm 1 website, 1 ứng dụng cho những người nhà, phiên bản thân v….v. Có một số bạn học tài chính ngân hàng, kinh tế …. Vấn đáp mình như vậy.

Nếu bạn có nhu cầu làm 1 áp dụng di động, Java là lựa chọn xuất sắc nhất. Còn bài toán tạo 1 website, hiện tại tại có không ít hướng dẫn sinh sản website bằng Joomla, Drupal,… ko cần kiến thức lập trình. Các bạn có thể học thêm PHP để rất có thể tùy biến, thêm tài năng cho trang web.

Phần 2 - gạn lọc thật ra ko quan trọng. Học một ngôn ngữ mới là chuyện đối kháng giản.

Đọc tới đây, có lẽ nhiều bạn sẽ ném gạch men mình túi bụi “dám chắc hẳn thằng công ty thớt không hẳn coder, phán như thánh”.

Trước lúc ném đá, ước ao các bè bạn bình tĩnh nghe mình phân tích và lý giải trình bày. Mình cũng từng là sinh viên IT như các bạn. Môn đầu tiên về lập trình mình học khi vào Đại học là: “Cơ bản lập trình với C”. Mình từng điên đầu cùng với khai báo biến, bóc tách hàm, điều kiện, vòng lặp ,IO…. Môn tiếp theo sau là “Lập trình hướng đối tượng người sử dụng với C++”. Cần thú thật C++ chưa phải là ngôn ngữ phù hợp để học tập hướng đối tượng người dùng (Lẽ ra yêu cầu dùng Java giỏi C#). Mình từng lầm lẫn trước những khái niệm “tính bao đóng, tính kế thừa”. Bởi vì đó, phiên bản thân tôi cũng biết sự nặng nề khăn gặp gỡ phải khi học 1 ngôn ngữ. Mặc dù vậy, bản thân vẫn khẳng định học một ngữ điệu mới là chuyện đơn giản.

Xem thêm: Xem Phim Tân Thần Điêu Đại Hiệp Tap 8 3), Xem Phim Tân Thần Điêu Đại Hiệp Tập 8 Vietsub

Vì sao? Hãy từ bỏ xem lại kiến thức lập trình bạn đã đạt được khi vừa ra trường:

Học qua 1,2 ngôn từ gì đóCấu trúc tài liệu và thuật toánThiết kế, truy nã vấn các đại lý dữ liệuDesign pattern (Có thể)Khả năng kiến thiết front kết thúc …..

Khi mới tiếp cận lập trình, bọn họ cảm thấy trở ngại vì đề nghị làm thân quen với vô số định nghĩa mới. Tuy nhiên, khi sẽ có kỹ năng và kiến thức cơ bản, câu hỏi tiếp cận ngôn từ mới trở nên rất dễ dàng. Bạn cũng có thể tự hỏi, mình học gì khi tham gia học 1 ngôn ngữ mới? Đây là câu trả lời:

Cách khai báo hàm, biếnCách khai báo vòng lặp, đk if/elseCác kiểu cấu trúc dữ liệu: list, set, tuple, …IO, multi-thread, delegate, eventIDE phù hợp, giải pháp build, debugCác framework, bí quyết sử dụng, ….

Nếu bạn đã hiểu cách thức viết for, if/else, while … trong Java, khi chuyển sang học C# hoặc javascript, cấu trúc hàm for, if/else… vẫn giữ lại nguyên. Con kiến thức của khách hàng được thừa kế từ ngữ điệu lập trình trước, cho nên việc học sẽ diễn ra nhanh hơn. Hoặc khi bạn đã rõ cơ chế thao tác của ASP.NET RestAPI, câu hỏi học phương pháp xây dựng RestAPI bằng Spring của Java cũng không thực sự khác biệt. Mình từng tự học Python mất 1 tuần, với học framework Django mất khoảng tầm 2 tuần nữa. Tại sao mình học cấp tốc vậy là vì:

Mình đã có kiến thức và kỹ năng cơ bản về lập trình sẵn (class, data structure ….)Mình biết số đông gì mình cần học. Khi new lập trình, bạn phân vân mình nên học gì. Tuy vậy nếu đã có kiến thức và kỹ năng nói bình thường về lập trình, bạn sẽ biết mình tập trung học các gì, vấn đề này tiết kiệm không ít thời gian.Mình biết là mình làm được. Khi mình hỏi đồng đội chung ngành “Học 1 ngữ điệu mới mất bao lâu”, phần đông đều vấn đáp “1 tháng hoặc hơn”. Vày thấy tốn nhiều thời hạn + khó khăn như vậy nên phần đông họ khôn cùng “ngại” học ngữ điệu mới.

*

Điều bạn thích nhắn nhủ với các bạn qua nội dung bài viết này: Đừng sợ mình sẽ chọn nhầm ngôn ngữ, cứ học đi. Việc học 1 ngôn ngữ mới khi chúng ta đó có kiến thức cơ sở khá đối kháng giản, không hề khó khăn cùng mất thời hạn như bạn nghĩ. Tiếp tế đó, việc biết những ngôn ngữ để giúp đỡ bạn bổ ích thế hơn khi xin việc =)).

Phần 3 - Lời khuyên.

Như tựa đề, dưới đây là một số lời răn dạy của mình, dựa theo kinh nghiệm tay nghề cá nhân

Hãy đầu tư chi tiêu vào mọi thứ lâu bền. nếu không tập trung vào công nghệ, bọn họ nên học tập gì? Đó là đa số thứ ít cố đổi, nhưng lại vô cùng quan trọng với developer:Kiến thức cơ bản. Đừng cấp cười, bản thân biết đa số chúng ta tuy đã ra ngôi trường nhưng vẫn còn lờ mờ về quan niệm pointer, delegate, multi-thread,… Đây là những kiến thức và kỹ năng mà ta sẽ sử dụng trong suốt cuộc đời lập trình, và số đông sẽ chẳng khi nào thay đổi. Bỏ thời gian ra học tập kĩ chúng sẽ không còn hại gì, phải không?Cách viết code: Đặt tên biến như thế nào, bóc tách hàm ra sao, comment như vắt nào. Có 1 câu nói: LTV dở viết code mang đến máy hiểu, LTV giỏi viết code cho tất cả máy và tín đồ hiểu. Có nhiều bạn code xong, 6 tháng sau quan sát lại không hiểu nhiều mình viết gì. Lúc đi làm, có không ít giai đoạn các bạn phải maintainance, đọc mọi đoạn code vày “thánh” viết cùng chửi thề “Thằng này ngây ngô thế”. Hãy code gồm lương tâm, nghĩ về tới người về sau sẽ đọc, fix bug, sửa code của mình bạn nhé (Biết đâu người đọc lại là mình đấy =)) ).Design Pattern. Nắm vững design pattern sẽ giúp bạn ghi điểm khi bỏng vấn. Đùa đấy, nó sẽ giúp đỡ bạn giải quyết rất nhiều sự việc thường gặp gỡ trong khi code (Sẽ nói rõ rộng về chuỗi bài bác design pattern sau này). Xung quanh ra, design pattern để giúp bạn học với hiểu 1 framework mới dễ dàng hơn, 1 framework xuất sắc thường áp dụng tương đối nhiều design pattern.Một số quy mô thường dùng: MVC, MVVM, MVP, quy mô Client-Server … Đây là thắc mắc được hỏi trong 90% những cuộc bỏng vấn, cũng là kiến thức cực kì quan trọng. Gọi và nắm vững các quy mô trên sẽ làm cuộc sống lập trình của khách hàng thoải mái rộng nhiều.
*
Front over là bắt buộc. Không nên biết bạn học PHP, Java, C# … chúng ta vẫn buộc phải học với rành front end. Ở đó là HTML, CSS, JS. Trừ khi bạn làm áp dụng mobile, embedded system, các bạn sẽ phải đương đầu với html, css, js 8 tiếng thao tác làm việc mỗi ngày. Gồm gắng có tác dụng quen và làm thân cùng với tụi nó nhé.

Tổng kết lại gần như điều mình đã nói qua 3 phần cho chính mình nào lười gọi :

Trước khi hỏi “Cần học ngôn ngữ gì”, hãy tự vấn đáp “Học lập trình để làm gì”.Đừng lo chọn sai ngôn ngữ, học một ngữ điệu mới rất đối kháng giản.Đừng chạy theo công nghệ, hãy triệu tập vào phần lớn thứ thọ bềnCảm ơn các bạn, chúc chúng ta học tập thật xuất sắc !!!