20:. They range from the highly formal to those open to interpretation, and from serious to humorous. Whether to apply any given rule universally, in which situations to apply it, and what it implies should be done are often active subjects of conversation and debate.
271:
43:
402:
180:
293:
136:
310:
315:
276:
191:
92:
30:
167:
109:
392:
225:
82:
87:
356:
77:
259:
332:
124:
242:
373:
305:
254:
104:
196:
17:
397:
186:
281:
148:
344:
119:
230:
220:
208:
161:
386:
368:
114:
60:
72:
55:
320:
29:
The following 41 pages are in this category, out of 41 total.
272:
The Power of 10: Rules for
Developing Safety-Critical Code
16:
This category describes rules and aphorisms applicable to
8:
44:Abstraction principle (computer programming)
26:Pages in category "Programming principles"
181:If it ain't broke, don't fix it
31:This list may not reflect recent changes
7:
294:Rule of three (computer programming)
137:Encapsulation (computer programming)
311:Separation of mechanism and policy
35:
23:
14:
403:Software development philosophies
316:Single-responsibility principle
277:Principle of least astonishment
192:Interface segregation principle
93:Coupling (computer programming)
168:GRASP (object-oriented design)
110:Dependency inversion principle
1:
357:You aren't gonna need it
226:Liskov substitution principle
88:Composition over inheritance
78:Cohesion (computer science)
419:
125:Don't repeat yourself
333:Uniform access principle
83:Command–query separation
374:Zero one infinity rule
306:Separation of concerns
260:Open–closed principle
255:Offensive programming
105:Defensive programming
393:Computer programming
197:Inversion of control
18:software engineering
243:Ninety–ninety rule
187:Information hiding
410:
282:Pristine Sources
183:
164:
149:Fail-fast system
418:
417:
413:
412:
411:
409:
408:
407:
383:
382:
381:
380:
379:
378:
361:
349:
345:Worse is better
337:
325:
298:
286:
264:
247:
235:
213:
201:
179:
172:
162:Gall's law
160:
153:
141:
129:
120:Discoverability
97:
65:
48:
22:
12:
11:
5:
416:
414:
406:
405:
400:
395:
385:
384:
377:
376:
371:
365:
362:
360:
359:
353:
350:
348:
347:
341:
338:
336:
335:
329:
326:
324:
323:
318:
313:
308:
302:
299:
297:
296:
290:
287:
285:
284:
279:
274:
268:
265:
263:
262:
257:
251:
248:
246:
245:
239:
236:
234:
233:
231:Loose coupling
228:
223:
221:Law of Demeter
217:
214:
212:
211:
209:KISS principle
205:
202:
200:
199:
194:
189:
184:
176:
173:
171:
170:
165:
157:
154:
152:
151:
145:
142:
140:
139:
133:
130:
128:
127:
122:
117:
112:
107:
101:
98:
96:
95:
90:
85:
80:
75:
69:
66:
64:
63:
58:
52:
49:
47:
46:
40:
37:
36:
27:
24:
13:
10:
9:
6:
4:
3:
2:
415:
404:
401:
399:
396:
394:
391:
390:
388:
375:
372:
370:
369:Zen of Python
367:
366:
363:
358:
355:
354:
351:
346:
343:
342:
339:
334:
331:
330:
327:
322:
319:
317:
314:
312:
309:
307:
304:
303:
300:
295:
292:
291:
288:
283:
280:
278:
275:
273:
270:
269:
266:
261:
258:
256:
253:
252:
249:
244:
241:
240:
237:
232:
229:
227:
224:
222:
219:
218:
215:
210:
207:
206:
203:
198:
195:
193:
190:
188:
185:
182:
178:
177:
174:
169:
166:
163:
159:
158:
155:
150:
147:
146:
143:
138:
135:
134:
131:
126:
123:
121:
118:
116:
115:Deutsch limit
113:
111:
108:
106:
103:
102:
99:
94:
91:
89:
86:
84:
81:
79:
76:
74:
71:
70:
67:
62:
59:
57:
54:
53:
50:
45:
42:
41:
38:
34:
32:
25:
21:
19:
61:Booch method
28:
15:
398:Principles
387:Categories
73:Code reuse
56:Black box
321:SOLID
389::
33:.
364:Z
352:Y
340:W
328:U
301:S
289:R
267:P
250:O
238:N
216:L
204:K
175:I
156:G
144:F
132:E
100:D
68:C
51:B
39:A
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.