Em thấy thím hay code mấy ngôn ngữ không thịnh hành ở Việt Nam thế ợ. Mà làm toàn là những ngôn ngữ mới mẻ ( với mình, vs một số người nữa ). Em khá là ấn tượng. Trước giờ mình chỉ làm mãi 1 ngôn ngữ, 1 sản phẩm nên ko biết thế giới bên ngoài ra sao. Không rõ thím đã kinh qua những dự án gì mà được làm nhiều vậy.
Cũng đọc thấy thím dùng elixir, Crystal, Rồi Golang (không rõ làm chưa thấy thím chém một box nào đó), Nodejs ....
Rất mong được thím chia sẻ về ưu nhược điểm của các languge mà thím đã code
tôi chưa code golang, cơ mà golang thì ở vn mainstream vl ra sao lại bảo không thịnh hành nhỉ? đặc biệt là đợt trước blockchain đang trendy phải nói là tuyển rầm rộ.
elixir nếu chỉ làm webdev thì rất ngon, cơ mà làm cái gì ngoài webapp crud với realtime communication ra thì tôi thấy cũng khó có ứng dụng... cái sướng nhất tôi thấy là code elixir tôi không phải lãng phí đầu óc bao giờ, nếu bạn nào làm OOP phải cân nhắc cả ngày cái này nên là static method hay instance method, cái này nên inherit hay viết thành abstract/interface/mixin rồi include, thì sẽ thấy rất sướng vì trong elixir chỉ có module + function, tất cả function đều nhét ở trong module (ờ có file exs thì nó hơi khác, cơ mà file đó là script file không phải là library file). Nhân tiện thì nếu code elixir tử tế với pattern matching, typespec + guard clause ở khắp mọi nơi thì chắc cũng verbose ngang java, cho nên tôi mới tò mò mấy cậu kia đã dùng thử elixir chưa mà nói cứ như là verbose chỉ java mới có :-j
thằng elixir nếu đúng bài toán thì dùng cực sướng, cơ mà cần raw performance thì khá thọt, mà gần đây tôi làm cái translate engine (từ tàu sang vịt) cho nên cần tốc độ. thằng crystal cũng đíu phải là lựa chọn ban đầu của tôi (mặc dù tôi theo dõi nó từ 5 năm trước rồi), nhưng lúc đổi từ nodejs sang crystal thấy productive hẳn, ít nhất giờ cũng ra dc trang web tử tế thay vì lúc trước chỉ có cái mvp còi cọc (các bạn có thể check thử chivi.xyz xem sản phẩm :">)
cái project này tôi phải xử lý raw data cực nhiều, từ crawl html từ mấy trang nguồn truyện rồi parse ra dữ liệu, tới chỉnh sửa mớ từ điển. bởi vì dự án này là dính líu tới ngôn ngữ tự nhiên + con người cho nên exception nhiều vãi cứt, code outdate liên tục, sửa content cũng liên tục, dùng mấy thằng như java hay kể cả golang chắc tôi thắt cổ tự tử cmnr, crystal thì nhiều khi viết y như viết ruby script, đíu cần thêm type nó vẫn chạy được (vẫn type checking đầy đủ), chạy debug mode thôi performance cũng ỉa lên mặt ruby, same same nodejs, nói chung là tiện vl.
cơ mà tới giờ crystal vẫn đíu có windows support, IDE support (debugger mới xong, language server vẫn thọt), multithread vẫn coredump như cơm bữa (có thể là do WSL), nói chung risky vkl các bạn không nên dùng trừ khi là project cá nhân giống tôi