Készítsen el egy raktárkészlet-kezelő alkalmazást egy elektronikia áruházlánc számára. A vállalat több telephelyen rendelkezik raktárral és a raktárkészlet nyilvántartására szeretne egy software-t. Tervezzen egy osztályhierarchiát, mely reprezentálni tud:
- egy raktárat (megnevezés, cím, össz. kapacitás, termékek listája darabszámmal*). [Közv. őse: Object]
- egy terméket (cikkszám, megnevezés, ár, márka). [Közv. őse: Object, Abstract legyen!]
- egy márkát (márkanév, minőségkategória (1-5)). [Enum]
* termékek listája darabszámmal: generikus Map, HashMap legyen (kulcs: cikkszám/termék példány, érték: darabszám)
A termék abstract osztálynak készítsen két leszármazott osztályt, mely két tetszőleges elektronikai cikket reprezentáljon. Az egyiknek pl. "képátlója legyen", a másiknak pedig "hangfalainak száma"...(szóval legyenek plusz mezők az osztályban).
Készítsen olyan main() metódust, mely a következő szimulációra képes (felhasználótól
semmilyen adatbevitelre nincs szükség):
- létrehoz minimum 2 raktárat
- a raktárakba felvesz néhány konkrét terméket (cikkszám vagy termék instance alapján)
- kiiratja konzolra a raktárak tartalmát (toString() legyen elkészítve mindenhol!)
- elvesz valamennyi tételt valamely raktárból (cikkszám vagy termék instance alapján)
- kiiratja konzolra a raktárak tartalmát
- hibaesetek tesztelése, szimulálása
A fentiekből a következők következnek, hogy a raktár osztályban a következő metódusoknak meg kell lennie:
- X db adott termék hozzáadása a raktárkészlethez (figyelni kell, hogy a raktárban van-e elég hely, ha nincs, hibaüzenetet kell adni)
- Y db adott termék elszállítása a raktárból (figyelni kell, hogy van-e a raktárban adott termék, illetve van-e Y db. Ha nincs, akkor hibaüzenet, ha nincs elég, akkor kevesebb elszállítása, és figyelmeztetés!)
4-es osztályzathaz szükséges:
Hibaüzenetek kezeléséhez használjon kivételkezelést.
5-ös osztályzathoz szükséges:
Egészítse ki az alkalmazást egy áruház osztállyal, mely a raktárak listáját tartalmazza (ArrayList). Egy adott termék hozzáadása illetve elszállítása ezen osztályon keresztül történjen, és az osztály implementációja döntse el hogy melyik raktárba helyezi el a termékeket (melyikbe van hely), illetve melyikből szállítja el. Kifele csak akkor adjon hibaüzenetet, hogyha a kérés teljesíthetetlen (egyik raktárban sincs hely, illetve a raktárakból összesen nem lehet a kért árumennyiséget összegyűjteni).
Beadás: egy darab ZIP formátumban tömörített, a teljes project könyvtárat tartalmazó
állományt kell feltölteni ...
- foofighter blogja
- A hozzászóláshoz be kell jelentkezni
- 2780 megtekintés
Hozzászólások
Jáva ellen nincs oltásom, csak némi C++, úgyhogy fenntartással kezeld a véleményem.
Nekem erre 80 perc iszonyú kevés lenne.
- A hozzászóláshoz be kell jelentkezni
C++ -al sem nehez IMHO.
Amit nem lehet megirni assemblyben, azt nem lehet megirni.
- A hozzászóláshoz be kell jelentkezni
Szerintem igen.
- A hozzászóláshoz be kell jelentkezni
ez mind? mondjuk csak 30 perc volt, dolgozz még rajta, még mindig van még 23 perced :P
- A hozzászóláshoz be kell jelentkezni
Tudom off, de zárthelyiről jutott eszembe:
Végre:
http://index.hu/belfold/2010/10/22/uj_felsooktatasi_torveny/
Mellesleg ha nem akarod magad megutáltatni, akkor kevés az idő. és olyat ne írj, hogy írott, és íratlan szabályok. Majd mutasd fel az íratlan szabályokat ha reklamál a diák a dékánnál, hogy mire gondoltál.
Ha tanítottál, és leadtad, akkor kérdd számon, de akkor se így fogalmazz. :)
Sokadik szerk:
Mellesleg nem szerencsés a feladatod. Mert ez nem pusztán programozási, hanem rendszertervezési feladat is. Az meg mit keres a Java PROGRAMOZÁS ALAPJAI között? Ha rendszertervezést tanítottál nekik, akkor semmi gond. De ez így nekem akkor sem áll össze. Kicsit olyan, hogy azok fogják tudni megoldani, akiknek mániájuk a programozás, a többiek meg, akik azért tanulják, mert muszáj, mint a matekot, azok összehoznak belőle egy kettest.
Java programozás alapjaiba programozásfeladatot tennék. Nem írott és íratlan szabályok cibálását. Nálunk voltak olyan PhD-sok akiket azért utáltunk, mert hasonló módszerrel vizsgáztattak. Sose azt kérték számon, amit leadtak, vagy ami az anyag volt. érdekes, hogy az idősebb, nem PhD-sok, akiket sokkal jobban tiszteltünk, tudták, hogy mit adtak le év közben, és nem szívatni akartak.
- A hozzászóláshoz be kell jelentkezni
Párszor kiegészítettem, de ez már a végleges verzió. :)
- A hozzászóláshoz be kell jelentkezni
Nem oktatom, tanulom a nyelvet. :D Elismerem kicsit félrevezető a kérdés.
- A hozzászóláshoz be kell jelentkezni
+1
A programozás alapjait én sem Javaval kezdeném, hanem C-vel. Vagy esetleg Pythonnal, ha nem villanykar. :) De II. évfolyam? Az már rég késő.
A feladat amúgy nem nehéz szerintem.
- A hozzászóláshoz be kell jelentkezni
Nem programozas alapjai, hanem a Java programozas alapjai. Azaz a Java platform alapjai. Szovegertes egyes.
- A hozzászóláshoz be kell jelentkezni
A gyors olvasás átka, hogy a sor végén levő 4 betűs Java szó felett elsiklott a szemem és a következő sor csupa nagy betűjét kiemelten kezelte. :(
- A hozzászóláshoz be kell jelentkezni
Rendszertervezés? Ez csak sima öröklődés. Én sokkal szívesebben írtam volna ilyet, mint pl. bináris fát.
---
BME-VIK '09
Compaq Mini 311 - N270 @ 2323 MHz - 3GB DDR3 @ 1240 MHz - ION
- A hozzászóláshoz be kell jelentkezni
+1. Ebben semmi rendszertervezes nincs, csak tudjak hasznalni a Java alapveto nyelvi elemeit meg alapveto Java osztalyokat. Ennyi.
- A hozzászóláshoz be kell jelentkezni
+1, ez rendszertervezés feladat. Még azt is megadod neki, hogy ne felejtség el a toString() metódust definiálni... Ez nem Java tudást kér számon, főleg fejlesztő környezet előtt ülve nem.
- A hozzászóláshoz be kell jelentkezni
Ebben mégis mi a halál a rendszertervezés? Ott van viláogsan specifikálva, hogy mi a tököm a feladat.
Csak le kell kódolni. 80 perc erre elégnek kell lennei.
----------------
Lvl86 Troll
- A hozzászóláshoz be kell jelentkezni
Szerintem 80 perc alatt teljesíthető. Igazából gondolkodni nem kell rajta, csak gépelni.
Mit megadtam volna érte, ha akármelyik programozás ZH-m/vizsgám gépen írhattam volna... :)
---
BME-VIK '09
Compaq Mini 311 - N270 @ 2323 MHz - 3GB DDR3 @ 1240 MHz - ION
- A hozzászóláshoz be kell jelentkezni
Szerintem nem nehez a feladat, de olyan dolgokat kell hozza tudni, amikkel idot lehet nyerni, nem eleg csak magat a javat ismerni
---
return NEVER;
Ubuntu 8.10
HP nx6110
http://java.tszebeni.hu
- A hozzászóláshoz be kell jelentkezni
"termékek listája darabszámmal: generikus Map, HashMap legyen"
Miert nem Map, aztan olyan megvalositast rak ala, ami neki tetszik? Akar TreeMap-et is, az rendezetten tarol. Igy a kereses ideje gyors, a tarolase lassu.
"mely a raktárak listáját tartalmazza (ArrayList)"
Mondjuk ennek a valodi modellje inkabb Set, hiszen egy raktar nem lehet benne ketszer. Valamint szerintem ne add meg, hogy milyen List implementaciot hasznaljanak, ez rossz programozasi szokasoknak lehet melegagya. Vagy akar hasznalhat Collection-t is a raktarak tarolasara, az implementacio meg mindegy.
Amugy 80 perc erre boven eleg.
- A hozzászóláshoz be kell jelentkezni
a termeknek szerintem nem abstractnak, hanem interface-nek kellene lennie.
- A hozzászóláshoz be kell jelentkezni
Szerintem így, hogy már előre meg van tervezve tulajdonképpen a dolog, egyszerűen csak gépelni kell, és simán teljesíthető 80 perc alatt. Persze nem árt ha nem akkor először lát az ember javát, és nem ott kezdi el keresni mondjuk egy ArrayList-nek a sokat használt tagfüggvényeinek a definícióit.
- A hozzászóláshoz be kell jelentkezni
Ha begyakorlod típuspéldákon a szükséges dolgokat, akkor szerintem nem nehéz, nekünk is ilyesmi volt, de 60 percben. Nincsenek benne nehéz feladatok, inkább több, kisebb elvárás van.
--
"ktorrent utan az utorrent volt [...] beallithatatlan"
...
- A hozzászóláshoz be kell jelentkezni