문제 로 코드 재사용
나는 소프트웨어 전달에 관한 이 질문 에 대해 생각하고 있었고 반복성 및 / 또는 재현성 문제로 계속 돌아왔다 . 프로젝트를 반복하지 않으면 프로젝트를 빌드하는 데 사용했던 프로세스를 개선하기가 더 어려워지기 때문에 문제가됩니다. 엔지니어링에는 고품질 프로젝트를 생성하기 위해 설계 및 시공과 관련된 프로세스를 지속적으로 개선하는 것이 포함됩니다.
소프트웨어는 디지털 형식으로 인해 재사용에 크게 의존 할 수 있습니다. 모듈을 다시 작성하는 대신 모듈을 다시 호출하거나 다른 시스템에 복사하면됩니다. 몇 가지 예는 인증 / 로그인 또는 로깅 기능입니다. 이러한 범주에 대해 잘 알려진 예가 많이 있으며, 기존의 지혜 는 자신을 굴리는 대신 존재하는 것을 재사용하는 것입니다.
다른 분야와의 일부 비교
구성
대조적으로, 물리적 시스템 (건물, 교량)의 건설은 재사용 할 수있는 곳이 거의 없습니다. 집의 청사진을 여러 번 재사용하여 집의 동일한 사본을 만들 수는 있지만 매번 건축을 수행해야합니다. 아날로그 세계에서는 잘라 내기 및 붙여 넣기가 작동하지 않습니다. 교량 설계도는 현장 조건이 다양하기 때문에 주택에 비해 재사용 성이 떨어집니다.
마스터 빌더는 해당 지역에서 수십, 수백 또는 수천 개의 물건을 설계 및 / 또는 구축 한 것으로 인정되는 전문가입니다. 예를 들어, 세계적으로 유명한 건축가이자 디자이너 인 Frank Lloyd Wright 가 있습니다 designed more than 1,000 structures and completed 532 works
. 5 개의 언어 (Turbo Pascal; Delphi; J ++; C #; Typescript)를 설계 한 Anders Hejlsberg와는 대조적입니다 . 여러면에서 도메인이 다르기 때문에 불공평 한 비교입니다. 그러나 넓은 차원에서, 두 명의 매우 똑똑한 사람들의 수량화 가능한 생산은 크게 다릅니다.
무술
무술가들은 움직임의 숙달은 수천 번의 반복에서 비롯된 것이라고 말합니다. 이러한 반복의 상당 부분이 들어간 후, 많은 무술가들은 이전에 복잡한 카타나 형태로 인식 된 방식이 단순 해졌다는 것에 놀랐습니다. 또한이 학생들의 강사는 모션이 유동적이고 목적이 있고 모션 경제가 어떻게 이루어지는 지 알 수 있습니다. 마찬가지로, 숙련 된 무술가는 경험이 적은 학생들보다 더 복잡한 카타를 더 빨리 선택할 수 있습니다. 반복 경험으로 인해 더 빨리 배울 수있는 프레임 워크 또는 프로세스가 제공되었습니다.
목공
목 공자들도 비슷한 변화를 경험합니다. 취미 목공은 항상 많은 서랍이 필요한 첫 번째 프로젝트를 다시 언급합니다. 그들이 프로젝트를 완료하면 조립 라인이 생산하는 효율성에 대한 새로운 인식을 얻게됩니다. 목재 사용을 극대화하기 위해 시트 스톡에 서랍 부품을 배치하는 방법에 대한 이해와 같은 다른 이점도 있습니다. 전문 목공업자는 애호가와 비교하여 이전에 여러 번 제작 한 아이템을보다 빠르게 설계, 시작 및 구성 할 수 있습니다. 또한 다른 사람의 설계 내에서 자신의 작업에서 실수를 저지른 고유의 문제를 볼 수 있습니다.
그렇다면 소프트웨어 재사용이 소프트웨어 개발자의 숙달을 방해 하는가?
여러면에서 소프트웨어 설계 및 구성은 항상 새로운 것입니다. 모듈, 라이브러리 또는 시스템을 재사용 할 수 있다면 우리는 과거의 작업을 반복하지 않습니다. 전체 내용 을 처음부터 다시 작성하기 전에 기존 시스템을 우선적으로 확장합니다 . 그러나 반복은 디자인과 시공에서 효율성을 찾을 수있게 해줍니다. 운동이나 신체 활동을 한 사람은 반복이 좋은 개업의가되는 열쇠라고 말할 것입니다.
내 질문 : 소프트웨어를 재사용 할 수있는 능력이 프로젝트를 반복함으로써 발생하는 프로세스 개선 및 효율성을 방해합니까?