Addio robot - ciao marasma - pagina 10

 
borilunad:

Sr. Pansa! Perché non usi il tasto SRC per mettere il tuo codice? Así mejor o Ud. tiene alguna duda?

Buona fortuna!

Ciao, borilunad!
vuoi chiedere dove prendi l'SRC?
panza
 
 
pansa:
Ciao borilunad!
voglio chiederti dove prendi l'SRC?
pansa

Quando rispondi, guarda un po' in alto e a sinistra del video vedrai un pulsante SRC! Cliccate e si aprirà un perimetro per incollare il codice! Buona fortuna!

A proposito, molto accuratamente ed "eloquentemente" ha indicato la posizione SRC di Constantine!

 
7Konstantin7:

Ciao Konstantin, come ti trovi nel trading manuale? Immagino che tu sia già diventato un assassino, vero?
 
Renat:

Capisco che alcune persone diventino isteriche dopo aver fatto conoscenza con gli analizzatori statici.

Ma solo dopo che alcuni hanno capito cosa deve (esattamente deve) fare un compilatore. Siamo nel 2014 e i compilatori ordinari sono almeno 10 anni indietro nel controllo di qualità e si concentrano solo sulle ottimizzazioni.

Per informazione: il compilatore Intel C++ non si è ancora ripreso dai suoi difetti - genera costantemente errori interni del compilatore sui nostri progetti. Cioè, non mastica grandi progetti e produce i propri errori. E anche i miti sulle sue straordinarie proprietà di ottimizzazione sono superati - tutti gli altri hanno stretto molto i loro livelli di ottimizzazione.

In un linguaggio così pericoloso e suicida come il C++ ci sono così tanti tasti e interruttori di compilazione che i programmatori sicuri potrebbero compilare tonnellate di codice antico e copiato dal nulla senza crampi nervosi :)

Un compilatore, prima di tutto, deve compilare piuttosto che analizzare e dovrebbe compilare preferibilmente con una buona qualità, il che di solito richiede flessibilità e personalizzazione.

È ragionevole creare analizzatori statici di codice e altri strumenti simili come utility separate le cui funzioni possono essere eseguite con maggiore qualità in questo modo che con il compilatore.

È ragionevole capire che l'analisi statica del codice e altre cose utili simili aiutano a rilevare solo alcuni errori, cioè quelli legati sia alla disattenzione che alla bassa abilità di un programmatore. Errori di progettazione, errori logici, errori di tipo "dimenticato di implementare" e altri errori simili non vengono rilevati da analizzatori statici o strumenti simili. Che è esattamente quello che possiamo vedere in MT4.

A suo tempo, anche il compilatore di Microsoft era facile da "rompere" a causa di errori interni. Le versioni più recenti sono anche più stabili, compresa quella di Intel. Per quanto riguarda l'ottimizzazione, di solito non c'è bisogno di nulla di straordinario - solo una buona e solida ottimizzazione - e l'ottimizzazione di Intel si basa sulla profonda comprensione dell'architettura e dei meccanismi dei propri processori. Sarebbe strano pensare che sia peggio per Intel che per altri.

Gli interruttori di compilazione sono principalmente intesi per sintonizzare in modo flessibile il compilatore sui requisiti di (parti di) un progetto, e le opzioni per rendere più facile la compilazione di codice antico sono solo un bonus aggiunto.

Se il linguaggio C++ è così pericoloso e suicida, allora perché il primo MQL4 basato su C è stato "migliorato" in MQL4++ e MQL5 basato esattamente su C++?

 

simpleton:

È ragionevole capire che l'analisi statica del codice e altri strumenti utili simili aiutano a rilevare solo alcuni errori, cioè quelli legati sia alla disattenzione che alla bassa abilità dei programmatori. Errori di progettazione, errori logici, errori di tipo "dimenticato di implementare" e altri errori simili non vengono rilevati da analizzatori statici o strumenti simili. Che è esattamente quello che si può vedere in MT4.

Gli ambienti di test sono ampiamente utilizzati nei prodotti software per la verifica funzionale dei progetti di chip software dove i requisiti di qualità del codice sono molto alti. Inoltre, la shell funzionale è parte integrante dello sviluppo di qualsiasi codice per la progettazione di chip. D'altra parte, molti programmatori non hanno nemmeno idea di questi test funzionali quando scrivono i soliti progetti software, perché scrivere questi test da zero può richiedere più tempo che quando si scrive il progetto stesso ed è giustificato solo quando c'è un requisito per scrivere codice di alta qualità o ci sono molte versioni dello stesso progetto. D'altra parte, un ambiente di test abilmente scritto riduce significativamente il tempo di debugging e di verifica del codice.

L'analisi statica è anche usata, ma solo come un controllo molto superficiale e primario della sintassi.

 

Sempliciotto, che sciocchezza.

Quando si arriva al livello del controllo di qualità totale, solo allora lo si capirà. Nel frattempo, voi rimanete al livello di percezione di un programmatore narcisista individuale, e continuerete a pensare "è ragionevole non controllarmi, lasciate che il controllo sia da utility separate mai eseguite".

A differenza del C++, MQL è assolutamente innocuo (se non c'è un output in dll) a causa del rifiuto dei link grezzi, e in generale - è un linguaggio gestito.

 
Renat:

A differenza del C++, MQL non è affatto pericoloso

I glitch nel compilatore C++ stesso sono piuttosto rari.

I glitch del compilatore MQL sono un evento regolare ora (ho visto errori interni del compilatore per MQL molto più spesso che per VS).

Anche i difetti di esecuzione del codice MQL sono un fenomeno ricorrente al giorno d'oggi.

 

I glitch vengono risolti, ma stiamo aggiungendo e migliorando molto in parallelo.

Ci sarà una release di MT4 venerdì con chiari miglioramenti nella velocità di esecuzione e nei test.

 
Renat, voglio: namespace, incollaggio in macro, inclusione multipla di file di intestazione, undef, union. Tutto come in C++.
Motivazione: