SimpleFundManager
Konsolowa aplikacja do zarządzania funduszami oraz transakcjami, stworzona jako projekt edukacyjny w języku C# (.NET).
SimpleFundManager to prosta aplikacja uruchamiana w trybie konsolowym, umożliwiająca:
- Dodawanie funduszy wraz z wartością początkową.
- Dodawanie transakcji powiązanych z wybranym funduszem.
- Automatyczne aktualizowanie wartości funduszu na podstawie wprowadzonych transakcji.
- Wyświetlanie listy funduszy.
- Zapisywanie oraz wczytywanie danych z pliku JSON.
- Zapisywanie zdarzeń i błędów w pliku logów.
- Walidację danych wejściowych.
Projekt został podzielony na warstwy, aby zachować czytelność i dobre praktyki programistyczne.
- .NET 8.0 lub nowszy
- System Windows, Linux lub macOS
- Dowolne IDE obsługujące C#, np. Visual Studio 2022
SimpleFundManager/ │ ├── Controller/ │ └── ActionController.cs │ ├── Models/ │ ├── Fund.cs │ ├── Portfolio.cs │ └── Transaction.cs │ ├── Services/ │ ├── FundManager.cs │ ├── LogService.cs │ ├── ValidationService.cs │ └── ConsoleColorService.cs │ ├── Program.cs └── README.md
Opis najważniejszych elementów:
- Models – klasy danych (Fundusz, Transakcja, Portfel).
- Services – logika biznesowa, walidacja, zapisywanie logów.
- Controller – obsługa przepływu użytkownika i interakcji.
- Program.cs – punkt wejścia aplikacji.
- Dodawanie nowego funduszu
- Lista istniejących funduszy wraz z bieżącą wartością
- Dodawanie transakcji (wpływy/odpływy)
- Aktualizacja wartości funduszu
- Podgląd transakcji:
- Ostatnie 20 transakcji
- Indeksowanie transakcji
- Zapis do pliku
portfolio.json - Automatyczne wczytywanie danych przy starcie
- Plik
log.txt - Zapis zdarzeń i błędów z datą i godziną
- Sprawdzanie poprawności nazw
- Sprawdzanie liczb
- Obsługa błędów z komunikatami dla użytkownika
Opcja A – Visual Studio
- Otwórz rozwiązanie w Visual Studio
- Upewnij się, że ustawiony jest projekt startowy SimpleFundManager
- Kliknij Start (F5)
Opcja B – z konsoli W katalogu projektu: dotnet run
-
portfolio.json
Zawiera zapisane fundusze oraz transakcje w formacie JSON. -
log.txt
Zawiera historię zdarzeń i komunikatów aplikacji:- operacje użytkownika
- błędy oraz wyjątki
- znaczniki czasowe
Do you want to add a fund (f), add a transaction (t), show funds (s), show transactions (x), or quit (q)? Enter fund name: TechGrowth Enter starting value: 10000
Fund added.
Możliwe przyszłe ulepszenia:
- Eksport danych do CSV
- Interfejs webowy (np. ASP.NET MVC/Blazor)
- Raporty wzrostu funduszy
- Wykresy zmian wartości
Wiktor Staniszewski
Projekt edukacyjny wykonany w ramach zajęć programowania w C#.
Plik README wygenerowany przez AI.