„OOP vizsga kikérdező” változatai közötti eltérés
Nincs szerkesztési összefoglaló |
|||
| 301. sor: | 301. sor: | ||
# Feature Envy | # Feature Envy | ||
# Replace Type Code with Class | # Replace Type Code with Class | ||
== Melyik elv segítségével lehet feloldani a csomagok közötti körkörös függőséget? == | |||
{{Kvízkérdés|típus=egy|válasz=4}} | |||
# SRP | |||
# REP | |||
# LSP | |||
# DIP | |||
== Igaz vagy hamis az alábbi állítás? == | |||
A Visitor tervezési minta sérti az OCP elvet. | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
A Visitor tervezési minta sérti a DIP elvet. | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
Az öröklődés célja az ősosztályban definiált mezők újrahasznosítása. | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
A laza csatolás előnyös a karbantarthatóság szempontjából. | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
Egy szoftver akkor van jól tervezve, ha a stabil csomagok függnek az instabil csomagoktól. | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
A többnyelvűséget támogató erőforrásfájlok sértik az SCP elvet. | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Igaz | |||
# Hamis | |||
== Ki számít ismerősnek a Demeter-törvény szerint? == | |||
{{Kvízkérdés|típus=több|válasz=1,2}} | |||
# Akire van asszociációnk | |||
# Akit bejövő paraméterként kaptunk | |||
# Aki létrehozott minket | |||
# Aki velünk egy csomagban van | |||
== Tekintsük az alábbi csomagokat! == | |||
Mely csomagok stabilak? | |||
[[Fájl:Oop vizsga csomagok1.png|Keret]] | |||
{{Kvízkérdés|típus=több|válasz=1,2}} | |||
# B | |||
# C | |||
# A | |||
# D | |||
== Tekintsük az alábbi osztálydiagramot! == | |||
Teljesül-e a bar függvényre a Liskov-elv? | |||
[[Fájl:Oop vizsga liskov 2.png|Keret]] | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Teljesül | |||
# Sérül | |||
== Tekintsük az alábbi osztálydiagramot! == | |||
Teljesül-e a foo függvényre a Liskov-elv? | |||
[[Fájl:Oop vizsga liskov 1.png|Keret]] | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Teljesül | |||
# Sérül | |||
== Igaz vagy hamis az alábbi állítás? == | |||
A refaktorálás célja a kódban lévő hibák (bugok) javítása. | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
A refaktorálás során érdemes egyszerre több refaktorálási műveletet is elvégezni. | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Igaz | |||
# Hamis | |||
== A Feature Envy code smell melyik refaktorálási minták segítségével javítható? == | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Move method | |||
# Change value to reference | |||
# Rename method | |||
# Introduce explaining variable | |||
# Remove control flag | |||
== A Duplicated Code code smell melyik refaktorálási minták segítségével javítható? == | |||
{{Kvízkérdés|típus=több|válasz=2,3}} | |||
# Substitute algorithm | |||
# Extract class | |||
# Extract method | |||
# Inline method | |||
# Duplicate observed data | |||
== Az alábbiak közül melyek jó függvénynevek a clean code elvek szerint? == | |||
{{Kvízkérdés|típus=több|válasz=1,3,5}} | |||
# PickColor | |||
# Manager | |||
# Pick | |||
# CP | |||
# Copy | |||
# F | |||
# ColorPicker | |||
== Igaz vagy hamis az alábbi állítás? == | |||
A kivételek típusait a hívó objektum szemszögéből kell definiálni. | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
Az alábbi kódrészlet megfelel a clean code elveknek. | |||
public void Save(string message) | |||
{ | |||
try | |||
{ | |||
file.WriteLine(message); | |||
} | |||
catch (Exception ex) | |||
{ | |||
// Oh, come on! | |||
} | |||
} | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Igaz | |||
# Hamis | |||
== Tegye sorrendbe az alábbi API tervezési és megvalósítási lépéseket! == | |||
{{Kvízkérdés|típus=több|válasz=1,2,3,4,5}} | |||
# Követelmények összegyűjtése | |||
# Use-case-ek írása | |||
# API definiálása | |||
# Példák írása az API használatára | |||
# API implementálása | |||
== A HTTP cookie-k milyen állapottárolást tesznek lehetővé? == | |||
{{Kvízkérdés|típus=egy|válasz=3}} | |||
# Állapot a szerver adatbázisában | |||
# Állapot a szerver memóriájában | |||
# Állapot a kliens oldalon | |||
== Mire szolgál a trading service? == | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Szolgáltatások interfész alapján történő keresésére | |||
# Tőzsdei szolgáltatások szabványos interfészleírója | |||
# Szolgáltatások logikai név alapján történő keresésére | |||
# Szolgáltatások használati díjának adminisztrálására | |||
== Igaz vagy hamis az alábbi állítás? == | |||
Immutable objektumok használatával elkerülhető a védelmi másolatok készítése. | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Igaz | |||
# Hamis | |||
== Igaz vagy hamis az alábbi állítás? == | |||
Az ImmutableArray<T> hatékonyabb, mint az ImmutableList<T>, ha ritkán módosítjuk, de sokszor iterálunk rajta. | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Igaz | |||
# Hamis | |||
== Párosítsa az alábbi OO tervezési heurisztikákat a nekik leginkább megfelelő tervezési mintákkal! == | |||
Egy tervezési mintát legfeljebb egyszer használjon fel! | |||
A tartalmazó objektum használja a tartalmazott objektumokat! | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Abstract Factory | |||
# Decorator | |||
# Interpreter | |||
# Mediator | |||
# Singleton | |||
A tartalmazott objektumok ne beszélgessenek egymással közvetlenül! | |||
{{Kvízkérdés|típus=egy|válasz=4}} | |||
# Abstract Factory | |||
# Decorator | |||
# Interpreter | |||
# Mediator | |||
# Singleton | |||
A statikus szemantikát és kényszereket a modell struktúrájába építsük be! | |||
{{Kvízkérdés|típus=egy|válasz=3}} | |||
# Abstract Factory | |||
# Decorator | |||
# Interpreter | |||
# Mediator | |||
# Singleton | |||
== Párosítsa az alábbi OO tervezési heurisztikákat a nekik leginkább megfelelő refaktorálási mintákkal és code smell-ekkel! == | |||
Egy refaktorálási mintát vagy code smell-t legfeljebb egyszer használjon fel! | |||
A közös viselkedés és közös adat minél magasabban legyen az öröklési hierarchiában | |||
{{Kvízkérdés|típus=egy|válasz=2}} | |||
# Refactor: Hide method | |||
# Refactor: Pull up method | |||
# Refactor: Replace type code with class | |||
# Smell: Feature envy | |||
# Smell: Inappropriate intimacy | |||
Ne használjuk másik osztály nempublikus tagjait! | |||
{{Kvízkérdés|típus=egy|válasz=5}} | |||
# Refactor: Hide method | |||
# Refactor: Pull up method | |||
# Refactor: Replace type code with class | |||
# Smell: Feature envy | |||
# Smell: Inappropriate intimacy | |||
Minimalizáljuk az együttműködő osztályok között használt metódusok számát! | |||
{{Kvízkérdés|típus=egy|válasz=4}} | |||
# Refactor: Hide method | |||
# Refactor: Pull up method | |||
# Refactor: Replace type code with class | |||
# Smell: Feature envy | |||
# Smell: Inappropriate intimacy | |||
Minimalizáljuk a publikus metódusok számát! | |||
{{Kvízkérdés|típus=egy|válasz=1}} | |||
# Refactor: Hide method | |||
# Refactor: Pull up method | |||
# Refactor: Replace type code with class | |||
# Smell: Feature envy | |||
# Smell: Inappropriate intimacy | |||
Soha ne kódoljuk a típust enum vagy int értékekbe, használjunk helyette polimorfizmust! | |||
{{Kvízkérdés|típus=egy|válasz=3}} | |||
# Refactor: Hide method | |||
# Refactor: Pull up method | |||
# Refactor: Replace type code with class | |||
# Smell: Feature envy | |||
# Smell: Inappropriate intimacy | |||