
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Так я и отвечал конкретно Петру, который, насколько понимаю, пишет в основном для себя. Я нисколько не призывал использовать такой подход.
Совершенно верно. Если пишешь чисто под себя и пришла в голову идея — все правила летят к черту, важнее быстрый результат, проверить мысль. А вот когда ты менеджер проекта и под тобой минимум 10 человек, и надо раз в сутки выкладывать код в копилку, тут начинаешь фильтровать. Врагу не посоветую ))
Был у меня крутой математик, но любитель выпить и по бабам.
— Леша, я тут прогулял, но придумал новый алгоритм по DSP звука, вот условный код
— Оформляй на С, это тянет на патент. Да, ты с запахом, дуй к даме и разрабатывайте в койке новые алгоритмы )) Переходите на сухое.
Это про мифы о программистах трезвенниках
На шарпе процедурно писать нельзя, это вполне известный факт.)) Там все только через ООП.)) В принципе, поэтому я не стал продолжать его изучать.. Не понравилось принуждение майкрософта.))
Как это нельзя? И кем придуман сей факт? В старших версиях C#, начиная наверное уже с Net6, есть режим Top Level State который преобразует программу в процедурный стиль:
MQL лишний в том списке. Он чисто для автоматизации торговли в MT. Если человек не торгует, то MQL ему не нужен. Особенно, учитывая, что он требует знаний в биржевой торговли. Можно довольно далеко продвинться в обычном языке за то время, пока будешь вкуривать, чем позиция от сделки отличается, учитывая, что ты хочешь программировать, а не торговать.
Сравните C# и C++. Это гораздо интересней. Вот вам для затравки вопросы от аматора:
Главный ответ на все эти вопросы очевиден: потому что C# это другой язык программирования, не С++. Другие языки потому и успешны, что они не косплеят С++.
Как это нельзя? И кем придуман сей факт? В старших версиях C#, начиная наверное уже с Net6, есть режим Top Level State который преобразует программу в процедурный стиль:
Главный ответ на все эти вопросы очевиден: потому что C# это другой язык программирования, не С++. Другие языки потому и успешны, что они не косплеят С++.
Ну, С# точно С++ косплеет.)) Практически с него он и начался. Майкрософт взяли С++ и на его основе сделали свой язык Си шарп. Это ж известный факт.))
Ну, С# точно С++ косплеет.)) Практически с него он и начался. Майкрософт взяли С++ и на его основе сделали свой язык Си шарп. Это ж известный факт.))
Снова мимо. Майкрософт взяли за основу не C++, а Java и сделали свою версию Java, назвав ее C#. Еще у них был J# - попытка писать на java под net clr, но не пошло и они проект удалили
Можно процедурно писать. Я ведь Вам скриншот однострочника показал выводящих в консоль hello word.
Моя информация о С# примерно 2014-го года. Вероятно с тех пор его немало изменили. Время летит быстро, а я особо про шарп не вспоминал с тех пор. Однако, то что он раньше был полностью обьектно-ориентированный, это точно.
Так обновите знания, это бесплатно. C# и сейчас объектно-ориентированный, просто позволяет сейчас писать в процедурном стиле. Нужные классы будут созданы во время компиляции, просто Вы их не увидите.
Та можно, почему нет?)
Прикол в том, что все поля константны. Я просто сделал нужные поля публичными; благодаря member initializer list, все поля защищены, мне не нужны геттеры/сеттеры, мне не нужно париться, защищая от случайного изменения то, что не должно быть изменено после инициализации. Все удобно упаковано, не громоздко, защищено и прозрачно. Плюс я подозреваю, что такие конструкции очень хорошо оптимизируются компилятором (если создается автоматический экземпляр на каждой итерации цикла, например).
Я часто упаковываю некоторые вычисления подобным образом и считаю это очень удобным.
Теперь вопрос: как сделать аналог на C# (там нет member initializer list)? Возможно, аналог там есть (как я говорил, я не очень далеко продвинулся); если аналог все-таки есть, то хотелось бы что бы кто-то его заспойлерил, что бы в процесе изучения C# продолжать писать в привычной себе манере.
member init list это довольно скользкое место . И у вас хорошая иллюстрация этому :
при вызове CLineByIdxAndProc(1.0,2.0,3,3) будет ошибка. Деление на 0
к чему должна быть отнесена ошибка, хотя бы для журнала ? конструктор ещё не вызывался. Экземпляр класса даже не инстанцировался, не факт что место выделено. На экземпляр нельзя сослаться никак. Были-бы исключения в языке - застрелись писать обработчик.
А как быть, если потребуется изменить эту линию?
Если точки линии могут быть передвинуты, то тот мой код конечно-же не подходит для этого.
Ну и в качестве своего видения прямой и использования спецификатора const - прикрепляю свой класс CPlaneStraight - Прямая на плоскости.
У вас там целая библиотека. У меня просто небольшой ситуативный код, который не задумывался для использования из коробки на все случаи жизни.
Тем более, он только для MT4. В пятерке уже целочисленные индкесы баров в качестве координат времени не годятся (учитывая precise time scale)
Хороший title
В старших версиях C#, начиная наверное уже с Net6
Как вы думаете, книжку какой версии C# лучше купить начинающему? Много рекомендованой литературы по C#6, но я смотрю там уже и для C#13 бестселлеры есть. Может ли быть такое, что я буду учить слишком свежий C#, а потом с легаси кода чехлы снять совсем не смогу? Или лучше сразу посвежее?