thắc mắc - Ngôn ngữ C làm được những gì vậy? | theNEXTvoz
vieejtnam
Cho mình hỏi, ngôn ngữ C làm được cái gì vậy nhỉ?
Trước mình học tin đại cương C, thấy toàn học mấy cái hàm, cấu trúc chạy trên giao diện MS-dos, chẳng hiểu nó làm được cái gì mà thấy toàn bảo phải học C trước? Mà học rồi cũng chẳng thấy ứng dụng gì, chẳng nhẽ dùng C để tìm và in số chẵn lẻ thôi ư?
Chẳng thấy hiện được giao diện cửa sổ, đồ hoạ như ứng dụng vẫn thấy trên windows gì cả?
Trước mình học tin đại cương C, thấy toàn học mấy cái hàm, cấu trúc chạy trên giao diện MS-dos, chẳng hiểu nó làm được cái gì mà thấy toàn bảo phải học C trước? Mà học rồi cũng chẳng thấy ứng dụng gì, chẳng nhẽ dùng C để tìm và in số chẵn lẻ thôi ư?
Chẳng thấy hiện được giao diện cửa sổ, đồ hoạ như ứng dụng vẫn thấy trên windows gì cả?
Nhờ các bạn thông não giúp.
Thank you!
C chẳng làm được gì cả. Giáo dục của mình đã lạc hậu so với các nước khác rồi. C nên là môn học bị loại bỏ khỏi chương trình đào tạo.
privacy
C/C++ không chết, nhưng nó trở thành ngôn ngữ để làm những cái cốt lõi. Giống như để sản xuất 1 chiếc xe hơi thì khó bởi cần các ngành công nghiệp phụ trợ như luyện kim, cơ khí này kia, còn sx phụ kiện thì dễ và nhanh kiếm được tiền hơn.
C/C++ không chết, nhưng nó trở thành ngôn ngữ để làm những cái cốt lõi. Giống như để sản xuất 1 chiếc xe hơi thì khó bởi cần các ngành công nghiệp phụ trợ như luyện kim, cơ khí này kia, còn sx phụ kiện thì dễ và nhanh kiếm được tiền hơn.
Những thứ không phải cốt lõi, cho người dùng cuối cũng thấy làm bằng C++:
Game: 99.99% game AAA và phần lớn game cho desktop,
Bộ Office, Creative Suite, hầu hết phần mềm đồ họa, video, audio,...
Trình duyệt web
C thì ít phần mềm enduser hơn nhưng bên Linux thì khá phổ biến, hơn cả C++, hầu hết những utility được cài sẵn đều là C. Những phần mềm có từ thời 8x 9x như vim, emacs, Gtk, cũng viết bằng C.
Trước mình học tin đại cương C, thấy toàn học mấy cái hàm, cấu trúc chạy trên giao diện MS-dos, chẳng hiểu nó làm được cái gì mà thấy toàn bảo phải học C trước? Mà học rồi cũng chẳng thấy ứng dụng gì, chẳng nhẽ dùng C để tìm và in số chẵn lẻ thôi ư?
Chẳng thấy hiện được giao diện cửa sổ, đồ hoạ như ứng dụng vẫn thấy trên windows gì cả?
Nhờ các bạn thông não giúp.
Thank you!
Do giáo trình quá cũ thôi
Chứ dạy chuẩn phải dạy bằng IDE Codeblock, Visual Studio
DOTA, LoL, Windows 10, Adobe, AutoCAD... đều viết bằng Visual C++
HGB2016
Lập trình nhúng, tuy bây giờ có trend code nhúng bằng python nhưng mà chắc chỉ trên các dòng máy tính nhúng mới thoi chứ 90% code nhúng hiện tại ở các dòng VĐK, Embedded board thịnh hành đều là C/C++, còn lại chắc là Assembly, rồi mới tới Python
foreveralone
C làm được hệ điều hành (Linux), database (postgres), máy ảo của ngôn ngữ lập trình (python vm, ruby vm, erlang vm...), làm web (compile to wasm), nói chung là bất kì phần mềm nào bạn thấy thì cũng có thể làm được bằng C
.
PS: mấy ông lấy C++ ra ví dụ là sai rồi nhé, C != C++
C chẳng làm được gì cả. Giáo dục của mình đã lạc hậu so với các nước khác rồi. C nên là môn học bị loại bỏ khỏi chương trình đào tạo.
Xàm vl, cái smart phone lúc nào cũng cắm mặt vào đấy toàn dựa trên C cả đấy
thich_tuong_tuong
biết được ngôn ngữ C thì có thể học được bất kì ngôn ngữ bậc cao nào khác ko có ngược lại. Nó dạy tư duy khá tốt, ngôn ngữ bậc cao viết cũng dựa trên nó và cải tiến, dễ tiếp cận hơn, tính ăn sẵn cao hơn. Nhưng chuyên sâu thì phải đào vào C mới thấy cái hay.
Mình nghe nói thế, chứ mình học ngu nên ko đào sâu thích ăn sẵn.
foreveralone
Thật ra thì cũng đồng tình với chủ thớt, chương trình học dùng C thì lỗi thời quá. C viết được mọi thứ nhưng C do người mới học thì chả làm gì được
, thà học python làm liền GUI hay web server thì học sinh sẽ có hứng thú hơn.
gbvn1
C là tập con của C++, nên học thẳng C++ 20 luôn nhá
vip_pro_b8
C
Thêm 2 dấu '++ 'thành C++
Thêm 2 dấu '++ 'nữa thành C #( kí tự '#' bao gồm 4 dấu + ghép lại)
C là ông, C++ là bố, C# là thằng cháu
Trước mình học tin đại cương C, thấy toàn học mấy cái hàm, cấu trúc chạy trên giao diện MS-dos, chẳng hiểu nó làm được cái gì mà thấy toàn bảo phải học C trước? Mà học rồi cũng chẳng thấy ứng dụng gì, chẳng nhẽ dùng C để tìm và in số chẵn lẻ thôi ư?
Chẳng thấy hiện được giao diện cửa sổ, đồ hoạ như ứng dụng vẫn thấy trên windows gì cả?
Nhờ các bạn thông não giúp.
Thank you!
HolyC dùng cho mấy thứ kiểu
này chẳng hạn, chứ không phải in số ra chữ đâu
In 1983, the name of the language was changed from C with Classes to C++.
Ayemdi
Quyển C Programming Language chỉ 272 trang cả bìa, trong khi bộ sách của C# hoặc Java thì tính bằng đơn vị ngàn trang. Rõ ràng bây giờ nếu không theo nhúng thì C chẳng làm được gì nhiều, học cho qua môn thôi
C++ không tương thích với C là đúng rồi. Có một vài tính năng và cú pháp C có mà C++ không có.
VD: variable length array, cho phép tạo mảng trong stack với kích thước tùy theo biến (không cần phải là number). Cái đáng tiếc nhất là designated construct, cho phép tạo struct dựa vào tên member:
C:
#include <stdio.h>
typedef struct { int k; int l; int a[2]; } T;
typedef struct { int i; T t; } S;
T x = {.l = 43, .k = 42, .a[1] = 19, .a[0] = 18 };
// x initialized to {42, 43, {18, 19} }
int main(void)
{
S l = { 1, // initializes l.i to 1
.t = x, // initializes l.t to {42, 43, {18, 19} }
.t.l = 41, // changes l.t to {42, 41, {18, 19} }
.t.a[1] = 17 // changes l.t to {42, 41, {18, 17} }
};
printf("l.t.k is %d\n", l.t.k); // .t = x sets l.t.k to 42 explicitly
// .t.l = 41 would zero out l.t.k implicitly
}
Quyển C Programming Language chỉ 272 trang cả bìa, trong khi bộ sách của C# hoặc Java thì tính bằng đơn vị ngàn trang. Rõ ràng bây giờ nếu không theo nhúng thì C chẳng làm được gì nhiều, học cho qua môn thôi
Phần mềm enduser viết bằng C gần đây cũng ít đi rồi, nhưng thời 8x 9x thì một đống. Hầu hết những tool command line thường dùng trên Linux đều viết bằng C: binutils (ls, rm, cp, ...), iproute2 (ip a, ip r, ss)
Thư viện thì hầu hết là viết bằng C, vì nó rất cơ bản cho nên dễ binding với nhiều ngôn ngữ bậc cao khác nhau. C++ thì dính mấy cái liên quan đến name mangling nên ít dùng, trừ khi là chủ đích khi viết dành cho C++.
C++ không tương thích với C là đúng rồi. Có một vài tính năng và cú pháp C có mà C++ không có.
VD: variable length array, cho phép tạo mảng trong stack với kích thước tùy theo biến (không cần phải là number). Cái đáng tiếc nhất là designated construct, cho phép tạo struct dựa vào tên member:
Nó có hỗ trợ, chỉ khác cú pháp thôi nên trình biên dịch C++ vẫn biên dịch được C. Project C++ nào chẳng link cả tá lib viết bằng C (libcurl, libssl, libpng...)
xindungbantoi5
Hệ điều hành MacOS của apple, iOS, android, windows, đều từ ngôn ngữ C mà ra.
còn giờ học C/C++ để đi làm phải học tới nóc. Tự build được game engine, tự viết được hệ điều hành cho riêng mình,.... a-z bằng C++ hoặc C. Thì mới có thể đi làm liên quan tới mấy cái việc có C/C++
Nó có hỗ trợ, chỉ khác cú pháp thôi nên trình biên dịch C++ vẫn biên dịch được C. Project C++ nào chẳng link cả tá lib viết bằng C (libcurl, libssl, libpng...)
Cái phần sử dụng lib của C bên C++ thường chỉ là những file .h khai báo hàm và struct, phần này thì C++ cũng hỗ trợ. Còn code thực thi thì khác, VD như đoạn code C mình trích trên kia đem vào trình dịch C++ sẽ không được.
Cái phần sử dụng lib của C bên C++ thường chỉ là những file .h khai báo hàm và struct, phần này thì C++ cũng hỗ trợ. Còn code thực thi thì khác, VD như đoạn code C mình trích trên kia đem vào trình dịch C++ sẽ không được.
nó hỗ trợ biên dịch nguyên source .c luôn chứ native code khác complier sao chạy được trên các platform khác nhau
22mario9x
C thì thấy gần nhất là làm Embedded, cái này tiếp xúc hằng ngày nhưng không để ý
C++ không tương thích với C là đúng rồi. Có một vài tính năng và cú pháp C có mà C++ không có.
VD: variable length array, cho phép tạo mảng trong stack với kích thước tùy theo biến (không cần phải là number). Cái đáng tiếc nhất là designated construct, cho phép tạo struct dựa vào tên member:
mà cái variable length array C++ 14 nó mới hỗ trợ, C++ 11 nó vẫn cho tạo mảng trên stack nhưng size là const
Nó có hỗ trợ, chỉ khác cú pháp thôi nên trình biên dịch C++ vẫn biên dịch được C. Project C++ nào chẳng link cả tá lib viết bằng C (libcurl, libssl, libpng...)
C++ link với C lib qua C ABI, tức là phần code lib C compile bằng C compiler và phần code C++ compile bằng C++ compiler, không liên quan tới nhau luôn.
Cái này thì không chỉ C++ mà Rust, Zig, Crystal đều cùng cơ chế.
Còn cái gọi C++ là superset của C thì là code C hồi xưa có thể được include (copy text) vào cho C++ compiler compile luôn, giờ thì chả ai làm vậy cả.
Tầm bậy nha fen. C++ đã, đang và sẽ không bao giờ có VLA. Mấy trình biên dịch rác rưởi như clang gcc nó mới add thêm tính năng ngu học đó vào.
C cũng chưa bao giờ là tập con của C++. int main() { int class = 0; } hợp lệ trong C nhưng ko hợp lệ trong C++.
android/ios toàn xài clang
VLA chỉ là 1 dạng cú pháp dựa trên array on stack, trình biên dịch hỗ trợ full C++11 thích thì nó thêm vào thôi
Doc C++14 cũng 1 đoạn giới thiệu cú pháp tạo mảng với cú pháp tương tự
C++ link với C lib qua C ABI, tức là phần code lib C compile bằng C compiler và phần code C++ compile bằng C++ compiler, không liên quan tới nhau luôn.
Cái này thì không chỉ C++ mà Rust, Zig, Crystal đều cùng cơ chế.
Còn cái gọi C++ là superset của C thì là code C hồi xưa có thể được include (copy text) vào cho C++ compiler compile luôn, giờ thì chả ai làm vậy cả.
VLA chỉ là 1 dạng cú pháp dựa trên array on stack, trình biên dịch hỗ trợ full C++11 thích thì nó thêm vào thôi
Doc C++14 cũng 1 đoạn giới thiệu cú pháp tạo mảng với cú pháp tương tự
Đưa thì đưa được nhưng đó không phải là chuẩn. C++ phức tạp hơn C nên đưa một tính năng của C vào phải tương thích với những cái có sẵn, hội nghị vài trăm người họ đã nghĩ chán chê rồi mới quyết định không đưa vào.
https://godbolt.org/z/3oa5xa Cho thêm option
pedantic-errors để disable hết extension của g++, clang++ thì ra như này:
error: variable length arrays are a C99 feature [-Werror,-Wvla-extension]
Hệ điều hành MacOS của apple, iOS, android, windows, đều từ ngôn ngữ C mà ra.
còn giờ học C/C++ để đi làm phải học tới nóc. Tự build được game engine, tự viết được hệ điều hành cho riêng mình,.... a-z bằng C++ hoặc C. Thì mới có thể đi làm liên quan tới mấy cái việc có C/C++
Làm gì đao to búa lớn vậy fen, .NET web vẫn tuyển rầm rầm kìa
. Mặc dù là C#. Nhưng vẫn na ná nhau thôi mà
.
Đưa thì đưa được nhưng đó không phải là chuẩn. C++ phức tạp hơn C nên đưa một tính năng của C vào phải tương thích với những cái có sẵn, hội nghị vài trăm người họ đã nghĩ chán chê rồi mới quyết định không đưa vào.
https://godbolt.org/z/3oa5xa Cho thêm option
pedantic-errors để disable hết extension của g++, clang++ thì ra như này:
Thực tế thì clang với gcc nó đã đưa vào, bởi vì trình biên dịch C & C++ của nó chỉ là 1, cho nên khi implement cho C thì C++ nó cũng có luôn
Thím thử quăng mấy cái libcurl, libpng, libjpeg vào visual studio C/C++ xem nó có compile được ko
Thì đúng là phần lớn (nếu không muốn nói là hầu hết) các trường hợp là chương trình C sẽ tương thích trong C++. Cái này là mục tiêu "độ tương thích giữa hai ngôn ngữ" mà cụ Bjarne đề ra mà. Tuy nhiên phần lớn không phải là tất cả. VD những từ khóa của C++ hoàn toàn có thể được dùng để làm tên biến trong C.
C:
int main() {
int new = 0;
}
Chính cụ Bjarne cũng nói rằng C không phải tập con của C++ hay C++ không phải là tập lớn của C - thím tìm
FAQ của cụ thì thấy.
Thực tế thì clang với gcc nó đã đưa vào, bởi vì trình biên dịch C & C++ của nó chỉ là 1, cho nên khi implement cho C thì C++ nó cũng có luôn
cái này bạn nói không đúng lắm. mấy thằng compiler one pass khác không nói, nhưng gcc với clang nó là multi phrases compiler. c/c++ compiler nó không dịch trực tiếp ra ngôn ngữ máy mà dịch ra một ngôn ngữ trung gian (intermediate language), có một cái backend compiler khác nó dịch từ cái IL này sang ngôn ngữ máy, aka chỉ là dùng chung backend.
nói nó là một thì khác nào bảo swift, rust, crystal đều là một ngôn ngữ, vì nó đều dùng backend là llvm?
// nhân tiện thì g++ mới là frontend compiler của c++, gcc thì ngoài là c compiler ra thì nó còn là tên gọi chung cho cả cái toolchain, rất dễ gây nhầm lẫn :s
cái này bạn nói không đúng lắm. mấy thằng compiler one pass khác không nói, nhưng gcc với clang nó là multi phrases compiler. c/c++ compiler nó không dịch trực tiếp ra ngôn ngữ máy mà dịch ra một ngôn ngữ trung gian (intermediate language), có một cái backend compiler khác nó dịch từ cái IL này sang ngôn ngữ máy, aka chỉ là dùng chung backend.
nói nó là một thì khác nào bảo swift, rust, crystal đều là một ngôn ngữ, vì nó đều dùng backend là llvm?
// nhân tiện thì g++ mới là frontend compiler của c++, gcc thì ngoài là c compiler ra thì nó còn là tên gọi chung cho cả cái toolchain, rất dễ gây nhầm lẫn :s
Không liên quan tới IL (người ta thường gọi là IR - intermediate representation) luôn anh, vì cơ chế link nó ở mức độ binary (ABI).
Do đó, có thể dùng clang build 1 project C++ và link (static hoặc dynamic) tới 1 cái lib C được compile bằng GCC luôn, đây là cách được dùng hiện tại, và nó thể hiện sự phân tách độc lập giữa 2 ngôn ngữ C và C++, các ngôn ngữ interop với C và dựa trên C ABI cũng dùng cơ chế y chang (rust, swift, crystal).
Còn ngày xưa thuở C còn chưa có standard, thì C++ là 1 fork của C => đa số code C có thể được coi là code C++ thì người ta dùng cách là include source code C vào file source code C++, để cho compiler C++ compile cái code đó như thể nó là C++ luôn.
Giờ mà force c++ compiler compile mấy cái project C là compiler nó báo lỗi ngập mặt ngay
.
C chẳng làm được gì cả. Giáo dục của mình đã lạc hậu so với các nước khác rồi. C nên là môn học bị loại bỏ khỏi chương trình đào tạo.
Tôi đang đọc clg đây, embedded h chơi tất C nhé, ko chơi C thì chỉ có asm, mà nhúng thì có ở khắp nơi, chẳng qua đa số các ông làm web, app nên ko biết thôi
hawkowl
Thím cũng bên Embedded ah, e cũng nghe mấy thầy nói là ES thì C vẫn rất qtrong
Dùng mỗi C hoặc Assembly chứ dùng được cái gì khác đâu.
))
harryhuy1ver2
Cứ bảo lạc hậu nhưng em thấy C tạo cho mình tư duy lập trình ổn nhất
code C/C++ giờ dành cho dev server và AI, mình thấy bên mảng AI họ bảo python không nhanh bằng C++
Giờ các thím bảo start bằng ngôn ngữ nào mà làm cơ bản vững được để sau này chuyển qua nhiều ngôn ngữ khác ez?
Cứ bảo lạc hậu nhưng em thấy C tạo cho mình tư duy lập trình ổn nhất
code C/C++ giờ dành cho dev server và AI, mình thấy bên mảng AI họ bảo python không nhanh bằng C++
Giờ các thím bảo start bằng ngôn ngữ nào mà làm cơ bản vững được để sau này chuyển qua nhiều ngôn ngữ khác ez?
python lúc research thôi, xong rồi build ra sản phẩm toàn c với c++
cái này bạn nói không đúng lắm. mấy thằng compiler one pass khác không nói, nhưng gcc với clang nó là multi phrases compiler. c/c++ compiler nó không dịch trực tiếp ra ngôn ngữ máy mà dịch ra một ngôn ngữ trung gian (intermediate language), có một cái backend compiler khác nó dịch từ cái IL này sang ngôn ngữ máy, aka chỉ là dùng chung backend.
nói nó là một thì khác nào bảo swift, rust, crystal đều là một ngôn ngữ, vì nó đều dùng backend là llvm?
// nhân tiện thì g++ mới là frontend compiler của c++, gcc thì ngoài là c compiler ra thì nó còn là tên gọi chung cho cả cái toolchain, rất dễ gây nhầm lẫn :s
Viết phần mềm Complier dễ không nhỉ? Nghe có vẻ thú vị.
Nó khó ở cái gì vậy bạn? Mình thấy học nó bình thường mà nhỉ? (mình học bên BK, không phải chuyên ngành IT, C là môn bắt buộc cho toàn trường)!
Mình chưa lấy môn này, chỉ mới tham khảo ý kiến các sinh viên khóa trước. Môn này ở trường mình chỉ có 1 giáo viên dạy thôi mà giáo viên này khó, khối lượng project, assignment giao rất nhiều, nên nặng về workload, chứ không nặng về kiến thức.
Tham khảo trên mấy group về data engineering thì thấy là cũng ít ứng dụng về C và C++ trong công việc liên quan đến data nên cũng không mấy hứng thú. Đang tính bàn với advisor đổi option chuyên ngành xem có thoát được nó không.
Mình chưa lấy môn này, chỉ mới tham khảo ý kiến các sinh viên khóa trước. Môn này ở trường mình chỉ có 1 giáo viên dạy thôi mà giáo viên này khó, khối lượng project, assignment giao rất nhiều, nên nặng về workload, chứ không nặng về kiến thức.
Tham khảo trên mấy group về data engineering thì thấy là cũng ít ứng dụng về C và C++ trong công việc liên quan đến data nên cũng không mấy hứng thú. Đang tính bàn với advisor đổi option chuyên ngành xem có thoát được nó không.
Data thì mình thấy mấy bạn hướng dẫn là học C để hiểu lập trình, rồi học Python luôn mà.
Viết phần mềm Complier dễ không nhỉ? Nghe có vẻ thú vị.
Mình ko nói khó hay dễ vì có người làm rồi, nhưng đây là công việc dành cho team học thuật làm master, phd vẫn đang nghiên cứu tối ưu các complier, còn team kiếm tiền thì đâu ai rảnh.
Mình ko nói khó hay dễ vì có người làm rồi, nhưng đây là công việc dành cho team học thuật làm master, phd vẫn đang nghiên cứu tối ưu các complier, còn team kiếm tiền thì đâu ai rảnh.
Mình cứ nghĩ mấy cái Complier thì thay vì viết bằng chữ, thì gõ thành mã 0011 các thứ thôi mà.
Mình cứ nghĩ mấy cái Complier thì thay vì viết bằng chữ, thì gõ thành mã 0011 các thứ thôi mà.
đơn giản thế thì nói làm gì
ví dụ vậy nhé, có 1 cái loop chạy 10 lần để ra kết quả gán 1 biến, thì compiler có thể tự chạy cái loop đó ra kết quả rồi gắn vào cái biến luôn, code sinh ra sẽ ko có vòng loop đó mà chỉ có dòng kết quả
đơn giản thế thì nói làm gì
ví dụ vậy nhé, có 1 cái loop chạy 10 lần để ra kết quả gán 1 biến, thì compiler có thể tự chạy cái loop đó ra kết quả rồi gắn vào cái biến luôn, code sinh ra sẽ ko có vòng loop đó mà chỉ có dòng kết quả
Cái này không phải là do bọn làm chip nó kiểm soát và đẻ ra tệp lệnh mình phải tuân theo rồi à bạn? (nên đâu phải do PHD hay mastter gì đó làm)!
rola_takizawa
Hồi xưa đi học cấp 3 code Turbo Pascal trên máy 486 cpu 60mhz. Tập tẹo code game kiểu Mario bằng thư viện graph. Xong thấy chạy chậm vl, đéo như game trên máy của mình chơi. Bực mình mua cuốn Turbo C về code nhưng vẫn chậm y chang
Về sau mới biết là mọi thứ thao tác trên array, viết 1 hàm bằng Assembly để bắn mảng ra màn hình thì mới nhanh được. Do thư viện graph của hãng Borland viết như lol
Hồi xưa đi học cấp 3 code Turbo Pascal trên máy 486 cpu 60mhz. Tập tẹo code game kiểu Mario bằng thư viện graph. Xong thấy chạy chậm vl, đéo như game trên máy của mình chơi. Bực mình mua cuốn Turbo C về code nhưng vẫn chậm y chang
Về sau mới biết là mọi thứ thao tác trên array, viết 1 hàm bằng Assembly để bắn mảng ra màn hình thì mới nhanh được. Do thư viện graph của hãng Borland viết như lol
So thế khác gì so một thằng đa mục đích với 1 thằng chuyên dụng. Thư viện nó đẻ ra lầ để phục vụ nhiều đối tượng nhất có thể, nên tránh sao được chậm, kồng kềnh.
Bạn hiểu thêm về kernel thì là bất lợi? mình tưởng hiểu về hệ thống sẽ giúp bạn rất nhiều trong việc tối ưu chứ nhỉ?
ôm đồm nhiều quá cũng k tốt, giờ có tuổi rồi cái nào rành thì theo nó thôi
giống như mình làm chuyên về c++ để làm game, rồi học thêm java với objc để đẩy lên mobile, tối ưu mobile xong thì học c# làm game unity, rành rọt rồi giờ trend là cocos creator làm typescript làm nền web, sau rồi phải setup với làm thêm con server để xử lý backend là tìm hiểu thêm docker , nodejs, golang ... giờ thì mình mà tìm hiểu thêm về kernel chắc nổ não luôn, và cảm thấy k cần thiết trong nghiệp vụ của mình
ôm đồm nhiều quá cũng k tốt, giờ có tuổi rồi cái nào rành thì theo nó thôi
giống như mình làm chuyên về c++ để làm game, rồi học thêm java với objc để đẩy lên mobile, tối ưu mobile xong thì học c# làm game unity, rành rọt rồi giờ trend là cocos creator làm typescript làm nền web, sau rồi phải setup với làm thêm con server để xử lý backend là tìm hiểu thêm docker , nodejs, golang ... giờ thì mình mà tìm hiểu thêm về kernel chắc nổ não luôn, và cảm thấy k cần thiết trong nghiệp vụ của mình
thì cũng không nhất thiết bác ạ, thêm được gì thì thêm thôi
qwerty_array
Lập trình các hệ thống nhúng như tên lửa, máy bay, ô tô, xe máy, xe đạp cao cấp nhé, học cái này thì quá xịn
ôm đồm nhiều quá cũng k tốt, giờ có tuổi rồi cái nào rành thì theo nó thôi
giống như mình làm chuyên về c++ để làm game, rồi học thêm java với objc để đẩy lên mobile, tối ưu mobile xong thì học c# làm game unity, rành rọt rồi giờ trend là cocos creator làm typescript làm nền web, sau rồi phải setup với làm thêm con server để xử lý backend là tìm hiểu thêm docker , nodejs, golang ... giờ thì mình mà tìm hiểu thêm về kernel chắc nổ não luôn, và cảm thấy k cần thiết trong nghiệp vụ của mình
Sao thấy đâu đâu cũng làm game vậy nhỉ? Có bán được game không bạn? Thấy chỉ có mấy game nổi lên được, mà lắm người game thế.
Mà ghe bảo ngôn ngữ lập trình chỉ là công cụ, còn nó na lá nhau thôi mà?
Chắc tội mỗi cái, là tỷ lệ chọi quá cao trong kiếm việc.
nếu xác định làm kiếm nhiều tiền hơn mặt bằng chung thì làm cái gì cũng phải master chứ còn nhàng nhàng thì học php, js cũng như nhau cả thôi bạn. Bạn master thì các công ty đến tận nơi mời, như Lưu Bị mời GCL ấy
Sao thấy đâu đâu cũng làm game vậy nhỉ? Có bán được game không bạn? Thấy chỉ có mấy game nổi lên được, mà lắm người game thế.
Mà ghe bảo ngôn ngữ lập trình chỉ là công cụ, còn nó na lá nhau thôi mà?
dịch bệnh này dân tình ở nhà nhiều nên revenue ngành game nói chung tăng trưởng rất tốt, như con bé 330t ở hn cũng là làm game đó thôi (tất nhiên là đằng sau nó là nguyên team bự), hồi đầu năm 2020 lúc dịch bùng lên thì nhu cầu game tăng cao, lương tuyển dụng cũng tăng theo ( toàn 1k5-3k net làm cocos creator với unity và mấy game bài)
còn game phát hành thị trường nước ngoài là chính thui, bán thì cũng tạm, ngon ghẻ hơn lúc k dịch vì dân tình họ ở nhà đông với chính phủ phát tiền xài nên rủng rỉnh họ tất tay vô game hơn
nói chung đợt này mấy nhánh khác của it thì mình k biết chứ nhánh game mình làm thấy ăn nên làm ra hơn mọi năm, năm nay vẫn dính dịch thì dân làm game vẫn tiếp tục bội thu
//mình đang cố hoành thành con game bài, game bắn cá và game sex trước tháng 6 để phát hành bộ suit game bài luôn (Đã xong server với client) thì 330t như e gái ở hn cũng k xa vời
dịch bệnh này dân tình ở nhà nhiều nên revenue ngành game nói chung tăng trưởng rất tốt, như con bé 330t ở hn cũng là làm game đó thôi (tất nhiên là đằng sau nó là nguyên team bự), hồi đầu năm 2020 lúc dịch bùng lên thì nhu cầu game tăng cao, lương tuyển dụng cũng tăng theo ( toàn 1k5-3k net làm cocos creator với unity và mấy game bài)
còn game phát hành thị trường nước ngoài là chính thui, bán thì cũng tạm, ngon ghẻ hơn lúc k dịch vì dân tình họ ở nhà đông với chính phủ phát tiền xài nên rủng rỉnh họ tất tay vô game hơn
nói chung đợt này mấy nhánh khác của it thì mình k biết chứ nhánh game mình làm thấy ăn nên làm ra hơn mọi năm, năm nay vẫn dính dịch thì dân làm game vẫn tiếp tục bội thu
//mình đang cố hoành thành con game bài, game bắn cá và game sex trước tháng 6 để phát hành bộ suit game bài luôn (Đã xong server với client) thì 330t như e gái ở hn cũng k xa vời
Cái phần sử dụng lib của C bên C++ thường chỉ là những file .h khai báo hàm và struct, phần này thì C++ cũng hỗ trợ. Còn code thực thi thì khác, VD như đoạn code C mình trích trên kia đem vào trình dịch C++ sẽ không được.
Sao không đc nhỉ có thể dùng extern C mà. Sorry lâu quá ko đụng có thể nhớ nhầm. Thực ra C là dễ nhất rồi, code C dễ đọc hơn cả C#, Java, khó là do nó quá cơ bản, ko có hàm sẵn nên mọi thứ phải tự viết. Nếu bây giờ dùng python mà viết từ a-z thì cũng khó ngang với C thôi. Giống như Asembly chúng ta cứ nghĩ khó nhưng thực chất chỉ có khoảng vài chục lệnh. Còn nói về độ phức tạp thì c++ mới khó, thực ra tất cả code chúng ta học hay viết c++ hằng ngày chỉ là bề nổi, expert c++ phải nhắc đến meta programing, preprocessor. Ai muốn biết cảnh giới cao nhất của lập trình thì cứ mở Visual Studio lên rồi F12 vào cái std::vector ấy.
Sao không đc nhỉ có thể dùng extern C mà. Sorry lâu quá ko đụng có thể nhớ nhầm. Thực ra C là dễ nhất rồi, code C dễ đọc hơn cả C#, Java, khó là do nó quá cơ bản, ko có hàm sẵn nên mọi thứ phải tự viết. Nếu bây giờ dùng python mà viết từ a-z thì cũng khó ngang với C thôi. Giống như Asembly chúng ta cứ nghĩ khó nhưng thực chất chỉ có khoảng vài chục lệnh. Còn nói về độ phức tạp thì c++ mới khó, thực ra tất cả code chúng ta học hay viết c++ hằng ngày chỉ là bề nổi, expert c++ phải nhắc đến meta programing, preprocessor. Ai muốn biết cảnh giới cao nhất của lập trình thì cứ mở Visual Studio lên rồi F12 vào cái std::vector ấy.
đọc lib java là thấy ghê r. chơi cả lib c++ thì quỳ lạy mất
Mình từng làm low level đây, C hay Assembly thì kiểu nào cũng chiến được nhưng nhìn vào đống template của C++ thực sự thấy choáng. Kiểu cái type biến nó ko tồn tại ngay lúc viết code rồi thì không biết mấy ông viết code tưởng tượng logic nó đi kiểu gì nữa.
Mình từng làm low level đây, C hay Assembly thì kiểu nào cũng chiến được nhưng nhìn vào đống template của C++ thực sự thấy choáng. Kiểu cái type biến nó ko tồn tại ngay lúc viết code rồi thì không biết mấy ông viết code tưởng tượng logic nó đi kiểu gì nữa.
e vẫn k hiểu nỗi C++ template. thui quay về java và .net
Sao không đc nhỉ có thể dùng extern C mà. Sorry lâu quá ko đụng có thể nhớ nhầm. Thực ra C là dễ nhất rồi, code C dễ đọc hơn cả C#, Java, khó là do nó quá cơ bản, ko có hàm sẵn nên mọi thứ phải tự viết. Nếu bây giờ dùng python mà viết từ a-z thì cũng khó ngang với C thôi. Giống như Asembly chúng ta cứ nghĩ khó nhưng thực chất chỉ có khoảng vài chục lệnh. Còn nói về độ phức tạp thì c++ mới khó, thực ra tất cả code chúng ta học hay viết c++ hằng ngày chỉ là bề nổi, expert c++ phải nhắc đến meta programing, preprocessor. Ai muốn biết cảnh giới cao nhất của lập trình thì cứ mở Visual Studio lên rồi F12 vào cái std::vector ấy.
Extern C chỉ là tắt name mangling của C++, chuyển sang sử dụng của C. Còn C++ còn có nhiều thứ khác không tương thích với C, không chỉ mỗi name mangling.
Mà template trong STL cũng bình thường, bác phải xem implement của boost mới ghê. Một số thứ khá hay để tham khảo:
Boost.Proto: impelemt EDSL trong C++,
Boost.Spirit: viết parser bằng syntax C++ không cần syntax ngoài như lex yacc,
Boost.Phoenix: đưa một số syntax của functional programming vào C++
Mình từng làm low level đây, C hay Assembly thì kiểu nào cũng chiến được nhưng nhìn vào đống template của C++ thực sự thấy choáng. Kiểu cái type biến nó ko tồn tại ngay lúc viết code rồi thì không biết mấy ông viết code tưởng tượng logic nó đi kiểu gì nữa.
Bản chất C++ template metaprogramming là một ngôn ngữ Functional, đối tượng của nó là type và value, chạy trên compile-time chứ không phải runtime. Hiểu kiểu này thì sẽ dễ tiếp cận hơn.
Extern C chỉ là tắt name mangling của C++, chuyển sang sử dụng của C. Còn C++ còn có nhiều thứ khác không tương thích với C, không chỉ mỗi name mangling.
Mà template trong STL cũng bình thường, bác phải xem implement của boost mới ghê. Một số thứ khá hay để tham khảo:
Boost.Proto: impelemt EDSL trong C++,
Boost.Spirit: viết parser bằng syntax C++ không cần syntax ngoài như lex yacc,
Boost.Phoenix: đưa một số syntax của functional programming vào C++
Bản chất C++ template metaprogramming là một ngôn ngữ Functional, đối tượng của nó là type và value, chạy trên compile-time chứ không phải runtime. Hiểu kiểu này thì sẽ dễ tiếp cận hơn.
Nói chung mình người dùng cuối thì thỉnh thoảng có đụng c++ thì gọi lib ra dùng chứ chẳng đủ trình mà vào đọc hiểu code thư viện của nó. Mà thực sự nhu cầu dùng đến metaprogramming cũng hiếm, nhưng chính cái feature này làm cho C++ vô địch ở khoản hiệu năng vì đưa được tính toán tĩnh xuống compile-time, chắc dev c++ thì hầu hết chỉ dừng lại ở mức thành thạo std với oop (oop/RITI trong C++ cũng khó nốt), lâu lâu có lười overload thì mới dùng normal template chứ cũng hiếm khi đụng. Bây giờ thì chuyển qua dùng python, C# cho nhẹ đầu.
Hàm in trong Java, dùng varidict 5 nốt nhạc:
Java:
public static void TestPrintJava(Object ... args) {
for (Object s : args)
System.out.print(s);
}
Hàm in trong C++, cái && là cái gì vậy? lại phải học thêm rvalue, move method,... thôi lạy.
Expert C++ cứ phải sờ đến: compile time evaluation, move semantic, template programming, memory model. Chưa kể cơ số thứ bổ sung từ C++17.
Nói chung C++ có nhiều kỹ thuật khó tiếp cận cho đa số anh em quen lập trình ngôn ngữ khác. Các thư viện low level, game các tác vụ cần high performance, low latency mới hay dùng C++. Phần lớn engineer Việt Nam thường làm ở cấp cao hơn và ít phải giải quyết các bài toán hiệu năng cao ở cấp nền tảng nên ít làm C++.
Một số project C++ cho anh em “tham khảo”, để hiểu “C++ làm gì”: Chromium(base của các top browsers hiện nay), LLVM, Tensor flow, Caffe, Mongodb.
Expert C++ cứ phải sờ đến: compile time evaluation, move semantic, template programming, memory model. Chưa kể cơ số thứ bổ sung từ C++17.
Nói chung C++ có nhiều kỹ thuật khó tiếp cận cho đa số anh em quen lập trình ngôn ngữ khác. Các thư viện low level, game các tác vụ cần high performance, low latency mới hay dùng C++. Phần lớn engineer Việt Nam thường làm ở cấp cao hơn và ít phải giải quyết các bài toán hiệu năng cao ở cấp nền tảng nên ít làm C++.
Một số project C++ cho anh em “tham khảo”, để hiểu “C++ làm gì”: Chromium(base của các top browsers hiện nay), LLVM, Tensor flow, Caffe, Mongodb.
Còn boost... thì “cũ” quá rồi
mình muốn học các thứ mới từ sau C++ 98 thì làm sao
Nói chung mình người dùng cuối thì thỉnh thoảng có đụng c++ thì gọi lib ra dùng chứ chẳng đủ trình mà vào đọc hiểu code thư viện của nó. Mà thực sự nhu cầu dùng đến metaprogramming cũng hiếm, nhưng chính cái feature này làm cho C++ vô địch ở khoản hiệu năng vì đưa được tính toán tĩnh xuống compile-time, chắc dev c++ thì hầu hết chỉ dừng lại ở mức thành thạo std với oop (oop/RITI trong C++ cũng khó nốt), lâu lâu có lười overload thì mới dùng normal template chứ cũng hiếm khi đụng. Bây giờ thì chuyển qua dùng python, C# cho nhẹ đầu.
Hàm in trong Java, dùng varidict 5 nốt nhạc:
Java:
public static void TestPrintJava(Object ... args) {
for (Object s : args)
System.out.print(s);
}
Hàm in trong C++, cái && là cái gì vậy? lại phải học thêm rvalue, move method,... thôi lạy.
nhưng trong Java cái List<Integer> lại chậm hơn IntList tự viết rất nhiều, còn trong C++ IntVec hay vector<int> thì đều như nhau cả. Và đương nhiên cái testprintjava kia print 1 đống int sẽ chậm hơn vì int nó phải chuyển thành Integer. Java "template" hình như là xài thông qua Object aka "void* + vtable" hết thì phải, chậm bỏ mẹ. À chưa kể cái testprintjava in ko có dấu phẩy ngăn cách, nếu có chắc code bên trong thêm 2 3 dòng nữa
cái && tuy advance nhưng có thể hiểu đơn giản là để tránh copy thì xài &, nhưng & đòi phải có biến tồn tại, như a, b, n, ..., nhưng literals như 1, 2, 5. ... thì ko phải là biến, đm chả lẽ viết cái hàm tên khác cho literals, à ko cần xài && là xong. Còn Java nó lịt pẹ literals cứ convert thành Object nằm trên HEAP hết là xong, ez code đơn giản chạy chậm à ờ kệ con mẹ mày
nhưng trong Java cái List<Integer> lại chậm hơn IntList tự viết rất nhiều, còn trong C++ IntVec hay vector<int> thì đều như nhau cả. Và đương nhiên cái testprintjava kia print 1 đống int sẽ chậm hơn vì int nó phải chuyển thành Integer. Java "template" hình như là xài thông qua Object aka "void* + vtable" hết thì phải, chậm bỏ mẹ. À chưa kể cái testprintjava in ko có dấu phẩy ngăn cách, nếu có chắc code bên trong thêm 2 3 dòng nữa
cái && tuy advance nhưng có thể hiểu đơn giản là để tránh copy thì xài &, nhưng & đòi phải có biến tồn tại, như a, b, n, ..., nhưng literals như 1, 2, 5. ... thì ko phải là biến, đm chả lẽ viết cái hàm tên khác cho literals, à ko cần xài && là xong. Còn Java nó lịt pẹ literals cứ convert thành Object nằm trên HEAP hết là xong, ez code đơn giản chạy chậm à ờ kệ con mẹ mày
nhưng trong Java cái List<Integer> lại chậm hơn IntList tự viết rất nhiều, còn trong C++ IntVec hay vector<int> thì đều như nhau cả. Và đương nhiên cái testprintjava kia print 1 đống int sẽ chậm hơn vì int nó phải chuyển thành Integer. Java "template" hình như là xài thông qua Object aka "void* + vtable" hết thì phải, chậm bỏ mẹ. À chưa kể cái testprintjava in ko có dấu phẩy ngăn cách, nếu có chắc code bên trong thêm 2 3 dòng nữa
cái && tuy advance nhưng có thể hiểu đơn giản là để tránh copy thì xài &, nhưng & đòi phải có biến tồn tại, như a, b, n, ..., nhưng literals như 1, 2, 5. ... thì ko phải là biến, đm chả lẽ viết cái hàm tên khác cho literals, à ko cần xài && là xong. Còn Java nó lịt pẹ literals cứ convert thành Object nằm trên HEAP hết là xong, ez code đơn giản chạy chậm à ờ kệ con mẹ mày
Chậm đã có Intel/AMD lo nhé, chứ mình không rảnh bỏ một ngày để fix lỗi cho 1 cái hàm template đc. Thực sự với tốc độ máy tính hiện hay thì mấy cái improve nhỏ lẻ kiểu từ const type& sang && nó ko đáng là bao. Chưa kể làm project build lâu bỏ bà
Kân team
à Java varargs nó chôm từ C nên ko phải là template, pass int... cũng được vậy có lẽ là nhanh
nhưng template nó vẫn là rác
compile chậm nhưng run nhanh thì khách họ khen, compile nhanh mà run chậm thì khách chửi
AMD ra threadripper để làm gì, máy dev 64 core 128 thread để làm gì
Optimize đúng chỗ dù là nhỏ nhưng vẫn là cực kì cần thiết. Ví dụ optimize code chạy trong game loop 50fps thành 60fps thì rất cần thiết, còn optimize phần load game từ 60 giây còn 50 giây thì thằng nào care
Java nó đơn giản nó dùng chỗ này, C++ nó tối ưu nó dùng chỗ kia, ko thể chê thằng này code phức tạp mà phải hiểu vì sao nó phức tạp
ngược lại code đơn giản nhưng để đơn giản thế có đánh đổi cái gì ko, vừa đẹp chai vừa học giỏi vừa nhà giàu chắc phải có cái gì ko ổn chứ
à Java varargs nó chôm từ C nên ko phải là template, pass int... cũng được vậy có lẽ là nhanh
nhưng template nó vẫn là rác
compile chậm nhưng run nhanh thì khách họ khen, compile nhanh mà run chậm thì khách chửi
AMD ra threadripper để làm gì, máy dev 64 core 128 thread để làm gì
Optimize đúng chỗ dù là nhỏ nhưng vẫn là cực kì cần thiết. Ví dụ optimize code chạy trong game loop 50fps thành 60fps thì rất cần thiết, còn optimize phần load game từ 60 giây còn 50 giây thì thằng nào care
Java nó đơn giản nó dùng chỗ này, C++ nó tối ưu nó dùng chỗ kia, ko thể chê thằng này code phức tạp mà phải hiểu vì sao nó phức tạp
ngược lại code đơn giản nhưng để đơn giản thế có đánh đổi cái gì ko, vừa đẹp chai vừa học giỏi vừa nhà giàu chắc phải có cái gì ko ổn chứ
Tùy nhu cầu thôi chứ sao phải bỏ công tìm hiểu nó nhỉ, xu hướng lập trình của tương lai là kéo thả mà chứ đâu phải thao tác đến từng bit đâu. Tất nhiên nếu hiểu sâu thì tốt nhưng mà hiểu kiểu nửa vời rồi tự implement bậy bạ còn hại hơn so với tin tưởng vào 1 cái lib đã được test. VD khi học toán cũng chỉ áp dụng công thức vào tính chứ bảo ngồi hiểu vì sao nó ra được công thức đó thì...
Tùy nhu cầu thôi chứ sao phải bỏ công tìm hiểu nó nhỉ, xu hướng lập trình của tương lai là kéo thả mà chứ đâu phải thao tác đến từng bit đâu. Tất nhiên nếu hiểu sâu thì tốt nhưng mà hiểu kiểu nửa vời rồi tự implement bậy bạ còn hại hơn so với tin tưởng vào 1 cái lib đã được test. VD khi học toán cũng chỉ áp dụng công thức vào tính chứ bảo ngồi hiểu vì sao nó ra được công thức đó thì...
học toán là để hiểu công thức chứ anh
giải bài toán như thế nào hay còn gọi là làm sao ra được công thức ấy. Để áp dụng công thức thì gọi là toán ứng dụng applied math gì đấy, mà toán ứng dụng cũng phải hiểu công thức, chỉ áp dụng công thức có lẽ gọi là engineer chứ ko phải math
tương tự với học lập trình là phải hiểu, còn học sử dụng framework thì đọc doc, tut rồi phang thoy thời gian đâu mà hiểu hết kiến trúc bên trong nó vi diệu thế nào
như mấy framework js chắc vài tháng hiểu bên trong nó thế nào chắc nó ra fraemwok khác ròi
giải bài toán như thế nào hay còn gọi là làm sao ra được công thức ấy. Để áp dụng công thức thì gọi là toán ứng dụng applied math gì đấy, mà toán ứng dụng cũng phải hiểu công thức, chỉ áp dụng công thức có lẽ gọi là engineer chứ ko phải math
tương tự với học lập trình là phải hiểu, còn học sử dụng framework thì đọc doc, tut rồi phang thoy thời gian đâu mà hiểu hết kiến trúc bên trong nó vi diệu thế nào
như mấy framework js chắc vài tháng hiểu bên trong nó thế nào chắc nó ra fraemwok khác ròi
a học ở đâu mà nói v?
Kân team
học thêm toán ở xì gòn chục năm chước
à lên đh cũng thế, toán lý thuyết là để hiểu bản chất chứ có đi áp dụng vào cái gì bao giờ? Có khi đã áp dụng nó rồi mà tôi ko hay biết.
trên youtube cũng đầy video toán giải thích ra. Chả thấy thằng nào làm video toán xài công thức bao giờ?
à nhớ hồi học đh cũng học đại 1 lớp numerical analysis gì đấy cho dzui, áp dụng công thức tính toán gì mà cho 1 mảng x,y tìm polynomial bậc n gì đấy fit với cái mảng ấy nhứt. Ông thầy cũng giải thích công thức toán đầy đủ mà tôi quên rồi
còn lại áp dụng công thức vào code thoy. Cái đấy tôi thấy là gần như là thiên về engineer hpc gì rồi chứ ko còn là toán nữa.
à còn lớp crypto gì nữa, toàn học lý thuyết để hiểu ko chứ đâu, chứ đem công thức đi áp dụng thì chỉ có hộc máu với crypto đủ thứ hack
Như cái RSA công thức rất dễ, nhưng học toán là học cách chứng minh công thức RSA đó. Còn đem công thức RSA đó tự đi viết code thì chỉ có chết tới chết, phải xài lib thoy.
tóm lại tôi nói là
học toán chứ ko phải xài/dùng/sử dụng/áp dụng toán. Học thì phải hiểu, còn xài thì ko cần hiểu. Cũng như học cách hash map hoạt động như thế nào thì phải hiểu kiến trúc bên trong nó như thế nào, còn xài hash map thì ko cần quan tâm lắm, trừ phi nó chậm thì mới phải tìm hiểu tại sao để xài thằng khác.
à lên đh cũng thế, toán lý thuyết là để hiểu bản chất chứ có đi áp dụng vào cái gì bao giờ? Có khi đã áp dụng nó rồi mà tôi ko hay biết.
trên youtube cũng đầy video toán giải thích ra. Chả thấy thằng nào làm video toán xài công thức bao giờ?
à nhớ hồi học đh cũng học đại 1 lớp numerical analysis gì đấy cho dzui, áp dụng công thức tính toán gì mà cho 1 mảng x,y tìm polynomial bậc n gì đấy fit với cái mảng ấy nhứt. Ông thầy cũng giải thích công thức toán đầy đủ mà tôi quên rồi
còn lại áp dụng công thức vào code thoy. Cái đấy tôi thấy là gần như là thiên về engineer hpc gì rồi chứ ko còn là toán nữa.
à còn lớp crypto gì nữa, toàn học lý thuyết để hiểu ko chứ đâu, chứ đem công thức đi áp dụng thì chỉ có hộc máu với crypto đủ thứ hack
Như cái RSA công thức rất dễ, nhưng học toán là học cách chứng minh công thức RSA đó. Còn đem công thức RSA đó tự đi viết code thì chỉ có chết tới chết, phải xài lib thoy.
tóm lại tôi nói là
học toán chứ ko phải xài/dùng/sử dụng/áp dụng toán. Học thì phải hiểu, còn xài thì ko cần hiểu.
đương nhiên là thầy xịn còn thầy làng nhàng thì ko biết
lạ nhỉ học mà ko hiểu thì sao gọi là học
Chắc gọi là học thuộc lòng như sinh học lịch sử đấy à? Học toán khác với học sử chứ??
ồ hay là do toán giờ thi trắc nghiệm rồi nên ko còn ai dạy cách chứng minh để hiểu nữa mà chỉ xài công thức và mẹo để giải nhanh? Thặc đao lòng học để thi chứ ko phải học để hiểu
C chẳng làm được gì cả. Giáo dục của mình đã lạc hậu so với các nước khác rồi. C nên là môn học bị loại bỏ khỏi chương trình đào tạo.
Python mà đội cấp 3 học đều dùng các thư viện của C/C++ ấy ông. Ông nói kiểu ếch ngồi đáy giếng vcho. Những thằng lớn bây giờ đều đi lên từ lõi C/C++ cả đấy ở đấy mà chả làm được gì.
C chẳng làm được gì cả. Giáo dục của mình đã lạc hậu so với các nước khác rồi. C nên là môn học bị loại bỏ khỏi chương trình đào tạo.
thanhdz167
Riêng C cùng với C++ (bản chất C++ nó là mở rộng của C mà thôi, C++ nó có nghĩa là "C và các lớp", bổ sung thêm định nghĩa Lập trình hướng đối tượng - OOP). Còn nó làm được gì thì phải nói là quá nhiều, nó được dùng làm hệ điều hành này (VD: Linux), trình duyệt (VD: Chrome), search engine (VD: Google), phần mềm, các tool hack, làm engine game (VD: Unreal Engine, Unity 2D, Unity 3D,...) Thậm chí, ngôn ngữ này cũng được dùng làm ngôn ngữ lập trình cho cuộc thi Code Battle được tổ chức cho các học sinh sinh viên Đại học nữa. Ngoài ra còn có quá nhiều thứ mà ngôn ngữ C và C++ có thể làm được nữa nhé
Gửi từ Sony D6503 bằng vozFApp
31101992
Gần như tất cả các thiết bị có lập trình điều có thành phần viết bằng C. Ví dụ: tivi, điện thoại, bản quảng cáo, tủ lạnh, xe hơi, xe điện, máy tính, thiết bị y tế, nhà thông minh, thiết bị chấm công, máy POS...Nếu một ngôn ngữ nào đó có thể giải quyết được các vấn đề là performance, truy cập bộ nhớ đến từ bit, và dễ hiện thực thì mai ra có thể thay thế C