Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Se você está usando aulas para algo que não entende, não é OOP.
E sim, eu o aconselho, até que você entenda a necessidade desses artifícios, não os utilize.
Com esta abordagem, a compreensão nunca chegará.
Não creio que, com o uso impróprio, a compreensão possa vir.
Igor, você se lembra da tarefa que o Czar deu a Fedot, o Forte?
E qual foi a resposta dos dois jovens?
Como você pode tentar reproduzir algo, se você não conhece as regras, ou o resultado final a ser obtido...
Bem, é mais ou menos isso mesmo, aqui está uma imitação do fato de que os tempos das notícias e a quantidade de notícias diferem de país para país:
mas resta saber se você precisa embrulhá-lo em uma OLP.
;)
aqui está um registro de como foi chamado e com o que acabou:
2019.09.08 16:00:35.031 tst (EURUSD,H1) NewsRU::NewsRU
2019.09.08 16:00:35.032 tst (EURUSD,H1) NewsEN::NewsEN
2019.09.08 16:00:35.032 tst (EURUSD,H1) NewsFake::NewsFake
2019.09.08 16:00:35.032 tst (EURUSD,H1) Erro, não este tipo FR
2019.09.08 16:00:35.032 tst (EURUSD,H1) Notícias #1 em 1970.01.01.01 00:01:51
2019.09.08 16:00:35.032 tst (EURUSD,H1) Notícias #2 em 1970.01.01.01 00:03:42
2019.09.08 16:00:35.032 tst (EURUSD,H1) Notícias #3 em 1970.01.01.01 00:05:33
2019.09.08 16:00:35.032 tst (EURUSD,H1) Notícias #1 em 1970.01.01.01 00:07:24
2019.09.08 16:00:35.032 tst (EURUSD,H1) Notícias #2 em 1970.01.01.01 00:09:15
Não creio que, com o uso impróprio, a compreensão possa vir.
Pelo menos haverá um entendimento de que "não há peixe aqui")).
Já ouvimos isso muitas vezes de alguns personagens locais.
E isso é apenas por falta de compreensão.
E há peixe!
bem, aqui está uma simulação de que os horários e o número de notícias são diferentes para diferentes países:
mas resta saber se você precisa embrulhá-lo em um OOP.
;)
aqui está um registro de como tudo foi chamado e com o que acabou:
Não, Igor. Esta não é uma abordagem deste tipo.
As cordas destacadas são três casos de uso. Ao mesmo tempo, o intervalo de tempo muda. Em seguida, a matriz de valores[] é processada de uma certa forma. A identificação do evento é usada para obter a descrição deste evento. Sua importância, tempo e outros atributos.
Já ouvimos isso muitas vezes de alguns personagens locais.
E isso é apenas por falta de compreensão.
E há peixe!
Eu li sobre isso. Há peixe, mas não onde você não entende. Que tipo de projeto deve ser em mql5 para que haja peixe. Quero ver pelo menos um projeto em mql5, onde a necessidade de OOP seria vista.
Provavelmente, não há necessidade de OOP. Em princípio, tudo pode ser feito em um estilo estruturado. Mas pessoalmente, meu primeiro impulso começou quando decidi usar estruturas em vez de conjuntos de variáveis globais, que tinham começado a crescer perigosamente. Eu já havia passado de estruturas para classes porque parecia lógico integrar funções que processavam dados dessas estruturas diretamente nelas, o que levou à criação de classes. Isto não é uma questão de necessidade, mas simplesmente organizar os dados e trabalhar com eles.
Não é necessário "matar" o objeto assim que ele for criado e tiver feito seu trabalho.
Os objetos criados podem ser "mortos" na função OnDeinit após o término do programa MQL,
Enquanto o programa estiver em execução, todos os objetos podem ser guardados na memória e podem ser acessados.
Se o objeto cumpriu sua tarefa, por que guardá-lo na memória?
Não ocorrerá um vazamento de memória?
Não, Igor. Essa não é a abordagem aqui.
As linhas destacadas são os três casos de uso. Neste caso, o intervalo de tempo muda. Então a matriz de valores[] é processada de uma certa maneira. A identificação do evento é usada para obter a descrição deste evento. Sua importância, tempo e outros atributos.
a abordagem não é importante
Se você quer entender OOP, minha opinião ( já escrevi ) - é conveniente, mas OOP é apenas um paradigma, bem, uma forma de escrever, que combina vários conceitos OOP - Wiki...
Então você pode tentar o oposto: aqui está sua tarefa, você precisa dividi-la em dados e formas de processar os dados...
1. Onde você vai armazenar os dados? - muito provavelmente uma estrutura
2. Como você irá processar os dados? - Muito provavelmente um conjunto de funções.
3. Como você vai rubricar os dados? - muito provavelmente um conjunto de estruturas, e você precisará zerar neste conjunto e depois preenchê-lo com dados
4. Como você vai garantir a flexibilidade do código previamente escrito - refactoring ?
Agora, se você usa OOP:
1. em campos de uma classe, embora talvez este campo seja uma estrutura, ou talvez eu escreva uma classe base que armazene os dados e faça herança OU esta classe será um campo na classe em discussão agora
Se eu escrever uma classe base, posso criar métodos em uma classe base para realizar uma simples manipulação de dados, e se eu herdar de uma classe base, estes métodos estarão disponíveis na classe também.
2.2 Se eu quiser mudar apenas um método depois de herdar da classe base, não vou reescrever nada na classe base, não é necessário! - eu vou apenas escrever um método (uma função!) com o mesmo nome do método da classe base, e ele será herança!
3. será um construtor, e se eu não escrever um construtor, ele será chamado implicitamente, então eu tenho em mente que cada classe da qual herdei e/ou classe em meus campos sempre terá um construtor chamado; e OOP me dá a habilidade de não escrever um construtor, escrever um construtor sem parâmetros, escrever mais uma dúzia de construtores com parâmetros
4. Usando o OOP você não precisa reescrever fragmentos de código criados anteriormente, você pode herdar, você pode .... você também pode cometer um erro, o compilador irá limpar depois do programador na maioria dos casos!
bem, esta é minha visão bastante amadora sobre OOP, em geral, é conveniente e para fazer tudo funcionar eficientemente, o trabalho principal quando se usa OOP, não o programador, mas os desenvolvedores do compilador, para que os campos / métodos não sejam usados para não incluir no arquivo compilado, onde o programador cometeu um erro, bem, para adverti-lo))))