
In December 2008, Sun Microsystems (Oracle's predecessor) released the CSS / FXML based framework that it intended to be the successor to Swing, called JavaFX. Instead, they are written entirely in Java and therefore are platform-independent. Unlike AWT components, Swing components are not implemented by platform-specific code. In addition to familiar components such as buttons, check boxes and labels, Swing provides several advanced components such as tabbed panel, scroll panes, trees, tables, and lists. It has more powerful and flexible components than AWT. Swing provides a look and feel that emulates the look and feel of several platforms, and also supports a pluggable look and feel that allows applications to have a look and feel unrelated to the underlying platform. Swing was developed to provide a more sophisticated set of GUI components than the earlier Abstract Window Toolkit (AWT). It is part of Oracle's Java Foundation Classes (JFC) – an API for providing a graphical user interface (GUI) for Java programs. Note: Some components such as HTTP/2 might have more requirements.Swing is a GUI widget toolkit for Java. No additional dependencies, JDK 5 (Netty 3.x) or 6 (Netty 4.x) is enough




As a result, Netty has succeeded to find a way to achieve ease of development, performance, stability, and flexibility without a compromise. Netty has been designed carefully with the experiences earned from the implementation of a lot of protocols such as FTP, SMTP, HTTP, and various binary and text-based legacy protocols. 'Quick and easy' doesn't mean that a resulting application will suffer from a maintainability or a performance issue. It greatly simplifies and streamlines network programming such as TCP and UDP socket server. Netty is an NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients.
