Netbeans - základy ladění v Javě

MiroslavP

Netbeans - základy ladění v Javě
« kdy: 22. 10. 2016, 14:20:29 »
Mám třídu A ve které je metoda main, dále třídu B ve druhém souboru, B má nějaký statický veřejný atribut b. Když krokuji metodu main (třídy A), tak se mi nedaří vidět obsah statického atributu b (třídy B), který jsem před tím nastavil na nějakou hodnotu. Mohl byste mi to někdo prosím vysvětlit?


Kit

Re:Netbeans - základy ladění v Javě
« Odpověď #1 kdy: 22. 10. 2016, 14:33:04 »
Ten atribut je jejpíš privátní a tedy zvenčí neviditelný.

BTW: K čemu je dobré krokování programu? To se používalo v assembleru.

Re:Netbeans - základy ladění v Javě
« Odpověď #2 kdy: 22. 10. 2016, 14:39:51 »
Co hodit kod na github, at je videt, o co se snazis?

Re:Netbeans - základy ladění v Javě
« Odpověď #3 kdy: 22. 10. 2016, 14:40:48 »
Ten atribut je jejpíš privátní a tedy zvenčí neviditelný.

Nepise, ze je verejny?
A mas snad dojem, ze si debugger lame hlavu s tim, co mas private?

javaman ((

Re:Netbeans - základy ladění v Javě
« Odpověď #4 kdy: 22. 10. 2016, 14:46:32 »
BTW: K čemu je dobré krokování programu? To se používalo v assembleru.

A co dnes tedy používají programátoři tvého kalibru?


Re:Netbeans - základy ladění v Javě
« Odpověď #5 kdy: 22. 10. 2016, 15:06:34 »
A co dnes tedy používají programátoři tvého kalibru?
- kávovou sedlinu
- tarotové karty
- kristalovou kouli
Děkuji za možnost editace příspěvku.

Re:Netbeans - základy ladění v Javě
« Odpověď #6 kdy: 22. 10. 2016, 15:20:26 »
Co znamená „nedaří vidět“? Vidíte tam v debuggeru původní hodnotu, nebo vám debugger hlásí nějakou chybu? V programu tu hodnotu vidíte správně? Asi by pomohlo dát sem ten kód.

MiroslavP

Re:Netbeans - základy ladění v Javě
« Odpověď #7 kdy: 22. 10. 2016, 15:32:37 »
Co znamená „nedaří vidět“? Vidíte tam v debuggeru původní hodnotu, nebo vám debugger hlásí nějakou chybu? V programu tu hodnotu vidíte správně? Asi by pomohlo dát sem ten kód.
Když krokuju v metodě main (třída A) a najedu zde kurzorem myši nad B.b, tak se mi v bublině zobrazí pouze MujBalicek.B. Jinak pro atributy z A to funguje normálně, tj. zobrazí se mi přímo hodnota.

Re:Netbeans - základy ladění v Javě
« Odpověď #8 kdy: 22. 10. 2016, 15:49:36 »
Když krokuju v metodě main (třída A) a najedu zde kurzorem myši nad B.b, tak se mi v bublině zobrazí pouze MujBalicek.B. Jinak pro atributy z A to funguje normálně, tj. zobrazí se mi přímo hodnota.
Předpokládám, že to bude vlastnost NetBeans. Nevím, jak se to chová v IntelliJ Idea nebo Eclipse, protože jsem asi nikdy nepoužil veřejný statický atribut třídy, do kterého by bylo možné zapisovat. Pro debuggování si ten atribut dejte do „Watches“, a pro zachování srozumitelnosti toho programu a předcházení chybám tu globální proměnnou zrušte a zapouzdřete ji do nějakého objektu, který bude ten stav udržovat, a který předáte těm objektům, které se stavem potřebují pracovat.

Kit

Re:Netbeans - základy ladění v Javě
« Odpověď #9 kdy: 22. 10. 2016, 20:08:31 »
BTW: K čemu je dobré krokování programu? To se používalo v assembleru.
A co dnes tedy používají programátoři tvého kalibru?

Testy.

Re:Netbeans - základy ladění v Javě
« Odpověď #10 kdy: 22. 10. 2016, 20:22:53 »
BTW: K čemu je dobré krokování programu? To se používalo v assembleru.
A co dnes tedy používají programátoři tvého kalibru?

Testy.

To je zalezitost s naprosto jinym ucelem. (prestoze dobre testy mohou vyrazne zmensit sanci, ze budes debugger potrebovat).

Kit

Re:Netbeans - základy ladění v Javě
« Odpověď #11 kdy: 22. 10. 2016, 20:58:22 »
BTW: K čemu je dobré krokování programu? To se používalo v assembleru.
A co dnes tedy používají programátoři tvého kalibru?
Testy.
To je zalezitost s naprosto jinym ucelem. (prestoze dobre testy mohou vyrazne zmensit sanci, ze budes debugger potrebovat).

Píši tolik testů, abych debugger a krokování vůbec nepotřeboval. Debugování by mě jen zdržovalo.

Re:Netbeans - základy ladění v Javě
« Odpověď #12 kdy: 22. 10. 2016, 22:54:31 »
BTW: K čemu je dobré krokování programu? To se používalo v assembleru.
A co dnes tedy používají programátoři tvého kalibru?
Testy.
To je zalezitost s naprosto jinym ucelem. (prestoze dobre testy mohou vyrazne zmensit sanci, ze budes debugger potrebovat).

Píši tolik testů, abych debugger a krokování vůbec nepotřeboval. Debugování by mě jen zdržovalo.

Jasne. A kolegove taky nikdy neudelaji chybu. A nikdy neni chyba v knihovne, co pouzivas.

Pro nas ostatni je tu http://debuggingrules.com/

Kit

Re:Netbeans - základy ladění v Javě
« Odpověď #13 kdy: 22. 10. 2016, 23:09:23 »
Jasne. A kolegove taky nikdy neudelaji chybu. A nikdy neni chyba v knihovne, co pouzivas.

Pro nas ostatni je tu http://debuggingrules.com/

Hlavně nemusím řešit takové ptákoviny jako tazatel, neboť TDD mě od skrytých závislostí odnaučilo vcelku rychle.

Cizí knihovny mám samozřejmě také pokryty vlastními testy.

Re:Netbeans - základy ladění v Javě
« Odpověď #14 kdy: 22. 10. 2016, 23:11:45 »
Jasne. A kolegove taky nikdy neudelaji chybu. A nikdy neni chyba v knihovne, co pouzivas.

Pro nas ostatni je tu http://debuggingrules.com/

Hlavně nemusím řešit takové ptákoviny jako tazatel, neboť TDD mě od skrytých závislostí odnaučilo vcelku rychle.

Cizí knihovny mám samozřejmě také pokryty vlastními testy.

A nikdy kolegove neudelaji chybu a vzdy pokryjes vsechno.