Vyhledávání duplicitních a zkopíruj/vlož bloků ve zdrojových kódech v jazyce GO

dc.contributorBrabec Tomáš
dc.contributor.advisorŠpánek Roman, Ing. Ph.D.
dc.contributor.authorBohuslávek, Michal
dc.contributor.otherSkolitel : 54839 Skrbek Jan, doc. Ing. Dr.
dc.contributor.otherKonzultant : 57200 Tyl Pavel, Ing.
dc.contributor.otherKonzultant2 : 60393 Holý Michal, Mgr.
dc.date2015
dc.date.accessioned2018-05-03
dc.date.available2018-05-03
dc.date.committed2015-05-15
dc.date.defense2015-06-16
dc.date.submitted2014-10-10
dc.date.updated24.6.2016 17:13
dc.degree.levelIng.
dc.description.abstractDuplicity a duplikované oblasti ve zdrojových kódech jsou problém, který je třeba řešit nejen v rámci hledání plagiátů, ale především pro odstranění případných nechtěných duplikovaných částí kódu, vzniklých ze špatného návrhu struktury programu. Práce popisuje algoritmus pro hledání takových duplicit. Algoritmus byl implementován v jazyce Go s možností distribuovaného výpočtu. K samotnému vyhledávání je použit sufixový strom, který je sestavován pro serializované derivačními stromy vstupních souborů. Řeší se také odstraňování redundantních výsledků a seskupování podobných duplicit. Model distribuce tvoří jeden řídící uzel a více výpočetních uzlů. Řízení probíhá pomocí vzdáleného volání procedur. Rozhraní programu je koncipováno jako konzolová aplikace, která nabízí dvě možnosti prezentace nalezených duplicit: textový nebo HTML výstup.cs
dc.description.abstractDuplicities and duplicated parts of a source code are a problem needing solving not only due to the search for plagiarism but more importantly for eliminating non-intentional duplicates in a source code caused by inaccurate design of the program structure. This thesis shows an algorithm capable of finding such duplicities. The algorithm has been implemented in Go programming language with the option for distributed calculations. The actual search for duplicities has been implemented through the method of a suffix tree, which is being built for serialized abstract syntax trees of the input files. The algorithm also deals with removing redundant parts of the code and grouping similar parts of the code. The distributional model is implemented by one master node and several computing nodes. The communication is implemented via remote procedure calls. The console is used to provide program interface, which offers two different possibilities for presenting the found duplicities: HTML or plain-text output.en
dc.description.mark
dc.format56 s.
dc.format.extentIlustrace, Tabulky 1 ROM 1x DVD ROM , Tabulky 1
dc.identifier.urihttps://dspace.tul.cz/handle/15240/24727
dc.language.isocs
dc.relation.isbasedonbegin*arab* renewcommand*labelenumi**[arabic*enumi*]* item The GO programming language, online: https://golang.org/ item PMD, online: http://pmd.sourceforge.net/pmd-5.1.3/cpd.html end*arab*
dc.rightsVysokoškolská závěrečná práce je autorské dílo chráněné dle zákona č. 121/2000 Sb., autorský zákon, ve znění pozdějších předpisů. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem https://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou https://knihovna.tul.cz/document/26cs
dc.rightsA university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act. https://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics https://knihovna.tul.cz/document/26en
dc.rights.urihttps://knihovna.tul.cz/document/26
dc.rights.urihttps://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf
dc.subjectduplicitycs
dc.subjectdistribucecs
dc.subjectsufixový stromcs
dc.subjectprogramovací jazyk Gocs
dc.subjectduplicitiesen
dc.subjectdistributionen
dc.subjectsuffix treeen
dc.subjectGo programming languageen
dc.subject.verbisalgoritmy (programování)cs
dc.titleVyhledávání duplicitních a zkopíruj/vlož bloků ve zdrojových kódech v jazyce GOcs
dc.titleSource code analysis - searching for duplicated and copy/paste blocks implemented with GO languageen
dc.title.alternativecs
dc.typediplomová prácecs
local.degree.disciplineIT-N
local.degree.programmeElektrotechnika a informatika
local.degree.programmeabbreviationN2612
local.department.abbreviationMTI
local.facultyFakulta mechatroniky, informatiky a mezioborových studiícs
local.faculty.abbreviationFM
local.identifier.stag31079
local.identifier.verbis485588
local.note.administratorsautomat
local.verbis.aktualizace2019-25-05 05:25:35cs
local.verbis.studijniprogramMTI Elektrotechnika a informatika/Informační technologiecs
Files
Original bundle
Now showing 1 - 5 of 7
Loading...
Thumbnail Image
Name:
thesis.pdf
Size:
4.17 MB
Format:
Adobe Portable Document Format
Description:
VSKP
Loading...
Thumbnail Image
Name:
VP_Bohuslavek.pdf
Size:
443.86 KB
Format:
Adobe Portable Document Format
Description:
Posudek_vedouciho_VSKP
Loading...
Thumbnail Image
Name:
OP_Bohuslavek.pdf
Size:
477.15 KB
Format:
Adobe Portable Document Format
Description:
Posudek_oponenta_VSKP
Loading...
Thumbnail Image
Name:
Bohuslavek.pdf
Size:
12.14 MB
Format:
Adobe Portable Document Format
Description:
Prubeh_obhajoby_VSKP
Loading...
Thumbnail Image
Name:
BP.jitka.licikova.pdf
Size:
2.94 MB
Format:
Adobe Portable Document Format
Description:
VSKP