F
Flixius
Fortgeschrittenes Mitglied
- 4
Hallo,
ich programmiere normalerweise in Visual Studio C# und bin daher natürlich auch einen gewissen Komfort gewohnt, den Eclipse nicht zu leisten im Stande zu sein scheint. Um so komplexer meine App wird, um so schwieriger ist es zu programmieren.
Es kommt zum Teil zu absolut merkwürdigen Verhalten, das meinen Code in eine unsichtbare Blackbox verwandelt. Wie debbugt ihr? Es kann doch nicht wahr sein in 2012 solche Verrenkungen zu machen wie ich sie zu vollbringen habe.
Hier ein kleiner, fiktiver Beispielcode, der veranschaulichen soll welche Effekte zum Teil auftreten:
Gut. Was macht Eclipse? Ich habe in jeder Zeile einen Breakpoint. Nachdem der String ins JSONArray gepackt wird, wird weder die Arraygröße, oder die Properties angezeigt NOCH springt er in die Exception. Stattdessen wird einfach außerhalb des Abschnits weiter gemacht. LogCat zeigt natürlich nichts an. Was soll das? Das ist mir jetzt nicht zum ersten mal aufgefallen, dass man einfach nicht gescheit debuggen kann und eine halbe Ewigkeit nach Fehlern suchen muss, wenn man direkt in der App entwickelt.
Auch sehr nett ist folgender Bug (pseudocode syntax):
PS: Der Code aus Beispiel 1 funktioniert außerhalb von Android natürlich fabelhaft und ohne Probleme. Aber sobald ich in irgendwelchen Activities versuche zu entwickeln und zu debuggen wird das immer zu einem riesigen Krampf. Woran liegt das und was sind eure Tricks beim debuggen?
ich programmiere normalerweise in Visual Studio C# und bin daher natürlich auch einen gewissen Komfort gewohnt, den Eclipse nicht zu leisten im Stande zu sein scheint. Um so komplexer meine App wird, um so schwieriger ist es zu programmieren.
Es kommt zum Teil zu absolut merkwürdigen Verhalten, das meinen Code in eine unsichtbare Blackbox verwandelt. Wie debbugt ihr? Es kann doch nicht wahr sein in 2012 solche Verrenkungen zu machen wie ich sie zu vollbringen habe.
Hier ein kleiner, fiktiver Beispielcode, der veranschaulichen soll welche Effekte zum Teil auftreten:
Code:
public class MyActivity extends Activity
//etc....
try{
String str = GetJsonString();
JSONArray arr = new JSONArray(res);
Log.w("n", ""+arr.length());
for (int i = 0; i < arr.length(); i++)
Log.w("n", ""+arr.getJSONObject(i).getString("DisplayName"));
}catch(Exception e){
Log.w("test", e.getMessage());
}
//aufbau UI
Auch sehr nett ist folgender Bug (pseudocode syntax):
Code:
try{
try{
int.parse("string");
}cach(Exception e){//print exception. wird nicht geworfen}
}catch(Exception e2){
//wird hier geworfen, obwohl die exception darüber nicht über throw
//geworfen wird... e2 ist null so das man natürlich nicht so genau weiss was
//da wieder schief gelaufen ist....
}
PS: Der Code aus Beispiel 1 funktioniert außerhalb von Android natürlich fabelhaft und ohne Probleme. Aber sobald ich in irgendwelchen Activities versuche zu entwickeln und zu debuggen wird das immer zu einem riesigen Krampf. Woran liegt das und was sind eure Tricks beim debuggen?