Zasady zaliczenia projektu – Informatyka 3
Transkrypt
Zasady zaliczenia projektu – Informatyka 3
Zasady zaliczenia projektu – Informatyka 3 Zasady ogólne 1) Podstawą zaliczenia projektu jest oddanie programu który spełnia wymagania określone jako „podstawowe” oraz dokumentacji, w terminie podanym na początku zajęć. 2) Oprócz wyznaczonych spotkań kontrolnych zajęcia polegają na pracy samodzielnej w pracowni komputerowej lub w domu. Z ewentualnymi wątpliwościami i problemami można zgłaszać się zawsze w terminie zajęć (wg planu). 3) Projekty powinny być wybrane z przedstawionej listy, lub w przypadku własnych pomysłów (zachęcam) uzgodnione indywidualnie. 4) Maksymalna ilość wykonawców danego projektu nie może przekraczać liczby podanej w tabelce. 5) Projekt powinien być stworzony w jednym z języków dostępnych w MS VS 2003/2005 (lub wyższej wersji), dopuszczalne są inne języki po wcześniejszym uzgodnieniu z prowadzącym. 6) Projekty oznaczone znakiem *, to zadania „dla ambitnych”, sugerowane dla osób zainteresowanych programowaniem, z pewnym doświadczeniem. Nie oznacza to jednak, że są to zadnia niewykonalne. Wręcz przeciwnie – łatwo znaleźć liczne przykłady. 7) Dopuszczalne (a nawet zalecane) jest korzystanie z przykładów dostępnych w literaturze oraz Internecie, jednak pod pewnymi warunkami: a) w dokumentacji należy wyraźnie podać wszystkie wykorzystane źródła b) wykorzystany kod musi być dla piszącego w pełni zrozumiały (należy dokładnie znać i potrafić opisać zasadę działania całego kodu) c) program nie może być zbyt wierną kopią istniejącego przykładu (dyskwalifikacja) 8) W dokumentacji należy opisać zasadę działania programu (skrócona instrukcja obsługi) oraz jego budowę, tj.: wykorzystane klasy obiektów i ich rolę w aplikacji i sposób komunikacji. 9) Dopuszczalne jest wybranie jednego projektu przez maksymalnie 2 zespoły. Wtedy każdy zespół musi wykonać dany projekt w innym środowisku programistycznym lub z użyciem innych bibliotek graficznych. 10) Darmowe biblioteki graficzne do C++ : • SDL - (jest kurs w Internecie po polsku, biblioteka dobra do gier, łatwa implementacja ruchu klawiaturą i myszką), • ALLEGRO, ALLEGROGL - dobre biblioteki graficzne • Qt - darmowa biblioteka graficzna o dużych możliwościach (warto zapoznać się z narzędziem QtCreator (biblioteka o tyle ciekawa, że Nokia zapowiedziała użycie Qt jako głównej platformy programistycznej w Symbianie 4 oraz systemie MeeGo) • MinGW - darmowe środowisko programistyczne C++ • WinBGI - kolejna dobra biblioteka graficzna dla Borland C++ • GLUT - The OpenGL Utility Toolkit i wiele innych. 1 Ocena Przybliżone kryteria oceniania przedstawia poniższa tabelka. Wszystkie osoby w zespole otrzymują tę samą ocenę, o ile okaże się ze ich udział w projekcie był porównywalny. Pewien wpływ na ocenę ma również regularność pracy (sprawdzana na spotkaniach kontrolnych). ocena dst dst+ db db+ bdb kryteria (sumują się) działająca wersja programu, spełnienie większości wymagań określonych jako „podstawowe”, prosta dokumentacja, dobry wygląd GUI obsługa sytuacji wyjątkowych, program odporny na błędy użytkownika spełnienie wymagań rozszerzonych, dokładna dokumentacja (mile widziane wygenerowanie pliku XML – por. dokumentacja MS VS) 2 Spis tematów projektów r projektu: Temat projektu: 1 Maksymalna ilość wykonawców: 2 Zamiennik programu „PAINT” Wymagania: podstawowe: • • • • odczyt i zapis grafiki w formacie BMP rysowanie „ręczne” za pomocą pędzla o zadanym przez użytkownika kolorze i grubości zmiana koloru tła czyszczenie rysunku rozszerzone: • • odczyt i zapis grafiki w formatach TIFF i JPG rysowanie kształtów (linie proste, prostokąty i elipsy) Uwagi: Np. Visual C#, pomoc na stronie centrum XP r projektu: Temat projektu: 2 Maksymalna ilość wykonawców: 2 Program do katalogowania płyt CD Wymagania: podstawowe: • • • zapis struktury plików i katalogów z płyty do pliku (własny format) możliwość nadania płytce tytułu i zapisania komentarzy wyświetlanie zawartości płytki w formie drzewa plików i katalogów rozszerzone: • • • wykorzystanie bazy danych (plik lokalny) do stworzenia kartoteki płyt CD przeglądanie i edycja rekordów w bazie wyszukiwanie po tytułach lub zawartości Uwagi: warto zapoznać się z podobnymi programami freeware dla przykładu (np.disclib lub Visual CD) . Ograniczyć się do kluczowych, wyżej opisanych opcji. r projektu: Temat projektu: 3 ** Maksymalna ilość wykonawców: 4 Rejestrator / generator sygnałów wykorzystujący kartę dźwiękową Wymagania: podstawowe: • • • rozszerzone: Uwagi: • • • • program umożliwia rejestrację (tj. wyświetlenie i zapis) sygnału podanego na wejście mikrofonowe karty dźwiękowej w komputerze oraz podanie na wyjście karty dźwiękowej zadanego przez użytkownika sygnału dostępne powinny być 2 kanały wejściowe i 2 wyjściowe (stereo) użytkownik może zadać jeden z kilku dostępnych sygnałów do podania na wyjście (mini generator funkcyjny) wizualizacja sygnału (prosta, bez „gadżetów”) możliwość zadania dowolnego sygnału wyjściowego (z pliku tekstowego) wybór jednej z wielu dostępnych kart (jeśli jest zainstalowana więcej niż jedna) możliwość eksportu wykresu do pliku graficznego Podstawową sprawą będzie ustalenie czy program korzysta z DirectX czy jedynie z Windows API. Warto obejrzeć kody źródłowe podobnych programów dostępnych w Internecie. Projekt dla osób zainteresowanych programowaniem sprzętu. 3 r projektu: Temat projektu: 4 Maksymalna ilość wykonawców: 2 Program do rozmów w sieci LAN (tzw. „chat”) Wymagania: podstawowe: • • rozszerzone: • • Uwagi: szyfrowanie przesyłanych danych (za pomocą gotowych algorytmów dostępnych w bibliotece klas .NET) rozwiązanie problemu polegającego na tym że „wszyscy się widzą” – własne pomysły mile widziane Jako przykład formy wizualnej projektu powinien posłużyć dowolny popularny komunikator. Warto prześledzić przykłady w MSDN. Łatwo znaleźć w Internecie przykłady w języku C#, zaznajomić się z komponentem BackgroundWorker r projektu: Temat projektu: program umożliwia prowadzenie rozmów między wszystkimi użytkownikami sieci lokalnej którzy uruchomili aplikację brak centralnego serwera – rozgłaszanie w całej sieci 5 Maksymalna ilość wykonawców: 2 Książka adresowa Wymagania: podstawowe: rozszerzone: Uwagi: • • program jest „zubożonym” zamiennikiem książki adresowej dostępnej w systemie Windows (tylko podstawowe informacje) pracuje z bazą danych (plik lokalny, typ określony przez autora) w wersji podstawowej pozwala jedynie na dodawanie, usuwanie i przegładzenie kontaktów • • • praca z wieloma książkami kontaktów (osobne pliki baz) eksport/import do formatu XML przeszukiwanie bazy • Projekt można napisać praktycznie w każdym środowisku Visual C++ Visual C# r projektu: Temat projektu: 6 Maksymalna ilość wykonawców: 2 Program wspomagający naukę słownictwa języka obcego Wymagania: podstawowe: rozszerzone: Uwagi: • • • • program wyświetla na ekranie małe okienko w którym widoczne jest słówko w języku obcym i jego tłumaczenie co zadany odstęp czasowy wyświetlane jest następne słówko z listy okienko jest zawsze widoczne na wierzchu menu sterujące jest dostępne jako ikonka w pasku zadań (tray) baza słówek zapisana jest w plik tekstowym (1 plik = 1 lista słowek) • • • • możliwość wyboru kolejnego lub losowo wybranego słówka z listy lista słówek w formacie XML zmiana odstępu czasowego oraz pauza sprawdzanie poprawności pliku zawierającego słówka • Projekt dosyć łatwo zrealizować w Visual C#, zapoznać się z obiektem Timer 4 r projektu: Temat projektu: 7 Maksymalna ilość wykonawców: 2 Informacje o sprzęcie zainstalowanym w systemie Wymagania: podstawowe: • program wyświetla informacje o sprzętowej konfiguracji komputera rozszerzone: • eksport raportu o zainstalowanym sprzęcie do pliku tekstowego w formacie RTF Uwagi: Wzorem może być np. aplikacja SiSoft Sandra (tylko opcje dot. informacji, bez benchmarków) W Visual Studio zapoznać się np. z WMI Creator (MSDN) lub z biblioteką Wbemidl.h r projektu: Temat projektu: 8 Maksymalna ilość wykonawców: 2 Przeglądarka plików graficznych Wymagania: podstawowe: • • przeglądarka plików graficznych w popularnych formatach (min. to BMP i JPG) GUI składa się z dwóch części: z lewej strony drzewko plików i katalogów, z prawej wyświetlenie aktualnie wybranego obrazu i podstawowe informacje o pliku rozszerzone: • opcja wyświetlania miniatur plików graficznych danego katalogu Uwagi: Jako przykład może posłużyć np. IrfanView r projektu: Temat projektu: 9 Maksymalna ilość wykonawców: 3 Gra logiczna „Pamięć” Wymagania: podstawowe: • • • rozszerzone: Uwagi: • • zmiana liczby kartoników możliwość załadowania innego zestawu obrazków Projekt można zrealizować w języku C# lub Visual Basic, zapoznać się trzeba z biblioteką kontrolek Games Library r projektu: Temat projektu: prosta gra dla dzieci polegająca na znalezieniu pasujących do siebie obrazków, wśród rozłożonej puli na początku gry kartoniki leżą obrócone rysunkami w dół; po kliknięciu w dany obrazek odwraca się on na chwilę; jeśli jako następny zostanie wskazany obrazek pasujący, to para znika; gra kończy się z chwilą znalezienia wszystkich par w wersji podstawowej istnieje stała liczba kartoników (np. 10) ; można zamiast obrazków użyć prostych wzorów (kropki, kwadraty itp.) 10 Maksymalna ilość wykonawców: 2 Edytor plików typu ICO Wymagania: podstawowe: • • edytor ikonek systemu Windows (pliki typu *.ICO) duży obraz ikonki, wybór koloru rozszerzone: • konwersja obrazów BMP do formy ikonki ICO Uwagi: Przykładem (nieco zbyt rozbudowanym) może być edytor ikonek dostępny razem z MS Visual Studio 5 r projektu: Temat projektu: 11 * Maksymalna ilość wykonawców: 2 Kółko i krzyżyk Wymagania: Podstawowe • • gra w „kółko i krzyżyk” z komputerem (komputer to przeciwnik) jak najprostszy GUI – skupić się na grze Rozszerzone • • GUI okienkowe implementacja podstaw AI Uwagi: Dla zainteresowanych tematyką AI. Dobre wprowadzenie do algorytmów AI. Warto przejrzeć przykłady dostępne w MSDN i Internecie. Krótki kod programu – dużo czytania. r projektu: Temat projektu: 12 ** Maksymalna ilość wykonawców: 2 Elektroniczny system rozwiązywania oraz sprawdzania testów oceniających wiedzę studentów Wymagania: podstawowe rozszerzone Uwagi: • • • • • program ma możliwość losowej zamiany kolejności pytań oraz zamiany kolejności odpowiedzi w poszczególnych pytaniach • logowanie przez www, konta użytkowników, jedno administracyjne • administrator systemu decyduje ile pytań, ile odpowiedzi, określa nazwę testu • system oparty na bazie SQL • implementacja prostego szyfrowania Projekt może być kontynuowany w przyszłości w ramach pracy inżynierskiej/magisterskiej • r projektu: Temat projektu: do wyboru 4 – 5 odpowiedzi student zaznacza prawidłową odpowiedź ptaszkiem/checkboxem automatyczne odliczanie czasu, zakończenie testu po upływie czasu sprawdzenie testu oraz opcjonalny wydruk wyników z oceną wczytanie pytań z pliku tekstowego 13 Maksymalna ilość wykonawców: 2 Realizacja efektów dźwiękowych Wymagania: podstawowe • • • • rozszerzone Uwagi: • realizacja efektów dźwiękowych echo, fuzz, flanger, kaczka „wah-wah” wczytanie pliku *.wav obróbka z możliwościami regulacji siły efektu zapis do pliku *.wav 6 r projektu: Temat projektu: 14 Maksymalna ilość wykonawców: 2 Realizacja efektów graficznych Wymagania: podstawowe rozszerzone Uwagi: • wczytanie pliku *.bmp, *.jpg • aplikacja ma umożliwić dokonania efektów: rozmycia, wyostrzania, • siłę efektu można regulować • zapis do pliku • Projekt można zrealizować z wykorzystaniem Visual C++ klasy MFC Alternatywnie wykorzystać bibliotekę AForge.NET r projektu: Temat projektu: 15 Maksymalna ilość wykonawców: 2 Sterowanie programowym odtwarzaczem mp3 poprzez port USB Wymagania: Podstawowe /rozszerzone Uwagi: • • r projektu: Temat projektu: Włączenie/wyłączenie utworu powinno następować poprzez wciśniecie przycisku na kontrolerze Drugi przycisk powinien służyć do wybrania następnego utworu 16 Maksymalna ilość wykonawców: 2 Informatyczny system zarządzania klubem fitness Wymagania: podstawowe rozszerzone • • • • • • • • rejestracja klienta uwzględnienie różnych abonamentów/karnetów/zajęć uwzględnienie rabatów / karta lojalnościowa system informuje ile wejść zostało system informuje do kiedy ważny jest karnet klient używa karty elektronicznej / wszystkie informacje są na niej zapisywane rejestracja instruktora fitnessu oraz ilości osób na jego zajęciach przemyślane GUI - dostosowane do szybkiego tempa pracy na recepcji klubu fitness Uwagi: r projektu: Temat projektu: 17 Maksymalna ilość wykonawców: 2 Informatyczny system sklepu detalicznego Wymagania: podstawowe rozszerzone • • • • Wystawienie paragonu Wystawienie faktury VAT z danymi kontrahenta i sprzedawcy (należy zajrzeć do ustawy, w której jest napisane co faktura VAT powinna zawierać Określenie formy faktury VAT do wydruku (można zrobić drukuj do pdf) Wykorzystanie elektronicznego czytnika (RFID Tag, na którym zapisana jest nazwa towaru i cena) Uwagi: 7 18 r projektu: Temat projektu: Maksymalna ilość wykonawców: 2 Softwareowa realizacja metronomu elektronicznego Wymagania: podstawowe rozszerzone Uwagi: • Realizacja podstawowego metrum 4/4 z akcentem na 1 • GUI ma umożliwiać dołożenie osemek i szesnastek • zmiana tempa wirtualnym pokrętłem • triole, sekstole • metrum 6/8 • możliwość wyboru dźwięku (kliku) Zobaczyć realizacje jako aplety Javy - metronom online r projektu: Maksymalna ilość wykonawców: 2 Temat projektu: Gra SNAKE Wymagania: podstawowe rozszerzone Uwagi: r projektu: • program wykonany w środowisku consolowym • program wykonany w środowisku Visualnym (okienkowym) Mile widziane wykorzystanie bibliotek OpenGL 20 Maksymalna ilość wykonawców: 2 Temat projektu: Rozbudowany kalkulator Wymagania: podstawowe rozszerzone Uwagi: 19 • GUI podobne do „stylu” matlabowskiego • podstawowe operacje matematyczne • funkcje trygonometryczne • całkowanie numeryczne (różne metody) • działania na macierzach Projekt można napisać w Visual C++, zapoznać się trzeba z bibliotekami vcl, math, fstream r projektu: Temat projektu: Wymagania: podstawowe rozszerzone Uwagi: 21 Wymagania: podstawowe rozszerzone Uwagi: Maksymalna ilość wykonawców: 2 • • 22 Gra w statki gra w statki na jednym komputerze gra w statki online, np. klient - serwer, możliwość porozumiewania się graczy podczas gry, np. komunikowanie trafienia lub pudła Projekt można stworzyćw Visual C# (centrumxp.pl), online -> BacgroundWorker • • r projektu: Temat projektu: 2 Odtwarzacz plików mp3 r projektu: Temat projektu: Maksymalna ilość wykonawców: 23 Maksymalna ilość wykonawców: 2 Rozbudowana wersja kółko i krzyżyk Wymagania: podstawowe • rozszerzone • gracz musi ułożyć 4 elementy poziomo, pionowo lub po skosie, układany element nie może „zawisnąć” w powietrzu 8 r projektu: Temat projektu: Wymagania: podstawowe rozszerzone Uwagi: 24 Wymagania: podstawowe rozszerzone Uwagi: Wymagania: podstawowe rozszerzone Uwagi: 25 Wymagania: podstawowe rozszerzone Uwagi: Wymagania: podstawowe rozszerzone Uwagi: Maksymalna ilość wykonawców: 2 • • 26 Gra PUZZLE • • Obrazek standardowy lub możliwość wczytania własnego obrazka, podział na elementy, program oblicza całkowitą ilość ruchów Zapis stanu gry, możliwość późniejszego wczytania 27 Maksymalna ilość wykonawców: 2 Gra Tetris • • Np. Visual Basic , klasa VB Collection(Of type)znajdująca się w System.Collections.ObjectModel.Name r projektu: Temat projektu: 2 Gra SAPER r projektu: Temat projektu: Maksymalna ilość wykonawców: • • r projektu: Temat projektu: 2 Gra PACMAN r projektu: Temat projektu: Maksymalna ilość wykonawców: 28 Maksymalna ilość wykonawców: 1 Program budzik • wybór godziny wystąpienia zdarzenia lub określenia czasu, po którym nastąpi zdarzenie, wybór czynności jaką program wykona (np. wygeneruje dźwięk • 9