EaseCation / nukkit-2.0

PROJECT ABANDONED - SEE ANGELFISH PROJECT
13 stars 0 forks source link

DUDE. #1

Open ghost opened 6 years ago

ghost commented 6 years ago

Dude, if you want a good software, or nukkit 2.0, please DO IN C++.

NOT IN KOTLIN, C++ IS BETTER.

Snake1999 commented 6 years ago

Yet we have considered rust, cpp and so on, but finally chose kotlin for reasons follows:

  1. cpp leaks memory if used by developers who are lack of experience
  2. Rust prevents memory from leaking, but few developers in the team have learnt it
  3. Rust itself is under heavy development
  4. Compared with java, kotlin codes are simpler and shorter

In a word, this circle of developers are not strong enough. That seems tough and unbelievable, but it’s true... That’s why, so sorry am I to announce that, this project have to use kotlin to attract as many developing strengths as possible.

Snake1999 commented 6 years ago

I should have all our rfcs (docs) translated into English...

ghost commented 6 years ago

It's ok, i understand.

But seriously, in my country, C++ is studied on school. Much, much and very much people knows C++ and plugins can be developed using LUA.

Like as Cuberite, a software PC in C++, and very better and easy to use: https://github.com/cuberite/cuberite

I recommand you use C++. Kotlin it's not really easy. Java is more easy, so it's no benefit for all.

If you not like C++, but i suggest you to use C++, i recommand you start contribute to NukkitX-rewrite branch: https://github.com/NukkitX/Nukkit/tree/rewrite.

It's useless to create a new Software in Kotlin.

Snake1999 commented 6 years ago

We have further things by configurating a static server using toml. As is defined in our docs, a browser may refresh static server config from server. A server may be hosted in many paths, for example , hosted at spp://localhost/path/path. If users are redirected to this path, browser reads the toml file and define what they’ll behave. All event handlers and static world definitions are inside toml files. The toml to the spp what the html, css and JavaScript to the protocol http. In this way, plugin developers don’t need to learn nerther Java nor Kotlin to develop a new server(like developing html only for website), except that this server is really big and heavy (needs a complex grouping protocol, but they will choose their language freely, like what should do to develop a web backend). We’ve got a very very different way to build a server - that’s why I should translate docs into English...

I, for myself only, recommend cpp even rust for a new project. I’ve learnt them from my elective courses too... the whole team only have learned how to Java, it’s a far cry though.