▲neo 3달전 | parent | favorite | on: GN⁺: Go는 나의 망치, 모든 것은 못(maragu.dev)Hacker News 의견 Go를 사용하여 금융 데이터를 처리하는 회사에서 일한 경험이 있음 동료들이 CSV 파일을 집계하거나 데이터베이스를 업데이트하는 등의 일회성 작업에 Go를 사용하는 것을 불편하게 여김 Pandas를 사용하지 않고 기본 알고리즘을 직접 구현하는 동료들을 보며 신뢰하기 어려웠음 회사의 시간 낭비라고 생각했으며, Go가 충분하다는 것을 보여주려는 자존심 문제로 보였음 언어를 제대로 배우는 비용을 과소평가하는 사람들이 많음 언어를 "알고 있다"고 말할 수 있는 수준에 도달하는 데 2-4년이 걸림 언어, 컴파일러, 런타임, 표준 라이브러리, 관용적인 방법을 이해하는 데 8-10년이 걸림 이 기간 동안 언어의 사용 방식을 발전시키고 초보자를 빠르게 훈련시킬 수 있음 Go는 거의 모든 작업에 적합하다고 생각함 Go를 사용할 때 생산성이 매우 높음 프로젝트가 100줄을 넘으면 Python보다 더 나음 Go의 장점: 언어가 매우 간단함 핵심 라이브러리가 잘 설계됨 도구 체인과 핵심 라이브러리만으로 대부분의 작업을 처리할 수 있음 Go는 개인 프로젝트에 적합하지 않다고 생각함 코드가 장황하고 간단한 작업도 많은 코드를 작성해야 함 적절한 열거형, 합집합 타입, null 안전성 등이 부족함 이러한 이유로 개인 프로젝트에서는 재미를 느끼지 못함 Typescript와 Rust를 선호함 Deno와 Typescript는 Go보다 더 다재다능한 도구임 Typescript는 더 안전하고 인체공학적이지만 약간 느림 Rust는 더 안전하고 빠르지만 배우기 어려움 Typescript의 장점: null 안전성 널리 지원되는 제네릭 차별화된 유니언 타입 안전한 동시성 컬렉션/이터레이터 메서드 Go의 장점: 크기와 메모리 사용 측면에서 더 효율적임 Go의 GC가 V8보다 나음 CPU 바운드 작업에서 더 빠름 더 큰 표준 라이브러리 Go와 Typescript를 사용해봤지만 Kotlin/JVM을 선호함 Gradle/Maven의 이분법과 빌드 시스템의 불안감이 있지만, 언어 기능과 런타임 측면에서 매우 만족함 Go는 만능 도구라고 생각함 모든 것이 간단하고 사용하기 쉬움 외부 도구를 많이 사용하지 않고도 간단한 명령으로 컴파일하고 배포할 수 있음 다른 언어들도 장점이 있지만, Go만큼 간단하고 번거롭지 않음 Go를 좋아하지만 사랑하지는 않음 도구 체계가 엉망이라고 생각함 Go 모듈이 완성되지 않은 느낌임 제네릭이 아직 원시적임 생태계가 미완성이라고 느껴짐 Go의 대부분의 측면을 좋아하지만, 수치 코드를 많이 작성하는 사람으로서 연산자 오버로딩이 없는 것이 단점임 Python과 C++을 계속 사용 중임 Rust는 C++ 대체로 매력적이지만, Python을 대체하기에는 규칙이 너무 많음 인생은 한 가지에 능숙해지기에도 짧기 때문에 신중하게 선택해야 함 Go를 선택한 이유: 놀라운 표준 라이브러리 읽고 쓰기 간단함 단일 정적 바이너리 빌드 컨테이너가 필요 없음 어디서나 사용 가능 (웹 개발, 데스크탑 앱, 게임 개발, 임베디드 등)
Hacker News 의견
Go를 사용하여 금융 데이터를 처리하는 회사에서 일한 경험이 있음
언어를 제대로 배우는 비용을 과소평가하는 사람들이 많음
Go는 거의 모든 작업에 적합하다고 생각함
Go는 개인 프로젝트에 적합하지 않다고 생각함
Typescript와 Rust를 선호함
Go와 Typescript를 사용해봤지만 Kotlin/JVM을 선호함
Go는 만능 도구라고 생각함
Go를 좋아하지만 사랑하지는 않음
Go의 대부분의 측면을 좋아하지만, 수치 코드를 많이 작성하는 사람으로서 연산자 오버로딩이 없는 것이 단점임
인생은 한 가지에 능숙해지기에도 짧기 때문에 신중하게 선택해야 함