C# là ngôn ngữ tuyệt vời nhất. Java, PHP, C, C++, Ruby chỉ toàn là thứ rẻ tiền

Sau một khoảng thời gian dài lập trình, mình đã có thể tự mà phát biểu rằng: C# là ngôn ngữ lập trình tuyệt vời và đáng học nhất. Lý do ư, vô số kể:

  • Bản thân ngôn ngữ C# có vô số điều thú vị: static method, partial class, delegate, LINQ, lambda expression, … Cái ngôn ngữ cùi bắp như Java làm gì có partial class, delegate, đến Java 8 mới bắt chước được cái lambda expression còn gì.
  • C# là ngôn ngữ strong-typed: Các tham số, kết quả trả về của hàm đều là một object. Mọi lỗi do đánh nhầm tên trường, tên hàm, nhầm kiểu class đều được báo trong lúc viết code, không phải chờ đến lúc chạy mới báo như mấy cái ngôn ngữ PHP, python cùi chuối khác.
  • C# đi kèm với framework .NET, hỗ trợ nhiều thứ: Tạo ứng dụng Window với WinForm, WPF; Tạo website bằng WebForm, MVC.NET… Mấy cái ngôn ngữ cấp thấp như C, C++ tuổi gì làm được mấy cái đó.
  • C# có IDE Visual Studio cùng nhiều plug-in vô cùng mạnh mẽ. VS ra bản mới đều đặn như FIFA. Reshaper hỗ trợ refactor, tăng tốc độ code … Mấy đứa khác code PHP, Python dùng cái gì để code? Dĩ nhiên là mấy thứ rởm rởm như Notepad++ hoặc Sublime Text rồi, đến cái chức năng “Jump to Definition” còn không có.

Đọc xong đoạn này, có lẽ sẽ có khoảng vài chục người ném cà chua, trứng thối và gạch đá đủ cho mình xây biệt thự. Từ từ, ít ra hãy bỏ thời gian kéo xuống dưới, đọc hết bài viết rồi ném gạch mình nhé. Dù sao khung comment nó nằm tận dưới cuối trang mà.

keep-calm-and-read-my-blog-241

Chúng ta đang xem ngôn ngữ lập trình như một thứ tôn giáo

Ngày xưa, mình cũng hay nhảy vào ném gạch khi nghe có đứa mở mồm chê C# và .NET. Giữa lập trình viên với nhau luôn có những cuộc tranh cãi liên tu bất tận về ngôn ngữ và công nghệ: Ngôn ngữ nào mạnh nhất, công nghệ nào tốt nhất. Ngôn ngữ, thứ vốn chỉ là công cụ, nay được nâng lên tầm TÔN GIÁO. Lập trình viên chia thành đạo Java, đạo PHP, đạo C#, đạo này công kích chửi bới đạo kia. Mức độ cuồng tín đôi khi chắc cũng không thua fan bóng đá, fan cuồng K-pop hay ISIS. Những cuộc cãi vã chê bai đầy rẫy trên mạng, các bạn có thể thử google: Why C# sucks, Why Java sucks, Why PHP sucks, … để xem thử.

Khi làm việc nhiều với một ngôn ngữ, một developer sẽ quen dần với ngôn ngữ đó, tìm ra được nhiều điều hay ho ẩn trong ngôn ngữ. Nhiều người sẽ nghĩ rằng ngôn ngữ của mình là nhất, có thể giải quyết được mọi vấn đề (Giống như ISIS nghĩ rằng đạo Hồi là nhất, mọi lời nói của đấng tối cao đều đúng đắn). Khi ngôn ngữ mình thích bị chê bai, bị xúc phạm, họ cảm thấy như chính tôn giáo của mình bị xúc phạm. Họ xù lông lên, kêu gọi bạn bè, đồng đội cùng đạo, nhảy vào ném đá cho chết “cái thằng bố láo, dám chê Java, PHP, C++, … của bố“.

img

Về bản chất, ngôn ngữ chỉ là công cụ

Ngôn ngữ chỉ là thứ chúng ta sử dụng, nó không định hình nên con người chúng ta. Để mở rộng tầm nhìn, bạn hãy thử tìm hiểu nhiều ngôn ngữ xem. Bạn sẽ ngạc nhiên khi thấy giữa chúng đều có một vài khái niệm, khuôn mẫu chung. (Mình từng dùng MVC.NET, Struts2, Django, 3 framework của 3 ngôn ngữ khác nhau nhưng đều dựa trên khái niệm MVC cả). Nói một các công bằng, ngôn ngữ nào cũng có cái hay của nó:

  • C, C++ làm web khá cực và mất thời gian, nhưng để lập trình nhúng, lập trình game hay cần performance thì khó ai bằng nó.
  • Javascript là cái ngôn ngữ kì dị điên khùng và cực tệ. Tuy nhiên do có vô số framework đi kèm nên hiện tại và tương lai nó vẫn sẽ hot, do đó mình khuyên nhiều bạn nên học.
  • PHP được thiết kế dở tệ (Vốn nó được tạo ra chỉ để viết mấy trang web nho nhỏ), nhưng có vô số framework, cộng đồng lập trình viên đông và hung hãn. Nó là lựa chọn số 1 nếu muốn tạo 1 trang web nhanh, nhiều tính năng, ít lỗi (Điển hình như blog này viết trên wordpess, cũng viết bằng PHP).
  • C#.NET, muốn dùng phải cài 1 đống thứ nặng nề và tốn tiền. Nhưng nó lại được rất nhiều công ty sử dụng vì tính năng, bảo mật, v…v

lang

Dừng tranh cãi lại, bớt gạch đá đi

Xét cho cùng, thứ quan trọng không phải là ngôn ngữ, mà là khả năng tư duy logic, kĩ năng giải quyết vấn đề, tầm nhìn hệ thống. Khách hàng sẽ đánh giá chúng ta qua sản phẩm – thứ họ thấy, và éo ai quan tâm đến code bạn viết đâu. Bạn có ngừng dùng facebook vì nó viết bằng PHP – thứ ngôn ngữ cùi bắp không? KHÔNG. Bạn có bỏ stackoverflow khi biết nó được xây dựng dựa trên MVC.NET, ngôn ngữ vừa chậm vừa mắc tiền không? DĨ NHIÊN LÀ KHÔNG. Vậy thì hãy đánh giá một lập trình viên qua thứ họ làm ra, chứ đừng thông qua ngôn ngữ họ sử dụng.

Thay vì chê bai, tranh cãi khi có người chê ngôn ngữ mình thích, hãy bỏ thời gian ra tìm hiểu và chia sẻ kiến thức (Bằng cách viết blog như mình này).  Giữ một cái nhìn khách quan về ngôn ngữ lập trình, bạn sẽ dễ dàng thăng tiến, tìm việc hơn (Đang làm Java nhảy qua Python cũng không sao). Ngày xưa mình cũng ghét PHP lắm, sau khi tự học nó lại thấy nó có kha khá thứ thú vị đấy chứ.

Kết luận: Nói gì thì nói, bản chất PHP vẫn là một ngôn ngữ sida cùi bắp, và Javascript vẫn là cái thứ dị hợm, dở dở ương ương, thất bại của tạo hóa. Nếu bạn vẫn còn cay cú vì PHP bị nói xấu, vui lòng kéo lên đầu và đọc lại bài viết nhé :D.

30s quảng cáo

book.jpg

Đây là một bài viết được trích dẫn từ cuốn sách “Code dạo kí sự – Lập trình viên đâu phải chỉ biết code” do mình viết. Quyển sách bao gồm những kĩ năng từ mềm đến cứng mà mỗi developer phải có, đảm bảo sẽ rất có ích cho các bạn sinh viên hoặc lập trình viên đã đi làm. Các bạn xem thông tin và đặt mua sách tại đây nhé: Sách Code Dạo Ký Sự.

192 thoughts on “C# là ngôn ngữ tuyệt vời nhất. Java, PHP, C, C++, Ruby chỉ toàn là thứ rẻ tiền”

  1. Thật trễ giờ mới biết blog của bác.
    Mình nghĩ bạn nghĩ ra title của bài viết này thì dễ nhận gạch đá từ những fan ngôn ngữ lập trình khác, nhưng mình thì chỉ góp ý chứ không ném đá gì hết vì đó là ý kiến của bạn và mình tôn trọng điều đó , mỗi người đều có ý kiến riêng của mình.
    Mình đã từng sử dụng và các thư viện liên quan tới C#, mình cho đó là ngôn ngữ “đẹp” + Bộ VISUAL STUDIO đúng là IDE tốt nhất mà mình từng dùng tuy nhiên mình giờ lại thích dùng open source làm giải pháp thay thế, lý do( ý kiến bản thân ):
    1. có thể mình làm những dự án nhỏ hoặc vừa nên .NET quá tầm để sử dụng ?
    2. .NET thư viện quá đầy đủ nên đâm ra nặng nề, nhiều thành phần không cần thiết.
    3. Khi bạn dùng opensource, bạn cảm thấy mình tự do, điều khiển code hơn
    4. Chi phí rẻ hơn khi deploy server + vấn đề bản quyền so với .NET
    5. Mỗi ngôn ngữ khác đều có ưu điểm về mặt nào đó ( Ví dụ Php xây dựng blog nhanh nhất, Nodejs làm Socket cực khỏe, Golang sử lý đa luồng thật đơn giản, Python thì thần thánh rồi, thấy làm IoT cũng dc mà )
    6. Open source chạy tốt với Linux mà mình lại mê các command của nó ( không có ý chê command prompt của Windows nhưng đó là sự thật )
    7. Opensource chạy dc mọi OS, .NET thì chỉ chơi với Windows thôi nhé.
    8. Thêm lý do ngoài lề là Opensource đang là xu hướng, bác Microsoft giờ còn support chạy Linux trên Windows 10 cho mấy dev khỏi đi

    Like

      1. Anh rất hiểu tâm lý người Việt hehehe>>>Chưa nghe hết câu đã đi ném đá quăng gạch…

        Like

    1. và thêm câu kết này của tác giả : ” … hãy đánh giá một lập trình viên qua thứ họ làm ra, chứ đừng thông qua ngôn ngữ họ sử dụng….”

      Like

  2. Thật sự đọc xong bài của bạn mình phải bình luận là hiểu biết của bạn thật sự rất tệ. Thành thật xin lỗi bạn.
    Đúng là ngôn ngữ chỉ là công cụ. Điều quan trọng nhất để làm nên phần mềm là cấu trúc dữ liệu và giải thuật. Một khi bạn có giải thuật và cấu trúc dữ liệu hợp lý thì có thể nói là đã xong hơn 50% rồi. Từ giải thuật và cấu trúc dữ liệu đó có thể triển khai bằng rất nhiều ngôn ngữ và rất nhiều nền tảng, hệ thống khác nhau.
    Nói C# là ngôn ngữ tuyệt vời nhất, bạn đã nghe đến câu “Viết một lần sửa mọi nơi” chưa? Nó cũng như bao ngôn ngữ khác mà thôi, nó hay hay dở tùy thuộc vào trình độ của bạn như thế nào mà thôi.
    Bạn có biết hệ điều hành được lập trình từ ngôn ngữ nào không? Phần lớn là từ C đấy. Bạn nói c là cùi bắp. Vậy bạn nghĩ .net nó được lập trình bằng cái gì?
    Ngôn ngữ lập trình hướng đối tượng giúp cho việc lập trình trở nên dễ dàng hơn, chắc bạn không hiểu điều đó nhỉ?
    Còn bạn chê javascript cùi bắp, mình chỉ đồng ý một phần vì nó chỉ nặng nề thêm trang web. Nhưng bạn biết javascript là cái gì không? Nó chỉ là một đoạn văn bản mà thôi. Cái thứ mà xử lý nó chính là trình duyệt, nó không phải là một ngôn ngữ để lập trình nên một phần mềm. Bạn có lập trình được một phần mềm bằng html được không? javascript cũng như vậy đó. html, css, javascript chỉ đơn thuần là văn bản, cái thứ xử lý nó là cái trình duyệt, nó đọc và hiển thị ra nội dung, chứ những thứ đó không phải là một ngôn ngữ để làm ra phần mềm. Php mới là cái xử lý bên trong, làm gì, thế nào. Php là ngôn ngữ mở trên hệ thống linux. Bạn thử chạy một trang web bằng asp trên máy chủ linux đi? Đó là lý do mà php nó ra đời, vì anh Microsoft thu tiền nhiều quá, nên các giải pháp mở ấy dùng để thay thế, asp thật sự rất cùi bắp.
    Không phải ai rảnh ruồi mà làm nhiều ngôn ngữ để làm gì. Java để sử dụng đa nền tảng. Nói C# đã có trên linux, đúng là có thật, nhưng có ai làm dự án c# trên linux chưa?
    Hiểu biết của bạn thật sự quá nông cạn khi không biết những ngôn ngữ ấy như thế nào mà lại đem đánh đồng mấy thứ đó.
    C# rất tiện lợi khi bạn phát triển ứng dụng trên windows. Nhưng bạn có biết bên trong cái giao diện chỉ cần bấm bấm vài cái đó là cái gì không?

    Bạn nên xem lại hiểu biết của mình thì hơn.

    Liked by 4 people

    1. Tôi có thể lập trình ra phần mềm bằng html, css ,javascript đấy.
      “hưng bạn biết javascript là cái gì không? Nó chỉ là một đoạn văn bản mà thôi. Cái thứ mà xử lý nó chính là trình duyệt, nó không phải là một ngôn ngữ để lập trình nên một phần mềm”.
      Bạn hơi xàm rồi đấy.

      Liked by 1 person

    2. Vậy là bạn đọc được cái tiêu đề rồi :v
      Còn cái kết luận kìa bạn gì ơi :)))
      “Kết luận: Nói gì thì nói, bản chất PHP vẫn là một ngôn ngữ sida cùi bắp, và Javascript vẫn là cái thứ dị hợm, dở dở ương ương, thất bại của tạo hóa. Nếu bạn vẫn còn cay cú vì PHP bị nói xấu, vui lòng kéo lên đầu và đọc lại bài viết nhé😀.”

      Liked by 1 person

    3. Đoạn đó tác giả cố tính nói như vậy, lí do thì ở đoạn trên đã đề cập. Còn nữa: Html là ngôn ngữ makeup, Javascript là ngôn ngữ lập trình thực thụ, bạn về xem lại kiến thức nhé.

      Like

    4. Trời, trình độ đọc hiểu quá tệ.
      Tác giá không phải là thích và tôn sùng C#, tác giả cố ý viết như vậy để dẫn dắt bạn vào câu chuyện thôi, trời ạ, tác giả giả vờ chê bai Javascript, Php là để nhấn mạnh ý thôi.
      Tóm lại là tác giả không hề tôn sùng C# và chê cái gì hết mà là nói như vậy để mấy bác đừng có nhạy cảm quá, kiểu ngôn ngữ này hay hơn ngôn ngữ kia. Cái đó không đúng. Cái tác giả nhấn mạnh là nếu bạn giỏi, có kĩ năng, làm việc tốt thì ngôn ngữ nào cũng tốt cả.
      Thiệt sự mấy bạn đọc mà chỉ lấy được ý bề mặt – face value – chả hiểu được gì hết.

      Liked by 9 people

      1. đúng rồi, thấy mấy thánh zô ném đá tỏ hiểu biết các kiểu, thua luôn, trình độ đọc hiểu hàm ý quá tệ :p

        Like

      2. rất là hay khi tác giả nói lập trình viên xem ngôn ngữ lập trình như 1 tôn giáo :)), mình đã thấy nhiều bạn tôn sùng tôn giáo như ở trên kia comment rồi.

        Liked by 1 person

    5. Nếu bạn nói những lời này thì có nghĩa là bạn đã chưa đọc hết bài viết của tác giả rồi. Thân chào bạn.

      Liked by 1 person

    6. “Bạn có lập trình được một phần mềm bằng html được không? javascript cũng như vậy đó. html, css, javascript chỉ đơn thuần là văn bản, cái thứ xử lý nó là cái trình duyệt, nó đọc và hiển thị ra nội dung, chứ những thứ đó không phải là một ngôn ngữ để làm ra phần mềm. Php mới là cái xử lý bên trong, làm gì, thế nào. Php là ngôn ngữ mở trên hệ thống linux. Bạn thử chạy một trang web bằng asp trên máy chủ linux đi? Đó là lý do mà php nó ra đời, vì anh Microsoft thu tiền nhiều quá, nên các giải pháp mở ấy dùng để thay thế, asp thật sự rất cùi bắp.”

      .NET với mình đã là dĩ vãng, bây giờ chỉ chơi Javascript. Đọc mấy dòng này của bạn thấy xàm quá xàm nên comment để bạn tìm hiểu thêm.

      Liked by 2 people

      1. Bạn này chắc đọc title rồi bay xuống phán quá. Đã vậy còn phán bừa, phán bậy mới chết chứ.

        Like

      2. thanh nien ngao @@, co cái ngôn ngữ lập trình nào ko là text, mọi ngôn ngữ đều cần 1 backgroup ( máy ảo, IDL, OS, brower..vv) để chạy được

        Like

    7. vl đọc hết bài viết chưa? =)) anh Hoàng viết tiêu đề thế mục đích chỉ để câu mấy thằng như cu cậu thôi, đọc kĩ để hiểu trước khi cmt nhé ❤

      Like

    8. Với HTML, CSS, JAVASCRIPT bạn dùng Cordova , inoic, phonegpa xem :D, làm app cho lành. Với core bên c# bạn có Asp.net Core và .Net core , các công ty và hệ thống thi tiếng anh của việt nam đang chuyển từ asp.net mvc sang .net core để có thể chạy trên VPS :D.

      Like

    9. “bạn biết javascript là cái gì không? Nó chỉ là một đoạn văn bản mà thôi”
      đoạn này khá xàm, vì JavaScript, Node.js cũng dựng dc server backend, cũng mở database, xử lý request,… các thứ :v
      Đương nhiên có thể lập trình dc một phần mềm bằng JS

      Liked by 1 person

    10. Cái tiêu đề là c# tuyệt vời nhưng tác giả khuyên học php va js kìa thánh…Thánh người nước ngoài hay sao mà ko hiểu cách nói của tác giả vậy? Tác giả ko chê C mà nói là C mà làm web thì cực lắm, nói thế có gì sai đúng ko thánh? Thánh nghiêm túc quá thánh.

      Like

    11. Có rồi bạn nhé mình đang làm công ty bên Nhật và phát triển asp.core web trên linux nè ??? Mình cũng đã làm dự án cực lớn về Spring Boot java và làm 1 dự án về wordpress ở bên Nhật rồi. Ngôn ngữ C# là hỗ trợ đầy đủ nhất bạn nhé. Giờ java hay node js angular cx đang đuổi theo lambda expressions hay linq của C#. Mình cũng nghĩ C# là ngôn ngữ tuyệt vời nhất (Theo suy nghĩ của mình :D)

      Like

  3. Ngôn ngữ chỉ là bộ đồ nghề, công cụ. Nó cần những người thợ(coder) làm ra sản phẩm(product). Sản phẩm nó mới nói lên chất lượng của người thợ. Một người thợ giỏi cho dù đưa họ bộ đồ nghề nào họ cũng làm ra một sản phẩm chất lượng. Một người thợ kém cho dù dùng cung cụ nào, làm ra sản phẩm gì đi chăng nữa thì nó cũng làm một sản phẩm tồi. Công cụ chỉ hỗ trợ một phần nào đó thôi. Quan trọng là bàn tay khéo léo của người thợ kìa.

    Like

      1. Mình làm dc nhưng bạn sẽ trả bao nhiêu để mình làm. mình không rảnh tới mức ngồi không để viết nó đâu nhé. còn muốn mình ngồi không làm cng4 ok nếu bạn viết web này bằng ngôn ngữ máy đi mình viết bằng Assembler hoặc C cho bạn xem. đồng ý chứ.

        Like

      2. bác đừng có xam, nó toàn là ngôn ngữ máy bác bảo đi viết app mobile, bác có biết code là gì k z?

        Like

    1. Assembly chứ không phải Assembler , Assembler là cái để dịch mà bác. Chán ghê, nói năng không để ý lời nói mà cũng đi nói lung tung.

      Like

    2. Bạn này nói đúng nhưng chỉ đúng 1 nửa, quan trọng nhất vẫn là người thợ. Nhưng công cụ cũng là 1 thứ cực kỳ quan trọng, nếu phù hợp thì sẽ bớt được rất nhiều thời gian. Tay nghề cao là tốt, nếu có thêm công cụ phù hợp thì càng tuyệt vời hơn.
      Không 1 thằng điên nào đi làm web bằng C cả, đơn giản là nó không phù hợp làm web. Giống như dùng rìu để chặt cây dao để làm thịt, điều ngược lại cũng đúng nhưng n không phù hợp thôi.

      Liked by 1 person

    3. Dùng assembly viết web thì đúng là đấng luôn rồi… Chắc giờ này làm chi nasa rồi chứ hơi đâu ở đây mà troll nhau.

      Like

  4. (1) Bạn chê PHP cùi bắp, nhưng chính bạn đang dùng WordPress code bằng PHP ? như thế là sao ? sao bạn không dùng hàng xịn C#

    (2) Bạn chê PHP cùi bắp, chỉ phù hợp với dự án nho nhỏ, nhưng bạn có biết là Facebook được code bằng PHP không ?

    (3) Bạn chê C/C++ cùi bắp, nhưng bạn có biết anh em của C/C++ là Go đang được coi là ngôn ngữ xu thế của tương lai không ? Và mình nói thêm là Go build web thì C# chỉ có xách dép chạy theo 😀

    P/S:
    – Ngôn ngữ lâp trình nếu không có điểm mạnh thì nó không thể tồn tại được, nó tồn tại được nghĩa là nó có điểm mạnh hơn những ngôn ngữ khác.
    – Thế giới công nghệ thay đổi từng giờ, hiểu biết của bạn và mình chỉ như muối bỏ bể, không thấm vào đâu cả.
    – Đừng coi những gì mình biết là bất biến, như thế sẽ tự bó buộc nhận thức của bản thân, kìm hãm khả năng phát triển.

    Like

  5. Đây cũng chỉ là ý kiến cá nhân của bác ấy, sao mấy bác trên phải phê phán nặng nề như vậy nhỉ 🙂
    mình thấy độ quan trọng của ngôn ngữ phụ thuộc vào tính chất công việc của mỗi người thôi, có thể đối với bác ấy C# là nhất còn lại chẳng là cái quái gì, còn mọi người thì ngược lại
    Cái gì cũng có mặt trái mặt phải mà.

    Like

  6. Lại sang comment blog bác chút vậy

    Dự án bên mình thường viết front-end bằng PHP, chạy khá linh hoạt và nhanh chóng, một số view bên mình dùng vue và angularjs

    Thường PHP frontend bên mình gọi đến các service nghiệp vụ viết bằng java/go, php bên mình cũng gọi sang nodejs riêng cho việc xử lý realtime/socket.io

    Bên mình có dùng go-lang để manage các thread và các service

    C# thường chỉ dùng cho việc viết app desktop call đến các service phía trên

    chúng khá bình đẳng nên chắc nghe vẻ cũng cùi 😀

    Liked by 2 people

  7. thật ra học ngôn ngữ nào cũng được, quan trọng tư duy lập trình, về phần ngôn ngữ thì tuỳ hệ điều hành mà làm, java thì đa nên tảng cũng tốt, c# thì win chẳng hạn vậy, muốn làm cái gì thì đi tìm hiểu cái đó, còn bản chất học thì cứ theo trường lấy bằng xong thì tuỳ hứng mỗi người, mỗi người mỗi cảm nhận. mình thì cũng được học nhiều ngôn ngữ mình hiểu bạn ấy, anh em ta dân lập trình thì cũng hiểu tầm vực nó thì rất nhiều thứ ta phải học, cứ giỏi cái này muốn học thêm cái kí thì cũng không sao. quan trọng có việc làm kiếm được tiền. đam mê đến đâu học bao nhiêu ngôn ngữ mà chỉ để ko đó ko làm gì thì cũng là đam mê để dành. dù sao cũng rất cám ơn vì bạn dành thời gian viết lên những dòng cảm nghĩ đó. mình có chém nhau gạnh đá nhau thì cũng anh em đồng môn cùng nghề nghiệp với nhau. cám ơn bạn chủ topic nha.

    Liked by 1 person

  8. E xin góp vui bằng câu này “Ngôn ngữ chỉ là nhất thời, giải thuật mới là vĩnh cửu.”

    Like

  9. Hihi, trước hết em cảm ơn anh vì bài viết cho em 1 bài học. Đọc những bài viết của anh em thấy vài thứ thú vị.

    Thứ nhất là cái tiêu đề, thoạt đọc có vẻ giống như anh đang muốn mở 1 cuộc tranh luận. Thật ra, ý chính của anh là đang thu hút sự hiếu kỳ của readers (người Việt Nam cứ chỗ nào tranh luận là tham gia). Em thấy tiêu đề khá thú zị vì em NGHĨ mục đích của bài viết không phải đề khẳng định “C# là tốt nhất” mà là để nói 1 ẩn ý khác.

    Thứ hai, có 1 ý em nhặt được từ bài mà em thấy khá tuyệt. Để em kể sơ 1 câu chuyện đã, hồi đó em vô tình xem được 1 trang web giới thiệu sơ về các tag trong HTML rùi CSS này nọ, từ đó nó nối tình yêu của em với Web lun. Rùi em cũng làm 1 vài cái Static page (cũng khá vớ vẩn vì nó chẳng có gì cả 😆). Em vô tình đọc đc 1 bài viết là JavaScript đáng học vì nó có thể viết cả client lẫn server, thì em cũng bay vô đọc thử sách về JavaScript. Sau cỡ 1/5 cuốn, thì tự nhiên (em cũng chẳng biết sao), em chuyển sang đọc về NodeJS. Cũng tìm hiểu 1 thời gian mà thấy nó qué rối, và hiện tại là em đang đọc về Ruby on Rails vì có người kêu “Học Ruby trước sẽ dễ học Node hơn”. Rõ ràng, em có vấn đề. Kiểu như em nhảy xoành xoặc từ cái này sang cái khác, cứ thấy cái mới là lại bám đuổi theo. Nhưng 1 câu văn trong bài này “Về bản chất, ngôn ngữ chỉ là công cụ”, chính nó làm em chợt tỉnh, chợt nghĩ rằng “Đúng rồi, ngôn ngữ không định nghĩa chúng ta, mà chính chúng ta định nghĩa lên nó”. Em nghĩ đây là ý hay NHẤT 😂 từ bài viết trên trong hiện tại (Tương lai em học chuyên sâu hơn về các thứ anh nói thì cái ý trên có thể sẽ hay thứ nhì)

    Túm lại bài viết của anh khá zui và cũng như 1 hồi chuông cảnh tỉnh cho những ai có mindset “Ngôn ngữ lập trình như 1 tôn giáo, và của tôi là tốt nhất”, điều quan trọng là 1 lập trình viên phải biết chắt lọc cái hay từ ngôn ngữ đó 😅.

    Em cảm ơn anh 1 lần nữa. “Hi vọng mày sẽ gắn bó đủ lâu với Rails, Sang à 😂”.

    Liked by 4 people

  10. hahaha còn nhiều người comment cay cú quá. Vậy là đủ hiểu đọc tới đoạn nào trong bài viết rồi :))

    Like

  11. chủ đề về ngôn ngữ thường dễ gây war, ai đang làm ngôn ngữ nào thì cho nó là nhất nhể 😀 chả bù cho mình, mình thấy ngôn ngữ mịa nào cũng lởm chỉ hi vọng sau này con cháu nó cho ra cái ngôn ngữ perfect, mà perfect thì lại khó tìm, khổ ghê

    Like

  12. Khi chê người khác đọc hiểu quá tệ thì cũng nên xem lại cách trình bày bài viết một chút. Tôi đọc xong và thấy như sau:
    MỞ BÀI: tôn vinh C# => Nhằm thu hút sự chú ý người đọc => Sự chú ý này rất dễ gây nên thành kiến với bài viết, khiến họ càng khó hiểu hơn nội dung mà phần thân bài nói lên.
    THÂN BÀI: nói lên nội dung chính, hoàn toàn trái ngược với mở bài. => Người đọc đọc đến đây sẽ bắt đầu hiểu ý bạn muốn nói: tư duy quan trọng hơn ngôn ngữ.
    KẾT BÀI: >> chê bai PHP, JAVASCRIPT => Đây có thể là cách mỉa mai những người mang tư tưởng “cứng” (tư tưởng của phần mở bài). Tuy nhiên kết bài là phần tóm tắt, cô đọng nội dung, như một thông điệp mà mình muốn truyền đạt. Bạn nói như thế lại làm người ta băn khoăn và một lần nữa lại gây khó hiểu hơn cho người đọc.

    Bạn có đang cho là tôi không đủ thông minh để hiểu nội dùng bài viết hoặc quá nghiêm túc, không biết bông đùa nên mới nói những lời này?

    Like

  13. Bài viết đã lâu nay mới đọc. Đọc xong bài ngó xuống xem comments. Thật vler các bạn trẻ, đọc blog lập trình như đọc tin soi về đủng quần của mấy iem showbiz, chỉ đọc title mà k đọc nội dung rồi thẳng tay ném đá, làm tin học thế này thì còn hi vọng gì cho sự phát triển của nền công nghệ nước nhà

    Liked by 1 person

  14. Cảm ơn tác giả, một bài viết quá hay, một số người vẫn khá cay cú về nội dung bài biết, là đủ biết đọc được bao nhiêu phần trong bài viết rồi

    Like

  15. bài viết này đọc mình đọc lại mấy lần rồi nhưng lần đầu đọc comment của các bạn. thấy nhiều bạn trẻ trâu vồn, như chợ. hehe

    Like

  16. Một số bạn trẻ trâu lỡ ném gạch bài viết khi vừa mới đọc xong title, sau đó thấy bị dân tình phản kháng thì các bạn đã nghiêm túc đọc kĩ lại bài viết, đọc xong bạn lại chuyển wa ném gạch về cách trình bày bài viết ko hợp lý gây hiểu nhầm cho người đọc. Tác giả đã thành công trong việc dắt mũi những con bò ko chịu đọc nội dung mà chỉ đọc title. Nhờ gạch đá của những con bò mà số lượt views ko ngừng tăng lên 😀

    p/s: (lúc đầu thì là trẻ trâu, cuối comment chuyển thành bò haizz, comment của mình lủng củng wa’, mà thôi kệ :V)

    Liked by 2 people

  17. Tại đang tìm hiểu ASP.Net để kiếm cơm.Nên đã nhảy vào đây.
    Em con rất nghiệp dư trong lĩnh vực này, nhưng bài biết của anh Hoàng hay lắm! ❤

    Nếu ai thần tượng hóa một ngôn ngữ hay đang lơ tơ mơ về cách chọn ngôn ngữ lt để học thì nên đọc bài này 😀

    Với PHP, em có thể làm cái shop online cho chị gái em, em làm blog để em chém gió, làm cái trang quảng cáo game…và cả CRM hay ERP gì đó

    Với C# em làm cái app để in hóa đơn cho cơ quan, để làm cái phần mềm quản lý công văn, làm shop online, làm cái to hơn nữa: chuyên nghiệp vụ ngân hàng chẳng hạn.. làm được cả cái PHP có thể nữa….

    Đại khái là tùy trường hợp em sẽ chọn PHP hay C#: có việc ta cần búa đinh, có việc ta lại cần búa tạ. 😀 . sức con người có giới hạn hãy từ từ mà làm rồi sẽ lên tay.

    Liked by 1 person

  18. Em có ý kiến ngoài lề cái anh… anh có thể làm lại reply của 1 comment nó phân biệt rõ ràng với phần comment không?
    Thú vui của em là đọc cmt các bác chửi nhau mà nó cứ dính dính khó phân biệt thế nào ý… nhìn kĩ thì mới thấy là reply nó nhích vô hơn tí với comment. 🙂 :3
    Thật hạnh phúc nếu bác ủng hộ thú vui tao nhã này :v

    Liked by 1 person

  19. Còn nhiều thứ phải học hỏi từ Admin. Cám ơn đã chia sẻ những thông tin bổ ích.

    Like

  20. Em năm sau lớp 10 đam mê công nghệ thích lập trình nhưng mỗi cái chỉ căn bản anh à nếu theo anh ở tuổi như em nên học cái nào ạ ???

    Like

  21. Bài này đọc lâu rồi, giờ vào đọc lại mới để ý tới các thành cmt =)))
    Vui vãi =))
    Thánh Hoàng đạt được mục đích “câu com men” nhưng cũng thấy nó sai sai, vì không các thánh com men sai mẹ nó vấn đề =))
    Các thánh đọc thế éo nào mà vào com men bảo Hoàng chê cái lọ bai cái chai không biết =))

    => Hoàng bối rối

    Liked by 1 person

  22. Thật sự đọc bài viết rất nhẹ nhàng, ngoài ra a còn tổng hợp giúp e những mặt ưu điểm của C#. Đúng là học hoặc dùng ngôn ngữ nào không quan trọng, nếu sử dụng qua một ngôn ngữ thì ắc lập trình viên sẽ hiểu ưu/khuyết của nó. Bài viết của a Hoàng thật sự ko có ý chê bai những ngôn ngữ khác vì bản chất C# cũng kế thừa rất nhiều chức năng từ những ngôn ngữ cũ, thậm chí là bổ sung thêm nhiều tính năng hay ho mới. Qua cách viết của a thì e cảm nhận được sử dụng C# để code rất là sướng (y). Cảm ơn a Hoàng với bài viết rất hay, mong anh ra thêm nhiều bài viết technical và programming hơn nữa.

    Like

  23. Em là dân ngoại đạo! Nhu cầu chỉ cần hoàn thiện cái website của mình để kiếm cơm qua ngày! Vào đây đọc các bác comment, hài quá!

    Like

  24. Anh Hoàng cho eo hỏi ngoài lề xíu ạ 🙂
    E tính học lại c#, anh cho e một vài khóa học và một vài ebook kinh điển với ạ, anh việt cái nào cũng ok, anh càng tốt ạ.
    Em cảm ơn anh nhiều :). Chúc anh nhiều sức khỏe và thành công trong sự nghiệp ạ 😀

    Like

  25. các thánh .net , thánh php, thánh java, thánh python … bị Hoàng Cave dắt mũi rồi =))

    Like

  26. Mấy chú cãi nhau cứ như là so sánh tiếng Hàn, tiếng TQ, tiếng Nhật cái nào hay hơn. Tiếng Hàn có K-pop, tiếng Nhật nhiều tiền – công nghệ cao, tiếng TQ hơn tỷ người dùng, buôn hàng TQ là nhất. Mỗi ngôn ngữ lập trình có 1 phạm vị ứng dụng riêng của nó. Vào môi trường của nó thì nó mạnh nhất. Giống như ông tiến sĩ ngôn ngữ biết 102 ngôn ngữ, nhưng không biết tiếng Việt mà đến Việt Nam vẫn lọng cọng.

    Like

  27. Chào tất cả ! 🙂
    Mình là 1 bạn gái, mà là 1 bạn gái ko biết cái khỉ gì về IT. Mình chỉ lag 1 người kinh doanh bình thường. Mình vô tình đọc đựơc bài viết này vì bạn coder đang code cho mình 1 website. mà website của mình là một lập tình tài chính. Mình hỏi bạn viết code là bạn dùng ngôn ngữ gì để viết nên cái website này vậy thì bạn ấy nói bạn dùng C#. Mặc dù ko biết về IT nhưng mình là ngừoi chịu đọc. Và sau khi nghe thì mình đã search C# là gì thế là dẫn mình đến bài này.

    Thực ra đọc bài viết của bạn thớt mình hiểu ý bạn ấy. Bài viết này rât hay. Mặc dù ko biết lập trình, ko phải dân IT, nhưng mình đọc mình vẫn hiểu bài viết. Mình hình dung được ngôn ngữ lập trình còn giống như 1 nguồn nguyên liệu cung cấp cho coder làm ra 1 sản phẩm hoàn chỉnh. Mỗi một ngôn ngữ đều sẽ có những BỘ CÔNG CỤ đặc trưng riêng của nó. Có thể đem con dao để so với cái kéo vì có 1 vài điểm cùng chức năng, nhưng ko thể mang cái nhíp so sánh với cái búa vì có 2 công dụng khác nhau. Và bên trong mỗi ngôn ngữ Jav, PHP, C, C++, C# …gì đó đều chứa nhiều nguồn nguyên liệu công cụ để coder dùng. Nên khó mà có thể đem ra so sánh cái nào hơn cái nào.

    Một sản phẩm tốt, hoàn hảo cũng giống như 1 món ăn ngon. Nếu nấu cháo thì cần có gạo , nuớc, củi , lữa. Trong gạo thì cần chọn gạo nào cho phù hợp với nồi cháo nào vì có rất nhiều loại cháo cần nấu như cháo khỏe ,cháo lòng, cháo trứng, cháo lỏng, cháo sệt. Quan trọng là nguời chủ muốn loại cháo nào mà người code biết tận dụng nguồn nguyên liệu nào cho phù hợp.

    Tóm lại, bài này có phải ý là người lập trình giỏi là người ko mang bộ công cụ mà mình sở hữu ra khoe mẽ, so sánh nọ kia mà là nên tập trung vào nền tảng học hỏi, khám phá chuyên sâu về một loại hay nhiều loại dụng cụ cần thiết, để từ đó biết áp dụng lựa chọn những thứ phù hợp để làm ra sản phẩm đạt yêu cầu ko ạ?

    Nếu là vậy thì điều quan trọng nhất vẫn là ở đầu óc của nguời lập trình, biết vận dụng hết những thứ mình có, biết tự tay nêm nếm mắm muối vừa đủ để tạo ra một món ăn ngon hoàn chỉnh.

    Đúng vậy ko ạ?

    Liked by 1 person

      1. Ah anh Hoàng ơi, anh cho em hỏi tí nhen, vậy bạn coder viết ngôn ngữ C# cho cái website của mình , mà mình đọc thấy ghi là C# ko chạy trên nền tảng MacOS và Linux gì đó .. chỉ chạy trên windows thôi. Vậy những nguời sử dụng Macbook và Linux sẽ ko mở website của mình ra được hả anh? Em vừa đọc C# là gì xong, hỏi bạn coder , mà bạn ấy chưa trả lời tin nhắn nên sẵn tiện hỏi anh luôn.

        Thank you

        Like

    1. Bạn chưa học IT nhưng những gì bạn nói thì đúng gần như chuyên ngành của Coder rồi. Bạn cứ nghĩ như vầy cho đơn giản. Một trang web giống như 1 tòa nhà, anh thợ xây là người lập trình còn công cụ anh thợ xây dùng để xây nhà là ngôn ngữ lập trình. Việc dùng ngôn ngữ nào ko quan trọng bằng việc hoàn thành trang web mà chức năng của trang web đó có ổn định không? hiệu năng có tốt không v.v. Bạn giỏi 10 ngôn ngữ lập trình chưa chắc bạn làm ra 1 trang web với hiệu năng ôn định và mượt như 1 anh chỉ biết 1 ngôn ngữ lập trình. Anh kia có lợi thế là biết nhiều thôi chứ khả năng tư duy và kỹ năng, kinh nghiệm mới là cái quyết định. 😀

      Like

  28. mấy ông này trình độ đọc hiểu như này mà cũng làm đc IT, chịu thiệc, người ta viết đoạn đầu sau đấy dùng đoạn sau để phản biện, hiẻu ko

    Like

  29. Hi, cám ơn bài viết hữu ích của tác giả.
    Mình đang là dân ngoại đạo(bên thời trang may mặc), đang tìm hiểu 1 số công việc của nhiều lĩnh vực, đọc bài viết xong đọc comment thấy buồn cười quá, ngành nào lĩnh vực nào cũng thế này sao? Bên ngành mình, hiện nay thì công việc mình theo là pattern design 2D, người ta hay gọi thiết kế rập quần áo. Bên mình hiện cũng có 3 ông phần mềm nổi tiếng mảng này gồm: Gerber, Lectra, Optitex ở VN hay dùng, ngoài ra còn nhiều nữa như: Tuka, Gemini, Modasoft…… Nói chung cũng giống y như các comment ở trên, tranh luận sôi nổi, thậm chí có cả đề xuất thiết kế ra 1 cái ao/quân/dress bằng phần mềm của 3 ông kia xem ai nhanh hơn và xem phần mềm ai tiết kiệm định mức hơn (đại ý là cắt vải sản xuất sao cho tiết kiệm và nhanh nhất), và thời mình còn trẻ trâu cũng háu đá tranh luận sôi nổi lắm, giờ nghĩ lại thấy buồn cười.
    Quan trọng vẫn như ý của tác giả: là mình làm gì? ở đâu? công việc cần gì? lương bao nhiêu? Có thể phát triển theo những hướng nào với cái mình có hihi. Như mình ngày từ khi đi học cũng xác định tư tưởng theo 1 thằng thôi, cầy nhiều thằng chỉ giúp mình đi xin việc giỏi, chứ chưa chắc nghề đã giỏi. Bên mình tính công việc (1 sản phẩm/1 bản thiết kế) tính theo ngày thậm trí theo giờ. Vì vậy phải phù hợp kiểu dáng, đúng yêu cầu buyer, và quan trọng ko có sai hỏng khi tiến hành sản xuất hàng loạt vì tính đặc thù nghề nghiệp là phải nhanh và chính xác, nhiều khi gõ nhầm trái-phải, chính – lót… mà đi cả đơn hàng tiền tỷ, mà cái CPU trên đầu đâu phải lúc nào cũng tỉnh táo đâu hihi. Người dùng thì càng chả quan tâm đến sản phẩm làm ra như thế nào đâu, nên vứt mấy cái tư tưởng cổ lô sĩ đi các bạn, quay lại mục đích chính làm gì? Ở đâu? Công việc cần gì? Lương bao nhiêu? … thêm cái nữa: lên được giám đốc không? / hoặc tự làm chủ nhờ những công việc đang làm ko? ^^ Đây là các bài toán ngược thần thánh cho cuộc đời 😀
    Tò mò: Đang muốn hỏi 1 số kiến thức liên quan bên IT ko biết chủ pic có sẵn sàng trợ giúp mình ko 🙂

    Like

  30. Cảm ơn anh Hoàng chia sẻ 1 bài viết rất hay. Em bản thân xuất phát từ VB sau 1 năm bỏ VB tự học lại C# và giờ em vẫn thích C#. Không phải em không chịu tham khảo tiếp cận cái mới mà thật ra càng học tập trung vào 1 ngôn ngữ mình thích nhất thì em thấy còn nhiều thứ mình còn phải học tiếp. Ngôn ngữ chỉ là công cụ giao tiếp, ngôn ngữ lập trình cũng là công cụ để mọi người dùng cho việc phát triển ứng dụng của mình. Bạn bè em nhiều người học được 2 3 ngôn ngữ rất giỏi, họ cũng khuyên em học thử PHP và em cũng tham khảo sau đó em rút ra được nhiều cái hay của PHP em đem về áp dụng cho C#. Quả thật nhiều khi mọi người hay chê C# nhiều lắm nhưng riêng em cảm thấy C# hay PHP đều có cái hay cái dở nhưng nếu thử đem những điều hay của ngôn ngữ này về thử áp dụng cho ngôn ngữ kia thì vô cùng tuyệt vời. Em đã thử cách làm theo Framework của PHP về làm cho Windows Form (C#) và em thấy hiệu quả tôn ít thời gian code. Em cũng tham gia 1 số group diễn đàn như stackoverflow, codeproject, thỉnh thoảng thấy một số bạn mới có thắc mắc về C# em cũng ráng giúp và thấy cái cách em chắt lọc những gì hay nhất của C# và hỗ trợ những người khác giúp họ giải quyết được vấn đề của họ nhanh chóng hiệu quả em cảm thấy như càng học càng yêu C# hơn. 😀

    Liked by 1 person

  31. Bài viết hay, tiêu đề chỉ là cái cớ để dẫn chứng vào một vấn đề chính.

    Like

  32. Mỗi ngôn ngữ đều có điểm mạnh và yếu. Tôn thờ đỗng nghĩa với việc không có cái nhìn tổng quát để đánh giá được tất cả các loại ngôn ngữ. Các bạn chứng minh ngôn ngữ mình sử dụng là tốt bằng cách nêu được điểm mạnh của nó ra ? Vậy điểm yếu của nó là gì ? Và điểm mạnh của các ngôn ngữ khác là gì ?

    Like

  33. Đọc xong chả hiểu bác nói về cái khỉ gì, rốt cục C# có tốt nhất trên đời không thi mình k thấy bác nói. cái mình muốn biết là tầm ứng dụng, sự rộng rãi, khả năng nó làm được gì?

    Like

  34. Ngồi đọc mấy bác coment với nhau thôi cũng tích góp thêm được tí kiến thức nữa rồi :v
    Đúng là tiêu đề dễ câu cũng dễ gây war với nhau thật em đọc 2 lần rồi cái bài này với xuống đọc coment của các bác cãi nhau đúng thật dữ dội :v

    Like

  35. Anh thêm tính năng reply cmt như fb ấy anh
    Chứ cmt như kiểu này thì mấy thằng ngu vẫn không biết mình ngu đâu :))))

    Like

  36. Có nhiều thành chưa đọc hết bài viết đã chửi. asp.net core giờ chạy trên docker tốc độ rất tốt. Công ty mình hồi trước chuyên làm php. Mình đọc code khoảng 1000 dòng là muốn đập mẹ cái máy.

    Like

  37. Tư duy quan trọng nhưng nếu không có cái để thực hành thì vẫn chỉ là lý thuyết…. E đọc được bài này khi đang phân vân không biết nên chọn ngôn ngữ nào để làm game. Cũng từng học qua web đc 1 năm sau thấy chán nên giờ quyết định sang game. Chưa va chạm vs nhiều ngôn ngữ ngoài PHP, JS, C. Nhưng thấy một điều là học ngôn ngữ nào thì học cũng phải hiểu sâu về cú pháp của nó … mà cái hiểu sâu này khá tốn thời gian nghiên cứu tài liệu, va chạm thực hành vs nó ms nắm được … Rồi giờ thì mục đích viết comment cũng chả biết là gì nữa…. Từ 1 đứa đang không biết nên làm game vs c# trên unity hay c++ trên cocos2d

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s