| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
Tags
- goroutines
- PROPS
- Vue
- Vue.js
- Refactoring
- Server
- cli
- reactivity
- Dictionary
- toggle
- golang
- map
- App.vue
- TODO
- container
- URL
- 행렬
- SFC
- websocket
- emit
- localStorage
- go
- method
- goroutine
- CDN
- component
- Matrix
- graceful shutdown
- todo-list
- channel
Archives
- Today
- Total
ksundev 님의 블로그
GO vs JS, Python, Java 비교 본문
Python, Java, JavaScript를 주로 사용하셨다면 Go는 이렇게 이해하시면 됩니다:
Python과 비교했을 때
- Python처럼 문법이 간결하고 읽기 쉬움
- 하지만 정적 타입 언어라서 변수 타입을 명시해야 함 (Python은 동적 타입)
- 컴파일 언어라서 실행 속도가 Python보다 훨씬 빠름
- 들여쓰기 대신 중괄호 {} 사용
Java와 비교했을 때
- 정적 타입이라는 점은 비슷함
- 하지만 클래스가 없음! 대신 struct 사용
- 상속 개념이 없고, 대신 컴포지션과 인터페이스 활용
- 훨씬 간단한 문법 (보일러플레이트 코드가 적음)
- JVM 없이 바로 실행 가능한 바이너리로 컴파일
JavaScript와 비교했을 때
- JS의 async/await 대신 고루틴이라는 더 강력한 동시성 모델
- 정적 타입이라서 런타임 에러가 적음
- 프로토타입 기반이 아닌 구조체 기반
핵심 차이점
// 클래스 대신 struct + 메서드
type Person struct {
Name string
Age int
}
func (p Person) Greet() string {
return "Hello, " + p.Name
}
// 고루틴으로 동시성 처리
go someFunction() // 별도 스레드에서 실행Go는 **"Java의 성능 + Python의 간결함 + 강력한 동시성"**을 목표로 만든 언어라고 보시면 됩니다. 특히 백엔드 서버 개발에 최적화되어 있어요.
'[개발] Go' 카테고리의 다른 글
| Go 서버에서 Graceful Shutdown 구현하기 (0) | 2025.10.19 |
|---|