PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2019/05/29 16:03:29
Name 계층방정
Subject [질문] 컴퓨터과학·공학 쪽 프로그래밍과 다른 자연과학·공학 쪽 프로그래밍은 어떤 점에서 다른가요?
컴퓨터과학이나 공학 쪽에서는 시류에 따라서 쓰는 프로그래밍 언어가 많이 바뀌는데, 자연과학·공학계 쪽은 C나 포트란, MATLAB이 강세라고 들었습니다. 다른 분야 쪽 프로그래밍은 컴퓨터 쪽에 비해서 유행을 덜 타는 이유는 무엇일까요? 얼핏 듣기로는 컴퓨터 쪽에 비해 다른 자연과학·공학 쪽에서는 레거시 코드가 중요해서 그렇다는데, 컴퓨터 쪽도 레거시 코드에서 기반해서 기술개발을 할 수 있지 않나 싶어요. 예를 들면 머신 러닝도 예전부터 개발되어 온 분야이니 초창기에 만들어진 코드에서 계속 출발해 와서 점진적으로 할 수 있겠지만 실제로는 매번 코드도 바뀌고 프로그래밍 언어도 계속 바뀌고 있습니다. 자연과학이나 공학 쪽에서는 그런 식으로 코드나 언어를 바꿀 시간에 연구나 더 하라고 하는데, 컴퓨터 쪽은 어째서 그렇게 계속 바뀌고 바뀔 수 있는 건가요?

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
김잉여
19/05/29 16:09
수정 아이콘
자연과학, 공학에서 쓰는 프로그래밍은 연구를 도와주는 도구일 뿐이니 10~20년된 소스를 그냥 써도 상관없죠. 다만 컴공쪽은 프로그래밍이 본업이라 좀 다릅니다. 옛날 소스를 그대로 쓰면 효율이 안나와요. 지난 수십년간 발달한 CPU, 네트워크 속도를 반영하려면 사용하는 프로그래밍 언어 및 아키텍처 역시 발달해야 합니다. 예를드신 머신러닝만 해도 구글은 텐서플로 만드려고 코드만 새로짠게 아니라 하드웨어까지 새로 만들었습니다.
계층방정
19/05/29 16:14
수정 아이콘
자연과학 쪽도 계산시간이 무지막지하게 오래 걸리다 보니 현업에서도 '계산 시간을 단축하고 효율을 올리는 연구' 자체는 꾸준히 시행되고 있습니다. 그래서 사실 기존 소스를 완전히 뒤엎는 식의 연구도 하기는 해요. 그러나 그런 식으로 할지라도 프로그래밍 언어나 개발 방법은 진짜 차이가 많이 납니다. 최신 알고리즘을 포트란으로 짜는 건 예사고요. 하드웨어를 직접 개발하는 건 진짜 컴퓨터과학·공학의 범주라 거기까지는 안 나가긴 합니다만, GPGPU 등 최신 하드웨어 자체에는 컴퓨터 쪽 유행도 잘 따라가는 것 같아요. 슈퍼컴퓨터 등 고성능 컴퓨터 수요에서 무시할 수 없는 게 이 자연과학·공학 쪽 분야기도 하고요. 그럼에도 소프트웨어 개발에서는 영 딴판인 것 같아서요.
김잉여
19/05/29 18:56
수정 아이콘
(수정됨) 컴공에서 쓰는 '소프트웨어'라는 단어의 범위 자체가 다른 분야에 비해 훨씬 넓습니다. 모바일 앱, 게임, 머신러닝 등등.. 분야가 다양하다 보니까 차이가 날 수 밖에 없을 것 같습니다. 새로운 소프트웨어 개발은 여러가지 유인에 의해 만들어지는데, 자연과학(연구)는 비교적 범위가 좁아 보이긴 합니다.
홀리데이
19/05/30 11:28
수정 아이콘
전산물리하신 교수님이 자기는 그냥 컴퓨터에 램이나 등등 추가하면 되서 효율 신경 안쓰고 코딩한다는 말을 하셨던게 기억나네요.
타마노코시
19/05/29 16:11
수정 아이콘
기상-대기 쪽 분야입니다.
안바뀌는 이유는 코드가 주목적이 아니라 이를 통해 계산된 결과가 주된 목적이기 때문이라고 생각합니다.
그리고 기후모델과 같은 경우에는 코어부터 거기에 달려있는 여러 sub-routine들이 각각 하나의 분야에서 관측-이론을 기반으로 만들어진 것이기 때문에 버전업을 하면서 모델 내의 모든 코드를 다른 프로그래밍으로 바꾸게 된다면 어마어마한 인력이 갈려들어가기에 할 여력이 나오지 않는 것 같습니다.
本田 仁美
19/05/29 16:19
수정 아이콘
통신 분야이고 파이썬, 매트랩을 쓰고 있는데요. 파이썬을 쓰는 이유는 머신러닝 관련 라이브러리 때문이고 매트랩은 그래프를 그려서 분석하기 좋습니다.
그리고 두 언어 모두 다 해당되는 강점은 코딩을 하기가 매우 간단합니다. 그리고 세부적인 메모리 관리를 알아서 하기 때문에 그 부분도 따로 신경 쓰지 않아도 됩니다. 단점이라면 상대적으로 느리다는 점이있긴 한데 이건 최근 하드웨어 발전과 병렬처리등으로 많이 극복되고 있습니다.
뒹구르르
19/05/29 17:09
수정 아이콘
컴퓨터사이언스에서는 프로그래밍 언어의 가치가 계산 속도 이외에도 여러가지가 있지만,
일반 수치계산하는 입장에서는 다 모르겠고 속도만 빠르만 장땡입니다.
총 계산시간은 (코드 작성 시간) + (계산 수행 시간)에서
계산 수행 시간 대비 고속화 코드 작성 시간 소요가 더 크다면 굳이 고속화할 필요없이 오히려 무식하게 돌리는게 효율적이에요.
그냥 80년대 개발된 포트란 코드 그대로 돌리는거죠.
만약 계산 수행 시간이 일주일, 한달을 넘어가는거면 30%만 단축해도 얻을 수 있는 이득이 더 크니,
cuda든 새로운 언어든 벡터라이제이션이든 다 적용해서 새로 짜는거구요.

만약에 c, fortran보다 반복문이 수십배 빠른 언어가 개발된다면, 모든 공학자들은 유행을 따를걸요?
그런 언어가 나올리가 없으니 기껏 돌려봐야 수십시간 정도 돌아가는 계산을 다루는 사람들은 신기술에 별 관심없죠.
요즘 머신러닝 같은걸 적용하는 쪽이라면 좋은 라이브러리가 있는 언어로 갈아타는게 훨씬 효율적이니 python이나 julia 같은걸 사용하는 거구요.
레필리아
19/05/29 17:10
수정 아이콘
큰 원인 중 하나는 언어에 대한 온도와 부담이 전공에 따라 다르기 때문이라고 봅니다.

같은 프로그램을 만들어도 구현언어에 따라 성능이 다르게 나오는 경우가 많습니다.
자연과학 계열에서는 이에 큰 의미를 두지 않는 반면 컴공 분야에서는 열광하고 분석합니다.
설령 자연과학 계열에서 그런 흐름이 있다고 하더라도.. 종사하는 사람의 수가 다릅니다.

또, 컴퓨터 언어의 대한 이해도 차이가 확실히 존재하기 때문입니다.
컴공 전공자들은 새로운 언어를 접하더라도 1~3일 정도면 어느정도 사용할 수 있지만..
자연과학/공학의 일반적인 전공자들은 그게 안되죠. 굉장히 부담스러워 하는 경향이 강합니다.
이는 R, 매트랩이 자연과학 계열에서 주류가 된 원인과 상통합니다.
(R, 매트랩은 자연과학 계열에서 요구하는 행렬계산, 통계적 분석, 그래프 작성 등의 대부분의 기능들이 내장되어 있습니다.)

아무래도 컴퓨터를 계산도구로 보는 사람과 연구개발의 대상으로 보는 사람의 차이가 큰 것이라 생각합니다.
다만 최근 딥러닝을 비롯한 기계학습이 메인스트림이 되면서..
자연과학/공학 계열도 R, 매트랩이 강세에서 최근에는 파이썬으로 넘어오는 추세로 알고있습니다.
하이아빠
19/05/29 19:51
수정 아이콘
어짜피 결국은 엑셀로 수렴....
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
136892 [질문] 어머니께서 보이스피싱을 당하셨습니다 [9] 삭제됨4309 19/08/26 4309
136891 [질문] 교통사고를 냈는데 합의해야됩니다 [8] 생힝4181 19/08/26 4181
136890 [질문] 모니터 연결 안된 그래픽카드가 가상OS에서 작동하기도 하나요? [1] 연두2045 19/08/26 2045
136889 [질문] 키크는 약 vs 탈모 완치제 [11] 톰가죽침대3772 19/08/26 3772
136888 [질문] 이거 자동차 배터리 죽은거 맞죠? [5] 버티면나아지려나2729 19/08/26 2729
136887 [질문] 어머님 유튜브 보실 태블릿 추천드립니다 [7] cluefake3615 19/08/26 3615
136886 [질문] 군대 관련해서 질문드립니다 [21] nekorean3212 19/08/26 3212
136885 [질문] 웹캠(혹은 카메라) 무선으로 영상 상을 컴퓨터에 받을 수 있는 방법 Golden3217 19/08/26 3217
136884 [질문] 서울 강남 양재 청담쪽 베이징덕 북경오리 잘하는 집 알려주세요. [4] 삭제됨4630 19/08/26 4630
136883 [질문] LCK 결승 취소표는 따로 풀리는 날짜 없을까요? [10] 사신군4139 19/08/26 4139
136882 [질문] 서울에 싸고 괜찮은 손세차장 추천해 주세요 [5] 바밥밥바3227 19/08/26 3227
136881 [질문] 상하이(상해) 호텔 위치 문의 : 상하이 롤렉스 마스터즈 테니스 관람예정 [6] Soviet March2788 19/08/26 2788
136880 [질문] 롤토 및 강의용 노트북이 존재할까요 [2] 폴포그박2753 19/08/26 2753
136879 [질문] 창원NC파크 직관 관련 질문드립니다~ [4] 리얼리스트가2388 19/08/26 2388
136878 [질문] 영문전환을 한번 봐주세요. 돌만1717 19/08/26 1717
136877 [질문] [랑그릿사]베른/요발 없이 발키리 60 잡는 법 질문드립니다 [1] 고기반찬3463 19/08/26 3463
136876 [질문] 멍뭉이 수영이요! 박태환급으로 키우고 싶습니다 [7] 비둘기야 먹쟈3346 19/08/26 3346
136875 [질문] 개를 키우시는 분들께 질문드립니다. [7] 아이는사랑입니다2552 19/08/26 2552
136874 [질문] 트위치 웹 시청 관련 질문입니다 [3] 인생은서른부터2052 19/08/26 2052
136873 [질문] [LOL] 결승 예매 페이지 어딘지 아시나요?? [7] 한량기질2539 19/08/26 2539
136872 [질문] 19년형 맥북 에어와 맥북 프로 구입 중 하나를 구입하려합니다. [5] 3117 19/08/26 3117
136871 [질문] 롤 프로 경기 와드 관련 질문 드립니다. [2] 키키모하2556 19/08/26 2556
136870 [질문] LOL 팀들 팬 규모가 어떻게 될까요? [12] 修人事待天命2729 19/08/26 2729
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로