문제

어떤 변환/재작성이 실패했습니까?프로세스에 관련된 언어와 프레임워크는 무엇입니까?문제의 소프트웨어는 얼마나 컸습니까?마지막으로 프로세스에 참여하면서 배운 가장 중요한 한두 가지는 무엇입니까?

이것은 이것과 관련이 있습니다 질문.

도움이 되었습니까?

해결책

제가 가장 좋아하는 것 중 하나는 Sun OS 3에서 서버 앱을 개발하는 고정 가격 프로젝트였습니다. 이 앱은 결국 (당시) 최신 버전의 Unix를 실행하는 오래된 Data General 시스템에서 실행되어야 했습니다.

이제 우리는 C 코드가 9비트 바이트/36비트 단어를 가지고 있기 때문에 C 코드를 Data General로 이식하는 것이 고통스러울 것이라는 것을 미리 알고 있었지만 어떻게 ...부족하다...유닉스 구현은 그럴 것이다.

고객에게 빛나는 새 Sun 박스를 구입하기 위한 현명한 경영진의 결정이 내려진 것은 포팅 작업을 시작한 지 약 5시간이 지난 후였습니다.

다른 팁

나는 최근에 앱을 다시 쓰는 것이 장기적으로 그대로 유지하는 것보다 장기적으로 더 저렴할 것이라는 경영진을 철저히 설득 할 수 없기 때문에 크게 실패한 것을 가지고있었습니다. 기술 부채에 대해 더 빨리 읽었다면 성공했을 것입니다. 주제에 관한 Jeff의 최신 기사는 약 8 개월이 늦었습니다.

모두 앱은 약 75k 라인의 C# 코드라고 말했지만 유지 보수 악몽 (사내 응용 프로그램)이라고 말했습니다. 소수의 신의 수업과 나머지는 내가 꼭두각시 수업이라고 불렀습니다 (이름만으로도 신의 수업은 그들이 한 모든 일에 대해 "줄을 뽑았습니다.). 거의 사용자가 설득 할 수 없었기 때문에 개발자는 모든 것에 책임이있었습니다.

뒤늦게 성공하기위한 가장 큰 장애물은 앱 자체였습니다. 그것을 계속 달리는 것은 우리 중 3 명에게 정규직이었습니다. 우리가 할 수있는 최선의 일은 리팩토링을 계속하는 것이 었습니다. "버전 2"앱은 몇 가지 좋은 개념을 가지고 있었고 다시 시작하는 대신 통합을 계속하려고 노력해야했습니다 ... 우리가 그렇게했다면, 우리는 원래 앱을 안정화 한 후 큰 구성 요소를 구축 할 수있었습니다.

나는 한 번 Darkbasic으로 C에 쓴 게임을 포트하려고 시도했다.

내가 실행 한 문제는 Darkbasic이 제한된 언어 (예 : 참조로 전달되는 논쟁 없음)라는 것이 었습니다. 나는 그것을 포팅했을 때 나는 직선 포트를 시도했다 ... 즉, 나는 언어에 대해 적절하게 그것을 리팩토링하지 않으려 고 노력했다. 사용 중 ...

결과는 큰 혼란이었다 ...

나는 아마 그것을 작동시킬 수 있었지만 약 2 일 후에 멈췄다.

나는 그날 C와 Allegro를 사용하여 Pacman 클론을 작성했고 Dreamcast에서 실행되도록 다시 쓰려고 노력했습니다.

그것은 끔찍한 코드였습니다. 나는 코드 기반에서 많이 구제 할 수 없었고 아이디어를 폐기 할 수 없었습니다.

나는 당시에 내가 생각한 것에 관계없이 당시에는 정말 끔찍한 프로그래머 였고 몇 년 동안 많은 것을 배웠다는 것을 배웠습니다. 또한 몇 년 안에 오늘 글을 쓰고 있던 코드를 되돌아보고 같은 생각을하는 데 충분히 배워야한다는 것을 알게되었습니다. 기본적으로 나는 항상 더 나아지기 위해 노력해야합니다.

한 번은 Dec-System10의 사진 타자기를 IBM 4381로 이끄는 프로그램을 변환하라는 요청을 받았습니다. 코드를 살펴보면 원래 개발자가 명백한 이유없이 다음과 같은 프로그램의 다양한 비트를 작성했음을 발견했습니다. 언어 :

  • 12 월 Fortran
  • Algol 68
  • BCPL
  • 매크로 -10

이것은 다중 언어 프로그래밍에 대한 DEC의 지원에 대한 큰 증거 였지만, 사용자에게 가서 "할 수없는 일"이라고 말해야 할 유일한 시간이었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top