1. lähdekoodin katselmoinnin huomiot
Yhteenveto koodista
Timber-ryhmän tekemät muutokset:
- 13 muokattua tiedostoa
- olennaisimmat:
Dockerfile
initdb2.py
tim.py
static/stylesheet.css
static/scripts/view_html.js
templates/view_html.html
timdb/timdb2.py
- vain whitespace-muutoksia:
static/templates/parEditor.html
templates/view_head.html
templates/paragraphs.html
- turhia muutoksia:
modules/Haskell/cabal.sandbox.config
modules/cs/java/fxgui.jar
modules/cs/startPlugins.sh
- olennaisimmat:
- 26 lisättyä tiedostoa
- olennaisimmat:
assesment_area.py
schematimber.sql
routes/annotation.py
routes/velp.py
(Joonas/Petteri/Seppo)static/css/velpSelection.css
static/scripts/controllers/reviewController.js
(Seppo)static/scripts/directives/marking.js
static/scripts/directives/reviewEditor.js
static/scripts/directives/velpSelection.js
(Seppo)static/templates/marking.html
static/templates/popOverTemplate.html
static/templates/reviewEditor.html
static/templates/velpSelection.html
templates/velp_view.html
timdb/annotationcomments.py
timdb/annotations.py
timdb/icons.py
timdb/labels.py
timdb/velpgrouplabels.py
timdb/velpgroups.py
timdb/velps.py
(Joonas/Petteri)
- muut 3 (ei tarvinne katselmoida):
static/test_data/tags.json
static/test_data/phrases.json
static/test_data/markings.json
- turhat:
modules/cs/comtest.jar
modules/cs/comtestcpp.jar
- olennaisimmat:
Yleisiä huomioita HTML:stä
- Kommentit englanniksi.
- Tyylit mieluummin CSS-tiedostoon, ei
style
-attribuuttiin. - Pitkät rivit hyvä jakaa useammalle riville.
Yleisiä huomioita JavaScriptistä
!=
->!==
,==
->===
- Objektien avaimien ei tarvitse olla lainausmerkeissä (muuta kuin joissain erikoistapauksissa).
- Minimoikaa globaalien muuttujien määrä Angularin ohjaimista ja direktiiveistä: jos tarvitsee käyttää esim.
window
-olion funktiotaclearInterval
, niin injektoikaa ohjaimeen$window
ja sanokaa koodissa$window.clearInterval(...)
. Globaaleja ovat esim.window
document
Yleisiä huomioita Pythonista
- Dokumentaatiokommentteja puuttuu joistain funktioista.
- Oikeuksien tarkistus puuttuu joistain reiteistä.
contracts
-kirjaston tilallePEP484
.- Muutamassa kohdassa pieniä PEP8-virheitä.
static/scripts/controllers/reviewController.js
- Funktion
addMarkingToCoord
JSDocissa väärät parametrien nimet. return undefined;
on sama kuinreturn;
-- muttareturn null;
lienee parempi.if ($scope.velps[i].id == "" +id)
- tarvitseeko oikeaa puolta muuntaa merkkijonoksi? Eikö velpinid
ole numero? Vrt.getMarkingComments
.@returns {Array|*|string|boolean}
ehkä kyseenalainen.- Mitä tarkoittaa
Gives error [$compile:nonassign]
?
static/scripts/directives/velpSelection.js
- JS:ssä näytetään pitävän kirjaa viimeisimmästä velp-id:stä, mutta kannattaisiko se jättää kannan tehtäväksi? Ja reitissä ei näytetä edes välittävän siitä.
foreach
-silmukoista puuttuuhasOwnProperty
-tarkistus (tai jQueryllä:$.each(collection, function () { ... })
)
routes/velp.py
- Kaikki reitit voisivat palauttaa JSONia (nyt esim.
add_velp
jaadd_label
palauttavat pelkän merkkijonon). get_velps
:if
-lauseen ehtoon ei tarvitse sulkujalisäksi voi yksinkertaistaa:
if velp_data and label_data:
if
fin sisällä joudutaan tekemään melko paljon hommia, jotta avainsanojen id:t saadaan velpeille. Metodinget_document_velp_label_ids
kannattaisi ehkä palauttaadict(int, list)
, jossa avaimena on velpin id. Sitten avainsanat voisi asettaa yhdessä silmukassa tyyliin:for v in velp_data: v['labels'] = velp_labels.get(v['id'], [])
Do magic
?
- Parametrien oikeellisuustarkistus.
timdb/velps.py
Something is f...d up here
- what?Connection
-tyyppiä varten puuttuuimport
.
assesment_area.py
- Hyvä idea.
- Tiedostonimessä typo.
- Loppuun rivinvaihto (PEP8).
- Muodostajan kaikilla parametreilla voisi olla oletusarvo
None
, jolloin helper-metodeissa riittää antaa se, joka ei oleNone
.
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.