SOFTWARE > Linguaggi di programmazione e scripting

Static control flow analysis

(1/5) > >>

TheKaneB:
Come vi sembra questa soluzione Java? http://blog.jetbrains.com/idea/2013/10/better-control-flow-analysis-with-contract-annotations-and-intellij-idea-13/
La cosa che ho trovato utile è la presenza di warning che rompono le scatole se fai cose tipo:

--- Codice: ---getSomething().doSomeMore(); // genera un warning: Method invocation 'getSomething().doSomeMore()' may produce 'java.lang.NullPointerException
--- Termina codice ---
.

La presenza di questi warning non risolve da sola i problemi del codice, ma è utile quantomeno per attirare la mia attenzione e fixare potenziali futuri errori a runtime con appositi check.

Z80Fan:
Io sono sempre favorevole allo static analysis. In questo caso è un po' più fastidioso in quanto bisogna annotare correttamente le funzioni, ma bisognerebbe farlo lo stesso come documentazione del codice (nel javadoc per esempio), quindi non è un gran problema.

IntelliJ non è anche alla base di Android Studio? Mi son sempre ripromesso di provarlo, ma con la scusa che ancora non supporta l'NDK non mi permette di usarlo in un mio progetto corrente. Chissà quando arriverà il giorno in cui potremmo buttar via Eclipse... :(

TheKaneB:
Spero presto, ormai siamo alla Release Candidate 4 :)

qui alcune info, ci sta lavorando anche Intel a quanto pare: https://software.intel.com/en-us/videos/using-the-ndk-with-android-studio

Z80Fan:
Buone notizie. :D

cdimauro:

--- Citazione da: TheKaneB - 05 Dicembre 2014, 17:02:35 ---Come vi sembra questa soluzione Java? http://blog.jetbrains.com/idea/2013/10/better-control-flow-analysis-with-contract-annotations-and-intellij-idea-13/
La cosa che ho trovato utile è la presenza di warning che rompono le scatole se fai cose tipo:

--- Codice: ---getSomething().doSomeMore(); // genera un warning: Method invocation 'getSomething().doSomeMore()' may produce 'java.lang.NullPointerException
--- Termina codice ---
.

La presenza di questi warning non risolve da sola i problemi del codice, ma è utile quantomeno per attirare la mia attenzione e fixare potenziali futuri errori a runtime con appositi check.

--- Termina citazione ---
L'idea è interessante, e si potrebbe sfruttare anche per i linguaggi dinamici. Però non risolve tutte le problematiche relative all'utilizzo di un null pointer, o in generale al tracciamento dei risultati a partire dai valori di input (compito che, comunque, sarebbe abbastanza arduo e costoso computazionalmente).


--- Citazione da: Z80Fan - 05 Dicembre 2014, 17:18:56 ---Chissà quando arriverà il giorno in cui potremmo buttar via Eclipse... :(

--- Termina citazione ---
Devi aspettare un po'. ::)


--- Citazione da: TheKaneB - 05 Dicembre 2014, 17:35:38 ---Spero presto, ormai siamo alla Release Candidate 4 :)

qui alcune info, ci sta lavorando anche Intel a quanto pare: https://software.intel.com/en-us/videos/using-the-ndk-with-android-studio

--- Termina citazione ---
Ma questo è basato ancora su Eclipse. Z80Fan parlava di buttare Eclipse, invece. ::) ::) ::)

Navigazione

[0] Indice dei post

[#] Pagina successiva

Vai alla versione completa