Szczerze mówiąc to osobiście wielu początkującym polecam listę TODO ale taką, aby samemu możliwie bardzo ją rozbudować w zakresie różnych funkcjonalności. Wpadł mi jednak inny pomysł, który wydaje mi się rozsądnie trudny (jeśli można tak "po polskiemu" napisać :) i może być ciekawy jako początek nauki:
Zrób aplikację do zbierania informacji o osobach, ale taką rozbudową o różne walidatory. Na przykład mamy widok do wprowadzenia danych osoby jak imię, nazwisko, datę urodzenia, adres, dane bardziej szczegółowe jak numer pesel, numer dowodu, jeśli ma to numer NIP, jeśli firma to numer REGON, niech będzie też pole np. na podanie numeru swojej karty kredytowej itp.
I drugie okienko, gdzie np. masz możliwość wyszukania osoby po różnych danych, różnych kryteriach, np. po numerze pesel, albo po dacie urodzenia od-do, albo po ustawieniach mieszanych itp.
I np. trzecie okienko z jakimiś prostymi statystykami do samodzielnej konfiguracji, np. pokazanie ilości osób w jakiś przedziałach wiekowych, z jakiś miast, województw itp. itd.
Generalnie już wyjaśniam po co to wszystko:
- Nauczysz się jakoś sensownie wizualnie rozmieszczać elementy, nie chodzi tu o jakąś mega grafikę itp. Nie, to nie tego typu aplikacja, ale oczywiście możesz się też i fajnie pobawić tu grafiką jeśli chcesz.
- Musisz poczytać o różnych walidatorach, czyli np. jak sprawdzić czy podany numer pesel jest poprawny itp. I możesz wtedy na bieżąco weryfikować i jeśli np. podasz zły pesel to zablokujesz opcję zapisu i wyświetli się komunikat. Dzięki temu pobawisz się nie tylko w robienie formatek ale i poćwiczysz jakieś algorytmy walidacyjne, pętle itp. itd.
- Z czasem jeśli udałoby Ci się tę apkę zrobić to będziesz miał bardzo dobry punkt wyjścia do refaktoryzacji kodu aby pomyśleć nad jakimiś wzorcami projektowymi i ogólnie sam zobaczysz w trakcie pisania, że wiele operacji jest powtarzających się i zaczniesz kombinować nad jakąś lepszą strukturą aplikacji.
- Możesz jednocześnie pouczyć się stosowania dodatkowych bibliotek itp. np. coś do jakiś prostych wykresów w statystykach itp.
- Możesz pouczyć się podstaw obsługi baz danych aby zapisywać gdzieś informacje.
Moim zdaniem jeśli udałoby Ci się coś takiego zrobić to byłby to bardzo dobry element w Twoim portfolio do CV. Pokazałoby to, że ćwiczysz myślenie logiczne, jakieś bardziej złożone aplikacje itp. itd.
A wbrew pozorom wcale nie jest to trudna aplikacja, trzeba tylko dobrze pomyśleć co i jak ma robić i tutaj kolejna podpowiedź, zanim zaczniesz pisać weź kartkę i ołówek i rozpisz dokładnie co i jak, jakie mają być funkcjonalności itp. Uwierz mi, że nawet przy tak prostej apce jeśli nie robiłeś tego wcześniej to taka analiza może Ci zająć cały wieczór.
Powodzenia!