التفاصيل البيبلوغرافية
العنوان: |
Clang-Tidyn laajentaminen yrityksen tarpeiden mukaisesti |
المؤلفون: |
Kiiskilä, Eetu |
سنة النشر: |
2023 |
المجموعة: |
Theseus.fi (Open Repository of the Universities of Applied Sciences / Ammattikorkeakoulujen julkaisuarkisto) |
مصطلحات موضوعية: |
Peliteknologia, fi=Tieto- ja viestintätekniikka|sv=Informations- och kommunikationsteknik|en=Information and Communications Technology, tietokoneohjelmat, C++ (ohjelmointikieli), ohjelmointi, tietotekniikka, ohjelmistokehitys, automaatio, testaus, avoin lähdekoodi, Insinööri (AMK), tieto- ja viestintätekniikka |
الوصف: |
Tässä opinnäytetyössä kehitettiin laajennettu versio Clang-Tidysta, joka on osa LLVM-projektia. Tavoitteena oli lisätä työkaluun vähintään yksi uusi tarkistus sekä automaatiotestit ja dokumentaatio tälle. Tarkoituksena oli, että toimeksiantaja Bittium Wireless Oy voisi opinnäytetyön avulla arvioida, onko Clang-Tidyn kehittäminen yrityksen tarpeiden mukaan järkevää. Lisäksi opinnäytetyö toimisi tarvittaessa ohjeena uusien tarkistusten lisäämiselle työkaluun. Aluksi tutustuttiin ohjelmointikäytänteiden teoriaan ja siihen, millaisia työkaluja ohjelmointikäytänteisiin liittyen on olemassa. Lisäksi tarkasteltiin toimeksiantajan tarpeita koodianalyysityökaluille. Clang-Tidyn käyttöönotto kuvattiin yksinkertaisen CMake-pohjaisen C++-projektin avulla. Esimerkkiprojektin avulla myös esiteltiin Clang-Tidyn tukemat määrittelytiedostot. Lisäksi selitettiin toimintaperiaate sille, miten ohjelmistokehityksen automaatioputkessa Clang-Tidya käyttäen on mahdollista estää ohjelmointikäytänteistä poikkeavan koodin pääsy versionhallinnan päähaaraan. Käytännön toteutuksena saatiin aikaan oma moduuli toimeksiantajalle Clang-Tidyyn sekä tarkistus, jonka avulla voidaan havaita ei-julkinen luokkien periytyminen C++-koodissa. Tälle tarkistukselle kirjoitettiin automaatiotestit, jotka paljastivat virheen tarkistuksen toteutuksessa. Virhe korjattiin ja tarkistus todettiin testien päivittämisen jälkeen toimivaksi. Lopuksi uudelle tarkistukselle kirjoitettiin dokumentaatiosivu sekä lisäys julkaisutietoihin ja Clang-Tidyn tarkistusten luetteloon. Muokattu versio Clang-Tidysta otettiin onnistuneesti käyttöön toimeksiantajan projektissa. Aikaansaannos vastasi opinnäytetyölle asetettuja tavoitteita. Työn aikana tuli selväksi, että LLVM:n dokumentaatio on monelta osin puutteellista. Clang-Tidyn laajentaminen projektin tarpeiden mukaan vahvisti käsitystä siitä, että ohjelmistojen kokoaminen lähdekoodeista ja avoimen lähdekoodin projektien muokkaaminen ovat hyödyllisiä taitoja. Testauksen paljastama virhe toimii hyvänä osoituksena ... |
نوع الوثيقة: |
bachelor thesis |
اللغة: |
Finnish |
Relation: |
Bittium Wireless Oy; http://www.theseus.fi/handle/10024/815731; URN:NBN:fi:amk-2023121336819 |
الاتاحة: |
http://www.theseus.fi/handle/10024/815731 |
Rights: |
fi=All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.|sv=All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.|en=All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.| |
رقم الانضمام: |
edsbas.630A5596 |
قاعدة البيانات: |
BASE |