V poslední době (nejčastěji v souvislosti s učením se pythonu ;-)) mi v Javě chybí přetěžování operátorů (jak nádherně by se pracovalo s java.util.List
, java.util.Map
, kdybychom nemuseli psát MyBean bean = (MyBean) list.get(1);
ale jednoduše MyBean bean = list[1];
.
Taky už mě prudí
stmt.execute( "SELECT * FROM employees " + "WHERE empname = ?" );
a raději bych psal
stmt.execute( """ SELECT * FROM employees WHERE empname = ? """);
Pokud máte stejně jako já pocit, že by vám tento sytax sugar chutnal, hlasujte u Sunů v BugParádě pro verbatim string literals pro pro operator overloading.
P.S. Pokud máte pocit, že přetěžování operátorů je směšný syntax sugar, mrkněnte se třeba na Fast, Easy Database Access with Python, jaké se s tím dají dělat divy…
P.S. Pro operator overloading v Javě existuje preprocessor JFront, ale to pořád není standard. Jinak je to ale přesně způsob, jak bych si to představoval.