Avatar billede weeelo Nybegynder
28. november 2008 - 10:24 Der er 8 kommentarer og
3 løsninger

Placering af exceptions

Hejsa,

Er der nogen tommelfingerregel for hvor man placerer sine egne exceptions-klasser i sit C# projekt. Skal man holde dem i sit eget namespace eller skal de placeres ved de relevante klasser, som benytter dem?

Mvh Søren
Avatar billede aaberg Nybegynder
28. november 2008 - 10:29 #1
Placer dem der de bliver brugt. Hvis de bliver brugt fra flere namespaces, så placer dem laveste hirakiet.

Hvis du eksempelvis har har en Exception der bliver brugt af klasser i DitNamespace og i DitNamespace.DitSubNamespace, så placerer du Exceptionklassen i DitNamespace.
Avatar billede aaberg Nybegynder
28. november 2008 - 10:31 #2
Dette er dog et subjektivt spørgsmål. Der er ingen regler for dette, du kan gøre det som du synes er bedst. Men som jeg har beskrevet det i min tidligere kommentar, er måden som Exceptions i .NET Frameworket er placeret.
Avatar billede weeelo Nybegynder
28. november 2008 - 10:37 #3
Ok, tak. Jeg venter lige og ser om der kommer flere meninger/idéer inden jeg kaster point af sted :)
Avatar billede kalp Novice
28. november 2008 - 10:54 #4
Der vel ikke "regler" på området, men rettere "Best practise".

Jeg placere mine egne exceptions sammen med de relevante klasse.
Derfor er det hvordan jeg strukturere mine klasse generelt der afgøre placeringen af de enkelte exception klasser.

Dermed ikke sagt, at denne fremgangsmåde er "Best practise", men for mig personligt mest overskueligt.
Avatar billede lasserasch Juniormester
28. november 2008 - 15:34 #5
Hmmm, jeg vælger normalt en anden indgangsvinkel.

Jeg har som regl en exception klasse i mit projekt et sted. Og fra min frontend eller backend kode kalder jeg så metoder i denne klasse. Jeg kan godt lide at holde dem sammen. Det synes jeg er mest overskueligt :-)

/Lasse
Avatar billede arne_v Ekspert
28. november 2008 - 17:53 #6
De skal naturligvis placeres der hvor de logisk hører til.

D.v.s. at de placeres sammen med de andre klasser som dit lag/modul/komponent/whatever
exposer. D.v.s. sammen med interfaces, factories, data klasser etc.. Muligvis men
ikke nødvendigvis sammen med de implementations klasser som smider exceptions
(afhænger af om de er i samme namespace eller om de er i et sub namespace).
Avatar billede weeelo Nybegynder
03. december 2008 - 17:50 #7
Tak for svarene allesammen. Smid et svar, så deler jeg pointene ud :)
Avatar billede kalp Novice
03. december 2008 - 18:21 #8
=)
Avatar billede arne_v Ekspert
03. december 2008 - 18:47 #9
.
Avatar billede aaberg Nybegynder
03. december 2008 - 21:03 #10
:-)
Avatar billede weeelo Nybegynder
08. december 2008 - 20:02 #11
Tak for hjælpen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester