Xin chào mọi người ở daynhauhoc!
Ngày xưa lúc học Java Swing, thời đó làm bằng Netbeans rất khó chịu vì code do Netbeans sinh ra nó trộn cả phần code giao diện chung với code xử lý sự kiện. Nên khi làm game xếp ô số mình phải tự code GUI ra file riêng, hàm xử lý ở file riêng rất mất thời gian vì code GUI không thân thiện như hồi học lập trình web
Source code của trò chơi: https://github.com/SakaDream/TroChoiOSo
Lúc đó mình nghĩ: Sao không dùng công nghệ web để viết app desktop nhỉ?
Một khoảng thời gian sau mình đã sử dụng Visual Studio Code và thấy nó rất hay. Code Editor chạy đa nền, nhanh, nhiều extension, tuỳ biến cao. Lên Github thì thấy source code toàn Ts, Js, HTML, CSS mới lấy làm lạ. Lên trên mạng mới biết VS Code dùng framework Electron để phát triển
Ngoài VS Code. Atom, Slack, Discord, GitHub Desktop, GitKraken, Wordpress.com cũng sử dụng Electron
Mình thấy Electron có khá nhiều điểm lợi
- Code một lần, build cho nhiều nền tảng
- Tuỳ biến giao diện dễ dàng và mạnh mẽ y như code web
- Sử dụng các thư viện Js như JQuery, Boostrap,… nên bạn nào đang làm web cũng có thể nhảy qua làm app desktop được. Đặc biệt là các bạn đang học NodeJS
Nhược điểm
- Hiệu năng không bằng các loại hình app Native
- Thư viện Js không hề mạnh mẽ như thư viện Native
- Hạn chế tính năng với một vài OS