Treffer: Tyyppiturvallisuus FullStack TypeScript -sovelluksessa
Weitere Informationen
Tässä opinnäytetyössä syvennytään tyyppiturvallisuuden merkitykseen ja sen toteutumiseen FullStack TypeScript -sovelluksissa. Työ valottaa tyyppien roolia ohjelmistokehityksessä ja erittelee hyötyjä sekä haasteita staattisesti ja dynaamisesti tyypitetyissä ohjelmointikielissä. FullStack -kehityksen kontekstissa tarkastellaan, miten TypeScript tukee sekä frontend- että backend-puolen kehitystä ja minkälaisia erityishaasteita tyyppiturvallisuuden varmistamisessa saattaa kohdata, kun järjestelmän eri osat kommunikoivat keskenään. Työssä kiinnitetään erityistä huomiota monorepon käyttöön esimerkkiprojektissa ja siihen, miten tyyppiturvallisuus voidaan varmistaa sekä sovelluksen frontendettä backend-osuudessa projektin koosta riippumatta. Tyyppiturvallisuus vahvistetaan jakamalla sovelluksessa käytettäviä tyyppejä näiden eri osaalueiden kesken. Tavoitteena on taata vahva tyypitys ja siitä saatavat hyödyt sekä sovelluksen käännösvaiheessa että myös ajonaikaisesti. Opinnäytetyö osoittaa, että vaikka tyyppiturvallisuuden saavuttaminen vaatii huolellisuutta ja syvällistä ymmärrystä ohjelmistokehityksen prosesseista, se tarjoaa merkittäviä hyötyjä koodin laatuun, ylläpidettävyyteen sekä virheiden vähentämiseen. Lisäksi se parantaa yleisesti myös kehittäjäkokemusta. ; This thesis focuses on type safety within TypeScript applications, which span both frontend and backend systems. The thesis covers the pros and cons of having static versus dynamic types by exploring the core essence of types in software development. Based on the study, TypeScript emerges as a powerful tool for developers on both ends: frontend and backend. A significant part of this thesis focuses on the integration of monorepos and the challenges of ensuring consistent type safety, particularly when there is interplay between different components of a system. One clear conclusion drawn from this study is the importance of type safety. Even though mastering it requires diligence and a deep understanding of how the software works, the rewards in terms of code ...