|
1 | 1 | # Coding Guide |
2 | 2 |
|
3 | | -This document serves as the official code standards guide for `BinaryObjectScanner` internal development. Please note that this is a work in progress and may not encapsulate all standards expected of new or existing code. The included `.editorconfig` file can help enforce some of the standards mentioned below. |
| 3 | +This document serves as the official code standards guide development. Please note that this is a work in progress and may not encapsulate all standards expected of new or existing code. The included `.editorconfig` file can help enforce some of the standards mentioned below. |
4 | 4 |
|
5 | 5 | ## General Code Guidelines |
6 | 6 |
|
@@ -350,37 +350,3 @@ This section contains information on code standards regardless of which part of |
350 | 350 | // But here the statements are logically linked but |
351 | 351 | // needed additional formatting |
352 | 352 | ``` |
353 | | - |
354 | | -## Project and Class Organization |
355 | | - |
356 | | -This section contains information on project and class organization principles that depend on the part of the project you are working in. See the following table for details. |
357 | | - |
358 | | -| Project | Description | |
359 | | -| --- | --- | |
360 | | -| `BinaryObjectScanner` | One file per class. See below for details on subdirectories. | |
361 | | -| `BinaryObjectScanner/FileType` | One file per file type. | |
362 | | -| `BinaryObjectScanner/GameEngine` | At least one file per game engine. Partial classes allowed. | |
363 | | -| `BinaryObjectScanner/Interfaces` | One file per interface. | |
364 | | -| `BinaryObjectScanner/Packer` | At least one file per packer type. Partial classes allowed. | |
365 | | -| `BinaryObjectScanner/Protection` | At least one file per protection type. Partial classes allowed. | |
366 | | -| `ProtectionScan` | All functionality lives in `Program.cs`. | |
367 | | - |
368 | | -If the project or directory you are looking for is not included in the above, please consider it to be outside the context of this document. |
369 | | - |
370 | | -## Code Organization |
371 | | - |
372 | | -This section contains information on in-code organization principles that depend on the part of the project you are working in. See the following table for details. |
373 | | - |
374 | | -Typed checks, such as `IExecutableCheck<T>` should always follow this order: `MSDOS`, `LinearExecutable`, `NewExecutable`, `PortableExecutable`. |
375 | | - |
376 | | -| Project | Description | |
377 | | -| --- | --- | |
378 | | -| `BinaryObjectScanner` | Varies from file to file. | |
379 | | -| `BinaryObjectScanner/FileType` | `IDetectable` implementations, helper methods. | |
380 | | -| `BinaryObjectScanner/GameEngine` | `IContentCheck` implementations, `IExecutableCheck<T>` implementations, `IPathCheck` implementations, helper methods. | |
381 | | -| `BinaryObjectScanner/Interfaces` | Methods ordered alphabetically. | |
382 | | -| `BinaryObjectScanner/Packer` | `IContentCheck` implementations, `IExecutableCheck<T>` implementations, `IPathCheck` implementations, helper methods. | |
383 | | -| `BinaryObjectScanner/Protection` | `IContentCheck` implementations, `IExecutableCheck<T>` implementations, `IPathCheck` implementations, helper methods. | |
384 | | -| `ProtectionScan` | New functionality should be added as a combination of a flag with a long and a short form, a new line in the help text, and a new method (if necessary). | |
385 | | - |
386 | | -If the project or directory you are looking for is not included in the above, please consider it to be outside the context of this document. |
0 commit comments