I am a hobby programmer and I know most of the basics in C++ and Java.
You can't make Java apps for the Zero, but you can use C/C++ and Python (and maybe some other scripting languages, I'm not sure).
Which libaries are recommended to use when I code for the Zero? SDL?
SDL is the best option for C/C++, yes. If you take a look on the links at the end of the post you'll see that a lot of effort was put to have good SDL support. You can use SDL for output (image and sound) and input (button presses) just like you'll do for any other OS.
Are there any types of engines (like the unity engine) which are compatible with the Zero and helps the programmer to handle stuff?
There's pygame if you use Python, but for C/C++ there are no frameworks. Also, I think Unity is not even open source, so you should not expect support for it on the Zero for now.
I think that Lua scripts are supported and there was once support for L?ve2D engine (on legacy dingux), so maybe in the near future it'll be supported again.
What do I need to run a programm on the Zero?
You need the toolchain (you can download it from one of the links below) to make compatible binary files and an FTP client (like Filezilla) to transfer those files to the Zero's internal or external memory. The toolchan can be configured on Windows using cygwin, but it's easier to use a linux OS.
To setup the toolchain in windows you can find some instructions here: http://boards.dingoonity.org/dingux-releases/opendingux-toolchain-for-windows-%28cygwin%29/msg51785/#msg51785
To setup the toolchain in linux you can follow the instructions in the same page with the download links.
You don't need the toolchain, just make sure your game has a 320x240 resolution and the input is correctly mapped. You'll also need the FTP client to transfer the game to the Zero's memory.
Can it handle .exe files (Never worked with Linux before :/ )?
No, .exe files are Windows binaries. In linux you don't really need extensions, but more importantly, windows binaries won't work on linux (and most of the times, any binary file will need to be recompiled to work on another OS).
You can, however, test your games on any OS that supports the same libraries and then try to make it work on the Zero recompiling the game with the new toolchain.
This are some helpfull links:http://www.gcw-zero.com/develophttp://wiki.dingoonity.org/index.php?title=OpenDingux:Developmenthttp://wiki.dingoonity.org/index.php?title=OpenDingux:FAQ
You can also look at the source code of other emulators and games (the makefiles at least), it helps you understand how the toolchain is used.