Better encapsulation of record metadata
Nessuno ha ancora preso questa issue.
- Lingua principale
- Jupyter Notebook
- Stelle
- 853
- Fork
- 322
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Right now we have the Record class with a huge number of attributes in the top level object. These attributes are varied, fall into many categories, and become very hard to keep track of.
I also find it rather awkward that there is no separate 'header' or 'metadata' type of object. ie. rdheader and rdrecord both return the same type of object.
Initial idea:
RecordInfoclass for storing all the header data. Includes record and signal specification fields, and comments.rdheaderwill create this type.- Same
Recordclass for WFDB records. Theinfoattribute will be aRecordInfoobject.
Having the top level p_signal, d_signal attributes is not my favorite, but I feel like it's rather pointless to have another object to capture these fields.
Open to suggestions.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia leggendo la classe Record esistente e gli entry point rdheader e rdrecord indicati nell’issue, individuando quali attributi di primo livello rappresentano i dati dell’header, della specifica dei segnali e dei commenti. Definisci il confine previsto di RecordInfo e verifica come i chiamanti utilizzano questi attributi; il lavoro è completato quando la proposta di incapsulamento è coerente e i suoi effetti su entrambi i tipi di oggetti restituiti sono documentati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- backend-api-design
- Tipo di issue
- Refactoring
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100