스파게티 코드는 뭐고 옆그레이드는 또 뭐지? 개발자 용어 사전-3

이 글은 IT전문 출판사 한빛미디어 웹사이트에 실린 것으로 회사 측의 허락을 얻어 테크잇에서 퍼블리싱하는 것입니다. 제목은 일부 수정했습니다.

날코딩

힘 들이지 않고 어떤 일을 해낸다란 사전적 의미의 '날로 먹다'처럼 대충 생각나는 대로 코드를 막 짠다가 아니라 프레임워크, 공통 함수 등을 쓰지 않고 직접 모두 구현하는 것을 말합니다.

스파게티 코드

프로그램의 흐름이 복잡하게 뒤엉킨 것을 면발에 비유한 말입니다.

옆그레이드

업그레이드를 하려 했지만 결과적으로 업그레이드 전보다 나아진 게 없는 상황을 이르는 말입니다. 즉, 업(↑)을 하려다가 고꾸라졌단 의미로 옆(→)을 쓴것입니다. 참고로 옆그레이드/옆데이트보다 더 나쁜 경우 없그레이드(없는 게 나았다)라고 한답니다 :-)

애자일/XP/스크럼/린/칸반

애자일은 소프트웨어 팀이 특정 문제를 해결하는 데 도움을 주기 위한 최적화된, 단순함을 유지해서 상대적으로 간단하게 개발을 하기 위한 일련의 방법 또는 방법론입니다. 방대한 문서 작성이 뒤따르는 대규모 소프트웨어 개발 방식이 소규모 프로젝트에는 맞지 않자 애자일 방법/방법론이 고안됐습니다.

스크럼, XP, 린/칸반은 모두 애자일 방법론이지만, 서로 다른 분야에 중점을 둡니다.

스크럼은 프로젝트 관리, 즉 어떤 작업이 완료되고 있는지, 사용자와 이해관계자가 필요로 하는 것과 일치하는지를 확인하는 데, XP는 잘 설계되고 유지보수가 쉬운 고품질의 코드 작성에 중점을 둡니다.

반면 린/칸반은 린 사고방식과 칸반 프로세스를 결합한 것으로, 소프트웨어 구축 방식을 지속적으로 개선하는 데 집중합니다.

클론 코딩

이미 나와 있는 서비스의 기획과 디자인을 베끼고, 구현은 내가 직접 하는 것을 클론 코딩이라고 부릅니다. 결과물을 알고 있는 상태에서, 어떻게 개발되었는지는 모르니 내가 여태껏 배웠던 스킬들을 점검하기에 좋은 코딩입니다.

클론 코딩은 효과적인 프로그래밍 학습 방법의 하나입니다. 페이스북이나 카카오톡 같은 실제 서비스의 만듦새를 직접 하나하나 따라 만들며 프로그래밍을 학습하는 방법입니다.

인수, 매개변수

인수는 어떤 함수를 호출할 때 전달하는 값을, 매개변수는 인수를 받는 변수를 말합니다.

'인수', 모두 알고 있음에도 많은 글에서 인수(Argument, 아규먼트)를 매개변수(Paramenter, 파라미터)와 혼용해 잘못 사용하고 있습니다. 인수는 위의 내용과 같이 어떤 함수를 호출할 때 전달하는 값을, 매개변수는 인수를 받는 변수라고 할수 있기 때문에 인수는 '값', 매개변수는 이름 그대로 '변수'를 지칭합니다.

테크잇 뉴스레터를 전해드립니다!

오피니언 기반 테크 블로그 'TechIt'
테크 비즈니스를 보는 다양한 통찰들을 이메일로 간편하게 받아 볼 수 있습니다.

About the author

한빛미디어
한빛미디어

한빛미디어 / 더 나은 세상을 위한아시아 출판 네트워크

No more pages to load


TechIT

테크 비즈니스를 보는 다양한 통찰 '테크잇'

독자 여러분들께서 좋은 의견이나 문의 사항이 있으시면 아래 양식에 따라 문의 주시기 바랍니다.

Contact