Programowanie obiektowe jest jednym z dostępnych paradygmatów programowania polegających na podzieleniu problemu na obiekty starając się zachować najbardziej zbliżony podział jak w rzeczywistości. Wszystko w informatyce rządzi się własnymi prawami, a programowanie zorientowane obiektowo posiada trzy podstawowe zasady, które muszą być przestrzegane. Opanujcie to jak najprędzej, gdyż znajomość tych zasad jest często weryfikowana na egzaminach. Najpopularniejszym "przedstawicielem" tego paradygmatu jest oczywiście Java, natomiast istnieje o wiele więcej języków wspierających programowanie obiektowe.

Kończąc redagowanie w tę sobotę ponownie skieruję się w stronę tworzenia gier. Następne pytanie, które może budzić duże zastanowienie. Jak trudne jest tworzenie gier dla jednej osoby? Odpowiedź jest prosta: BARDZO. Wystarczy spojrzeć na mnie. Jak zawsze, zapraszam na poszerzenie tej odpowiedzi o niezbędne szczegóły.

Wprowadzam dzisiaj kolejny nowy wątek, który opisuje program "RPG Maker" od mojej strony. Ten program już od dawna jest mi znany i zawsze odbierałem go pozytywnie. Posiada wiele "edycji" i każda z nich ma swoje plusy i minusy. Może ktoś z Was się zastanawiać którą z nich sobie wypróbować czy ewentualnie kupić. Na ten temat będę się rozpisywał w artykule.

Wykorzystując fakt, iż napisałem już jeden artykuł bezpośrednio na temat mojej osoby, to postanowiłem drugi raz z rzędu napisać o swoich planach. Ponieważ widzę ile jeszcze tej pracy mnie czeka, musiałem podjąć decyzję o przełożeniu pisania programów na później. Nie wiem do kiedy dokładnie, podejrzewam, że dopiero od czerwca zacznę programowanie aplikacji w Javie.

Dzisiaj jest szczególny dzień! Nawet jeśli wygląda tak samo jak cała reszta. Dzień, który zmienił moje życie. Dzień w którym poznaliście moją osobę od strony dewelopera gier. Dzień, który umożliwił mi zapoczątkowanie całej mojej działalności. 3 kwietnia, 2016 roku. Gry online i ich publikacja osiągnęła czwarty rok!!!

Jak zapowiedziałem, teraz podam szczegóły na temat inkrementacji i dekrementacji. Jest to proces zwiększania czy też zmniejszania wartości liczbowej dokładnie o jeden przy czym nie będę truł na temat samej definicji. Bardziej chcę przykuć uwagę odnośnie dwóch sposobów zapisu. Wchodząc w szczegóły jest to preinkrementacja i postinkrementacja. Niby nic, a istnieje bardzo istotna różnica między nimi.

W kolejnym artykule mam dla wszystkich chętnych parę wskazówek jak pisać dobry kod. "Dobry" czyli czytelny, efektywny i mniej obciążający dla procesora. Zachęcam wszystkich zainteresowanych do czytania!

W porządku. Odejdźmy na moment od samego programowania, języka C i wszystkich dotychczasowo wymienionych trików. Wróćmy w końcu do poprzednio omawianego wątku jak zacząć tworzyć gry. Chcę podzielić się następnymi wskazówkami jednak zaczynając od punktu zero. Od momentu, kiedy ktoś zainteresowany jest w tym kompletnie zielony i nawet nie wie od czego zacząć. Może uda mi się coś na to zaradzić...

Mamy 1 kwietnia! Nieuchronnie zbliża się pewna chwila a właściwie dwie, które dotyczą mojej osoby. Pierwsza z nich będzie pojutrze, zatem spodziewajcie się wtedy wyjątkowo szerokiego artykułu. Przechodząc do tematu właściwego, chciałem napisać o pewnej bardzo ciekawej funkcji umożliwiającej wyświetlanie zawartości pliku w programie, a także możliwość zapisywania wprowadzonej treści do nowego pliku oraz skopiowania zawartości do innego pliku. I to wszystko za pomocą prostego kodu! Co prawda, to nie jest najbardziej optymalne rozwiązanie, natomiast jest dużo prostsze i można je opanować w ciągu kilku godzin. O ile korzystamy z języka C, mamy szansę wykonać tak zwane "przekierowanie strumienia".

Coraz mniej czasu w ciągu dnia więc postanowiłem wziąć na klatę podobny temat, zbliżony do poprzedniego (poprzednio mówiłem o przesunięciach bitowych). Mają ze sobą wiele wspólnego (przesunięcia to jeden z typów) więc postanowiłem "postawić" te wątki obok siebie. Przed Wami, następna opowieść o alternatywnych zapisach. W roli głównej, operatory bitowe, ale nie te, które już dobrze znacie.

Następny zalążek historii programowania. Opowiem dzisiaj o tym, jak w latach .80 trzeba było często stosować inny zapis do wykonywania działań arytmetycznych na liczbach całkowitych. Kolejny temat i kolejny termin: "przesunięcie bitowe".

Ostatnia wzmianka o szablonie do moich gier nad którym pracuję była na początku marca. Nadszedł czas, abym był z Wami szczery. Szablonu w "HaxeFlixel" nie będzie! Zmieniłem narzędzie na "raylib"! Z języka Haxe na język C!!!

Znowu sięgnę do historii i do języka C. Ponad dwa tygodnie temu poświęciłem artykuł na temat funkcji "printf" i jej specyfikatorom formatu. Ze względu na mocno ograniczony czas pozwólcie, że teraz napiszę to samo tylko o funkcji "scanf", która również jest częścią standardowej obsługi wejścia-wyjścia. Jeśli jest jakiś problem z określeniem specyfikatora formatu, po prostu zjedźcie na dół i popatrzcie na tabelkę. Być może, że właśnie w niej znajduje się odpowiedź na Wasze pytanie.

Instrukcja "switch". Coś Wam to mówi? To kolejny ze sposobów czytelniejszego zapisu rozgałęzienia instrukcji warunkowej. W odróżnieniu od poprzednio omawianego operatora trójargumentowego, pozwala to obsłużyć wiele wartości w jednej klauzuli. Nie myślcie tylko, że to jest zapis bez wad bo jak w całej informatyce, wszystko ma swoje plusy i minusy. Zachęcam do lektury.

Kolejny lekki temat dla każdego chcącego się tego programowania nauczyć. Poboczny, ale warto opanować zapis który zaraz pokażę bo potrafi świetnie zredukować treść kodu do jednej linii. Kodu w postaci instrukcji warunkowej. Kodu, który będzie w stanie występować zarówno w wyrażeniu, jak również w miejscu wstawiania parametru do funkcji. Za kolejną wygodą kryje się kolejny zapis i oczywiście kolejny termin: "operator trójargumentowy" ("ternary operator"). Jeżeli to kogoś interesuje, to na pewno nie pożałuje. Nawet na studiach można nie spotkać się z tym zapisem, a jest on prosty i przyjemny.

Raz kolejny zwrócimy się w stronę Javy w celu przedstawienia bardzo przyjemnego i efektywnego zapisu. Umożliwia on zapisanie "rozciągliwej" funkcji, która będzie w stanie pobierać tyle parametrów ile tylko sobie zażyczycie. Jeden, pięć, nawet dwadzieścia. Taka implementacja jest możliwa jeżeli się wie o jej istnieniu i o sposobie zapisu. Pojęciem tym jest "zmienna liczba parametrów" ("variadic function"), sposób zapisu opisano poniżej.

W tę dużo swobodniejszą sobotę mam kolejne zjawisko programistyczne do omówienia. Dotyczy ono liczbowych typów danych, a dokładniej ich minimalnych i maksymalnych zakresów. Ich osiągnięcie może być czasem nieprzewidywalne i spowodować "zapętlenie", które bardziej kulturalnie wypadałoby nazwać "przekroczenie zakresu liczb całkowitych" (tłumaczenie).

Aby się mocno nie przemęczyć, teraz będzie lekki artykuł rozwiewający wątpliwości na temat Javy. Jak to z nią jest, Java jest kompilowana czy interpretowana? Czy może jedno i drugie? Jakby to Wam powiedzieć, działa ona pół na pół. Kompiluje się do kodu pośredniego, aby go potem interpretować. Wyjaśnienia zostawiam poniżej.

Wśród najczęściej wpisywanych fraz w Google, pojawia się między innymi pytanie "jak nauczyć się programować?". Myślałem o tym czy aby nie za wcześnie dla mnie, żeby rzetelnie odpowiedzieć na to pytanie. Ze względu na fakt, iż parę lat się kształcę w tym kierunku bo to masowy dział nauki, zwróciłem uwagę na parę rzeczy co się przyczyniło do znacznego wzrostu szybkości opanowywania materiału. Nie są to żadne wielkie spostrzeżenia, aczkolwiek mogą każdemu z Was dać do myślenia. Miejcie również na uwadze, że każdy z nas ma inne sposoby nabywania wiedzy i nie wszystkie porady mogą okazać się dla Was skuteczne. Oto one.

Finalizujemy wątek związany z konwersją systemów liczbowych i zabieramy się za system heksadecymalny. Zamienimy wspólnie system dziesiętny na szesnastkowy. W drugą stronę również. Nigdy nie wiadomo kiedy to się może przydać. Jeśli to nie ten system liczbowy Was interesuje, sięgajcie tutaj po tłumaczenie jak obchodzić się z liczbą binarną, a tutaj, ósemkową.