Renamed basic.md to concepts.md and added more text

This commit is contained in:
kaltokri 2024-01-22 17:36:32 +01:00
parent e895642157
commit 15dd2cf735

View File

@ -1,5 +1,5 @@
--- ---
title: Basics title: Concepts
parent: Advanced parent: Advanced
nav_order: 01 nav_order: 01
--- ---
@ -11,13 +11,9 @@ concepts that we will explain here. You will need them for the later pages.
Moose has about 260.000 lines of code and the amount is increasing each week. Moose has about 260.000 lines of code and the amount is increasing each week.
To maintain such a big code base a vcs (version control system) is needed. To maintain such a big code base a vcs (version control system) is needed.
Moose uses [Git], a distributed source code management system created 2005 by Moose uses [GitHub] as developer platform to create, store, and manage the code.
Linus Torvalds for the development of the Linux kernel. [GitHub] uses [Git] as version control system and provides additional
functionality like access control, bug tracking, feature requests and much more.
As developer platform [GitHub] was choosen as a central place for Moose
to create, store, and manage the code. [GitHub] use [Git] as version control
system and provides additional functionality like access control, bug tracking,
feature requests and much more.
As a Moose user you don't need to learn how to use [Git]. You can download the As a Moose user you don't need to learn how to use [Git]. You can download the
files on [GitHub] with a browser. But using [Git] will ease up the steps to keep files on [GitHub] with a browser. But using [Git] will ease up the steps to keep
@ -27,7 +23,7 @@ You will need to interact with [GitHub]. At least to download the Moose files.
For non developers the page can be confusing. Take your time and read this For non developers the page can be confusing. Take your time and read this
documentation. We are not able to explain every single detail on using [GitHub] documentation. We are not able to explain every single detail on using [GitHub]
and [Git]. Especially because it is changing really quick and this documentaion and [Git]. Especially because it is changing really quick and this documentaion
will not. So try to uns the help system of [GitHub] or find some videos on will not. So try to use the help system of [GitHub] or find some videos on
[YouTube]. If you get stuck ask for help in the [Moose Discord]. [YouTube]. If you get stuck ask for help in the [Moose Discord].
Moose uses more then one repository on [GitHub] which doesn't exactly make it Moose uses more then one repository on [GitHub] which doesn't exactly make it
@ -43,20 +39,26 @@ As already explained in the [overview] two branches are used:
As a starter it is okay to begin your journey with the `master` branch. As a starter it is okay to begin your journey with the `master` branch.
If you are interested in some newer classes you need to use the `develop` If you are interested in some newer classes you need to use the `develop`
branch. The later one is also very stable, but it's missing more detailed branch. The later one is also very stable, but it's missing more detailed
documentation and example missions. documentation and example missions for some of the new OPS classes.
You can switch between these branches with a drop down in the upper left corner You can switch between these branches with a drop down in the upper left corner
of th GitHub repository page. The list of branches is long. So it is a best of th [GitHub] repository page. The list of branches is long. So it is a best
practise to save a bookmark in your browser with the links above. practise to save a bookmark in your browser with the links above.
Both branches are available on most of the different repositories. But because
of a limitation of [GitHub pages], we had to split the documentation in two
different repositories:
- Documentation of `master` branch: [MOOSE_DOCS]
- Documentation of `develop` branch: [MOOSE_DOCS_DEVELOP]
# Build result vs. source files # Build result vs. source files
Moose consists of more than 140 individual files with the file extension `.lua`. Moose consists of more than 140 individual files with the file extension `.lua`.
They are places in a directory tree, which makes it more organized and its They are places in a [directory tree], which makes it more organized and its
semantic is pre-defined for IntelliSense to work. semantic is pre-defined for IntelliSense to work.
On every change which is pushed to [GitHub] a build job will combine all of On every change which is pushed to [GitHub] a build job will combine all of
these files to a the single file called `Moose.lua`. In a seconds step all these files to a single file called `Moose.lua`. In a second step all
comments will be removed to decrease the file size and the result will be saved comments will be removed to decrease the file size and the result will be saved
as `Moose_.lua`. These both files are created for users of Moose to include in as `Moose_.lua`. These both files are created for users of Moose to include in
your missions. your missions.
@ -68,6 +70,30 @@ Moose framework.
# Static loading vs. dynamic loading # Static loading vs. dynamic loading
If you add a script file with a `DO SCRIPT FILE` trigger, like we described in
[Create your own Hello world], the script file will be copied into the mission
file. This mission file (file extension .MIZ) is only a compressed ZIP archive
with another file ending.
If you change the script file after adding it to the mission, the changes are
not available on mission start. You have to re-add the script after each change.
This can be very annoying and often leads to forgetting to add the change again.
Then you wonder why the script does not deliver the desired result.
But when the mission is finished you can upload it to your dedicated DCS server
or give it to a friend and it should run without problems. This way of embedding
the scripts do we call `static loading` and the resulting mission is very
portable.
The other way on loading scripts is by using `DO SCRIPT`. This time the mission
editor don't show a file browse button. Instead you see a (very small) text
field to enter the code directly into it. It is only usefull for very small
script snippets. But we can use it to load a file from our hard drive like this:
```lua
aaa
```
# IDE vs. Notepad++ # IDE vs. Notepad++
# What is a debugger (good for) # What is a debugger (good for)
@ -80,3 +106,7 @@ Moose framework.
[reposities]: ../repositories.md [reposities]: ../repositories.md
[master]: https://github.com/FlightControl-Master/MOOSE/tree/master [master]: https://github.com/FlightControl-Master/MOOSE/tree/master
[develop]: https://github.com/FlightControl-Master/MOOSE/tree/develop [develop]: https://github.com/FlightControl-Master/MOOSE/tree/develop
[GitHub pages]: https://pages.github.com/
[MOOSE_DOCS]: https://flightcontrol-master.github.io/MOOSE_DOCS/
[MOOSE_DOCS_DEVELOP]: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/
[directory tree]: https://github.com/FlightControl-Master/MOOSE/tree/master/Moose%20Development/Moose