Hallo,
Ik vroeg me af of jullie bepaalde guidelines handteren bij het maken classes en het opsplitsen van code.
ik heb bijvoorbeeld een stukje code (een methode) en vroeg me af of het zinvol is, en wanneer het zinvol is om zo'n methode nog verder op te delen in kleinere blokjes, en welke regels daar voor aan te houden zijn.
Dus concreet: wanneer is het zinvol/handig om code nog verder uit te splitsen?
Ik vroeg me af of jullie bepaalde guidelines handteren bij het maken classes en het opsplitsen van code.
ik heb bijvoorbeeld een stukje code (een methode) en vroeg me af of het zinvol is, en wanneer het zinvol is om zo'n methode nog verder op te delen in kleinere blokjes, en welke regels daar voor aan te houden zijn.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
| private bool GetUpdateEngineStatus()
{
bool retval=false;
int lastnumberinqueue=0;
int currentnumberinqueue=0;
lastnumberinqueue = GetAdlizardErrorQueue();
currentnumberinqueue = GetCurrentNoAdlizardErrors();
SqlConnection conn = new SqlConnection(Settings.GetConnectionString());
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
if(lastnumberinqueue != currentnumberinqueue)
{
//schrijf status naar db
try
{
cmd.CommandText = "INSERT INTO adl_queue(dat_check,no_queue) VALUES (GETDATE()," + currentnumberinqueue + ")";
conn.Open();
cmd.ExecuteNonQuery();
}
catch(Exception ex)
{
_eventlog.WriteEntry("error description: " + ex.Message);
}
finally
{
conn.Close();
}
// schrijf error want queue loopt op
if(currentnumberinqueue > lastnumberinqueue)
{
try
{
cmd.CommandText = "INSERT INTO adl_errors(dat_error,ind_engine_error,description) VALUES(GETDATE()," + DBConversions.BoolToSql(true) + "," + DBConversions.StringToSql("Current queue: " + currentnrinqueue.ToString() + " Last: " + lastnrinqueue.ToString()) + ")";
conn.Open();
cmd.ExecuteNonQuery();
// error dus return true
retval = true;
}
catch(Exception ex)
{
_eventlog.WriteEntry("error description: " + ex.Message);
}
finally
{
conn.Close();
}
}
else
{
//geen error dus return false
retval = false;
}
}
else
{
//last en current zijn gelijk dus geen error en return false
retval = false;
}
return retval;
}
private int GetAdlizardErrorQueue()
{
// returns an int
}
private int GetCurrentNoAdlizardErrors()
{
// returns an int
} |
Dus concreet: wanneer is het zinvol/handig om code nog verder uit te splitsen?
Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...