Blog Dla Młodszych Programistów C#/.NET

wtorek, 7 września 2021
Często powtarzam, że jednym z najlepszych sposobów na naukę programowania jest nauka przez praktykę, czyli tworzenie własnych aplikacji. Dostaje sporo pytań z prośbą o zdefiniowanie jakie aplikacje można stworzyć by podnieść swoje umiejętności i by można było pochwalić się taką aplikacją w swoim portfolio przed rozmową kwalifikacyjną. W tym artykule przedstawię Ci 10 przykładów aplikacji, wraz z krótkim opisem, które możesz stworzyć.

Programowanie – 10 Pomysłów Na Aplikację Do Portfolio Przed Rozmową Kwalifikacyjną

Większość pomysłów, które zaraz Ci przedstawię, możesz zaimplementować jako aplikacja webowa, desktopową lub mobilna, nie ma to żadnego znaczenia. Warto tylko podkreślić, że Twoja aplikacja powinna zostać napisana w odpowiednim framework'u. Jeżeli chcesz zostać programistą aplikacji desktopowych, to stwórz aplikację desktopową w C# w Windows Forms, lub WPF. Jeżeli chcesz zostać programistą aplikacji webowych, to polecam stworzenie aplikacji w C# w ASP.NET MVC lub w ASP.NET Core.

Dodatkowo warto zaimplementować takie funkcjonalności, które już znasz, możesz już wtedy pochwalić się rekruterowi swoimi umiejętnościami. Z drugiej strony, warto też pisać aplikacje, które rozwiną Twoje umiejętności. Jeżeli nie będziesz umiał zaimplementować jakiejś funkcjonalności, to spróbuj doczytać, poszukać informacji w tym temacie i rozwiązać dany problem. Takim sposobem tworząc kolejne aplikacje, czy dodając nowe funkcjonalności, będziesz poznawał nowe dotąd nieznane Ci obszary w danej technologii. Pamiętaj także, żeby zawsze tworząc takie aplikacji trzymać się dobrych praktyk i wzorców programowania.

Pomysły, które teraz przedstawię, chciałbym podzielić na 3 rodzaje.


1. Twoje Hobby


Pierwszy rodzaj to aplikacje, których sam możesz potrzebować, które pomogą Ci w Twojej codziennej pracy. Zautomatyzują jakieś Twoje prace.

Pierwszy pomysł. Tutaj jeszcze nie będzie żadnych konkretów. Zastanów się przez chwilę, czy jest jakaś aplikacja, która może przydać Ci się na co dzień, taka, która rozwiązuje jakieś Twoje codzienne problemy. Pomaga zautomatyzować jakieś twoje prace lub może będzie powiązana właśnie z Twoim hobby. Pisanie takiej aplikacji może być dla Ciebie dodatkową motywacją i na pewno będziesz chętniej wtedy ją rozwijał. Zastanów się na spokojnie, czy jest taka aplikacja. Jeżeli nic Ci tutaj jeszcze nie przychodzi do głowy, to zapraszam Cię do kolejnych już bardziej konkretnych pomysłów.


2. Blog


Drugi rodzaj aplikacje, które możesz tworzyć, to pomysły ogólne, które warto mieć w swoim CV, a przy okazji możesz pochwalić się też swoją wiedzą, znajomością różnych framework'ów.

Możesz spróbować napisać platformę do bloga. Ja sam też pisałem kiedyś platformę pod swojego bloga modestprogrammer.pl, którego używam do dzisiaj. Podstawowe funkcjonalności, jakie może mieć taka aplikacja:
  • Możliwość zalogowania przez administratora, który może dodawać nowe artykuły na bloga, a także nimi zarządzać, to znaczy edytować i usuwać.
  • Przeglądanie artykułów przez użytkowników.
  • Filtrowanie artykułów.
  • Paginacja.
  • Możliwość dodania tagów, kategorii do każdego artykułu.
  • Możliwość dodawania komentarzy do każdego artykułu.
  • Formatka z możliwością wysłania e-maila do administratora.
  • Obsługa wszystkich błędów i logowanie informacji o ewentualnych błędach w aplikacji, jeżeli się pojawią.
Oczywiście nie musisz implementować wszystkich tych funkcjonalności, jeżeli nie masz wystarczająco dużo czasu, to spróbuj zaimplementować, chociaż kilka punktów.


3. Sklep Internetowy


Kolejny pomysł to zwykły sklep internetowy. Tutaj też jest sporo możliwości:
  • Warto zrobić jakiś ładny szablon.
  • Panel administratora, który pozwala zarządzać całym sklepem.
  • Zarządzanie produktami.
  • Zarządzanie banerami.
  • Koszyk.
  • Wysyłanie e-maili.
  • Integracja z innymi aplikacjami, np. do wystawiania faktur, wysyłki zamówionego towaru itp.
  • Oznaczanie produktów jako promocje.
  • Informacje o dostępności produktu.
  • Możliwość wybrania odpowiedniej konfiguracji, to znaczy rozmiaru, koloru itp. dla produktów.
  • Powiadomienia o zakupie administratora.
  • Wyszukiwarka produktów.
Podobnie jak wcześniej, w zależności od tego ile czasu chcesz poświęcić na implementację, tyle funkcjonalności dodasz.


4. TODO List


Bardzo popularna aplikacji, czyli zwykła TODO lista, która pozwala zarządzać swoimi zaplanowanymi do wykonania zadaniami. Również tutaj możesz wprowadzać różne funkcje, każda z nich rozwinie Twoje umiejętności. Czyli możesz np.:
  • Wyświetlać listę zadań.
  • Wyświetlać listę zadań wykonanych.
  • Wyświetlać listę zadań po terminie.
  • Edycja.
  • Dodawanie.
  • Usuwanie zadań.
  • Oznaczanie zadań jako ukończone.
  • Wysyłka e-maili z przypomnieniami.
  • Wysyłka e-maili z przypomnieniami.
  • Wysyłanie smsów.
  • Filtrowanie danych.
  • Walidacja danych.
  • Obsłużenie widoków na urządzenia mobilne.
  • Dodawanie zadań do odpowiednich kategorii.
Oczywiście taką aplikację możesz napisać zarówno jako aplikację webową, mobilną czy też desktopową.


5. Forum


Kolejny pomysł to zwykłe forum, które już teraz nie są aż tak bardzo popularne, ale stworzenie takiej aplikacji do portfolio może być dobrym pomysłem. Także możesz tutaj stworzyć:
  • Zarządzanie użytkownikami (rejestracja, logowanie, profil, prywatne wiadomości, role).
  • Panel administracyjny.
  • Widok główny, który będzie wyświetlał najpierw odpowiednie działy, a po wejściu do działu wszystkie założone w nim tematy.
  • Możliwość dodawania nowych tematów.
  • Możliwość odpowiadania na tematy.
  • Dodawanie punktów reputacji dla użytkowników, za dobre odpowiedzi.
  • Wyszukiwanie tematów, filtrowanie, paginacja.
  • Śledzenie wybranych tematów.
  • Powiadomienia o nowych postach w tematach.
  • Tag'owanie tematów.
  • Wyświetlanie użytkowników, którzy są online.


6. Moje Finanse


Zarządzanie swoimi finansami, czy nawet finansami firmy.
  • Spis wszystkich zakupów, zarobków.
  • Wyświetlanie statystyk, wykresów.
  • Podział na kategorię, tak żeby wszystko było bardzo przejrzyste.
  • Wyliczanie oszczędności.
  • Przypomnienia o różnych płatnościach.


7. Zarządzanie Księgarnią


Kolejny pomysł to Księgarnia. Czyli jakaś prosta aplikacja, którą można używać w księgarni. Tutaj możesz zaimplementować między innymi:
  • Możliwość zarządzania klientami.
  • Możliwość zarządzania książkami.
  • Możliwość przypisywania książek do klientów.
  • Walidacja.
  • Wysyłanie jakichś przypomnień.
  • Może nawet dodanie jakichś opłat, gdy ktoś za długo przetrzymuje książkę.
Musisz się zastanowić, jakie funkcję mogą być jeszcze przydatne, może ich być naprawdę sporo.


8. Zarządzanie Fakturami


Kolejny pomysł to aplikacja do zarządzania fakturami, czy nawet jakaś mini księgowość. Możesz zacząć na początek od zwykłej aplikacji tylko do zarządzania fakturami. Tutaj też masz sporo rzeczy do zaimplementowania:
  • Logowanie użytkowników.
  • Przeglądanie/edycja faktur.
  • Tworzenie nowych faktur.
  • Tworzenie faktur korygujących.
  • Zarządzanie klientami.
  • Zarządzanie produktami.
  • Oznaczanie zapłaconych faktur.
  • Wysyłanie powiadomień dotyczących płatności.
  • Filtrowanie, paginacja.
  • Walidacja.


9. Portal Internetowy (np. Facebook)


Trzeci rodzaj aplikacji, które możesz tworzyć, to kopie aplikacji, które już istnieją. Tworzenie takich aplikacji ma jedną dużą zaletę. Podczas jej tworzenia, nie musisz na siłę wymyślać nowych funkcjonalności, wystarczy tylko tworzyć wszystko, tak jak już jest w oryginalnej aplikacji, lub po prostu podobnie.

Tutaj wiadomo dobrym przykładem może być np. facebook.
  • Logowanie.
  • Zarządzanie swoim profilem.
  • Dodawanie nowych postów.
  • Możliwość dodawania znajomych.
  • Obserwowanie postów znajomych.
  • Wyświetlanie postów na osi czasu.
  • Możliwość dodania like'ów do postu.
  • Wyświetlanie profilu użytkowników.
  • Wiadomości prywatne.
Jest wiele funkcji, które możesz dodać, oczywiście nie musisz odwzorować całego portalu, tylko zaimplementować kilka podstawowych funkcji.


10. Komunikator (np. Slack)


Dziesiąty pomysł to zwykły komunikator, dzięki którym użytkownicy mogą wymieniać między sobą wiadomości. Coś podobnego do slack'a, mattermost'a, czy kiedyś gadu-gadu. Tak samo tutaj będzie:
  • Rejestracja/logowanie użytkowników.
  • Ładny interfejs użytkownika do wysyłania wiadomości.
  • Dodawanie znajomych.
  • Tworzenie nowych pokoi.
  • Obsługa wysyłki wiadomości.
  • Powiadomienia o nowych wiadomościach.
Pamiętaj, że w zależności od Twojej wiedzy takie aplikacje możesz dowolnie rozwijać. Warto stworzyć na początek po prostu działającą aplikację, działający projekt, który możesz cały czas rozwijać. Z czasem możesz dodawać nowe funkcjonalności.


Bonus


Pamiętaj, że nauka programowania to nie tylko zawsze praca na etacie. Jeżeli masz pomysł na aplikację, to równie dobrze możesz sam zacząć pisać taką aplikację, a później spróbować ją sprzedawać. Jest to droga, którą również polecam uczestnikom mojego szkolenia Zostań Programistą .NET. Chociaż przyznam, że sprzedaż takiej aplikacji również wymaga innych umiejętności, ale to jest temat na inny artykuł.


PODSUMOWANIE


To tyle przykładów aplikacji, które możesz tworzyć na początek. Jeżeli taki temat Cię interesuje, to daj znać w komentarzu, wtedy chętnie podzielę się z Tobą kolejnymi pomysłami.

Jeżeli taki artykuł Ci się spodobał, to koniecznie dołącz do mojej społeczności. Zapisz się na darmowy newsletter, gdzie co tydzień dzielę się wartościowymi materiałami w szczególności dotyczącymi C# i platformy .NET (darmowy zapis – newsletter).

Poprzedni artykuł - 5 Najczęstszych Błędów w Entity Framework Core.
Następny artykuł - 19 Popularnych Błędów w Nauce Programowania.
Autor artykułu:
Kazimierz Szpin
Kazimierz Szpin
CTO & Founder - FindSolution.pl
Programista C#/.NET. Specjalizuje się w Blazor, ASP.NET Core, ASP.NET MVC, ASP.NET Web API, WPF oraz Windows Forms.
Autor bloga ModestProgrammer.pl
Komentarze (2)
Mateusz
MATEUSZ, niedziela, 13 marca 2022 20:50
Dzień dobry, Czy mogę prosić o kolejne pomysły na palikacje?
Kazimierz Szpin
KAZIMIERZ SZPIN, poniedziałek, 14 marca 2022 09:34
Cześć Mateusz. Niedawno odbył się webinar, na którym przedstawiałem 100 pomysłów na aplikację :) Za kilka tygodni udostępnie go ponownie. Zapisz się do listy mailingowej i wtedy na pewno Cię nie ominie. Możesz to zrobić np. tutaj: https://www.modestprogrammer.pl/newsletter
Dodaj komentarz

Wyszukiwarka

© Copyright 2024 modestprogrammer.pl. Wszelkie prawa zastrzeżone. Regulamin. Polityka prywatności. Design by Kazimierz Szpin