컴퓨터 공부/🔤 코딩 실무 영어

[코딩 실무 영어] 한국인들이 영어를 어려워하는 이유 / 실무 전문 용어

letzgorats 2023. 10. 6. 19:22

일반 회화 영어와 코딩 실무 영어는 또 다르다!!

한국인들의 머리를 아프게 만드는 영어의 특징은 무엇일까요?

 

1. 단복수(Singular / Plural)의 중요성

: 한국에서는 대상이 한 개인지 여러 개인지 크게 중요하게 여기지 않지만, 영어에서는 말이 달라집니다. 단/복수에 따라 적절한 동사가 달라지고, 명사를 표현하는 방식이 달라집니다.

 

다음 문장을 직역해봅시다.

I was playing video games yesterday.

- 직역하면 나는 어제 비디오 게임들(?)을 하는 중이었다. 입니다. 하지만 아무도 이렇게 말을 안합니다!

편하게 "나는 어제 게임을 하는 중이었다." 라고 합니다. 이렇듯, 영어는 단/복수에 철저한 편이지만, 한국어는 그렇지 않습니다.

 

영어가 모국어인 사람들은 문장을 구성할 때, 단복수를 뇌가 무의식적으로 처리할 수 있는데, 저희처럼 영어가 모국어가 아닌 영어를 외국어로 배우는 사람들은 문장 내 주어와 명사가 하나의 대상인지 복수의 대상인지 의식적으로 신경써야 합니다.

 

2. 관사(Article)

: 수준 있는 글쓰기와 말하기를 하려면 이 관사의 개념을 확실하게 이해해야 하는데요, 물론, 관사를 틀려도 커뮤니케이션에 큰 지장이 있는 것은 아닙니다. 하지만 완성도 있는 커뮤니케이션을 위해서는 관사를 올바르게 쓰고 있는지 의식해야 합니다.

 

관사는 문장의 주어와 명사 같은 어떠한 대상이 일반적인 대상인지 특정한 대상인지 구분해주는 역할을 합니다.

다음 문장을 살펴보겠습니다.

There is a PR fixing the critical issue. The PR requires at least 1 approval.

- 해당 심각한 문제를 해결하는 PR이 있습니다. 해당 PR은 최소 1번의 동의가 필요합니다.

첫번째 문장의 PR인 Pull Request는 Request가 셀 수 있는 명사이고 한 번도 등장하지 않은 특정하지 않은 Pull Request이기 때문에 There is "a" PR 이라고 문장을 시작했고, critical issue는 화자와 청자가 모두 아는 특정한 이슈이기에 "the" 를 붙여줬습니다. 두 번째 문장의 PR 앞의 'the'를 붙여준 것은 앞 문장에서 해당 PR을 가리키기 때문입니다.

 

명사가 가리키는 대상이 일반적인지, 특정한지 셀 수 있는 대상인지 아닌지 고려해야 합니다.

이쯤에서 조금 너무하다고 생각하실 수도 있겠지만, 인정합니다. 하지만, 우리도 앞글자의 받침에 따라 "은,는,이,가"와 같은 조사를 자연스럽게 구분하듯이 영어에서 관사의 개념도 의식적으로 체크하다 보면, 자연스러워집니다. 

 

또 유의할 점은 셀 수 없는 명사일반적이더라도 관사 a나 an을 사용하지 않습니다.

예를 들어 충고, 조언을 뜻하는 advice 같은 경우는 셀 수 없는 명사이기 때문에, 보기의 예문처럼 "An Advice"라고 하면 안됩니다.

--> An advice on improving the performance of the code.(X)

--> Advice on improving the performance of this code? (O)

 

하지만, 셀 수 없는 명사라도 대상이 특정한 경우에는 관사 the가 명사 앞에 있어야 합니다.

(ex) The advice was helpful (O)

 

위 예문에서 "code" 또한 셀 수 없는 명사인데, "codes"나 "a code"라고 쓰면 원칙적으로는 안됩니다.

하지만, 말하거나 글을 쓸 때 문법을 항상 지키는 것이 아니듯이 native들도 가끔 "a code"나 "codes"라고 합니다.

(* 문법적으로 code는 셀 수 없는 명사라는 점 유의해주세요, 물론 개발자의 코드가 아니라 행동 규범을 뜻한느 A code of conduct 와 같은 집단의 규칙,법규와 같은 의미로 사용될 때는 code는 셀 수 있는 명사입니다.)

 

3. 대명사 생략(Non pro-drop language)

- 영어는 대명사 미탈락 언어이지만, 한구국어는 대명사를 쉽게 생략하는 대명사 탈락 언어입니다.

 

(ex) 한국어 

--> A: 요청하신 파일 받으셨나요?

--> B: 네, 받았습니다.

 

(ex) 영어

--> A: Did you receive the file you requested?

--> B: Yes I did.

 

위 예시처럼, 한국어에서는 주어를 생각해도 자연스러운 대화가 되지만, 영어에서는 You나 I가 생략되면 대화자체가 안됩니다. 화자와 청자를 명확하게 구분하는 문화이죠. 실제로 대명사 미탈락 언어를 사용하는 서구 문화권은 언어적으로도 나와 타인을 확실히 구분하기 때문에 조금 더 개인적인 문화를 갖는 반면, 대명사 없이도 문장 구성이 가능한, 한국, 중국, 일본과 같은 동양 문화권에서는 집단주의적 문화를 갖습니다.

 

4. 어순(Word order)

(ex) There are several guides for kernel developers and users.

- 커널 개발자와 사용자를 위한 몇 가지 가이드가 있습니다.

해석하는 순서가 완전히 반대입니다. 문장 구성 요소를 배치하는 순서가 완전히 다른 것은 누구나 다 아실 겁니다.

 

5. 전치사 (Preposition)

The latest commits (in / at / on) the base branch includes a wrong API call.

Also, some text (in / at / on) the footers has types.

 

해당 문장에서 브랜치(branch)는 소스 코드 버전 관리에서 사용되는 git에서 변경 이력을 기록하는 커밋에 대한 히스토리를 쌓는 하나의 버전이고, footer는 꼬릿말을 의미하고 주로 웹사이트 하단에, 회사 정보나 사이트 정보를 담고 있습니다.

해당 문장에 적합한 전치사를 골라보세요.

 

더보기

The latest commits (in / at / on) the base branch includes a wrong API call.

- 브랜치 앞에는 일반적으로 전치사 on을 쓰고, 

Also, some text (in / at / on) the footers has types.

- Header와 Footer와 같은 웹사이트 구성 요소 앞에는 in을 사용합니다.

 

물론, 이 정답은 문맥상 가장 적합한 전치사들이고 전치사를 조금 틀려도 소통하는데 큰 지장은 없습니다.

you won't be able to push any commits (to) the branch that are not signed and verified. 처럼 to를 쓸 수도 있고, Merge a feature branch into the base branch 처럼 merge 에 맞는 전치사 into를 사용하기도 합니다.

 

6. 구동사 (Phrasal Verb)

동사 (verb) + 부사 (adverb) or 전치사(preposition) = 구동사 (phrasal verb)

 

(ex)

sign up : 계정을 등록하다

sign in : 로그인 하다

sign out :  로그아웃하다

opt in / out : (메시지나 광고를 수신하도록) 선택하다/ 배제하다. (정보 제공을) 동의하다/ 철회하다

 

boot up : 부팅하다, 시작하다

hook up : 선을 연결하다

pull down : (메뉴나 대화상자에서) 선택하다

key in : 입력하다

look over : 살펴보다(=run through) - Let me look ovr the pull request.

go over : 자세히 보다 - I went over the code thoroughly.

go offline / online : 오프라인 / 온라인 상태가 되다.

ask for : 요청하다, 찾다


<자료형 - 변수에 저장하는 데이터의 형식>

 

실수(부동소수점) = float

문자 = character

문자열 = string

정수 = integer

부호가 없는 정수 = unsigned integer

부호가 있는 정수 = signed integer

불린 = boolean

널 = null

변수를 초기화하다 = initialize a variable

 

반복문 = loop (statement), iteration

조건문 = conditional statement

상속 = inheritance

객체지향 = object-oriented 

(*서로 다른 두 개의 단어를 연결시켜서 새로운 의미를 만드는 것을  hyphenate 라고 합니다.)

매개변수 = parameter

인자 = argument

지역 변수 = local variable

전역 상수 = global constant

함수 호출 = function call

명령어 = command

비동기적인 = asynchronous

정규식 = regular expression (RegEx) (레젝스, 레겍스 라고 줄여서 말하곤 합니다.)

 

구문 = syntax

선언 = declaration(첫 음절에 악센트가 들어있기 때문에, 데클러레이션)

예외 처리 = error handling

반복 = iteration

연산자 = operator

추상화 = abstraction

재귀 함수 = recursive function

중첩된 = nested

들여쓰기 = indentation

불변의 = immutable

보안 취약점 = security vulnerability

정적인 / 동적인 = static / dynamic

 

프론트엔드 = front-end

백엔드 = back-end

데브옵스 = DevOps

풀 리퀘스트 = Pull Request(PR)

온프레미스 = On-premises

Saas = Software as a Service

GUI = Graphic User Interface (구이)

WYSIWYG = What You See Is What You Get (위지윅)

JSON = JavaScript Object Notation

CRUD = Create, Read, Update, Delete

MVC = Model, View, Controller


이상으로, 간단하게 한국인이 왜 영어와 친숙하지 않은지 알아봤고, 간단한 개발 용어에 대해 살펴봤습니다.

다시한번 말하지만, 영어는 언어이기 때문에 이 포스팅이 정답은 아닙니다!

느낌가는대로 하는 것이 영어겠지만, 초보 실무 영어에 포커싱을 해서 글을 쓰고자 한 것입니다!

감사합니다~

반응형