우리가 개발을 할 때, 프로그래밍 이론을 배우는 것도 중요하지만 잊지말아야 하는 개발 포인트가 있습니다.

개발자들이 쉽게 빠질 수 있는 함정이죠. 경력이 있는 개발자들은 물론, 특히 처음 시작하는 분들은 꼭 기억에 두시면 좋을 포인트를 정리한 글이 있어 공유합니다: 영어 원문 클릭 

 

개발자들이 조심해야 하는 포인트, 바로 '도구의 법칙과 개발자의 저주'입니다.

 

도구의 법칙은 매슬로우의 망치(또는 황금 망치)로도 불리는데요.

쉽게 한 문장으로 풀어보자면 아래와 같이 표현할 수 있겠습니다.

 

망치만 사용할 수 있는 사람에게는, 모든 것이 못으로 보인다.

 

물론 나사, 나무, 못, 망치가 있으면 나무에 나사를 박을 수는 있습

니다. 하지만 망치보다는 드라이버가 더 좋은 대안이죠.

 

도구의 법칙은 '내가 아는 도구는 완벽하다'라는 집착을 의미하기도 합니다. 또 그 반대의 집착도 있죠. 바로 새롭고 트렌드만을 쫓은

기술을 습득하는 집착입니다. 개발자 개인적으로는 재밌겠지만, 비즈니스 가치를 제공하지는 못하는 케이스입니다.

이런 면에서 델파이는 정말 잘하고 있다고 생각합니다. 델파이는 개발자가 작성한 기존 코드를 존중하면서도 새 기술, 새 기능, 새 프레임워크로 옮겨가니까요.

 

 

그렇다면 개발자의 저주는 무엇일까요? 여기에는 두 가지 케이스가 있습니다.

 

  첫번째는 일상 생활 모든 문제에 대해서 '이 문제를 해결할 수 있는 프로그

  램을 내가 만들 수 있을텐데'라고 생각하는 것입니다. 이 케이스는 프로그

  밍의 힘과 유연함을 터득하게 되면서, 개발에 활용하고 성장할수 있습니다.

 

  두번째는 프로그램 마무리보다 '라이브러리'나 '프레임워크'에 과도한

  관심을 갖는 것입니다. 우리가 빠지지 않도록 주의해야 하는 케이스이죠.

  개발을 하면서 혹시라도 유사한 문제 해결 시 필요할 수 있겠다는 생각으로

  굳이 라이브러리를 여러개 만드는 것입니다. 재사용 가능한 라이브러리,

  함수, 컴포넌트, 프레임워크 물론 다 좋죠.

  하지만 불필요한 생성으로 시간과 부피만 커지게 될 수 있습니다.

  가장 좋은 방법은 필요할 때만 라이브러리를 만드는 것입니다. 그리고

  코드를 작성할 때, 해당 문제를 해결하기에 알맞은 수준 정도로만 유연하게

  만들면 됩니다. 다른 곳에서 재사용해야 하는 경우가 있으면, 그 때가서

  리팩토링 하면 됩니다. 

 

 

 

 

늘 이 두 가지 포인트를 잊지 않고 프로그램을 만든다면, 더욱 발전하는 개발자가 될 수 있을 것이라고 생각합니다.

 

 

 

단계적으로 델파이와 프로그래밍을 배울 수 있는 페이지 LearnDelphi.org 를 통해서 차근차근 배워보세요.

엠바카데로가 오픈한 LearnDelphi.org는 다음 컨텐츠들을 무료 제공합니다:

  • 델파이 개인 학습용 무료 라이선스www.devgear.co.kr/archives/products/delphi_ce
  • 델파이를 배우고 싶은 학생분들을 위한 학습자료
  • 델파이를 가르치는 강사분들을 위한 강의자료

 

데브기어가 제공하는 무료 컨텐츠들도 확인해보세요:

LearnDelphi.org 살펴보기

 

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 50146
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 47946
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 50879
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 55809
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 65838
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 51447
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 80662
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 211423
574 프로그래밍 언어 기초(델파이, C++): 파이어몽키 코스북 4장 file 관리자 2014.07.15 2519
573 외부 패키지 등록 및 사용 방법(AR Drone 연동 패키지 기준) file Humphery 2014.06.30 2508
572 [따라하기] Advanced 델파이 UI 작성하기 험프리 2019.09.11 2492
571 [샘플] RAD Studio, Delphi and C++Builder XE6 Android and iOS Code Samples file Humphery 2014.06.13 2459
570 [기술문서] 실전 DataSnap! [2] 관리자 2014.09.02 2441
569 웹사이트의 인증서 오류를 무시하고 http 결과 조회하기(WinInet 이용) Humphery 2015.03.06 2386
568 [FireDAC Skill Sprints] 7. FireDAC ETL: 데이터 내보내기, 가져오기 기능 구현하기 Humphery 2015.04.01 2369
567 [베를린] ListView 레이아웃을 입맛에 맞게 변경할 수 있습니다. 험프리 2016.04.22 2367
566 FastReport 4 VCL(Embarcadero Edition) 설치 오류 우회방법 Humphery 2014.07.15 2360
565 RAD 스튜디오로 유스케이스 다이어그램 작성방법 file 험프리 2019.06.20 2330
564 "가장 빠른 모바일 앱 개발! 가장 쉬운 멀티플랫폼 개발!" 세미나 발표자료입니다. 관리자 2014.03.12 2329
563 [FireDAC Skill Sprints] 9. LocalSQL: DB에서 가져온 데이터(데이터셋)를 대상으로 다시 SQL쿼리 실행하기 Humphery 2015.04.01 2293
562 [로드맵] RAD 스튜디오 로드맵(2016년 8월) file 험프리 2016.08.12 2286
561 이 달의 기술자료 - 2016년 07월 file 험프리 2016.06.30 2276
560 [업데이트][Hotfix] iOS 배포와 요세미티, VCL Bitmap 파일 보안취약점 패치 Humphery 2014.10.22 2237
559 [XE7] 다양한 형태로 표시되는 적응형 컴포넌트 TMultiView 소개 Humphery 2014.09.18 2224
558 [개발환경 설정] 안드로이드 기기 연결 시 'USB 디버깅 허용' 창이 표시되지 않는 경우 조치 방법 file 험프리 2018.08.21 2222
557 [업데이트] RAD Studio XE7 Update 1 개선된 내용 Humphery 2014.11.27 2215
556 이 달의 기술자료 - 2014년 5월 file 험프리 2014.05.19 2200
555 RAD Studio XE7에서 추가된 안드로이드 기능 익히기(동영상) Humphery 2014.11.05 2191