여러 클래스로 작업을 하다 보면 기능별로 소스코드가 나뉘잖아?
main.c temp01.c temp02.c 이렇게?
이렇게 코드를 나눈 1차적인 이유는 가시성 유지보수 등등이잖어
그럼 사람입장의 장점 다 무시하고 컴파일러의 입장에선 어때?
만약 굳이 저 파일들을 한 소스파일로 담는다면
컴파일러의 입장만 따진다면 사소한 연산이라도 달라질 게 있어?
여러 클래스로 작업을 하다 보면 기능별로 소스코드가 나뉘잖아?
main.c temp01.c temp02.c 이렇게?
이렇게 코드를 나눈 1차적인 이유는 가시성 유지보수 등등이잖어
그럼 사람입장의 장점 다 무시하고 컴파일러의 입장에선 어때?
만약 굳이 저 파일들을 한 소스파일로 담는다면
컴파일러의 입장만 따진다면 사소한 연산이라도 달라질 게 있어?
한 소스로 합치면 의미가 달라짐 static 들이 서로 다 보이게 됨
보안성이 안되는건 맞네 만약 static 등 그런 활용이 코드라면 어때? 이미 의미가 없나?
무슨 말인지 모르겠네;;;
그냥 컴파일러가 소스파일들을 연결이나 합치는 과정이 궁금해서
아 댓을 병신처럼 달았네 static같은 걸 활용하지 않는 순수 코드파일 합치는 과정과 결과만 따진다면 ㅎㅎ ㅈㅅ
다 합쳐 놓으면 컴파일 할때 수정된 파일만 다시 돌리면 되는데 1만줄짜리라면 1만줄 다시 돌아가야댐
ㅇㅇ 사람의 입장에선 저렇게 관리하는게 유지보수 가시성 등 장점이 많아 컴파일링, 실행파일에서 나뉜 소스코드가 어떻게 다 합쳐지는건지 나뉜 소스코드로 냅두고 연결하는 과정이 생기는지 궁금해
자세한건 컴파일 과정 찾아보쉠. 각 파일들이 기계어로 변환되고 필요한 라이브러리, 변환된 오브젝트파일들을 링킹해서 실행파일을 만들텐데, A 파일에서 수정만 있었다면 A 파일만 변환하면 됨. 컴파일 시간에도 절약이 되지욤
유지보수 할 때 변환 범위에 차이가 이네 고마워요!