Código de redação em russo. Prós e contras de um programa desse tipo. - página 4

 
Nikolay Demko:

Não há problema, o 47º cromossomo é poder.

O OOP foi criado pelas pessoas mais inteligentes, os professores. Eles passaram anos refinando-o e modificando-o para adequá-lo às necessidades dos programadores, de modo que seria mais conveniente escrever programas.

O OOP da MQ também é refinado em termos de segurança de código.

Você quer se tornar um profeta de uma nova religião? Não há problema, afinal, é a sua hora.

Todos são livres para programar como quiserem. Só queria descobrir o que não ficou claro para mim por muito tempo...
 
Alexander Antoshkin:

Se o mundo está torto, então minha mente está torta, mas não vejo neste tumulto relativo não ideologia, não visão de mundo

mas para os babacas ao meu redor, uma vara, para fazê-los resignarem-se à sua desgraça. )))))))

Do que você está falando?
 

Os nomes variáveis russos podem se transformar em abracadabra em algum momento e não há nada que você possa fazer a respeito. Desta forma, é impossível descobrir qual variável é qual. Usar nomes de variáveis em cirílico parece muito perigoso.

Mas no outro dia fiquei surpreso ao descobrir que não só as variáveis de entrada têm um comentário após a variável. Se após a declaração de uma variável eu colocar um comentário no idioma nativo russo, então quando eu digito esta variável eu recebo uma dica do que ela significa.

Algo como isto

int ticket1 = 0; // Это тикет ордеров на покупку.

aqui está o que vemos.


Talvez seja melhor não correr o risco?

 
Alexey Viktorov:

Os nomes variáveis russos podem se transformar em abracadabra em algum momento e não há nada que você possa fazer a respeito. Desta forma, é impossível descobrir qual variável é qual. Usar nomes de variáveis em cirílico parece muito perigoso.

Mas no outro dia fiquei surpreso ao descobrir que não só as variáveis de entrada têm um comentário após a variável. Se após a declaração de uma variável eu colocar um comentário no idioma nativo russo, então quando eu digito esta variável eu recebo uma dica do que ela significa.

Algo como isto

aqui está o que vemos.


Talvez seja melhor não correr o risco?

Estranho... Eu estava programando inteiramente em russo por três anos e isso nunca aconteceu... Pode ser uma construção antiga?
 
Реter Konow:

O princípio da minha abordagem é o seguinte:

1. indexamos chamadas a funções de software. Dividimos as funções em si naquelas que verificam eventos (funções lógicas, - retornar sim/não), funções processuais (funções executivas), e funções computacionais.

2. Criar um kernel lógico como uma matriz tridimensional global. Aqui atribuímos índices de funções lógicas em uma determinada hierarquia (separados de acordo com a importância dos eventos que eles verificam: eventos globais e locais). Criamos uma espécie de perímetro desses eventos no campo do kernel.

3. Indexamos as funções processuais e computacionais nas extremidades das cadeias lógicas.

4. Crie um mecanismo lógico que faz loops ao redor dos eventos do perímetro no núcleo na freqüência do timer e chama as funções necessárias através de seus índices.

5. A reconstrução do programa consistirá apenas na reconstrução de cadeias lógicas específicas ou na construção de novas cadeias.

Imagine como será este código em seu núcleo:

#include <Math\Alglib\complex.mqh>
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   complex a; a.re=3; a.im=2;
   complex b; b.re=1; b.im=4;

   a+=b; // тут мы складываем два комплексных числа а и b, и присваиваем результат в а

   Print("a(",a.re,":",a.im,")");
   Print("a(re:im)");
   
  }
//+------------------------------------------------------------------+
 
Nikolay Demko:

Imagine como este código ficaria em seu núcleo:

As funções não serão ordenadas de forma alguma. Eles serão ordenados pelos índices de suas chamadas no núcleo, e estarão nas cadeias lógicas que o motor seguirá.

Exemplo: Escrevemos todas as funções de que precisamos e as amontoamos juntas. Só precisamos organizar suas ligações. No núcleo. Em cadeias lógicas. Toda a organização do programa será criada não em classes que são herdadas uma da outra, mas em uma matriz na forma de cadeias de índices de chamadas de determinadas funções.

As funções em si serão divididas em três tipos: lógica (convenções de verificação), processual e computacional...

 
Реter Konow:
É estranho... Programo exclusivamente em russo há três anos e nunca tive nada assim... Pode ser uma construção antiga?

Uma vez instalei o software de matemática de um amigo, ele trabalhou nele, tudo estava bem, mas depois tive que mudá-lo para um computador novo e ele se perdeu. De alguma forma era difícil de invadir e foi instalado através da cópia de algumas pastas e arquivos. Mas uma versão mais recente com gerador de chaves apareceu na web. Todos se ajustam bem, correm, entendem o alfabeto cirílico, mas o trabalho da versão antiga, não entendia o alfabeto cirílico. Como eu não tentei nada, não funcionou.

E a segunda razão é que se o código é colocado no CodeBase ou um produto no mercado, o código ou produto é duplicado em outros sites e lá Aglian é preferível.

 
Реter Konow:

Você entendeu tudo errado. A alternativa ao OOP na forma de um núcleo estaria apenas na organização do programa. Em vez de separar funções e variáveis em classes, elas serão dispersas por suas funções. As funções não serão ordenadas de forma alguma. O que será ordenado serão os índices de suas chamadas no núcleo, e estará nas cadeias lógicas que o motor seguirá.

Exemplo: Escrevemos todas as funções de que precisamos e as amontoamos juntas. Só precisamos organizar suas ligações. No núcleo. Em cadeias lógicas. Toda a organização do programa será criada não em classes que são herdadas uma da outra, mas em uma matriz na forma de cadeias de chamadas de funções particulares.

As próprias funções serão divididas em três tipos: lógica (verificação de eventos), processual e computacional...

Você não teve a oportunidade de ver o código descompilado durante estes três anos?

Receio que as cadeias de índices serão tão difíceis de ler quanto as variáveis descompiladas.

 
Alexey Viktorov:

Uma vez instalei o software de matemática de um amigo, ele trabalhou nele, tudo estava bem, mas depois tive que mudá-lo para um computador novo e ele se perdeu. De alguma forma foi difícil hackear e instalar copiando algumas pastas e arquivos. Mas uma versão mais recente com gerador de chaves apareceu na web. Todos se ajustam bem, correm, entendem o alfabeto cirílico, mas o trabalho da versão antiga, não entendia o alfabeto cirílico. Como eu não tentei nada, não funcionou.

E a segunda razão, se o código for colocado no CodeBase ou produto no Mercado, o código ou produto é duplicado em outros sites e lá é preferível aglitskiy.

Caso interessante.

Sobre o mercado, o código não está fechado para o software lá?

 
Реter Konow:

Caso interessante.

Sobre o mercado, é um código de software fechado, não é?

E quanto às impressões e alertas? E comentários sobre as variáveis de entrada.
Razão: