update image links.

master
Craig Oates 4 years ago
parent
commit
e582f434a1
  1. 2
      Overview-of-Command-Methods.md
  2. 2
      Overview-of-Console.Waterworks.md
  3. 6
      Referencing-Other-Projects.md
  4. 2
      Solution-Overview.md
  5. 2
      Using-the-Help-Attributes.md
  6. 4
      Wiring-Console.Waterworks-into-Your-Project.md
  7. 6
      Writing-Command-Methods-in-F#.md
  8. 2
      _Sidebar.md

2
Overview-of-Command-Methods.md

@ -2,6 +2,6 @@ There is nothing special about command-methods. They are nothing more than the m
Here is a diagram to help show the "position" of the command-methods within the project.
![command-methods overview](attachments/command-methods-overview.png)
![command-methods overview](command-methods-overview.png)
As an aside, the term command-methods is a C# quirk. I am aware F# is more precise with its use of "method" and "function". But, "command-methods" were already established before I began learning F#. So, I am using "command-methods" to remain consistent with the main C.W. repositories and terminology. I am well aware "command-functions" is a more accurate description.

2
Overview-of-Console.Waterworks.md

@ -10,7 +10,7 @@ look at it is C.W. provides the "plumbing code".
operates in the exact same way as the traditional .Net version.**
![Console.Waterworks
Data-Flow](attachments/console.waterworks-data-flow.png)
Data-Flow](console.waterworks-data-flow.png)
Because this repository focuses on teaching users how to **use**
C.W. with F#, there is no information on how C.W. **works**. For that, you

6
Referencing-Other-Projects.md

@ -4,11 +4,11 @@ To help get a feel for how Console.Waterworks (C.W.) based projects looks when u
If you look in the Solution Explorer, in Visual Studio, you will see four projects. Two of them are console programs and the other two are libraries. Each library is paired with a console project. So, in-effect, there are two "projects". Although, there is really on one project. This is because the "two" projects are different flavours on .Net. They both do the same thing, but target different environments. (.Net is in a bit of a mess at the time of writing this.)
![solution overview](attachments/solution-overview.png)
![solution overview](solution-overview.png)
Feel free to focus on either the .Net or .Net Core "projects". They both mirror each other so, if you learn one, you learn the other. The only reason I included both was for the sake of completeness. The important thing to take away, here, is the console-to-library relationship.
![console-library relationship](attachments/console-library-relationship.png)
![console-library relationship](console-library-relationship.png)
If we wanted to be more exact about the relationship, `ConsoleCommands` is bound to `FunkyFish` (or `FunkyFishCore`). And you can see this in the repositories code.
@ -52,7 +52,7 @@ namespace Commands
String.Format("Result: {0}", LibraryTest3 name) // Library Call to FunkyFish.
```
![consolecommands library binding](attachments/consolecommands-library-binding.png)
![consolecommands library binding](consolecommands-library-binding.png)
As you can see, once you are inside a command-method, you are free to put any code you want in there. For example, you can call your library code.

2
Solution-Overview.md

@ -14,4 +14,4 @@ same.
**To be clear, every project in Brittle-Fish is an F# one.**
![solution overview](attachments/solution-overview.png)
![solution overview](solution-overview.png)

2
Using-the-Help-Attributes.md

@ -1,6 +1,6 @@
To help users discover features within your console program, Console.Waterworks (C.W) provides a run-time "help" section. It does this by using the (F#/.Net) attributes you attach to your command-methods. It is, also, optional. So, you do not need to decorate your command-methods if you do not want to. If you have cloned this repository, you can see this in action. To do so, run either of the two console programs and enter "help" into the prompt. You should see a list of available commands, a description of what they do and how to use them.
![help section screenshot](attachments/help-section-screenshot.png)
![help section screenshot](help-section-screenshot.png)
There are four attributes in total. They are:

4
Wiring-Console.Waterworks-into-Your-Project.md

@ -39,11 +39,11 @@ As an aside, you can name the "ConsoleCommands.fs" file anything you like. This
With everything set-up, you can now run the program. When you do, it will await your input. If you type "test" into the prompt and press ENTER, you should see  "You have set-up Console.Waterworks". And with that, you are ready to start building out your "business logic".
![console-test-screenshot](attachments/console-test-screenshot.png)
![console-test-screenshot](console-test-screenshot.png)
If you change `true` to `false` in the `run` method (in `main`), the programs assembly information will not appear at run-time.
![console screenshot with no assembly info](attachments/console-screenshot-no-assembly-info.png)
![console screenshot with no assembly info](console-screenshot-no-assembly-info.png)
## Changing the Assembly Information for you Console Program

6
Writing-Command-Methods-in-F#.md

@ -24,13 +24,13 @@ More examples can be found at the following links:
What is important to note here is the command-methods name. This is what the end-user must enter at run-time to execute said command-method. The input is, also, case-sensitive. So, if you wanted to, you could use `test` and `Test` as seperate command-methods.
![command-method mirroring run-time commands](attachments/command-method-mirroring.png)
![command-method mirroring run-time commands](command-method-mirroring.png)
![case sensitive command-methods](attachments/case-sensitive-command-methods.png)
![case sensitive command-methods](case-sensitive-command-methods.png)
Another feature of C.W. is it parses and coerces input arguments. This means your command-methods can include arguments. C.W. takes care of the error handling and messaging too.
![run-time error handling](attachments/run-time-error-handling.png)
![run-time error handling](run-time-error-handling.png)
To be clear, there are limits to the amount of types you can use with you command-methods. For a full list of all the coercion types, please refer to the [**Coercion Types List**](https://git.abbether.net/craig.oates/Console.Waterworks/wikis/Coercion-Types-List) in the main C.W. wiki.

2
_Sidebar.md

@ -1,4 +1,4 @@
# ![Brittle Fish Logo](attachments/sidebar-logo.png)
# ![Brittle Fish Logo](sidebar-logo.png)
## Table of Contents

Loading…
Cancel
Save