Słowo framework jest obecnie znane każdemu programiście. Dzięki nim w projektach możliwe jest oddzielenie kodu źródłowego od znaczników. Technologia frameworka oferuje możliwość szybszego tworzenia projektów dzięki wbudowanym znacznikom czy komponentom. Odpowiada między innymi za warstwę prezentacji. Najważniejszym celem każdego frameworka jest zwiększenie produktywności programisty przez ograniczenie czasu, który musi być poświęcony na pisanie niepotrzebnego kodu. Obecnie większość projektów stosuje architekturę MVC (Model – Widok - Kontroler), która jest wspierana przez wszystkie najbardziej popularne frameworki.
Przykładowe frameworki to:
- JSF (ang. JavaSever Faces), strona projektu http://javaserverfaces.java.net/;
- RichFaces 4.1, współpracuje z JavaServer Faces, strona projektu http://www.jboss.org/richfaces;
- Microsoft .NET Framework 4.0;
- Zend Framework – framework dla PHP 5 rozwijany przez społeczność użytkowników przy wsparciu firmy Zend, strona projektu https://framework.zend.com/.
Dzięki jednej z powyższych technologii projekty zawierają mniej błędów, są tańsze w wykonaniu z powodu mniejszej ilości godzin pracy programisty a efekty wizualne są lepsze. Dzięki temu projekt zyskuje na wartości. Obecnie większość frameworków ma wbudowane wsparcie dla AJAX (np. RichFaces 4.1). Opisane technologie zawierają również wady. Nauka wybranej technologii zajmuje dużo czasu a wykonane projekty są trochę wolniejsze niż systemy niewykorzystujące wymienionych technologii. Jednak przy większości projektów nie ma to większego znaczenia.
Firmy zajmujące się tworzeniem frameworków udostępniają w większości swój produkt za darmo, licząc na rozpowszechnienie technologii przez programistów, dzięki tworzonym przez nich aplikacjom działającym na programach wybranej firmy. Jedną z nich jest JBoss, która wspiera w ten sposób swoje produkty.
Wybrane książki:
- Vishal Layka: Java. Projektowanie aplikacji WWW, Wydawnictwo Helion, 2015.
- Christian Bauer, Gavin King, Gary Gregory: Java Persistence. Programowanie aplikacji bazodanowych w Hibernate. Wydanie II, Wydawnictwo Helion, 2016.
- Anghel Leonard: JavaServer Faces 2.2. Mistrzowskie programowanie, Wydawnictwo Helion, 2016.
- Laura Lemay, Rafe Colburn, Jennifer Kyrnin: HTML, CSS i JavaScript dla każdego. Wydanie VII, Wydawnictwo Helion, 2016.