30/09/2018, 23:23

C++ có phải là ngôn ngữ bá đạo nhất không?

mình vừa có một cuộc tranh luận về c# và c++ nên mình lập topic này để mọi người góp ý thử:

trước tiên mình xin giới thiệu một chút về người tranh luận :

mình quen anh này là trainer cho một công ty làm game lớn ở Việt Nam, anh có kinh nghiệm lập trình trong nhiều mảng như web/app/game/iot/embeded và mình đã xem qua các sản phẩm của anh, tất cả đều có thể nói là rất tốt, bạn có thể thấy nhiều sản phẩm game của công ty anh trên thị trường.

anh nói rằng muốn trở thành một chuyên gia lập trình thì trước hết phải là một người giỏi về c/c++, vì anh nói người giỏi c/c++ là người có kĩ thuật lập trình và tư duy thuật toán rất tốt, chưa kể các ứng dụng viết bằng c++ thì hiệu suất rất cao và tốt hơn những thằng như c# nhiều.

mình lại nghĩ khác, mình nghĩ C# mặc dù hiệu suất có thấp hơn c++ thật, nhưng ngược lại là C# đc hỗ trợ rất nhiều (có thể viết đc multi app/web/game/vr ) , và mình nghĩ một phần mềm chỉ cần giải quyết đc vấn đề đặt ra là đã thành công rồi, còn việc hiệu suất thế nào thì nó còn phụ thuộc vào kĩ năng lập trình của người viết.

còn các bạn nghĩ thế nào có thể cho biết minh biết, quan điểm của các bạn không.

ps: cảm ơn mọi người vì đã đọc.

Hung viết 01:30 ngày 01/10/2018

Sản phẩm game nào của anh í trên thị trường vậy? Nêu vài tên cho mình xem thử nào.
C++ cũng là một trong nhiều ngôn ngữ lập trình khác thôi chứ có gì bá đạo. Thích thì học, ko học cũng ko sao. Bởi thị trường Outsource của Việt Nam thì biết Java, C# và PHP là dễ kiếm cơm nhất nhé.

Mênh Mông viết 01:24 ngày 01/10/2018

n

Máy Google có dùng C++, khoảng 1000.000.000 lượt tìm kiếm mỗi ngày. Giả sử bộ máy tìm kiếm thần thánh này được viết bằng Java hay C# thuần, thì mỗi lượt tìm kiếm hiệu suất giảm 0.1s
Vậy thì mỗi ngày máy chủ phải ghánh nặng thêm 0.1sx1000.00.000
Và 1 năm ? 0.1sx1000.000.000x365 = …?

C++ rất bá đạo nhưng đôi khi ko phải lúc nào cũng phải dùng dao mổ trâu để giết gà. Lựa chọn ngôn ngữ, công nghệ phù hợp với từng loại ứng dụng, đấy mới thực sự là khôn ngoan.

Tao Không Ngu. viết 01:36 ngày 01/10/2018

This post was flagged by the community and is temporarily hidden.

Minh Ngo viết 01:23 ngày 01/10/2018

bạn hỏi xem anh ấy vào nghề được mấy năm rồi mà phát ngôn hồ đồ thế !

AkKe viết 01:27 ngày 01/10/2018

Nhiều người phản đối ghê vậy nhỉ ? Riêng tôi thấy anh ấy nói như vậy chẳng có gì sai cả ! Tôi được tiếp xúc khá nhiều người giỏi và họ luôn luôn nói rằng nếu học lập trình mà bạn không có những bước khởi đầu từ C/C++ thì con đường lập trình của bạn khó có thể tiến xa . Hay nói chính xác là càng theo lên cao thì càng đuối . Bên nước ngoài theo đánh giá của nhiều chuyên gia hiện giờ họ chọn 1 ngôn ngữ để người chưa biết gì về lĩnh vực lập trình cũng có thể theo đuổi thì Python,JS bây giờ đang đứng vị trí được coi là tốt nhất . Nhưng C/C++ luôn có mặt trong top 3 những ngôn ngữ được coi là bản lề trong lĩnh vực lập trình !

Nguyễn Anh Khoa viết 01:31 ngày 01/10/2018

Cứ lâu lâu, trên forum lại xuất hiện topic hỏi ngôn ngữ lập trình nào bá đạo nhất …đến bó tay!!! cái nào tốt còn do hoàn cảnh ứng dụng và người lập trình… hết java, C#, C, C++, Pascal…cuộc “tranh hùng” này bao giờ mới hết…

Minh Ngo viết 01:27 ngày 01/10/2018

không ai nói là nó không quan trọng ! gần như 100% các trường cntt đều dạy nó bạn ạ ! Nhưng điều đó không có nghĩa là nó là nhất ! cái gì cũng có mặt này mặt kia ,mặt lợi mặt bất lợi ! Nói như nhiều người chỉ vì tốc độ thì nhiều người cũng nói Java mới là nhất vì c trình nó viết chạy được trên nhiều nền tảng . Trên thực tế thì nó vẫn đang được nhiều lập trình viên sử dụng nhiều nhất thì sao ???

Minh Ngo viết 01:37 ngày 01/10/2018

bất tận chả bao giờ hết được đâu

Lê Anh viết 01:30 ngày 01/10/2018

Mình không có bình luận gì bởi cả trên Quora thì luôn có những tranh cãi muôn thủa khi mọi người cố bảo vệ quan điểm của mình. Và tất nhiên khi đứng trên lập trường của mỗi người đều “khá là có lý”.

Bởi nhiều lý do mà C++, đặc biệt là C được nhiều người dùng để luyện tập kĩ năng lập trình (để trở nên cứng tay và bá đạo hơn? ). Quan điểm này mình lấy từ cuốn Learn C the hard way của Zed A. Shaw.

Văn Dương viết 01:25 ngày 01/10/2018

Ếu hiểu tại sao có nhiều thánh cho rằng chương trình chạy nhanh thì ngôn ngữ bá đạo và đó là tất cả.
Thế thì C++ cũng éo phải bá đạo nhất. ASM nó còn bá gấp mấy lần C++. Sao người ta không dùng ASM làm mọi thứ cho nó bá.

Chả khác quái gì nhiều topic so sánh ASM và C nói rằng C thua ASM vì chương trình viết bằng ASM chạy nhanh. Nếu cùng quan điểm vác C++ vào đây thì C++ ếu có tên tuổi gì chứ có mà bá.

Hài vlz.

AkKe viết 01:34 ngày 01/10/2018

anh nói rằng muốn trở thành một chuyên gia lập trình thì trước hết phải là một người giỏi về c/c++, vì anh nói người giỏi c/c++ là người có kĩ thuật lập trình và tư duy thuật toán rất tốt, chưa kể các ứng dụng viết bằng c++ thì hiệu suất rất cao và tốt hơn những thằng như c# nhiều.

Chủ theard nên đọc kỹ lại những gì mình viết trước khi đưa ra để tranh luận nhé !

Tao Không Ngu. viết 01:37 ngày 01/10/2018

This post was flagged by the community and is temporarily hidden.

AkKe viết 01:28 ngày 01/10/2018

Nên nhớ là nguyên văn câu của chủ theard là thằng anh của theard nói “MUỐN TRỞ THÀNH CHUYÊN GIA LẬP TRÌNH” thì trước hết phải giỏi về C/C++ . Vì thằng anh của chủ theard nói “NGƯỜI GIỎI C/C++ LÀ NGƯỜI CÓ KỸ THUẬT LẬP TRÌNH VÀ TƯ DUY THUẬT TOÁN TỐT” . Còn vấn đề cuối là “các ứng dụng viết bằng c++ thì hiệu suất rất cao và tốt hơn những thằng như c# nhiều” => ĐÂY LÀ QUAN ĐIỂM ĐÁNH GIÁ CÁ NHÂN CỦA BÁC ANH CHỦ THEARD .

Rồi chủ theard lại phản biện cái vấn đề éo đâu ấy “mình lại nghĩ khác, mình nghĩ C# mặc dù hiệu suất có thấp hơn c++ thật, nhưng ngược lại là C# đc hỗ trợ rất nhiều (có thể viết đc multi app/web/game/vr ) , và mình nghĩ một phần mềm chỉ cần giải quyết đc vấn đề đặt ra là đã thành công rồi, còn việc hiệu suất thế nào thì nó còn phụ thuộc vào kĩ năng lập trình của người viết.”
(Kỹ năng lập trình của người viết ở đây mông lung vl …)

ĐÂY KHÔNG PHẢI CUỘC TRANH LUẬN VỀ VẤN ĐỀ NGÔN NGỮ NÀO GIẢI QUYẾT NHIỀU VIỆC HƠN , MÀ LÀ VỀ VẤN ĐỀ "MUỐN TRỞ THÀNH CHUYÊN GIA THÌ C/C++ ĐÓNG VAI TRÒ CHỦ YẾU " NHÉ ! . ĐÂY LÀ CUỘC TRANH LUẬN NGỚ NGẨN DO CHỦ THEARD NÔNG CẠN KHÔNG HIỂU HẾT VẤN ĐỀ MÀ THẰNG ANH CÓ KINH NGHIỆM KIA KHUYÊN BẢO THÀNH RA CÃI NHAU …

VietNam viết 01:23 ngày 01/10/2018

like thím …

Tao Không Ngu. viết 01:24 ngày 01/10/2018

This post was flagged by the community and is temporarily hidden.

Nguyễn Anh Khoa viết 01:36 ngày 01/10/2018

PASCAL MUÔN NĂM ANH NHÉ!!!

PhamHai viết 01:27 ngày 01/10/2018

JAV là sang chủ đề khác rồi

PhamHai viết 01:37 ngày 01/10/2018

Từ bá đạo ở đây chủ thớt dùng chưa có kèm các tiêu chí để đánh giá.
Nếu so sánh cần so sanh dựa trên tiêu chí:

  • Hiệu suất thực thi chương trình ( chạy nhanh hay chậm)
  • Hiệu suất lập trình ( viết code nhanh hay chậm)
  • Cú pháp ( sáng sủa, có cấu trúc, từ khóa gần gũi)
  • Dễ hiểu, dễ sử dụng (nhiều tài liệu, đọc code dễ hiểu)
  • Đa nền tảng ( chạy trên nhiều nền tảng)
  • Dễ kiếm tiền

Mỗi tiêu chí trên đây là đã cho những kết quả khác nhau rồi. Mỗi một ngôn ngữ đều có thế mạnh riêng của nó, nó mạnh khi nó được thể hiện sở trường của nó và tất nhiên rồi khi áp dụng không đúng thì nó lại… Thế nên từ “bá đạo” mà áp dụng cho tất cả các tiêu chí thì C++ chắc chắn không phải là bá đạo nhất rồi.

Nếu nói về tư duy lập trình và giải thuật, thì chắc là đến 99% mọi người đều bắt đầu với C/C++

So sánh giữa C++ và C# thì cũng thật khập khễnh, C++ là cha (under layer) của C#, ai lại so sánh cha con với nhau.

viết 01:32 ngày 01/10/2018

giải thuật thì cần gì tới C/C++. Như thầy Lê Minh Hoàng xài Pascal cũng được vậy, đâu cần C/C++, hay lớp Algorithms trên Coursera xài Java. Làm gì tới 99% C/C++. Mấy cái giải thuật đa số đều có trước mấy ngôn ngữ lập trình (nnlt) nên nó ko lệ thuộc nnlt nào. Giải thuật là phải chạy tay cho hiểu chứ code cho máy chạy thì hiểu được gì…

Tao Không Ngu. viết 01:39 ngày 01/10/2018

This post was flagged by the community and is temporarily hidden.

Bài liên quan
0