Hej, Habr!
Vem ska man studera? Ska man studera datavetenskap eller lÀra sig mjukvaruutveckling? Dessa frÄgor Àr mycket aktuella i vÄr tid.
Vad vÀljer du?
Personer som just börjar sin vÀg inom IT-sektorn och planerar att söka till en teknisk högskola eller bara letar efter utbildningsprogram inom programmering, stöter oftast pÄ ett stort antal inriktningar. PoÀngen Àr att Àmnena i dessa inriktningar Àr liknande, sÀrskilt under det första och andra Äret.
För tydlighetens skull kan vi dela in alla inriktningar i tvĂ„ lĂ€ger â datavetenskap och mjukvaruutveckling. Den grundlĂ€ggande skillnaden Ă€r att den första inriktningen Ă€r mer flexibel och dĂ€r fokuseras mer pĂ„ fundamentala kunskaper, medan den andra Ă€r inriktad pĂ„ praktiska fĂ€rdigheter för att skapa program för marknaden. Vilken inriktning du Ă€n vĂ€ljer, kommer du i slutĂ€ndan att bli programmerare. Du kommer förmodligen att börja arbeta nĂ„gonstans efter eller under studierna, och vilken del av utvecklingen du kommer att fĂ„ arbeta med och vad du kan ansöka om kommer att avgöras av den inriktning du vĂ€ljer.
I bÄda lÀgren studeras liknande Àmnen under de första 2-4 terminerna, sÄsom linjÀr algebra, matematisk analys, diskret matematik och differentialekvationer. All denna matematik studeras som regel i bÄda lÀgren, men i datavetenskap tillkommer en kurs i diskret matematik och differentialekvationer. En gemensam del för alla inriktningar Àr introduktionen till generell datavetenskap, och hÀr börjar skillnaderna. Inom datavetenskap behandlas datorarkitektur, teorin om algoritmer, datastrukturer och deras analys, hur program fungerar och hur man kan skriva dem med hjÀlp av klassiska konstruktioner, operativsystem, kompilatorer och sÄ vidare. Det innebÀr att man tÀcker ett större fundament. à sin sida inom mjukvaruutveckling handlar det om OOP-design, mjukvarutestning, grundlÀggande operativsystem och sÄ vidare. Med andra ord tÀcker man tekniker sÄ att studenten kan lÀra sig att anvÀnda redan fÀrdiga lösningar och med hjÀlp av dem lösa olika affÀrsproblem. Allt detta studeras vanligtvis under det första studieÄret.
Under det andra Äret börjar bÄda programmen att studera Àmnen som datorarkitektur och operativsystemens uppbyggnad, men Software Engineering studerar dessa Àmnen mer ytligt. Detta beror pÄ att den inriktningen formar mÀnniskor som kommer att ha lite att göra med dessa Àmnen. FrÄn och med det andra Äret lÀggs det mer vikt vid mikroarkitektur och OS-kÀrnor inom Computer Science, medan fokus inom mjukvaruutveckling ligger mer pÄ anvÀndargrÀnssnitt, testning, programanalys, olika managementmetoder, etc. Speciellt objektorienterad programmering studeras pÄ djupet inom bÄda inriktningarna, eftersom denna programmeringsparadigm Àr mycket populÀr idag och man helt enkelt mÄste ha kunskap om den.
Under det tredje Äret av studierna inom Computer Science Àgnas tid Ät att studera kombinatorik, kryptografi, AI, grundlÀggande mjukvaruutveckling, 3D-grafik och kompilatorteori. Inom Software Engineering studeras systemsÀkerhet, nÀtverk och internet, mjukvaruhantering och management i allmÀnhet. Men beroende pÄ universitetet kan dessa Àmnen och djupet av studierna variera.
Kanske den viktigaste frÄgan i denna artikel Àr: vad bör man vÀlja? HÀr beror det helt pÄ dina preferenser. Om du vill bli en mycket flexibel och mÄngsidig ingenjör, bör du satsa pÄ Computer Science. Men om du vill koppla ditt liv till mjukvaruutveckling och kunna skapa anvÀndbara program för slutanvÀndare, Àr Software Engineering det rÀtta valet för dig.

Sammanfattningsvis vill jag sÀga att ni inom Computer Science kommer att lÀra er att lösa problem och komma pÄ eleganta lösningar pÄ dessa problem, medan ni inom Software Engineering blir affÀrsinriktade programmerare som kan leda projekt, mÀnniskor och skapa relevant mjukvara.
KĂ€lla: habr.com
