jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)


        .addGroup(jPanel2Layout.createSequentialGroup()


            .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)


                .addComponent(msg_tf, javax.swing.GroupLayout.Alignment.LEADING)


                .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 362, Short.MAX_VALUE))


            .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)


                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()


                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 21, Short.MAX_VALUE)


                    .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 72, javax.swing.GroupLayout.PREFERRED_SIZE)


                    .addContainerGap())


                .addGroup(jPanel2Layout.createSequentialGroup()


                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)


                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)


                        .addComponent(list, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)


                        .addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)


                        .addGroup(jPanel2Layout.createSequentialGroup()


                            .addGap(0, 0, Short.MAX_VALUE)


                            .addComponent(jButton3))))))


가독성 나쁜거 맞는거냐 아님 이게 좋은 코딩인거냐