Особиста бугалтерія
41 PLN1. Спроектувати застосування, розділене на рівні, а також представити у вигляді UML діаграми(-ам) функціонал згідно з варіантом.
1.1. Представити загальну архітектуру застосування, зв’язки між рівнями.
1.2. Представити діаграми класів кожного рівня.
2. Розробити застосування на мові C#, яка відповідає вимогам у варіанті. Відокремити рівні доступу до даних, бізнес логіки та представлення. Для демонстрації роботи використати WebAPI.
1.1. Верхній рівень – представлення (UI), для взаємодії з користувачем. Реалізація – як окремий проект в рішенні (solution). UI повинен бути ASP.NET WebAPI. При цьому на рівні UI повинні бути тільки операції взаємодії з користувачем (без бізнес логіки). UI повинен бути максимально простим, неперевантаженим великою кількістю операцій.
1.2. Проміжний рівень – бізнес логіка, реалізована як бібліотека в рішенні. На цьому рівні реалізований основний функціонал застосування.
1.3. Нижній рівень – бібліотека для доступу до даних. Використати Entity Framework code first. Доступ до даних організувати з використанням шаблонів проектування Repository та Unit of Work (UoF). Репозіторії надають доступ до набору сутностей (entities) певного типу. UoW є точкою єдиного доступу до репозіторіїв та контексту Entity Framework.
3. Шари взаємодіють між собою за наступним принципом: представлення використовує бізнес-логіку, бізнес-логіка – рівень доступу до даних. Для передачі даних крізь шари використовується технологія відображення (mapping). Для зменшення залежностей між рівнями використати DI (Ninject чи Autofac).
4. При необхідності для більшої ізоляції основних рівнів можуть вводитися додаткові рівні (наприклад, винесення Repository та UoW).
5. Діаграма(-и) та вихідний код повинні відповідати основним принципам проектування: OOP, SOLID, Law of Demeter (LoD), DRY, YAGNI, KISS, cohesion – coupling, inheritance with caution.
6. Введені користувачем дані повинні валідуватися.
7. Передбачити обробку виняткових ситуацій.
8. Юніт тести повинні бути написані на NUnit чи XUnit з використанням DI і покривати мінімум 50% функціоналу.
Варіант 1
Застосування, в якому користувач може вести особисту бухгалтерію
Базові операції додавання/ оновлення/ видалення/ отримання інформації по кожній сутності: категорії/ підкатегорії (будь-який рівень вкладеності), рахунки, типи операцій (доходи/ витрати)
- можливість роботи і з декількома типами рахунків доходів / витрат (наприклад, стипендія, зарплата, депозит / кредит в банку і т.д.)
- групування витрат по типах
- кожний дохід / витрата повинен бути прив'язаний до рахунку / типу
- можливість перерахувати кошти з одного рахунку на інший
- можливості аналізу по всіх рахунках / типах і по кожному окремо (дохід, витрата, баланс) за різні часові проміжки
- додатковий бал - реалізація спільних рахунків для різних користувачів (наприклад, витрати по кредиту за квартиру можуть проводиться з рахунків всіх членів сім'ї, які мають дохід)
Aktualne zlecenia dla freelancerów w kategorii C#
Tworzenie wtyczki do integracji z systemem POS Syrve, C#Opracować wtyczkę do systemu POS Syrve (on-premise), która jest instalowana na serwerze lokalu. Wtyczka ma: (1) przesyłać na nasz serwer dane w czasie rzeczywistym — zamówienia, statusy stolików, płatności, rachunki; (2) przyjmować polecenia od Reservble — potwierdzenia… C#, Programowanie stron internetowych ∙ 19 godzin 9 minut temu ∙ 11 ofert |
Tworzenie lub modyfikacja oprogramowania i logiki dla trzech autonomicznych stacji LoRa opartych na ESP32.
410 PLN
tworzenie lub modyfikacja oprogramowania i logiki dla trzech autonomicznych stacji LoRa opartych na ESP32. Urządzenia powinny uruchamiać punkt dostępu Wi-Fi, udostępniać lokalną stronę przez przeglądarkę (HTTP), odbierać tekst i obrazy w promieniu 5-10 km (plus minus),… C i C++, C# ∙ 1 dzień 2 godziny temu ∙ 3 oferty |
S1GG1LPotrzebna osoba, która z początkowego kodu launchera Minecraft pod projekt, zmieni design według własnego uznania, ale są niewielkie wymagania dotyczące stylu, aby był w fioletowych odcieniach. Jeśli chodzi o wynagrodzenie, proponujcie cenę za pracę. Ale budżet nie jest duży,… C#, Tworzenie gier ∙ 3 dni 10 godzin temu ∙ 7 ofert |
Dobrobka w istniejącej wersji 1c detalicznego bloku dla RC (centrum dystrybucji)Ogólnie wyjaśnię, co mamy za bazę - jest ogólny serwer, gdzie znajduje się baza Detal (gdzie rejestrowane są wszystkie przychody) - baza UTP, do której przelewają się wszystkie sprzedaże - liczy się marża, stany magazynowe - małe bazy detalicznych sklepów. W przypadku wymian,… C i C++, C# ∙ 8 dni 11 godzin temu ∙ 6 ofert |
Należy przeprowadzić migrację obecnego programu roboczego z foxpro na C#Cześć wszystkim! Mamy program na foxpro (ma kilka modułów, program do ewidencji), mamy źródła programu, w razie pilnej potrzeby można skonsultować się z osobami zajmującymi się wsparciem bieżącego programu. Co należy zrobić: 1. Analiza, co i jak działa, sporządzenie listy… C#, Aplikacje desktopowe ∙ 11 dni 2 godziny temu ∙ 19 ofert |