PDF letöltése
1) Melyek a szoftverek fontos kategóriái?
- Rendszer szoftver
- Alkalmazás szoftver
- Beágyazott szoftver
- Webalkalmazások
- Mesterséges intelligencia szoftver
- Tudományos szoftver.
2) Mi a fő különbség a számítógépes program és a számítógépes szoftver között?
A számítógépes program egy darab programozási kód. Jól meghatározott feladatot lát el. Másrészt a szoftver tartalmaz programozási kódot, dokumentációt és felhasználói útmutatót.
3) Mi a szoftver újratervezése?
Ez egy szoftverfejlesztési folyamat, amelyet a szoftverrendszer fenntarthatóságának javítása érdekében végeznek.
4) Írja le röviden a szoftverfejlesztési folyamatot:
A szoftverfejlesztés egy életciklusa a következő szakaszokból áll:
- Igényelemzés
- Leírás
- Szoftverarchitektúra
- Végrehajtás
- Tesztelés
- Dokumentáció
- Képzés és támogatás
- Karbantartás
5) Milyen SDLC modellek állnak rendelkezésre?
A Waterfall Model, a Spiral Model, a Big-Bag model, az Iterative Model és a V- Model a híres SDLC modellek egyike.
6) Mi az ellenőrzés és az érvényesítés?
Igazolás:
Az ellenőrzés olyan kifejezés, amely azokra a tevékenységekre utal, amelyek biztosítják, hogy a szoftver egy adott funkciót valósítson meg.
Érvényesítés:
Olyan tevékenységekre vonatkozik, amelyek biztosítják, hogy a szoftvereket az ügyfelek igényeinek megfelelően építsék fel.
7) Mit jelent a hibakeresés a szoftverfejlesztési folyamatban?
A hibakeresés az a folyamat, amely a hibák eltávolítását eredményezi. Nagyon fontos része a sikeres tesztelésnek.
8) Hogyan lehet megbizonyosodni arról, hogy a kód egyszerre biztonságos és gyors?
A szoftverben mindig a fejlesztés biztonsága az első. Tehát, ha a program futtatása lassú, akkor megpróbálom azonosítani az okok összetettségét.
9) Nevezzen meg két eszközt, amelyet a szoftverkövetések nyomon követésére használnak?
Sokféle módon nyomon követhetjük a követelményeket.
Két általánosan használt:
- Készítsen egy követelmény-specifikációs dokumentumot az összes követelmény felsorolásához.
- Hozzon létre egy excel lapot a listán a követelmény, típus, függőség, prioritás stb.
10) Mi a fő különbség a csonkok, a gúny között?
A csonk egy olyan interfész minimális megvalósítása, amely általában hardveresen kódolt adatokat ad vissza, míg az ál általában a kimeneteket igazolja az elvárásokkal szemben. Ezeket az elvárásokat a teszt meghatározza.
11) Milyen nyelven szeret programozási algoritmusokat írni?
Minden fejlesztőnek megvan a véleménye a programozási nyelv választásáról. A magas szintű nyelveket előnyben kell részesíteni, mert dinamikusak. Mint a C és a C ++ nyelvek.
12) Mi a számítógépes szoftver?
A számítógépes szoftver egy olyan csomag, amely tartalmaz egy szoftver programot, annak dokumentációját és a szoftver használatának használati útmutatóját.
13) Ön szerint melyik SDLC modell a legjobb?
Nincs ilyen rangsorolás, mivel az SDLC modelleket a fejlesztési folyamat szükségességének megfelelően fogadják el. Szoftverenként eltérhet.
14) Ki a szoftver projekt menedzser? Mi a szerepe?
A szoftverprojekt menedzser a szoftverfejlesztési projekt irányításáért felelős személy.
A projektmenedzser végzi a projekt tervezését, figyeli az előrehaladást, a kommunikációt. Kockázatokat és erőforrásokat is kezel, hogy a projektet időbeli, költségi és minőségi korlátok között teljesítse.
15) Mit jelent a szoftver hatóköre?
A szoftver hatóköre jól körülhatárolható határ. Ez magában foglal mindenféle tevékenységet, amelyet a szoftvertermék fejlesztése és szállítása érdekében végeznek.
A szoftver hatóköre meghatározza a szoftver részeként szállítandó összes funkciót és műterméket. A hatókör meghatározza azt is, hogy a termék mit fog csinálni? Mi nem része a projektnek? Mi a projektbecslés?
Ez a folyamat hasznos a szoftvertermék különféle szempontjainak becsléséhez. Ez a becslés dönthet akár szakértőkkel konzultálva, akár előre meghatározott képletek segítségével.
16) Hogyan lehet megtalálni a szoftvertermék méretét?
A szoftvertermék méretét két módszerrel lehet kiszámítani
- A leszállított kód sorainak megszámlálása
- A leadott funkciópontok számolása
17) Mik a funkciópontok?
A funkciópontok a szoftvertermék által biztosított jellemzők. A szoftver méretének legfontosabb méréseként tartják számon.
18) Milyen szoftverprojekt-becslési technikák állnak rendelkezésre?
A legszélesebb körben alkalmazott becslési technikák:
- Bomlási technika
- Empirikus technika
19) Mi a szoftverkonfiguráció-kezelés?
A szoftverkonfiguráció-kezelés a szoftverben bekövetkező változások nyomon követésének és ellenőrzésének folyamata.
A változásszabályozás olyan funkció, amely biztosítja, hogy a szoftverrendszerben végrehajtott összes változás következetes legyen, és a szervezeti szabályok és előírások alapján kerüljön létrehozásra.
20) Hogyan mérhető a projekt végrehajtása?
Mérhetjük a projekt végrehajtását az Aktivitásfigyelés, az Állapotjelentések és a Mérföldkő ellenőrzőlisták segítségével.
21) Mesélj néhány projektmenedzsment eszközről.
Számos típusú felügyeleti eszközt használnak, amire szükség van egy szoftverprojektre. Ezek egy része Pert-diagram, Gantt-diagram, erőforrás-hisztogram, állapotjelentések stb.
22) Melyek a szoftverkövetelmények?
A szoftverkövetelmények a javasolt szoftverrendszer funkcionális leírását jelentik. Feltételezzük, hogy ez a célrendszer, annak funkciói és jellemzői leírása.
23) Mi a megvalósíthatósági tanulmány?
Ez egy intézkedés annak kiderítésére, hogy a szoftverprojekt fejlesztése mennyire praktikus és hasznos lesz a szervezet számára. A szoftverelemző tanulmányt készít a projekt gazdasági, műszaki és működési megvalósíthatóságának megismerése érdekében.
-
Gazdasági: Ez magában foglalja a képzés költségét, a kiegészítő és az eszközök költségeit, valamint a projekt költségeinek és hasznainak átfogó becslését.
-
Műszaki: Értékeli a műszaki szempontokat. Lehetséges-e ezt a rendszert fejleszteni? A gép (ek) és az operációs rendszer alkalmasságának felmérése, amelyen a szoftver végrehajtásra kerül, a szoftverfejlesztés ismerete és a projekt számára elérhető eszközök.
-
Operatív: Itt az elemzőnek fel kell mérnie, hogy a szervezet képes lesz-e simán alkalmazkodni a végrehajtott változásokhoz a projekt iránti igénynek megfelelően. Megéri-e megoldani a problémát a becsült költséggel?
Mindezek tanulmányozása után elkészül a végleges megvalósíthatósági jelentés.
24) Melyek a funkcionális és a nem funkcionális követelmények?
A funkcionális követelmények olyan funkcionális jellemzők, amelyeket a felhasználók elvárnak a javasolt szoftverterméktől.
A nem funkcionális követelmények a biztonság, a teljesítmény, a felhasználói felület kinézetével és működésével kapcsolatosak.
25) Mi a szoftveres metrika?
A Software Metrics a szoftverfolyamat különböző aspektusait kínálja, amelyek a következőkre oszthatók:
- Követelménymutatók: Hosszúsági követelmények, teljesség
- Termékmutatók: Kódoló vonalak száma, Objektumorientált mutatók, Tervezési és tesztmutatók.
26) Mi a moduláció?
A moduláció egy olyan technika, amelyet a szoftverrendszer különféle diszkrét modulokra történő felosztására használnak. Ez várhatóan önállóan látja el a feladatokat.
27) Mi a kohézió?
A kohézió olyan intézkedés, amely meghatározza az intra-megbízhatóságot a modul elemei között.
28) Megemlít néhány szoftverelemző és tervező eszközt?
Néhány legfontosabb szoftverelemző és -tervező eszköz a következő:
- Adatfolyam-diagramok
- Strukturált diagramok
- Strukturált angol
- Adatszótár
- Hierarchikus bemeneti folyamat Kimeneti diagramok
- Entitás-kapcsolati diagramok és döntési táblázatok
29) Mit jelent a 0. szintű adatfolyam diagram?
A legmagasabb absztrakciós szintet a DFD 0. szintjének nevezzük. Kontextus szintű DFD-nek is nevezik. A teljes információs rendszert egy diagramként ábrázolja.
30) Mi a fő különbség a strukturált angol és az Álkód között?
A strukturált angol anyanyelvű angol. Egy program modul felépítésének megírására szolgál. Programozási nyelvű kulcsszavakat használ. Másrészt a Pszeudokód sokkal inkább hasonlít a programozási nyelvhez, bármilyen szintaxis nélkül.
31) Mi a strukturált tervezés?
A strukturált tervezés a probléma konceptualizálása. Megoldás-tervezésnek is nevezte, amely az „oszd meg és hódítsd” stratégián alapul.
32) Mi a funkcionális programozás?
Ez egy programozási módszer, amely egy matematikai függvény fogalmait használja. Matematikai függvényként biztosítja a számítás eszközeit, amelyek a program állapotától függetlenül eredményeket is produkálnak.
33) Mi a minőségbiztosítás és a minőségellenőrzés?
A minőségbiztosítás ellenőrzi, hogy a szoftver fejlesztése során megfelelő eljárást követnek-e, míg a minőségellenőrzés a szoftvertermék minőségének fenntartásával foglalkozik.
34) Mik azok a CASE eszközök?
A CASE jelentése számítógéppel támogatott szoftverfejlesztés. Automatizált szoftveralkalmazásokból állnak, amelyek az SDLC tevékenységek támogatására, fejlesztésére és megerősítésére szolgálnak.
35) Melyik folyamatmodell távolítja el a hibákat, mielőtt a szoftver bajba kerülne?
A tisztatéri szoftverfejlesztési módszer eltávolítja a hibákat, mielőtt a szoftverek bajba kerülnének.
36) Oldja meg ezt a problémát
Húsz, kétféle zokni van egy fiókban, egy sötét szobában. Mennyi a zokni minimális száma, amelyet be kell vennie ahhoz, hogy megfelelő pár legyen? "
Ha felvesz három zoknit, akkor ugyanolyan típusúak lehetnek, még akkor is, ha az esély 50%. Az esély soha nem egyenlő valóság. Ezért az egyetlen mód arra, hogy "biztosítson egyező párot", legalább 11 számú sokkot vesz fel.
37) Hogyan lehet megbizonyosodni arról, hogy az írott kód, amely képes kezelni a különféle hibahelyzeteket?
Tudok olyan teszteket írni, amelyek meghatározzák a várható hibahelyzeteket.
38) Magyarázza el a szál és a folyamat közötti különbségeket?
A folyamat a számítógépes program példánya. Egyetlen programban lehetséges egy vagy több szál.
39) Mondja meg a különbséget az EXE és a DLL között?
Az exe egy futtatható program, míg a DLL egy fájl, amelyet a programok dinamikusan tölthetnek be és futtathatnak. Ez egy külső kódtár a programok számára. Mivel mindkettő különböző program, használja ugyanazt a DLL-t újból, ahelyett, hogy a fájl a fájlban lenne. Csökkenti a szükséges tárhelyet is.
40) Mi az erős gépelés és a gyenge gépelés? Melyiket részesítik előnyben? Miért?
Az erős gépelés ellenőrzi a változók típusait fordításkor. Másrészt a gyenge gépelés ellenőrzi a rendszer típusait futás közben. Közülük mindig az erős gépelést részesítik előnyben, mert ez minimalizálja a hibákat.
41) Írja le a különbséget az interfész-orientált, az objektum-orientált és az aspektus-orientált programozás között.
- Az interfész programozása szerződéses.
- Az objektumorientált módszer olyan szemcsés objektumok írására, amelyeknek egyetlen célja van.
- Az aspektusorientált programozás célja a kód szétválasztása oly módon, hogy különféle objektumok végezzék a fő feladatokat, a kiegészítő feladatokat pedig független objektumok végezzék.
42) Miért mindig rossz ötlet a fogás (kivétel) használata?
Rossz ötlet, mert:
- Mivel nincs meghatározva változó, nem lehet elolvasni a kivételt
- Jó, ha kivételt használ, ha ismert kivétel típusa van.
43) Milyen típusú adatokat továbbítanak a HTTP fejlécek?
A szkript és a metaadatok HTTP fejléceken keresztül továbbíthatók.
44) Hogyan rangsorolja a követelményeket?
Először meg kell terveznie egy rendszert az adatszerkezet kiértékelésével. Ezután lépjen át a támogatásához szükséges kódstruktúrára.
45) Adjon különbségeket az objektum-orientált és az alkatrész-alapú tervezés között?
Az objektum-orientált tervezés bizonyos fokig könnyen beágyazható alkatrész-alapú tervezésbe.
46) Mikor alkalmazza a polimorfizmust?
A polimorfizmust akkor használjuk, ha az osztály öröklésénél felülbírálásra van szükség. Közös osztályokról és megosztott szerződésekről szól.
47) Mi a különbség a verem és a sor között?
- A várólista mindig az első be, az első kimenet
- A verem mindig az utolsó be, az első kimenet
48) Mi elengedhetetlen a kód minőségének teszteléséhez?
Szerintem az egység tesztelési keretrendszer elengedhetetlen a kód minőségének teszteléséhez.
49) Ön szerint drága a szoftverek karbantartása?
Szerintem a szoftverek karbantartása soha nem lesz drága, ha megfelelő fejlesztési folyamatot használunk.
50) Adj nekem különbségeket a címkék és az ágak között?
A címkék azoknak a kiadásoknak a verzióját jelentik, amelyek ideiglenes helyek az ilyen tevékenységhez. Az ágakat azonban törli, amikor ezeket a változásokat beolvasztják a csomagtartóba.
51) Hol érhető el védett osztályszintű változó?
A védett osztályszintű változók az alaposztályból származtatott bármely alosztály számára elérhetők.
52) Lehetséges-e több fogási blokkot végrehajtani egyetlen próbálkozáshoz?
Igen. Több fogási blokk végrehajtható egyetlen próbálkozási utasításhoz.
53) Mikor kell egy osztályt elvontnak nyilvánítani?
Egy osztályt absztraktnak kell nyilvánítanunk a következő helyzetekben:
- Amikor az osztályt egy absztrakt osztályból örököljük, de az összes elvont módszert nem írták felül.
- Abban az esetben, ha az osztály egyik módszerének legalább egyikét absztraktként deklaráljuk.
54) Készítsen algoritmust, amely kimeneti az Ön aktuális tartózkodási helyét, valamint az adott területen található ATM-ek listáját. Szerezd meg a legközelebbi K ATM-et a tartózkodási helyedhez.
Hozzon létre egy getDistance (a, b) módszert, amely kiszámítja a és b távolságát.
Kód:
import java.util.HashMap;import java.util.Map;import java.util.PriorityQueue;public class PrioRQueueExample {public static void main(String[] args){PriorityQueuepq = new PriorityQueue ((x,y)-> {Double z = y-x;return z.intValue(); });PrioRQueueExample pqe = new PrioRQueueExample();//Number of ATMs to return i.e. Kint num_ATMs = 3;double curr_loc = 0.00;Map nallATMLocs = new HashMap ();//Map of ATM names and their distance co-ordinatesnallATMLocs.put("atm1",45.0);nallATMLocs.put("atm2",78.0);nallATMLocs.put("atm3",54.0);nallATMLocs.put("atm4",64.0);nallATMLocs.put("atm5",35.0);nallATMLocs.put("atm6",42.0);nallATMLocs.put("atm7",57.0);nallATMLocs.put("atm7",1.00);nallATMLocs.forEach((atm,dist) ->{if(pq.size() < num_ATMs){pq.add(pqe.getLocation(curr_loc,dist));}else{if( pq.peek() > pqe.getLocation(curr_loc,dist)){pq.poll();pq.add(pqe.getLocation(curr_loc,dist));}}});pq.forEach(atmLoc -> System.out.println(atmLoc));}private double getLocation(double curr,double atm){return atm - curr;}}