MrHyperion
2017-05-16 11:21

Ludzie, wszystko ma swoje granice xD.

Od jakiegoś czasu będąc freelancerem biorę projekty Androidowe, tak aby sobie dorobić. Niestety ostatnie 3 projektów to było szambo i byłem po prostu szambo nurkiem, bo każdy projekt miał w sobie następujące problemy:

  • Statyczna analiza kodu? Panie na co to komu, po co to komu?
  • Czysty gradle'a? No po cholere xD. Nawalone bibliotekami, jakieś Toda Time'y albo Guavy używane do jednej rzeczy. Oczywiście w konsekwencji każdy projekt miał multidex'a
  • Architektura? Lol;
  • Testy? Chyba w programistycznym eldorado;
  • Zakomentowany kod na produkcji xD. Panie Mietku nie ma szans aby się nie działało xD;
  • Nie używane importy? No tak bo oczywiście się zapomina o takim skrócie klawiszowym a Android Studio to przerośnięty notatnik;
  • Fragmenty, fragmenty, wszędzie fragmenty xD;
  • Zaporowe ilości używanych deprecated metod albo klas;
  • No i jeden projekt trafił się na Roboguice xD;
  • Coś do logowania błędów? Chyba karta i długopis xD;
  • System.out.println xD;
  • SOLID? KISS? No co Ty xD
  • Struktura pakietów? Hm...
  • Android Annotations XD
  • Statyczne klasy, singletony w jednym projekcie były po prostu na każdym kroku
  • Serializabe tak bardzo, bo API Androidowe nie ma Parcelable;

Projekty które widziałem są gorsze od tego co piszą studenci. Czemu? Bo wypociny studentów są małe i przeważnie nie działają. Natomiast te projekty są duże i działają pomimo legacy code xD;

Teraz ja nie mam żadnych kompleksów z moimi skillami programistycznymi. Serio ja dbam o swój kod, piszę testy, staram się pilnować aby nic nie zepsuć staram się utrzymywać jakość, ale jak patrzę na to wszystko to się zastanawiam skąd Ci się programiści się urwali.

Oczywiście klienci idą w zaparte, że kod jest super, super działa i tak dalej a dodanie nowej funkcji to żaden problem (tak oczywiście gdy cały dom jest w ruinie remontowanie małego składzika ma sens). Musiałem to napisać, bo mi się wydawało, że legacy code to coś co się spotyka baaardzo rzadko, ale jednak nie.

Życzę miłego dnia, elo xD.

Myślałem, że mam mało doświadczenia (w czerwcu będę miał równe dwa lata w Androidzie od absolutnego zera), ale nie mam już żadnych kompleksów z tego tytułu.

PS. Musiałem po prostu gdzieś napisać swoje żale bo myślałem, że eksploduje xD.

#java #chceumrzec #humor

arklin

@WhiteLightning: wręcz przeciwnie, AA generuję za Ciebie cały androidowy bajzel, zaczynając od cyklu życia activity i fragmentów a kończąc na elastycznym DI. Ale jak się nie pilnuje to można zrobić makaron z tego przez wstrzykiwanie wszystkiego wszędzie

drorat1

Freelancerka ma to do siebie, że tak naprawdę chodzi o to, żeby coś machnąć na szybko, żeby tylko szybko dostać zapłatę. Zwłaszcza jeśli chodzi o klepanie aplikacji, za które dostanie się kasę dopiero po zakończeniu, nie biorę pod uwagę np. kamieni milowych czy zaliczek. Klient się nie zna, więc guzik go obchodzi w jaki sposób to było napisane i nie interesują go tego typu poboczne problemy.

Wróć do swoich kodów za rok, za dwa to gwarantuję Ci że stwierdzisz, że to co namachałeś można było zrobić inaczej (i lepiej, bo cały czas się uczysz a każda kolejna appka to nowe doświadczenia). Trochę klepałem kiedyś pod Androida małe appki w Eclipse, co każdy kolejny projekt to i kod naturalnie lepszy. Ale pierwsza appka, choć działająca bez zarzutów to było też jak teraz na to popatrzę totalne szambo.

Davis_Nolan
2017-04-27 10:03

KrkDataLink startuje z następnym meetup'em! Ktoś, coś słyszał na ten temat? #java #jvm #bigdata

IceHeart

Można jakieś dokładniejsze info ?

Davis_Nolan

@IceHeart: Jarek Pałka oraz Krzysztof Kaczmarek będą przywódcami spotkania, odbędzie się napewno w Krakowie

Koziołek
2017-04-12 11:04

Samo powtarzanie testów nie zawsze jest wystarczające. Co jeżeli chcemy przekazać parametry? https://koziolekweb.pl/2017/0[...]unit-5-testy-parametryzowane/

#java #junit5 #koziolekweb

somekind

Może jestem zmęczony, ale to jakaś rewolucja wielka, że można mieć źródła testów? W NUnit takie coś jest od 2008 roku: https://www.nunit.org/index.php?p=testCaseSource&r=2.5

Koziołek

@somekind: mówimy o czyś trochę starszym :)

Koziołek
2017-04-10 09:48

Wielokrotne uruchomienie tego samego testu jest czasami koniecznością. JUnit 5 ma mechanizm, który to umożliwia

https://koziolekweb.pl/2017/04/10/junit-5-testy-powtarzalne/

#java #JUnit5 #koziolekweb

eL

Na DevCrowd pojawi się coś nowego odnośnie jUnit czego nie było na blogu czy w większości będzie się to powielać?

Koziołek

@eL: będzie mniej więcej to samo, ale wszystko zależy od tego jakie zmiany do tego czasu zostaną wprowadzone przez twórców.