본문 바로가기

분류 전체보기

(36)
DNS(Domian Name System) DNS란?DNS(도메인 네임 시스템)은 웹사이트 주소(URL)을 실제 IP 주소로 변환해주는 시스템이다. www.google.com 같은 도메인을 입력하면, DNS가 해당 도메인을 실제 서버 IP(예: 142.250.74.206)로 변환해준다. DNS 동작 과정사용자가 브라우저에 www.example.com 입력운영체제가 DNS 캐시를 확인 (최근 방문한 사이트라면 여기서 바로 IP를 가져옴)캐시에 없으면 '로컬 DNS 서버(인터넷 서비스 제공업체, ISP)'에 요청로컬 DNS 서버도 없으면 권한 있는 DNS 서버로 쿼리 전송최종적으로 도메인의 네임서버(Name Server)에서 정확한 IP를 찾아 반환브라우저가 해당 IP로 웹서버에 접속DNS의 중요 개념DNS 캐시: 자주 방문하는 사이트의 정보를 저장..
C# var, dynamic, object 차이점 C#에서는 변수를 선언할 때 var, dynamic, object를 사용한다. 하지만 각각의 동작 방식이 다르므로 상황에 맞게 선택해야 한다. 1. var (컴파일 타임 타입 추론)컴파일러가 변수의 타입을 자동으로 추론반드시 선언과 동시에 초기화해야 함한 번 타입이 결정되면 변경할 수 없음컴파일 타임에 타입이 결정됨 (정적 타입)var number = 10; // int로 추론var text = "Hello"; // string으로 추론var list = new List(); // Lint로 추론var number; // 오류! 반드시 초기화 필요var를 사용하면 코드가 더 깔끔해짐하지만, 타입이 명확하지 않다면 가독성이 떨어질 수 있음컴파일 타임에 타입이 결정되므로 런타임에는 변할 수 없음2. dyna..
C# async/await 비동기 프로그래밍 C#에서 비동기 프로그래밍(asynchronous Programming)은 UI나 성능 최적화를 위해 중요한 개념이다. async와 await 키워드를 사용하면 비동기 코드가 동기 코드처럼 자연스럽게 보이면서도 가독성을 높이고 성능을 향상시킬 수 있다. 1. 비동기 프로그래밍이란?비동기 프로그래밍은 특정 작업(예: 네트워크 요청, 파일 읽기, 데이터베이스 작업 등)을 수행하는 동안 프로그래밍이 멈추지 않고 다른 작업을 수행할 수 있도록 하는 기법이다.예를 들어, 사용자가 버튼을 눌렀을 때 API 호출을 한다고 가정한다면,동기 방식(Synchronous): API 요청이 끝날 때까지 UI가 멈춘다. (사용자가 아무것도 못 함)비동기 방식(Asynchronous): API 요청이 진행되는 동안 UI가 반응할..
트랜잭션(Transaction) ACID 원칙 트랜잭션은 데이터베이스에서 하나의 논리적인 작업 단위를 의미하며, 다음의 ACID의 원칙을 만족해야 한다.Atomicity(원자성): 트랜잭션 내 모든 작업이 완전히 수행되거나 전혀 수행되지 않아야 한다.Consistency(일관성): 트랜잭션 수행 전후에 데이터의 무결성이 유지되어야 한다.Isolation(고립성): 트랜잭션이 다른 트랜잭션의 영향을 받지 않아야 한다.Durability(지속성): 트랜잭션이 성공적으로 완료되면, 그 결과는 영구적으로 반영되어야 한다.트랜잭션이 ACID 원칙을 준수하면 데이터베이스의 안정성과 신뢰성을 보장할 수 있다. 트랜잭션의 예시로, 은행에서 A 계좌에서 B 계좌로 송금하는 경우 다음의 두 가지 작업이 함께 수행되어야 한다.A 계좌에서 10만원을 출금B 계좌에서 10..
[2022.12.05] 넥슨코리아 인텔리전스랩스 개인화 개발팀 코딩 테스트 후기 이전 넥슨 코테에서 큰 쓴맛을 봤기 때문에 사실 기대하고 보지도 않았다 ㅋㅎ. 아무튼 이런 경험이 있다는 게 가장 중요하다고 생각하기 때문에 문제를 풀 때는 최대한 정답에 도달하려고 노력했다. 물론 내 답은 정답이 아니겠지만... 아무튼 오늘도 역시 대기업의 으마으마함을 느끼고 온 후기를 쓰려고 한다. 정말 개발자라는 건 너무 어려워. 이전에는 백엔드 개발자였으면 이번에는 개인화 개발팀 코테 유형이다. 0. 온라인 코딩 테스트 1. 문제는 영어와 한글로 제공된다. : 왜인지는 모르겠지만 한글로 제공되는 문제가 있고 영어로 제공되는 문제가 섞여있었다. 나는 크롬에서 눈치껏 번역해주는 줄. 2. HackerRank 환경 : 정말 처음으로 환경에 대해 자세한 설명을 해주는 걸 봤다. 대기업의 그릇인가. 아무튼..
[2022.12.02] 크리마(크리마팩토리, 크리마랩) 주니어 소프트웨어 엔지니어 코딩 테스트 후기 크리마 기업의 주니어 소프트웨어 엔지니어에 지원해서 다행히 서류를 통과했기 때문에 코딩 테스트 시험의 기회가 주어졌다. 다른 기업보다 넉넉한 준비 기간(2주)이 주어졌기 때문에 조금 더 준비를 하고 시험에 들 수 있었다. 그리고 왜 그렇게 기간을 주었는지 알 수 있었다. 일단 내 머리로는 이해 안 되는 문제도 존재했기 때문에 ㅋㅎㅋㅎㅎㅎ 아무튼 코딩 테스트를 보긴 했으니 유형을 남기자면 0. 온라인 코딩 테스트 1. 문제는 영어로 제공된다. 2. HackerRank 환경 : 넥슨에서 이미 겪었던 HackerRank 환경이다. 영어 사악해 사악해. 아무튼 이미 익숙하기 때문에 환경은 문제 되지 않았다. 그냥 내 실력이 문제임. 3. 총 5문제. 240분 제한. Java를 사용하여 문제를 풀었다. (괄호 안..
OSI 7계층 익숙하시죠. 하지만 저에게 네트워크 개념이란 정말 눈에도 들어오지 않고 머리에도 들어오지 않고 손도 잘 가지 않는 개념이었습니다. 지금도 정이 많이 가는 친구는 아니지만 면접에 단골 질문으로 나오는 개념이기 때문에 한 번 정리를 해야 할 거 같아 이렇게 정리해보려고 합니다. OSI 7 계층은 응용 계층, 표현 계층, 세션 계층, 전송 계층, 네트워크 계층, 데이터 링크 계층, 물리 계층으로 총 7가지로 나뉩니다. 이제 하나하나 알아보려고 합니다. [응용 계층(Application Layer, 7 계층)] - OSI 7 계층 모델 최상위 계층 - 사용자가 네트워크 자원에 접근하는 방법을 제공 - 사용자가 볼 수 있는 유일한 계층 - 텔넷, 크롬, 이메일, 데이터베이스 관리 등 [표현 계층(Presentat..
'www.google.com'을 주소창에 입력하면? 기술 면접을 준비하면서 관련한 정보를 검색하다 보면 정말 정말 정말 많이 나오는 질문입니다. 사실 네트워크 관련 문제이기 때문에 일반적인 개발 지식이라고 하기에는 뭣하기도 하지만 그래도! 이렇게나 많이 나오고 단골 질문이라고도 얘기가 나오는 만큼 한 번쯤은 짚고 넘어가야 할 거 같아 이렇게 정리해보려고 합니다. 사용자가 주소창에 구글 URL을 입력했을 때 > 구글 사이트가 나옵니다. 일반적이죠? 사실 이 질문에 대한 의도는 웹이 어떻게 동작하느냐에 대한 웹의 동작 원리에 대해 알아보기 위한 질문입니다. 사실상 웹은 사용자. 즉, 클라이언트가 요청하면 서버가 그 요청에 응답하는 것입니다. 위 그림은 클라이언트의 요청 이후 서버의 응답까지를 보여주는 그림입니다. 아래에서 상세히 알아보고자 합니다. 1. 사용..
[2022.11.30] 넥슨코리아 인텔리전스랩스 백엔드 개발자 코딩 테스트 후기 사실 내 꿈의 직장은 넥슨이다. 다들 흔히 품고 있는 대기업 하나쯤은 있지 않나? 나는 그중에서도 그 유명한 네카라쿠배도 아니고 요즘 떠오르는 당토직야(? 사실 처음 들어봄)도 아니고 그냥 예전부터 넥슨이었다. 왜냐하면 내가 여기에 꽤나 돈을 썼거든. 근데 오늘 넥슨코리아에서 코테를 보면서 그냥 돈 가져다 바치는 기업으로 유지해야 할 거 같다. 왜냐하면 망했으니깐. 유형 말하는 것도 너무 웃겨서 잠시 눈물 닦고 하려고 한다. 다음 주에 또 코테 있으니까 다음주에 마저 울어야지. 아무튼 아래는 오늘 본 넥슨코리아 인텔리전스랩스 코딩 테스트 유형이다. 0. 온라인 코딩 테스트 1. 문제는 영어로 제공된다. 2. HackerRank 환경 : 해커랭크 환경은 안 그래도 지금 크리마 코딩 테스트를 앞두고 있었기 ..
[2022.11.30] 이스트소프트 서버 백엔드 개발자 코딩테스트 후기 처음 이스트소프트에 대해서는 정확하게 알지 못했다. 대부분의 사람들도 이스트소프트라고 하면 잘 모르겠지만 알약, 알집을 개발한 회사라고 하면 바로 알 거라고 생각한다. 아무튼 해당 기업에 지원을 했고 서류 심사 이후 실무진 인터뷰라는 전형 절차와 무관하게 코딩 테스트 관련하여 연락이 왔다. 코딩 테스트는 준비 중이었기 때문에 문제는 없었지만. 이스트소프트 코딩 테스트 유형은 아래와 같다. 0. 온라인 코딩 테스트 1. 문제는 한글로 제공된다. 2. Programmers 환경 : 그동안 프로그래머스로 코딩 테스트를 준비해왔기 때문에 친숙하고 좋았다. 하던 걸로 하는 게 편하긴 함. 3. 총 2문제. 120분 제한. Java를 사용하여 문제를 풀었다. (괄호 안의 단계는 프로그래머스 기준으로 생각한 지극히 ..