• Chào bạn, hãy đăng ký hoặc đăng nhập để tham gia cùng bọn mình và sử dụng được đầy đủ chức năng của diễn đàn :).
A

Java Cần biết những kiến thức gì của java để bắt đầu học code plugin ?

in general: phần lớn là OOP và design pattern, cộng thêm một ít về standard library của Java (chủ yếu nằm hết trong java.base module). thêm phần biết đọc Javadocs của Bukkit API nữa.

- build system thì thích dùng cái j cũng được (maven, gradle, bazel hoặc quản lý thư viện chay cũng được, not recommended). Dùng Bukkit API thì chỉ cần thêm cái thư viện API vào là xong (nhớ không được shade API).
- mấy cái framework như kiểu spring boot gần như không bao giờ động vào khi làm bukkit plugin. cái này là điểm khác biệt lớn so với mấy khóa học Java ở bên ngoài.
 
in general: phần lớn là OOP và design pattern, cộng thêm một ít về standard library của Java (chủ yếu nằm hết trong java.base module). thêm phần biết đọc Javadocs của Bukkit API nữa.

- build system thì thích dùng cái j cũng được (maven, gradle, bazel hoặc quản lý thư viện chay cũng được, not recommended). Dùng Bukkit API thì chỉ cần thêm cái thư viện API vào là xong (nhớ không được shade API).
- mấy cái framework như kiểu spring boot gần như không bao giờ động vào khi làm bukkit plugin. cái này là điểm khác biệt lớn so với mấy khóa học Java ở bên ngoài.
Bác có biết ở đâu dạy về quản lý luồng trong plugins ko, e cũng quen kha khá với mấy cái design pattern và oop r, nhưng việc tối ưu hóa luồng để tăng hiệu quả thì vẫn chưa chắc lắm :v.
Với cả có nên switch qua kotlin ko hay java là đủ r, tại e thấy có nhiều dev minecraft chuyển qua dùng kotlin vs cả check lương và cơ hội việc làm kotlin cũng đang tăng mạnh
 
Bác có biết ở đâu dạy về quản lý luồng trong plugins ko, e cũng quen kha khá với mấy cái design pattern và oop r, nhưng việc tối ưu hóa luồng để tăng hiệu quả thì vẫn chưa chắc lắm :v.
Với cả có nên switch qua kotlin ko hay java là đủ r, tại e thấy có nhiều dev minecraft chuyển qua dùng kotlin vs cả check lương và cơ hội việc làm kotlin cũng đang tăng mạnh

- Luồng thì trong Bukkit API có BukkitScheduler#runTaskAsynchronously(Plugin, BukkitTask) để thằng Bukkit tự quản lý (vd như khi server đang stop thì có thể check isCancelled để chạy save), hoặc dùng mấy cái solution có sẵn trong Java (Future với ThreadPoolExecutor các kiểu). Lưu ý là khi ở trong thread khác, hầu như toàn bộ Bukkit API không thể dùng được. Mấy cái API như send message hay send block changes/particles thì vẫn có thể dùng được, nhưng mà API như set block trong world hoặc enable/disable plugin bắt buộc phải chạy trong main thread. Chạy task trong main thread thì dùng BukkitScheduler#runTask().
- Kotlin thì tùy. Bukkit API không yêu cầu mấy cái cao siêu như Mixins nên Kotlin vẫn dùng được. Còn cơ hội việc làm ntn thì cái này không nằm trong phạm vi research. Lần trước ngồi nghịch thử Jetpack Compose xong cuối cùng chả hiểu gì lol.
 
Similar content Most view Xem thêm
Back
Top Bottom