Static Code Analysis
12 отговора
0 прегледа
Static Code Analysis
Бе някой разправяше в някаква тема напоследък за "Static Code Analysis" (преди да ни налазят мутантите). Интересува ме спeциално за Java.
Аз също съм правил такъв ризърч, даже с няколко различни тула, ама беше преди 5-6 години. Сигурно са се развили нещата от тогава до сега.
Та питанката ми е: Кажете някой читав (free!) тул за "Static Code Analysis" за Java. Не ме интересуват толкова софтуерни метрики, по-скоро да показва potential problems. Hammurapi? PMD?
Може да е плъгин (Eclipse, RAD - все е ОК)
Да може да сгази 10-15 хил класа в прилично време.
Иначе къв да е тул и аз мога да си намеря, ама ако спестите няколко загубени часа да се боря със всяка простотия, дето ми попадне пред очите в интернета, ще е по-добре отколкото да си чешите езиците (пръстите? нещо друго?) с пачите
Аз също съм правил такъв ризърч, даже с няколко различни тула, ама беше преди 5-6 години. Сигурно са се развили нещата от тогава до сега.
Та питанката ми е: Кажете някой читав (free!) тул за "Static Code Analysis" за Java. Не ме интересуват толкова софтуерни метрики, по-скоро да показва potential problems. Hammurapi? PMD?
Може да е плъгин (Eclipse, RAD - все е ОК)
Да може да сгази 10-15 хил класа в прилично време.
Иначе къв да е тул и аз мога да си намеря, ама ако спестите няколко загубени часа да се боря със всяка простотия, дето ми попадне пред очите в интернета, ще е по-добре отколкото да си чешите езиците (пръстите? нещо друго?) с пачите
Re: Static Code Analysis
PMD и FindBugs. Ако ползвате CI, можеш да си ги сложите на отделен план да рънват на определено време, както и преди релийса (опционално да го фейлват).
Малко ще трябва да си поиграеш, че дефаулт руловете на моменти са странни.
Малко ще трябва да си поиграеш, че дефаулт руловете на моменти са странни.
Re: Static Code Analysis
Повече време губят, отколкото работа вършат. Като Agile простотиите. Поне са модерни и клиентите кълват!
Ама това си е мое мнение.
п.с. като на тия 15 хил. класа ти избълва 25 хил. грешки от типа "2 последователни ;;" - ще ме разбереш. Ползвал съм това на Гугъл, забравих как се казва.
Ама това си е мое мнение.
п.с. като на тия 15 хил. класа ти избълва 25 хил. грешки от типа "2 последователни ;;" - ще ме разбереш. Ползвал съм това на Гугъл, забравих как се казва.
Редактирано от rabin на
Re: Static Code Analysis
Dankeschoen (тъп дир - не разбира от умлаути)
Тебе мога да те черпя и истинска (а не виртуална) бира. И ще си мерим ... часовниците
Тебе мога да те черпя и истинска (а не виртуална) бира. И ще си мерим ... часовниците
Re: Static Code Analysis
Е, то аз мога да си селектирам кои бъгове са ми интересни и кои не са.
Това колко време губят и колко работа вършат е също субективно.
Мисли го така: един бъг да ми хване, дето после ако стигне до продукция ще ми коства 3 дена разправии и НАЙ-ВЕЧЕ - обяснения на шефовете .... пак е файда.
Щото те, шефовете, за бъга ще забравят след 1 седмица, но ще си спомнят цяла година (смятай до времето за бонусите и пейрайза), че аз нещо съм им създавал проблеми
Това колко време губят и колко работа вършат е също субективно.
Мисли го така: един бъг да ми хване, дето после ако стигне до продукция ще ми коства 3 дена разправии и НАЙ-ВЕЧЕ - обяснения на шефовете .... пак е файда.
Щото те, шефовете, за бъга ще забравят след 1 седмица, но ще си спомнят цяла година (смятай до времето за бонусите и пейрайза), че аз нещо съм им създавал проблеми
Re: Static Code Analysis
Няма сложна система без бъгове. Телефона, който ти е в джоба... новата кола... компа... имат няколко хиляди известни бъга. Чистят ги постепенно след като ги продадат.
Тия твойте шефове много лоши...
Не ме разбирай погрешно - ако открива бъгни - е хубаво. Моя опит е по-скоро негативен.
п.с. шефчето на старата работа ми губеше над 50% от времето да тества разни модерни похвати. Което е хубаво, защото имам мнение за тия неща от първо лице ед.ч. Само малко съм настръхнал от модернизми, може вече да съм станал предубеден. Не ми се връзвай ми е мисълта.
Тия твойте шефове много лоши...
Не ме разбирай погрешно - ако открива бъгни - е хубаво. Моя опит е по-скоро негативен.
п.с. шефчето на старата работа ми губеше над 50% от времето да тества разни модерни похвати. Което е хубаво, защото имам мнение за тия неща от първо лице ед.ч. Само малко съм настръхнал от модернизми, може вече да съм станал предубеден. Не ми се връзвай ми е мисълта.
Редактирано от rabin на
Re: Static Code Analysis
Кода не е писан от мен (ок, с много малки изключения).
Писан е от огромна банда намираща се на няколко хиляди километра по на изток от нас. Има много очевадни бъгни за хващане, като се почне от яко "cut & paste", което ме довежда то истерия, щото днеска фиксна нещо някъде само да открия след една седмица, че същият бъг го има копиран на още 7 други места в кода ...
Макар че е Java, това са бивши COBOL и най-вече VB девелопери, така че забрави за някакви OO принципи - тва инхеританс, тва енкапсулейшън - няма шанс. И повечето компоненти са овързани със зависимости "на топка" - IDE-то даже квичеше, че имам цикли и не знае от къде да започне билда, ама това го гъсдисах.
Писан е от огромна банда намираща се на няколко хиляди километра по на изток от нас. Има много очевадни бъгни за хващане, като се почне от яко "cut & paste", което ме довежда то истерия, щото днеска фиксна нещо някъде само да открия след една седмица, че същият бъг го има копиран на още 7 други места в кода ...
Макар че е Java, това са бивши COBOL и най-вече VB девелопери, така че забрави за някакви OO принципи - тва инхеританс, тва енкапсулейшън - няма шанс. И повечето компоненти са овързани със зависимости "на топка" - IDE-то даже квичеше, че имам цикли и не знае от къде да започне билда, ама това го гъсдисах.
Re: Static Code Analysis
Това твоето го оправя друга тояга и е извън темата. А да те държат отговорен за такова нещо - аз и за по-малко сменям работа! Дано да плащат поне!
Re: Static Code Analysis
Сонар-а се ползва главно за събиране на данни при CI - то, че да гледаш трендовете. Той самия рънва pmd/findbugs/checkstyle като плъгини.
Re: Static Code Analysis
Не мога да знам какво рънва, но е шаренко и радва шефовете
Re: Static Code Analysis
абе сигурно зависи и от проекта
при един ползвахме меморъ пул, естествено за каквото трябва само
ела да видиш какво става като ти избълва 8000 потенцялни мемори лийка от които е ВЕРОЯТНО да има истински, но 99% са защото не се оправя с мемори пула
при един ползвахме меморъ пул, естествено за каквото трябва само
ела да видиш какво става като ти избълва 8000 потенцялни мемори лийка от които е ВЕРОЯТНО да има истински, но 99% са защото не се оправя с мемори пула