Python itp.

Wpis miał być o testach jednostkowych. Ale mi się ich robić nie chce. I tak zamierzam napisać grę, więc lepiej będzie stestować wszystko na żywca. No, dobra, ale do rzeczy.

Odkąd studiuję miałem kontakt z osobami, które uważają, że Python jest MniejNiżTrzy i w ogóle zajebisty. Latało to sobie dookoła mnie, ale większej uwagi na to nie zwracałem. Ostatnio dopiero, parę miesięcy temu z jakiegoś powodu, którego teraz za bardzo nie pamiętam zacząłem pisać w Pythonie. Odpaliłem coś jakieś tutoriale i patrzę na ten kod. Wszystko na wcięciach oparte, żadnych klamer czy innych beginów. Masz wcięcie, to wiadomo, w jakim jesteś bloku. To ma swoje wady, bo pythonowej konsolce, w której można w locie testować swoje pomysły też trzeba używać wcięć, co jest niesamowicie upierdliwe i aż by się chciało potworzyć jednolijkowe potworki z klamrami. Ale do samego klepania kodu idea jest dobra.

Ale żeby nie roztrząsać każdego elementu języka, w skrócie mogę napisać, że Python JEST MniejNiżTrzy, fajny i mogę w nim klepać do końca życia (przynajmniej dopóki nie wymyślą czegoś jeszcze lepszego). Kod się pisze szybko, jest dynamiczne typowanie, nie ma głupiej hermetyzacji, nie trzeba wszystkiego robić stricte obiektowo jak w Javie (która przed Pythonem była dla mnie najlepiej pomyślanym językiem OO). Do tego konsolka, o której w poprzednim akapicie wspomniałem, dzięki której można testować różne konstrukcje języka bez potrzeby tworzenia nowego pliku.

Potem nadszedł etap drugi - napisać w tym tym RPGa, bo jeśli jest takie fajne, to na pewno da się zrobić w tym fajną grę. Średnio co pół roku zabieram się za klepanie RPGa od nowa, bo... dobra, nie wiem dlaczego, komu się chce wracać do starego kodu. W każdym bądź co bądź razie nie zawiodłem się na tym. Klasy, które odpowiadają za postać są podejrzanie krótkie i podejrzanie szybko zaczęły działać poprawnie bez jakichś większych sensacji.

Kolejna kwestia - kod jest (w) Git. Zrobiłem sobie konto na github (mój profil i moje repa na końcu tej linki) i wpakowałem kod jakichś tam projektów. Wygodna sprawa, jakoś wygodniej się na tym pracuje niż na Subversion, mimo że nie wykorzystuję nawet procenta możliwości tego systemu.

Siła Gita wyszła przy innej programistycznej rzeczy, którą się zajmowałem. Jak w poprzedniej notce wspomniałem wysyłałem jakieś swoje patche do midori. To wymagało operowania na repo, które było na Git. Wysyłać kodu samodzielnie nie mogłem, wszystko musiało iść przez Władcę Midori, ale i tak podejście Git bardzo ułatwiało pisanie patchy (w końcu opiera się na zmianach).

Przez parę ostatnich miesięcy jeszcze parę innych nowinek poznałe, ale to może to kiedyś opiszę w innych notkach albo napiszę coś konkretniejszego.