Press "Enter" to skip to content

Zagubiona wśród własnych myśli - Piatkosia's blog

U mnie działa – zależnie od maszyny

Po miesiącu wrócił do mnie z gwarancji lapek – w pełni sprawny i gotów do działania. Trzeba więc na powrót przenieść do niego wszelakie projekty. W tym… api webowe.
Zależało mi na selfhostowaniu – ktoś mógłby powiedzieć – przecież iis nie ma takich problemów. Ale to już serwer HTTP i tak ręka mi drży jak mam go odpalić, więc wolę nie, przynajmniej na razie.

Mówiłam już jak bardzo kocham projekty webowe? Między innymi dlatego.

 

InvalidOperationException: Unable to resolve service for type [INazwa] while attempting to activate [MojKontroler]

Mam taką manierę, że jak ogarnęłam jak się coś robi w jednym miejscu, czasami się rzucam na pałę i zbyt analogicznie próbuję to zrobić w drugim.
Bawiłam się w autofac pod desktopem i fajnie było, więc próbując uczyć się pisać webapi (pod kątem pisania pracy dyplomowej) postanowiłam że sobie też poużywam, bo zaczęło mi się podobać, że jak chcę użyć funkcji z innej klasy, to zamiast kombinować z tworzeniem klas z jej zależnościami, po prostu wrzucam interfejs w konstruktor i gotowe, mam całkiem świeży obiekt na moje potrzeby.

Także miałam sobie klasę z jedną metodą

U mnie działa – ale tylko pod debuggerem

Jedną z zalet tego, jak coś się robi jest to, że czasami coś udaje że działa. A jak to mówi mój wybranek życiowy – „Jak coś czasami nie działa, to to nie działa”. Także piszę sobie kod uczelniany typowo, i w którymś momencie, ten wg mnie „skończony” projekt próbuję odpalić poza debuggerem. I tak zaczyna się moja historia, bo okazuje się, że to NIE działa. No chyba że uruchomię poza debuggerem i potem debugger podepnę.

TypeInitializationException

Istnieje pewna klasa błędów, których rozwiązanie sprowadza się do edycji (lub przeniesienia) jednej linijki kodu. Do tych błędów należy ten, który udało mi się ostatnimi czasy popełnić (hmm… nie podam dokładnie kiedy, bo za cholerę nie jestem w stanie sobie przypomnieć daty urodzenia napisanego z rąsi ostatniego kawałku kodu). Ok, nie był do końca napisany ręcznie, bo użyłam snippetu „propdp”, który służy do genowania propert które sobie możemy użyć potem z poziomu XAMLa chociażby.

Niewiarygodne ale prawdziwe, odcinek 1

Mam takiego współpracownika, nazwijmy go piłkarz z gitarą, jako że wolał pozostać anonimowy (ale zezwolił na publikację zadania i rozwiązań). W którymś momencie podszedł do tablicy i napisał „Sum(1)(2)(3)()) -> ma zwrócić liczbę” i powiedział, że mamy 10 minut od teraz. Jeszcze coś wspomniał, że zadanko to ma potencjał do bycia zadaniem rekrutacyjnym dla seniorów, bo trzeba pomyśleć trochę nieszablonowo.

Władca czasu

Chyba wrócę do bycia interopem. Można dostać euforii (żeby nie nazwać tego inaczej) kiedy wywołuje się w swoim kodzie czyiś kod, zwłaszcza, jeżeli nie był on dedykowany specjalnie na Twoją platformę. Kiedy wywołujesz jakąś losową dllkę, napisaną w czymkolwiek pod cokolwiek… a już najwyższym stopniem tejże euforii będzie … wywołanie funkcji z dllki systemowej. Takiej wiecie, System32 czy coś… takiej, no weźmy kernel32.dll. Brzmi strasznie. Zróbmy coś, od czego komp nie wybuchnie. Ustawmy mu czas.

Modyfikatory dostępu nie takie święte

Choroba ma swoje dobre strony. Jak akurat nie boli, można się za coś wziąć. Na przykład za napisanie posta na blogu, na którym nie pisało się nic od prawie roku.
No to i piszę;)

Dziś wezmę na tapetę modyfikatory dostępu. Temat zdaje się prosty i oklepany. Mamy ich kilka i są dobrze zdefiniowane:
• Private – dostęp tylko z klasy
• Protected – dostęp z klasy i jej dzieci (klas dziedziczących po klasie)
• Public – dostęp skąd popadnie
• Internal – dostęp w zakresie jednego assembly
• Protected internal– dostęp w zakresie jednego assembly, nielimitowany dla dzieci (dzieci nie muszą być z tego samego assembly, ale nie-dzieci już muszą)

i …

GOTO home

Jest taka instrukcja w programowaniu (głównie strukturalnym- bo w programowaniu liniowym nie da się bez niej obejść), która jest bardziej znienawidzona niż php, java, sharepoint i windows millenium razem wzięte.

Co u mnie

Jutro spróbuję szturchnąć projekt. Znów mam dostęp do pluralsighta, więc się nieco uczę. Miałam problem z rozwiązaniem jednego z testów, ponieważ, jak się okazuje, mój angielski nie jest tak dobry, jak się tego ode mnie wymaga. Przy następnej CVce zastanowię się, czy nie zdegradować umiejętności językowych do A2, bo już mało co pamiętam.

Pierwsza „książka” WPFowa w naszej bibliotece

Hejo.

Trzeba napisać jakiegoś technicznego posta do DSP, a tu wyjazd i nie ma jak;). Na szczęście jadę dopiero jutro, więc mam jeszcze kilka godzin dnia dzisiejszego, aby coś popisać.

Mam nadzieję, że jakiś kod mimo wszystko powstanie w pociągu, acz z publikacją posta może być gorzej, tak czy inaczej, postanowiłam opisać coś, co może być przydatne na początku kariery, jednocześnie nie jest to żadne rocket science wymagające większego przygotowania.

A więc…

Książka, której stanowczo nie polecam

Kupiłam sobie jakiś czas temu „Myślenie obiektowe w programowaniu” pana Matta Weisfelda. Naiwna blondynka myślała, że ktoś w końcu nauczy ją myśleć. Miałam nadzieję, że ktoś pokaże mi w jaki sposób modelować architektury, startować projekty i doprowadzać je do finishu, dobrze dobierać nazwy zmiennych czy przewidywać ewentualne zależności między obiektami w miarę rozwoju aplikacji.