Поигрался с 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();
        }
В качестве упражнения можете попробовать найти ее путем инспекции кода и предложить правильный вариант (все естественно компилируется и работает)

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

Архив записей в блогах:
© REUTERS/Михаил Воскресенский 10.04.2011, Россия | Те участники акции оппозиции «День гнева», которые после окончания митинга намеревались пройти шествием, пользовались особой популярностью среди личного состава московской ...
Други, а вы когда сахар в кружке размешиваете, вы ложечку по часовой стрелке вращаете или против? Особенно любопытно мнение lady_chaplinn , живущей в южном полушарии. Даш, у тебя как — не поменялся ли принцип размешивания с переездом? :))))) Лично я ...
По обмену рецептами с Женей karaidel я выбрала отличное блюдо, подходящее и для ланча и для легкого, но сытного ужина! теплый салат с грибами слова автора: 2 картофелины сваренные в мундире 1 горсть мелких шампиньонов 1 огурец 2 редиски 2 ...
В канун Дня защитника Отечества в рубрике Малоизвестные фото знаменитостей небольшая подборка российских и советских знаменитостей неоткосивших от службы в рядах вооружённых сил своей страны Михаил Боярский Иосиф Кобзон Михаил Светин Андрей Краско ...
1. Снижение скорости ДЕЙСТВИТЕЛЬНО как снижает вероятность аварий, так и облегчает их последствия. 2. Как бы медленно вы ни ехали - избежать аварий ВООБЩЕ это не поможет. У меня были аварии и когда я стоял (в меня въехали), и на 20 км/ч - я въехал, и ...