kouzdra (kouzdra) wrote,
kouzdra
kouzdra

Поигрался с Infer

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

  • (no subject)

    Из под одеялки торчат пальцы

  • Автор.Тудей опять:

    "Умер и занял тело паренька, пинаемого ногами в сортире" Попаданческий жанр всё-таки что-то с чем-то

  • Про банкротство SVB познавательное:

    "Есть старая поговорка: как только ФРС давит на тормоза, кто-то обязательно вылетает через лобовое стекло. И никогда заранее не знаешь, кто именно"…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 30 comments

  • (no subject)

    Из под одеялки торчат пальцы

  • Автор.Тудей опять:

    "Умер и занял тело паренька, пинаемого ногами в сортире" Попаданческий жанр всё-таки что-то с чем-то

  • Про банкротство SVB познавательное:

    "Есть старая поговорка: как только ФРС давит на тормоза, кто-то обязательно вылетает через лобовое стекло. И никогда заранее не знаешь, кто именно"…