qwerty11
1k
2020-04-22 14:55:12
10
1419

남의 짜놓은 코드를 보고 수정한다는게 생각보다 어렵네요..



운영이라서 남이 짜놓은 코드를 볼일이 많은데




지금 예전 코드를 보면서 약간의 수정을 하고있는데 단위 테스트를 해보니까 이게 순서가 이상하게 꼬인 코드를 짜놓으셨더라구요 이전분이




그래서 제 생각에 맞게 고치려고 하는데 계속 마음 한켠에




'이거 바꿨다가 혹시 다른곳에서 문제 생기는거 아냐? 내 생각엔 이코드가 맞지만 다른 이유에서 이렇게 짜놓았을수도 있잖아?'




라는생각땜에 불안허네요..




주석이라도 달려있으면 이렇게 짜놓은 이유라도 알텐데 주석도없고 ㅠ

0
  • 댓글 10

  • abilists.com
    1k
    2020-04-22 15:02:03

    [이거 바꿨다가 혹시 다른곳에서 문제 생기는거 아냐?] 말에, 경험상 문제 생깁니다. 거의 80%레벨에.. 특히 문서없고, 소프트웨어 아키텍트가 안되었는 소스는 거의 100%, 그래서 테스트에 엄첨 시간 소비합니다.

    배보다 배꼽이 크다는 것이 여기에 딱 맞습니다. 위의 결정권자들은 몰라요.
    그래서, 개발자를 동업자라고 생각을 하고 잘 대우해줘야하는데, 쩝 현실은 안그렇죠.


  • 시인들
    1k
    2020-04-22 15:06:53 작성 2020-04-22 15:09:00 수정됨

    어...그런건 파악 안된 후에 고치면 위험한데..파악 된 거 맞죠?..잘 돌아가는 건 왠만하면 건들지 않으셨으면 하는 바램이...예전에 상사 분이 개념 안맞다고 고쳐서 천명정도 쓰는 시스템인데 하루종일 전화 왔던 기억이 있네여..결국 원복 얼마나 아찔하던지 하아 전체를 보라구 ㅠㅠ!! 제발 ㅠㅠ

  • qwerty11
    1k
    2020-04-22 15:12:01

    abilists.com // 딱 저희 프로그램이네요.. 일단 굴러가니까 굴리면서 거기에 헝겊으로 기워서 고치듯이 계속 추가하고 추가해서 굴리고 있는 프로그램이라... 근데 이부분은 다른 코드부분에 비슷한 코드가 있어서 그거 참고하면서 고쳤습니다..



    시인들// 다른 코드중에 비슷한 부분이있어서 비교해보니까 이부분을 잘못짜놓은게 맞는거같아요.

    이게 레귤러스러운(?) 코드가 아니라 약간 임시조치처럼 급하게 추가한 코드라.. 

  • 13년째이짓
    508
    2020-04-22 15:20:08

    해당 기능에 대한 이해도가 없으시면 패스하시고, 아시면 수정하고 테스트하면됩니다.

    잘 못 된 것 같아 보이는데 해당 업무 프로세스를 잘 모르는 상태에서 수정하면 테스트 방법도 모르고

    에러나면....... 고로 소스를 수정할 때는 해당 업무를 파악한 이후 작업 하시는걸 추천드립니다.

  • abilists.com
    1k
    2020-04-22 15:28:41

    아시는 분은 아시겠지만, 알고리즘보다는 테스트코드를 짜는지, 개발 프로세스를 잘 알고 있는지, 협업을 잘 하고 있는지, 그게 중요하다는걸 알것 입니다.

    사실, 사용자가 몇백만 되야 그 때 알고리즘 따지고 그럽니다. 구글이 딱 그 상황..


  • lnomadism
    1k
    2020-04-22 15:46:54
    문서화가 잘되어있는것도 안바라고 그냥 왜 이런 코드를 짰는지 주석이라도 있음 좋겠어요 ..... 
  • code-01
    1k
    2020-04-22 15:53:23

    많은 기업들이 기존시스템을 안정적으로 운영하고

    기능개선할 수 있는 개발자를 많이 찾습니다. 


    정작 이전 개발자가 주석안쓰고, 테스트 코드 안만들어 뒀으면

    인수인계 받는 입장에서 헬이죠. 

  • 즈루시
    2020-04-22 15:58:16

    잘돌아가는 소스를 리팩토링한다는건 그만큼 리스크를 수반하는거죠.

    요청사항이 1+1=2 아닌경우도 많아요.

    가끔은 1+1=3 이어야한다...도 요청받습니다 ㅋㅋㅋ

  • ICanFly
    254
    2020-04-22 16:07:54

    테스트 하면서 테스트 코드를 채워나가면 좋을 것 같네요.. ㅎㅎ;

    예상치 못한 곳에서 터지면 답이 없습니다... 결국 테스트 코드도... 터지는지 확인하는 손 테스트도 개발자가 알아야 나오는 것이죠...

  • Oscar
    666
    2020-04-22 19:21:43

    제 경험상 보기에도 이상한 코드는 어떤 까다로운 문제 한 가지 때문에 발생했더라구요. 문제 자체가 까다롭다기 보다는 기존 구조에서는 고려 안되어 있던 건데 우격다짐으로 커버하려다가 구조 바꾸자니 거쳐야되는 과정이 번거롭고..

    개발에 흥미가 있어서 코드를 리팩토링하면서 뿌듯함을 느끼는 사람도 있지만 제발 나좀 귀찮게 안했으면 좋겠다는 사람도 있는게 현업이지요. 그리고 앞선 문제는 후자인 분들이 대게 남기고 가곤 하더라구요.

    저라면 이상한 부분 정도만 코드 개선하고 충분히 검증한 후에 나중에 이상이 발생하면 기존 코드에서 어떻게 해결했는지 참고하고 리팩토링을 고려할 것 같습니다.

  • 로그인을 하시면 댓글을 등록할 수 있습니다.