Programming in openhab2 that language?

if I would like to learn more about Openhab programming. I Would ikke to be able to make bindings, rules, etc. What should I learn, is there a special language to learn?

In question of rules:
It’s a domain specific language, based on xtext and xtend, and therefor it’s near to java.

In question of development:
openHAB is based on java.


Is there some sites you could learn, maybe youtube guides, to getting started programmering in OH