Java кода
Материал из BiTel WiKi
Версия от 08:29, 28 июня 2013; Администратор (Обсуждение | вклад)
Для сверки правильности форматирования, проверки отступов и т.п. следует использовать форматер Eclipse. Текущая версия: Медиа:formater.xml
НЕ ПРАВИЛЬНО | ПРАВИЛЬНО |
Не допускаются фрагменты кода после условного оператора, в операторе switch и т.п. не заключенные к двойные скобки. | |
if( pathDepth > 0 ) pathDepth--; |
if( pathDepth > 0 ) { pathDepth--; } |
Не допускаются два и более пробелов между фрагментами кода. | |
public void auth( DBInfo dbInfo ) { UserAuth userAuthDialog = new UserAuth( this, setup ); if ( dbInfo != null) { System.out.println( dbInfo.getDbServerTitle() ); System.out.println( dbInfo.getDBServerTitle() ); userAuthDialog.setDbInfo( dbInfo ); userAuthDialog.setSelectedDB( dbInfo.getDbServerKey() ); ... |
public void auth( DBInfo dbInfo ) { UserAuth userAuthDialog = new UserAuth( this, setup ); if ( dbInfo != null) { System.out.println( dbInfo.getDbServerTitle() ); System.out.println( dbInfo.getDBServerTitle() ); userAuthDialog.setDbInfo( dbInfo ); userAuthDialog.setSelectedDB( dbInfo.getDbServerKey() ); ..... |
По возможности используйте конструкторы с параметрами, для сокращения и повышения читаемости кода, если строка не становится слишком длинной. | |
JPanel jPanel1 = new JPanel(); jPanel1.setLayout( new GridBagLayout() ); |
JPanel jPanel1 = new JPanel( new GridBagLayout() ); |
Избегайте лишних переменных, которые в дальнейшем нигде не будут использованы. | |
JScrollPane scrollPane = new JScrollPane( xmlText ); xmlPanel.add( scrollPane, ... |
xmlPanel.add( new JScrollPane( xmlText ), ... |
Избегайте функций с большим количеством аргументов, более 6. В случае необходимости передачи такого количества параметров целесообразно создание класса-структуры, с public полями. Помимо улучшения читаемости кода данный метод упрощает последующий рефакторинг. | |
public PaymentRegister loadRegister( Connection con, Date date, String title, byte[] file, StringBuilder loadLog.. ) { ... |
public class PaymentLoadData { public Date date; public String title; public byte[] file; public StringBuilder loadLog = new StringBuilder( 1000 ); public int lineCount; public int okCount; public int commentCount; public int errorCount; public BigDecimal summa = BigDecimal.ZERO; } ... public PaymentRegister loadRegister( Connection con, PaymentLoadData data ) { ... |