Ugar, оно то, в принципе, и так. НО. Зачем мне начинать писать всё в одной функкции start, как это делают многие новички? Да и не только новички так делают.
Я понимаю, что разделение кода на функции нужно для удобства. Поэтому учусь связывать их между собой. Но не всё так гладко..
Я веду к тому, что лучше начинать писать код в хорошем тоне, а не абы как, дабы потом не пришлось переучиваться.
Разделение кода на функции удобства не добавляет. Добавляет только путаницы. Выделение части кода в функцию может оказаться удобным.
Пример:
Программа одинаково анализирует 10 инструментов.
1. можно код анализа 10 раз скопировать указав разные символы.
2. можно код анализа выделить в функцию. 10 раз её вызвать с заданием разных инструментов.
У 2 варианта очевидные преимущества. Код короче, значит проще в понимании. Если что то нужно изменить в анализе достаточно изменить одну функцию, а не 10 кусков кода.
Ещё пример: У программиста наработаны собственные функции которые понятны, уже многократно проверены и отлажены. Они написаны потому что часто встречаются в программах. Программа пишется Внутри функции start. Но части кода которые часто используются в программах как модули вызываются функции. Удобно потому что меньше придётся писать и проверять.
Ещё другой пример:
Программа без повторяющейся компонентов
1. Код написан последовательно внутри функции start. Всё по порядку, легко понять и разобрать на косточки.
2. Внутри функции start только одна функция. Из неё вызываются ещё функции, из них ещё функции... В общем хороший пример плохого тона.
Никакого удобства в этом нет. А когда часть функций написаны другим программистом и не проверены лично, о стабильности работы речи быть не может. А если выведено в отдельные функции то что используется в коде 1 раз и возможно больше никогда не понадобится, то это ещё и полная дурь. Такие приёмы используют что бы запутать взломщиков. Они при разборе кода будут грязно ругаться. Всё равно взломают если будет на то желание. Но тут палка о двух концах. Сам программист, через время забудет что там он писал. Если через время понадобится внести изменение в работе программы то тогда он уже сам будет грязно ругаться, только уже на себя. :rolf:
Учиться связывать функции конечно нужно, но не надо забывать про саму цель.
1 Цель изучение языка программирования - создание программ.
2. Цель создания программ - заработок.
Вот тут возникает вопрос, на чём заработок. Если на бирже с использованием программ, то не стоит грузиться всякой дурью и даже удобство кода не важно. Важно только поможет ли работающая программа заработать на бирже.
А если заработок на написании программ на заказ, то стоит писать свои библиотеки функций которые чаще всего используются. Тут надо учитывать что программист без опыта в реальной торговле на бирже качественную программу вряд ли напишет. От куда ему знать про нюансы и подводные камни связанные с реальной торговлей.
А если заработок не на бирже, а на продаже "граалей". Тогда да, стоит сразу осваивать максимально запутанное написание кода. Они редко дорабатывают свои граали. По этому запутанный код им только помогает.