왜 valenok2003 대 MT5 - 페이지 2

 
Zhunko :

영형! 다시 goto 에 대해 ! 좋아요! 그것 없이는 가능합니다. 항상 가능하지만 필수는 아닙니다.

어떤 경우에는 goto 를 사용하여 코드를 단순화하고 속도를 높일 수 있습니다. 어디선가 드라이버가 전환 속도를 높이기 위해 드라이버를 작성했다는 기사를 읽었습니다.


안녕하세요 도착했습니다.

다른 어셈블러 코드를 알지 못합니다.

 
IgorM :

코드를 단순화하는 것은 가능성이 낮습니다. 다른 사람이 코드를 읽을 수 없도록 만드는 것은 속도에 관한 것입니다. 작업 및 "프로그래밍할 때 필기"의 종류에 따라 다릅니다. 원칙적으로 저는 하고 싶지도 않습니다. 토론해 보니 goto http://www.gamedev.ru/flame/forum/?id=69459 의 이득과 피해에 대해 진지하게 논의하고 있었던 것 같습니다.

프로그램 디스어셈블리 수준으로 이동하면 모든 HLL에서 대부분의 사이클이 조건부 점프 jcxz 등의 형태로 구성됩니다.

본질적으로 if(cx==0) goto 레이블 구성이 됩니다.

중첩 루프에서 조기 종료하기 위해, 다른 조건에서 한 지점으로 이동하기 위해? 이것은 코드를 단순화합니다. 나는 종종 그들을 사용합니다. 가끔 사이클링을 합니다.

세르게예프 :

안녕하세요 도착했습니다.

다른 어셈블러 코드를 알지 못합니다.


그리고 우리는 어셈블러에 대해 이야기하지 않습니다 :-)
 
Zhunko : 중첩 루프에서 조기 종료, 다른 조건에서 한 지점으로의 전환을 위해? 이것은 코드를 단순화합니다. 나는 종종 그들을 사용합니다. 가끔 사이클링을 합니다.

글쎄요, 그렇다면 다른 의미는 없습니다. :) "모든 펠트 펜은 맛과 색상이 다릅니다!" )))))))))

개별 문제입니다. OOP가 주제 스타터를 방해합니다. OOP가 아니었다면 오랫동안 볼쇼이 극장 MQL5의 확장을 경작했을 것입니다.

 

http://khpi-iip.mipk.kharkiv.edu/library/extent/dijkstra/pp/ewd215.html

За многие годы я утвердился во мнении о том, что квалификация программистов - функция, обратно зависящая от частоты появления операторов go to в их программах.

...우리는 ... 정적 프로그램과 동적 프로세스 사이의 개념적 간극을 메우고 프로그램(텍스트 공간에서 전개)과 프로세스(시간에 전개) 사이의 대응을 가능한 한 명확하게 만들기 위해 가능한 모든 것을 해야 합니다.

 

이것은 많은 의견 중 하나일 뿐입니다. 찬성과 반대가 많습니다. 취향과 스타일의 문제.

저자는 자신을 엄격하게 제한합니다.

 
Edsger W. Dijkstra는 프로그래밍의 마법에서 과학으로의 변환(*)과 관련된 이름을 가진 사람들 중 한 명입니다.
 
그는 물론 제한적입니다 - Turing Award 수상자
 
Zhunko :

이것은 많은 의견 중 하나일 뿐입니다. 단점이 있는 만큼 장점도 많다. 취향과 스타일의 문제.

저자는 자신을 엄격하게 제한합니다.


프로그래밍의 현대적인 경향은 종종 프로그램이 작성되고 프로그래머 팀이 동반하는 것과 같습니다. 이것은 가독성을 위해 코드의 품질에 대한 요구 사항을 제시합니다.

내 의견: 코드는 명확하고 잘 설명되어야 합니다. 다시 말하지만, 내 개인적인 의견: go to는 유해한 연산자이며 코드 읽기 를 방해합니다. 100개의 레이블이 있는 최소 500개 라인의 프로그램을 상상하고 해당 라인으로 이동합니다.

 

goto의 사용은 개인 취향의 문제입니다. 그래서 그는 그것을 좋아하지 않고 그가 그것을 좋아하지 않는 이유를 생각해 냈습니다.

좋아하는 사람도 있고 좋아하는 이유가 있습니다. 저에게는 이 모든 이유가 동일합니다. 내 코드는 goto를 사용할 때 단순화 된 다음 사용하고 그렇지 않으면 사용하지 않습니다.

나는 다른 사람들의 추측에 나 자신을 제한하지 않습니다.

sand :


100개의 레이블이 있는 최소 500개 라인의 프로그램을 상상하고 해당 라인으로 이동합니다.

드라이버는 여전히 이런 식으로 작성됩니다. 왜요?
 
Zhunko :

드라이버는 여전히 그렇게 작성됩니다. 왜요?


첫 번째, 두 번째 및 세 번째 위치의 드라이버는 실행 속도이기 때문입니다.

모든 것을 어셈블러로 작성할 수 있다면 왜 고급 언어가 필요합니까?

그리고 왜 라디오 녹음기와 변압기 좌석을 Formula 1에 넣지 않습니까?

사유: