Поигрался с Infer

топ 100 блогов kouzdra02.05.2016 Есть подозрение, что тулза для джавистов по крайней мере заслуживает внимания - опробовал на трех несложных (но и не совсем простых) студенческих проектах нашла сомнительные места в 2 из трех - не то чтобы вовсе ошибки - но существенные семантические неряшливости, в серьезных проектах заслуживающие исправления.

findbugs и pmd их не замечают.

Причем одна из может быть и ошибкой реальной - я например не уверен, что там все действительно хорошо. Примера для - фрагмент где есть возможность неосвобождения ресурса:

Хотя конечно для фрагмента main можно наплевать и забыть:;
        try {
            File f = new File(args[0]);
            Scanner scn = new Scanner(f);
            
            File fo = new File(args[0] + ".out");
            PrintWriter pw = new PrintWriter(fo);
            
            while(scn.hasNextLine()) {
                String turniket = scn.nextLine();
                
                LogicExpression le = ExpressionParser.parse(turniket);
                KripkeWorld kw = KripkeBuilder.buildWithout(le);
                if(kw != null) {
                    pw.println(kw.toIntervals(TreeUtils.gatherVariables(le)));
                }
                else
                    pw.println("Формула общезначима");
            }
            
            pw.close();
        } catch(Exception e) {
            e.printStackTrace();
        }
В качестве упражнения можете попробовать найти ее путем инспекции кода и предложить правильный вариант (все естественно компилируется и работает)

Оставить комментарий

Популярные посты:
Архив записей в блогах:
После новогоднего освежающего душа экономическая статистика вновь стала скучной, как моя жизнь, похожая на досматривание нудного затянутого фильма, где ничего интересного уже не покажут, но выйти досрочно из зала мешает деликатное нежелание причинять беспокойство соседним сидельцам. ...
Блогеры наконец-то стали определять судьбы губернаторов. Это невероятный рост капитализации. Теперь все губернаторы начнут дружить с ними ещё сильнее. Или нет, теперь рынок обычных СМИ не нужен, а с учётом рождающегося закона о запрете pr для губернаторов и опасен. А рынок б ...
Основой западной идеологии всегда был посулат о технологическом совершенстве демократической формы общества. "Демократия", значит прогресс! "Демократия" - технологический прорыв! Высшая форма вознесения человечества... Екарны бабай. Но многие ли помнят сейчас технологический взлет С ...
Долго вынашивала этот пост. Наверное он не совсем сюда, но вас так много и вы все знаете, хочу к вам) Хочу выучить английский на уровне понимать что говорят. Вообще с языком у меня плохо, даётся тяжело, до беремености ходила три года на курсы. Да, теперь я неплохо понимаю теорию, могу ...
Взято из блога  некоего Дениса Мокрушина, он же twower   - бывшего военнослужащего российских оккупиационных сил в Абхазии.  Выдержки из биографии Валерия Николаевича Чухванцева, заместителя командира 393-й авиационной базы. ...