Fórum Root.cz
		Ostatní => /dev/null => Téma založeno: anonym  13. 08. 2018, 10:17:19
		
			
			- 
				To je otázka, protože toto je diskuzní forum, ne blog. Nicméně je to oznamovací otázka.
 
 Byl jsem rozhořčen z toho, že musím v Javě psát samé škaredé if-else pro můj HTTP router. Dokonce jsem měl takové myšlenky, že přejdu na Kotlin, který umožňuje toto:
 
 fun cases(obj: Any) {
 when (obj) {
 1 -> println("One")
 "Hello" -> println("Greeting")
 is Long -> println("Long")
 !is String -> println("Not a string")
 else -> println("Unknown")
 }
 }
 
 Naštěstí jsem ale zůstal při smyslech a nedal se. Bloudil jsem z místa na místo a hledal odpověď na otázku života a smrti. A poté jako blesk z čistého nebe vyšlehl tento geniální nápad:
 
 public class Router {
 
 // @formatter:off
 public static boolean route(Request req, Response res) throws Exception {
 boolean found =
 
 get     ("/hello/world/",       Router::sayHello, req, res) ||
 post    ("/hello/world/",       Router::sayHello, req, res) ||
 put     ("/hello/world/{id}",   Router::sayHello, req, res) ||
 delete  ("/hello/world/{id}",   Router::sayHello, req, res) ;
 
 return found;
 }
 // @formatter:on
 }
 
 Vážení, je to tu zas. Java opět ukázala, že nepotřebuje fancy konstrukce. V podstatě tímto jsem docílil toho samého, co umí When v Kotlinovi.
- 
				?
			
- 
				?
 
 
 To nic, jen přehřátí z vedra.  ;D