CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·주식한당 ·아이포니앙 ·MaClien ·방탄소년당 ·일본산당 ·자전거당 ·안드로메당 ·개발한당 ·이륜차당 ·골프당 ·바다건너당 ·걸그룹당 ·나스당 ·소셜게임한당 ·클다방 ·AI당 ·육아당 ·키보드당 ·물고기당 ·퐁당퐁당 ·노젓는당 ·WOW당 ·창업한당 ·테스트당 ·가상화폐당 ·소시당 ·냐옹이당 ·어학당 ·사과시계당 ·위스키당 ·AI그림당 ·방송한당 ·PC튜닝한당 ·축구당 ·스팀한당 ·갖고다닌당 ·IoT당 ·와인마신당 ·3D메이킹 ·X세대당 ·ADHD당 ·날아간당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·곰돌이당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·문명하셨당 ·클래시앙 ·콘솔한당 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·디아블로당 ·개판이당 ·동숲한당 ·날아올랑 ·전기자전거당 ·e북본당 ·이브한당 ·패셔니앙 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·KARA당 ·꼬들한당 ·덕질한당 ·가죽당 ·레고당 ·리눅서당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·찰칵찍당 ·그림그린당 ·소풍간당 ·심는당 ·패스오브엑자일당 ·라즈베리파이당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·나혼자산당 ·스타한당 ·파도탄당 ·테니스친당 ·빨콩이당 ·공대시계당 ·여행을떠난당 ·터치패드당 ·트윗당 ·VR당 ·시계찬당 ·WebOs당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

개발한당

자유 Go vs Rust 미래 전망? 50

2
2021-03-01 20:06:07 수정일 : 2021-03-01 20:09:27 121.♡.222.13
sunmoon10

machine code를 직접 생성하는 컴파일러 언어로는 무려 30년 이상 C/C++ 언어가 주로였는데요.

그러다가 최근...이라기에는 나이가 5년 10년 이상씩 되었지만, 관심권에 들게 된 게 C/C++에

비해서는 훨씬 짧은 5년 정도이기 때문에... 아무튼 최근에 Go와 Rust가 독자 생존 가능한 수준으로

생태계를 확보하고, 관심도 많이 받고 있는 상황이죠.

앞으로는 Go나 Rust가 C/C++을 대체할 것이라는 전망도 많고, 실제로 C/C++을 대체해서

Go나 Rust를 사용하는 영역과 사례가 늘어나고 있기도 합니다.


그럼 미래 전망을 해보면... Go나 Rust 중 어느 것이 대세가 될까요? 현재는 TIOBE ranking

같은 것을 보면 Go는 순위권에 안착했고, Rust는 겨우 관심권에 든 정도라서, 이런 추세라면

Go가 대세 되기에 유리한 것 같긴 해요.

그런데 제 의견은... 어느 한쪽이 망해서 사라지는 일은 없겠지만, 10년 쯤 후에 Go는 특정

영역에서 사용되는 정도가 되고, Rust가 대세가 될 것 같아요. 왜 그렇게 추정하느냐고 물으면

딱히 설명을 못하겠고, 느낌적인 느낌이라고 해야할지 그렇기는 한데요. Python vs Ruby에서

Python이 대세가 되고, Ruby는 특정 영역에서 사용되는 상황하고 비슷하게 될 것 같다고

전망하는 겁니다.


다른 분들은 어떻게 생각하시나요? 공식 기관에서 전망한 자료 같은 것이 혹시 있을까요?


sunmoon10 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [50]
ruinnel
IP 223.♡.203.214
03-01 2021-03-01 20:36:21
·
go는 java가 사용되는 곳을 대체해 나갈거 같은 느낌적인 느낌 입니다. 서버 어플리케이션 개발의 대세가 되지 않을까 예상해봅니다.
rust는 c/c++ 영역을 대체하지 않을까 싶네요.
근거는 없고 그냥 느낌적인 느낌 입니다.ㅎㅎ
sunmoon10
IP 121.♡.222.13
03-01 2021-03-01 20:40:17
·
@ruinnel님 지금은 진짜 느낌적인 느낌이라는 이상으로 말하기 힘들더라구요 ㅎㅎ
Go가 네트웍 쪽으로 프로그래밍하기 좋다는 얘기가 있던데, 그에 따른 추정이신 듯 하네요.
ruinnel
IP 223.♡.203.214
03-01 2021-03-01 20:48:41
·
@sunmoon10님
네 실제로 제가 java로 웹서버 개발합니다..
개인 프로젝트엔 go를 쓰는데 좋습니다 ㅎㅎ
sunmoon10
IP 121.♡.222.13
03-01 2021-03-01 20:54:09
·
@ruinnel님 Go를 실제로 사용해 본 적은 없는데, 개인 프로젝트에 편한가 보네요.
갑자기 또 귀가 팔랑팔랑 하는??? ㅎㅎ
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 10:21:14
·
@ruinnel님 Java 영역중 서버쪽은 충분히 대체 가능할 것으로 보입니다.. GC만 좀 개선되면 좋겠는데 말이죠
리척
IP 222.♡.20.99
03-01 2021-03-01 21:13:23 / 수정일: 2021-03-01 21:16:09
·
이런 언어 전망 비교는 분야마다 다르기 때문에, 보통 어떤 분야에 사용하느냐에 따라 전망을 달리하는 경우가 많습니다.

Go 의 경우에는 언어가 단순하고 기능도 별로 없어서 불편하지만, 그냥 마음에 드는 언어라고 할까요.
불편해도 뭔가 새로운걸 만들땐 Go 를 항상 대상에 올려놓고 고려합니다.
특히 서버쪽은 정적 타이핑과 고루틴 덕분에 퍼포먼스도 좋습니다. gRPC를 사용하는 경우에는 저는 무조건 서버는 Go로 작성합니다.
다만, GC 때마다 stop the world 가 발생하기 때문에 대용량 트래픽에서 빠른 응답시간을 요하는 경우에는 좀 문제가 있어서 Rust 로 넘어가는 경우가 심심찮게 있습니다.

Rust는 GC가 없어서 서버용으로도 좋고, 속도도 빠르기 때문에 다양한 분야에서 C/C++ 이 차지하고 있던 부분을 대체할걸로 보입니다. Microsoft도 공식적으로 밀고 있긴합니다.
다만, 초기 러닝 커브가 너무 가파른 문제가 있어서 메인 스트림으로 부상하기에는 시간이 오래 걸리지 않을까 싶습니다.
처음에 객체 소유권 개념때문에 컴파일 하는것 자체가 고난의 연속입니다. 이것만 넘어가면 좀 쉽긴 합니다만...
지금도 새 버전 나오면서 문법이 바뀌는 경우도 생기고 해서, 아직 안정화되고 대중화되려면 좀 더 있어야할 듯합니다.
저같은 경우에는 CPU 속도가 중요한 경우나 wasm 개발시에 주로 사용하고 있습니다.

Go가 자바처럼 삽질만 하지 않고 개발자들이 원하는 기능들을 잘 추가해준다면, 당분간은 대중적으로 봤을 때는 Go와 Rust만의 비교라면 Go의 우세일듯합니다. Rust를 대중적으로 사용하는 날이 오려면 아직도 요원해보입니다.
sunmoon10
IP 121.♡.222.13
03-01 2021-03-01 21:30:17 / 수정일: 2021-03-01 21:32:49
·
@리척님 말씀 듣고 찾아보니 Microsoft가 Rust 재단에 합류했네요?
Microsoft가 Rust 비슷한 새로운 언어를 만들려고 한다고 들었었는데요.

제 생각도 Rust가 가까운 장래에 대세가 되지는 않을 것 같구요.
5년 정도 후면 순위권에 들다가, 대세 되려면 10년 이상 되어야 할 것 같아요.
IT분야처럼 변화가 무지 빠른 분야에서 10년은 엄청 긴 시간이죠.
Realtime
IP 75.♡.156.182
03-02 2021-03-02 00:04:43
·
저희 회사/팀에서도 서비스 만들 때 go와 러스트를 함께 쓰는데, 다 러스트로 하라고 하면 일정 맞추기 쉽지 않을 것 같습니다;;

MSA 기반 프로젝트를 진행하며, 초기에는 go를 쓰고 중후반에 리펙토링을 하면서 GC 없는 메모리 관리가 필요해 보이면 러스트로 부분부분 손 봐주는 식으로 상호 보완적으로 써주는게 현재로써는 답인 것 같습니다.

서비스는 그런 편인데, 프론트엔드나 데이터 팀에서는 저수준에서 연산 할 때 러스트 많이 쓰더군요. js나 py로 커버 안 되는 부분은 러스트가 워낙 좋다보니....
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 00:20:52 / 수정일: 2021-03-02 00:21:34
·
@Realtime님 전부 rust로 하려면 일정 맞추기 쉽지 않다는 게 무슨 뜻인지 알 수 있을까요?
rust가 라이브러리가 부족하다는 뜻인지, 언어가 까다로와서 코딩하기 어렵다는 뜻인지, 아님 다른 이유인가 해서요.

제 생각은...
rust가 코딩하기 까다롭기는 한데, 그만큼 디버깅 시간을 줄여주니까 전체적으로는 큰 차이가 없을 것 같구요.
go는 실제로 써본 적은 없지만 잠깐 봤을 때, 코딩하기는 쉬운데 디버깅할 때는 거의 C에 근접하게 어려움을 줄 것 같더군요. runtime error가 많을 것 같아서요.
Realtime
IP 75.♡.156.182
03-02 2021-03-02 01:12:35 / 수정일: 2021-03-02 02:47:19
·
@sunmoon10님
러스트 디버깅의 용이성과 go 개발 속도를 다 고려하면 전체적으로 큰 차이 없을 수 있죠. 더 쓰자면...

러스트는 컴파일러가 까다롭고, 만들고자 했던 기능을 구현 하는데 코드량이 go에 비해 길죠. 최근에 tokio가 v1에 도달하며 breaking change가 있었죠. 필수 라이브러리가 부족하진 않지만 이런 큰 변화가 앞으로도 빈번할 것 같습니다. 조심해야 할 부분인 것 같습니다.

go는 반대로 nil 에 접근해서 패닉 나는 것을 피하기 위해서 써야하는 코드량이 러스트에 비해 길죠. 다만 왠만해서는 생각한 대로 작성하는데 크게 거리낄게 없죠. 아쉬운 점은, 시스템 유틸이나 서비스 만드는 것 말고 다른 곳에 쓰이기가 쉽지 않은 것 같습니다.

go가 디버깅 하기에 어려울 수 있죠. 러스트에 비하면 어떤 언어도 디버깅이 쉽다고 할 수 없죠. 그래도 go를 쓰며 최대한 접근 영역을 명확히 나누고 csp에 맞게 코드를 짠다면 (고루틴들 간의 공유를 최대한 제한...), c 디버깅의 어려움에 비할 바는 아니라고 봅니다.

러스트는 프로젝트 초기에 mvp 뽑아서 뭔가 보여주기에는 걸리적 거리는게 많아서 개발 초기 단계에 쓰기에는 매니저 한테 불만 듣기 쉽상인데, 후기로 갈수록 자잘한 문제가 안 나오니 맘이 편하죠. 그래서 윗 댓글에 적은 것 같은 전략을 적용하고 있습니다. 처음에는 go로 빨리 개발해서 돌아가는 것을 보여주고, 나중에 리펙토링 할 때, 러스트로 바꿔가면서 안정화를 시키는거죠.

go와 러스트의 용도가 겹치는 부분이 꽤 있어서, 어느 쪽에 베팅 해야할지 고민이 되기도 합니다만, 둘 다 쓰는게 어려운 일도 아니고, 장단점이 극명하기 때문에 MSA 상황에서 적절하게 맞춰 쓰는게 최선이라고 생각 합니다.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 09:55:54
·
@Realtime님 nil 에 접근해서 패닉나는 것을 피하기 위한.. 코드의 작성량 ... 생각 해보면 C/C++, 어셈부터 시작한 저같은 사람 입장으론 늘 당연한거라 .. 그러지 않아도 되는 언어를 써도 늘 값을 확인해 버릇 하는 편이라 .. 그렇게 생각 들수도 있겠네요 ㅎㅎ
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:04:15
·
@Realtime님 "처음에는 go로 빨리 개발해서 돌아가는 것을 보여주고, 나중에 리펙토링 할 때, 러스트로 바꿔가면서 안정화를 시키는" 이 부분이 go와 rust의 장단점을 잘 보여주는 것 같네요. 이해하기 쉽게 설명해주셔서 감사합니다.
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:08:42 / 수정일: 2021-03-02 10:09:20
·
@피로곰님 go를 잠깐 보고 자꾸 뭐라는 게 말이 안 되긴 하지만, go는 사용하기 편한 C 같더라구요.
C를 이해하고 사용할 수 있으면 go도 편하게 접근할 수 있을 듯 해요.
하지만, java나 다른 스크립트 언어를 사용하던 사람들 입장에서는 불편하게 보이겠더군요.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 10:18:44
·
@sunmoon10님 네 C언어와 비슷하죠 .. 클래스나 상속이나 그런게 없고 .. 전역변수 떡칠된 옛날 C 코드들 보는듯한 .. 코드를 작성하게 됩니다 ㅎㅎㅎㅎ 패키지나 그런게 다양하게 늘어서 끌어쓸 리소스가 많다는거랑 .. 개발 컴터의 OS나 아키텍쳐 상관 없이 타 시스템용 바이너리 빌드가 가능하다는 정도의 장점이 있지요
음성사서함
IP 211.♡.56.40
03-02 2021-03-02 00:58:57
·
입문이 훨씬 쉬워서 대중적으로는 Go가 많이 쓰일거 같고, 성능과 보안이 중요한 시스템 프로그래밍 쪽에서는 Rust가 많이 쓰일거 같네요. 단순 프로그래밍 언어 순위만 보자면 Go가 계속 높을겁니다.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 09:56:37
·
@음성사서함님 결국 깊게 가면 쉬운 언어는 없는 것이겠죠.. 넘어야 할 산을 언제 만나느냐의 문제 ^^
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:17:27
·
@음성사서함님 아무래도 편한 언어에 손이 먼저 가게 되긴 하죠. 지금 go가 관심을 더 많이 받는 것도 이해가 됩니다.

한편으로 피로곰님 말씀도 이해가 되죠. 그래서 깊이 팔 때는 rust를 사용한다는 얘기도 위에서 나오는 것이구요.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 10:23:55
·
@sunmoon10님 결국 언어는 도구일 뿐인거죠 .. 주어진 상황에 무엇이 가장 좋을지를 선택하여 쓰는 거니까.. 안맞는 도구를 가지고 효율을 논하는 것보다 소모적인 것은 없으니까요 .. 개발하시는 분들은 다들 잘 아시자나요 ㅎㅎ .. 모든것이 다되는 언어는 몇가지 안된다는거 ㅎㅎ 결국 내가 갈아 넣어지느냐 남이 갈아넣어진걸 편히 쓰느냐 ㅎㅎ 그래도 참 좋은세상입니다.
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:26:18 / 수정일: 2021-03-02 12:30:10
·
@피로곰님 내가 갈아넣어지느냐 남이 갈아넣어진걸 편히 쓰느냐... 하긴 그래요 ㅎㅎ
지금은 그나마 선택지는 늘어났으니 그런 면에서는 좋아지긴 했네요.
BlaCk
IP 8.♡.41.31
03-02 2021-03-02 08:28:22 / 수정일: 2021-03-02 08:33:01
·
고는 제네릭이 없는거랑(RFC는 나온다고 들었..) GC가 문제고,
러스트는 컴파일러 선생님께서 넘 빡빡하시다고 ㅋㅋ

저도 Go는 자바 대체용으로 쓰일것 같아요.
코어나 보안이 중요한 곳은 러스트가 쓰일 듯 하고요.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 09:57:25
·
@BlaCk님 Go .. GC 중간중간 정리해가며 쓰면 그나마 쓸만합니다.. 그냥 도는데로 냅두면 ;; 어후 ;;;; 한도 끝도 없이 메모리 처먹;;; 지가 크롬도 아니고 ;;
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:24:02
·
@BlaCk님 go와 rust의 장단점을 간결하게 설명해주셨네요 ㅎㅎ
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 09:49:34 / 수정일: 2021-03-02 09:54:13
·
Go를 3년째 이런저런 곳에 쓰고 있는 바로는.. 기본적으로 미들웨어나 백엔드 서버등을 만들기엔 참 좋습니다.. 문제는 Go가 가진 가장 큰 장점중 하나가 고루틴인데 .. 흔히 시작하시는 분들이 고루틴과 쌍을 이루는 채널을 남발하다 피를 보시는 경우가 많구요.. 분명 좋은 개념이긴 한데 고루틴간의 채널을 통한 무언가를 하고자 각 잡고 들어가다 보면 지옥을 보실수 있습니다.. 전 그냥 고루틴 써도 .. 뮤텍스로 동기화 시켜버려요 ㅎㅎ .. GC문제는 .. 뭔가 Go가 메모리 관리가 좀 헐렁?합니다.. 한번 잡아논 메모리를 앵간하면 잘 풀지 않고 버티는 성향이 좀 있어서 .. GC가 커지면 효율이 급감하는 문제도 분명 있구요.. 제 경우 그래서 .. 강제로 중간중간 GC자체를 정리해 버리고 있습니다. 아직 러스트를 사용해야할 일은 거의 없어서 앞으로도 계속 Go를 애정할것 같긴 한데요.. 개인적으론 GUI관련된 쓸만하고 편리한 무언가가 나와주면 참 좋을것 같은데 .. 윈도 API 나 Gtk , Qt 같은건 참 .. ㅎㅎ 선택하기 쉽지 않죠 .. 일렉트론등을 써서 하이브리드 앱을 만들수도 있지만 네이티브 앱이 꼭 필요한 경우도 있어서..

그런 이유로 다른 언어 없이 Go만 가지고 할수 있는건 매우 한정적이긴 합니다. 저야 C/C++을 비롯한 많은 언어를
같이 쓰니까 부족한 부분은 dll 을 만들어서 끌어오던 여러 방법을 쓸수 있지만 .. Go하나만 가지고서는 쉽지 않죠

많이 좋아지긴 했지만 쓸만한 디버거가 별로 없다는것도 Go의 단점중 하나긴 합니다.. 초기에 비해선 vscode 로 디버깅 하는것도 많이 좋이지긴 했지만.. vc 따라가려면 어후 .......

어짜피 언어 하나만 가지고 모든것을 커버할순 없는 세상 아니겠습니까~

여튼 저는.. 곧 죽어도 Go! ㅎㅎㅎㅎㅎ
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:33:07 / 수정일: 2021-03-02 12:31:00
·
@피로곰님 위에서 Go의 불편한 점을 이야기하셔서 별로라고 생각하시는가 했는데
Go의 불편한 점을 잘 이해하시고 적응도 잘 하신 것 같네요 ㅎㅎ

제대로 이해하고 문제점 피할 만큼 익숙하게 사용할 수 있다면 그게 좋은 언어겠죠.
널리 쓰이는 언어라도 어느 언어나 장단점이 있기 마련이니까요.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 12:51:31
·
@sunmoon10님 아무래도 .. Go로 만든 프로그램을 서버나 그런데서 쓰는게 아니라 .. 일반 사용자들 대상으로 배포를 3년넘게 하다보니 .. 이래저래 그래도 꽤 Go관련 경험이나 특징은 어느정도 알고 있습죠
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 13:03:43
·
@피로곰님 일반 사용자 대상으로요? 다른 분들하고는 사용 분야가 다르시네요.
혹시 어떤 프로그램인지 알 수 있을까요? 직접 프로그램을 얘기하기 어려우시면 어떤 종류인지라도요.
REGENTAG.
IP 223.♡.152.149
03-02 2021-03-02 14:19:32
·
@피로곰님 go도 rust도 쓸만한 윈도용 GUI 라이브러리가 나와줬음 좋겠어요.
그나마 Go는 이거라도 있기는 한데...
https://github.com/lxn/walk
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 14:57:42 / 수정일: 2021-03-02 15:01:00
·
@sunmoon10님 하하하.. 모두의 프린터라는 프로그램을 3년째 Go로 만들어 배포중이지요.. 기타 모두의 자막, 모두의 플러그 라는 놈도 있긴 하지만.. 그래도 가장 유명한건 모두의 프린터 네요 .. 뭐 생각 해보면 .. 다 결국 서버를 만든거긴 하네요 ㅋㅋ
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 14:58:26
·
@REGENTAG.님 음 .. walk ... 가 .. 윈도 API Wrapper 라 .. 쓸만한건 사실인데 .. API 로 윈도 프로그래밍 하는 수준이라 .. 편리하진 않습니다.
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 15:08:56
·
@피로곰님 오~ Go로 윈도우 프린터 프로그램을 만들어 배포하시는군요.
Go를 다양하게 활용할 수 있네요.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 15:18:32
·
@sunmoon10님 사실 제가 Go를 애용하는건 .. 개발컴터의 OS나 CPU 상관 없이 .. 타 OS나 CPU 아키택처용 바이너리를 컴파일 할 수 있단거죠 .. 리눅스, 맥, BSD를 비롯해서 cpu 도 .. x86, x64, mips, arm 등으로 가능하죠 .. 플랫폼 의존적인 코드가 없다면 소스코드 변경 없이 이짓이 가능합니다.
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 15:22:53
·
@피로곰님 플랫폼 바꿔도 쉽게 포팅할 수 있다는 건 굉장히 큰 장점이죠.
저도 Go를 다양하게 활용할 수 있도록 사용해봐야겠어요.
REGENTAG.
IP 223.♡.151.69
03-02 2021-03-02 16:25:17
·
@피로곰님 네.. 아직은 복잡한 UI를 만들기엔 너무 불편하죠.
WinForm까지는 아니라도 MFC수준만이라도 되어줬음 좋겠습니다.
저도 데스크탑 앱은 웹으로 만드는것 보다는 네이티브 UI를 선호하거든요.
아리아리션
IP 125.♡.111.106
03-02 2021-03-02 10:07:06
·
임베디드 개발하면서 Go에 관심 가지고 봤는데 Go는 아예 고려대상조차 안되더군요.
반면 Rust는 개인프로젝트로 꽤 쓰이고 있었습니다.
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 10:19:46
·
@아리아리션님저장공간이나 메모리 공간이 한정적인 장치면 go는 적용하기 힘듭니다 아무래도 ..
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:35:57
·
@피로곰님 rust는 태생이 c/c++ 대체용이라
c/c++ 사용할 수 있는 곳이면 어디든 사용할 수 있는 것 같습니다.

go는 네트웍 쪽 프로그래밍에 편한 등의 이유 때문에 서버단에서 많이 사용하는 것 같네요.
피그스킨
IP 222.♡.201.133
03-02 2021-03-02 10:31:38 / 수정일: 2021-03-02 10:40:23
·
한..2년만에 Go를 주력으로 사용 하고 있습니다.
백엔드 쪽에서는 Fiber 프레임워크를 주로 사용 하구요, GC나 고루틴은 어지간하면 라이브러리에서 잘 처리 되었는지 -_-a
웹 개발 쪽에는 신경 안쓰고 잘 사용 중입니다.

만든것 중에 제일 오래 쓰고 있는게, Fiber + Excelize를 사용해 DB로 엑셀/csv -> DB로 대량 등록하는 웹API 인데요.
지금 확인해보니 360일 동안 무중단으로 운용 되고 있습니다. ^^;

제 경우도 아쉬운게 있긴 하지만...Go에서는 함수에서 리턴값을 여러개 뺄 수 있는게 너무 너무 좋습니다. ㅠ.ㅠ 이게 단점을 모두 압살 하네요.
(확인 해보니 이건 Rust도 되는군요 ^^b)
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 10:38:12
·
@옥둑히부산식돼지국밥님 역시 go는 네트웍과 서버쪽에서 편하게 사용하기 좋은 것 같네요.
java를 대체할 거라는 얘기도 그래서 나오는가 봐요?
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 11:04:39
·
@옥둑히부산식돼지국밥님 Go의 GC관련해서 주의 하실점은 .. 특정 함수에서 메모리를 쭈욱 빨아먹는 경우가 있으면 문제가 됩니다.. 사용하는 가용 메모리량이 어느정도 일정하면 상관 없는데 .. 몇메가씩 되는 파일을 전부 메모리에 읽어서 무언갈 한다던지 하는 짓들이 반복되면 .. 어느순간 메모리 관리가 바보가 되요 ㅎㅎ 할당은 계속 하는데 해제를 안함 ㅎㅎㅎ
피그스킨
IP 222.♡.201.133
03-02 2021-03-02 13:12:28
·
@피로곰님 아아...그런 경우에 발생 되나 보군요!
해당 API의 경우 고객사에서 보통 1회 처리할때 20~90만줄 정도 처리를 하는데요,

저는 고루틴을 그런데 쓰는줄 몰랐네요 -_-..
엑셀 읽고 DB insert 하는 프로세스는 로컬에서 동작 되도록 따로 만들어 둔다음에 (xls_to_db.exe)
이벤트가 발생되면 xls_to_db_UUID.exe 이런식으로 복제되어서 실행 완료되면 os.Exit() 하도록 쓰고 있었습니다.

다음에는 고루틴으로 시도 해봐야겠습니다. 감사합니다. ㅎ.ㅎb
sk8snow
IP 118.♡.46.42
03-02 2021-03-02 15:15:02
·
@옥둑히부산식돼지국밥님 저는 개인적으로 go 에서 가장 좋아라 하는 부분은 defer 입니다 ㅎㅎ .. Close 가 필요한 경우나.. 그런거 .. 그때그때 defer 로 물려놓음 편하죠
퓨리넬
IP 106.♡.213.239
03-02 2021-03-02 13:40:42
·
swift 는 iOS/Mac 앱 용 외에는 논의조차 안되네요...ㅠ_ㅠ
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 13:54:37
·
@퓨리넬님 네, 아무래도 맥용 외에는 사용되는 경우가 별로 없다보니 ㅎㅎ
퓨리넬
IP 106.♡.213.239
03-02 2021-03-02 16:02:36
·
@sunmoon10님 swift 를 백엔드 서버로 만들 수 있는게 있는것 같은데 성능이나 뭐나 딱지 장점이 없어서 많이 안쓰이는 듯 합니다.
저는 언어만 보면 swift 가 정말 마음에 들었기 때문에 오픈소스화 되기도 했으니 다양하게 쓰이길 바랬지만 무리였던 것 같습니다. ㅎㅎㅎ
sunmoon10
IP 121.♡.222.13
03-02 2021-03-02 16:03:56
·
@퓨리넬님 언어가 좋아도 사람들이 안 쓰면 대책이 없죠 뭐 ㅎ
암족암족
IP 211.♡.183.227
03-03 2021-03-03 23:03:30 / 수정일: 2021-03-03 23:04:04
·
@퓨리넬님 기존 라이브러리들을 Swift로 변환하다가 C++를 Obj-C로만 접근 가능하다고 해서 포기한 상태고, UI쪽만 부분적으로 Swift 사용하고 있습니다.
이래서는 Swift는 사용하기 힘들거 같습니다.
퓨리넬
IP 124.♡.222.83
03-04 2021-03-04 00:56:04 / 수정일: 2021-03-04 00:56:31
·
@살금님 저도 3년...아니 4년 전이네요. 다른 개발자분들이 C++ 로 만들어진 소스코드를 주시고 그걸 사용해야 하는데,
아니 swift 에서는 c++ 을 사용을 못하...는건 아닌데 정수형, 실수형등의 원시 데이터타입만 받을 수 있는 상황 때문에 결국 C++ 이용하는 부분만 Objective-C 를 사용하긴 했습니다.
아니 그런데 아직도 안되는것이었군요. 앞으로도 안되려나 보네요 ㅠ.ㅠ

하지만 그 외의 부분에서는 전부 swift 로만 작업하긴 했습니다. ㅎㅎㅎ
삭제 되었습니다.
sunmoon10
IP 118.♡.8.180
03-05 2021-03-05 08:54:12
·
@팜의추억님 상당히 논쟁거리가 될 말씀을 하시네요?
제가 C/C++부터 프로그래머를 시작했습니다만...

어떻건 기본에 충실하라고 하셨는데
어떤 게 충실해야 할 기본인가요?
그 내용은 안 적으셔서요.
deej
IP 175.♡.209.70
03-05 2021-03-05 12:51:09 / 수정일: 2021-03-05 12:51:45
·
그냥 둘 다 하면 고민 안 해도 되고 좋습니다.
sunmoon10
IP 118.♡.8.180
03-05 2021-03-05 21:07:59
·
@deej님 그런 식으로 배우자면 배울 언어가 무지무지 많아지잖아요?
저는 두셋 언어에 집중하고 싶은데, 요새는 배우면 좋은 언어가 넘넘넘 많습니다.
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB / 업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.