반응형

전체 글 70

파이썬 용어/개념 정리부터 확실하게 #1

모든건 기초가 튼튼해야 한다. 개발자들끼리 의사소통할 때 용어에 대한 이해가 부족하면 말릴수밖에 없다 누군가가 물어볼 때, 좀 안다 싶은데 용어 설명을 못하면 난감하기도 하다 용어에 대한 확실한 정리, 그리고 개념에 대한 확실한 이해가 필요하다 이제 알아보자 . 해당 포스팅은 [클린코드, 이제는 파이썬이다] 저서의 일부입니다. 이번 포스팅에서는 가비지 컬렉션, 리터럴, 키워드, 객체, 아이디에 대해 다룹니다. 가비지 컬렉션 (Garbage Collection) 유명 유니콘 기업에서 면접을 볼 때 들어왔던 기술 질문중 하나다. 사실 그 전까진 이런 개념이 있는 줄도 몰랐다. 가비지 컬렉션 : 파이썬 내부에서 메모리 할당과 해제를 자동으로 해주는 메모리 관리 기법 초기 프로그래밍에서는 메모리를 프로그래머가 ..

[삼성전자 공채] 서류 합격 가이드

블로그 게시글 중, 서류 합격 후기에 관한 조회수가 가장 좋아 제대로 적어보려 합니다. 필자는 3급 공채 출신으로, 22년도부터 현재까지 근무중입니다. 그동안 여러 사람들의 자소서 첨삭 및 면접 조언을 해주었고 실제로 조언해주신 분들 중에 현재 같이 근무중인 분도 계십니다. 특히, 서류의 경우에는 DX 기준 첨삭해준 대부분의 지원자가 합격했습니다. 지금부터 자소서 항목별로 분석해보려 합니다. (※필자는 SW 직군이기 때문에, 이점 유념하여 읽어주시길 바라겠습니다) 에세이 삼성전자 에세이 항목은 변하지않기때문에 미리 준비할 수 있습니다. 4가지 질문을 보기에 앞서, 자소서 절대 원칙에 대해 알아보겠습니다. 1. 글자 수는 최대한 많이 채우자 글자 수의 95%는 채우려고 노력합시다. 글자 수가 많다고 뽑히는..

경험/취업 2023.03.10

파이썬다운 코드란? (파이써닉하게 코딩하기)

수많은 프로그래밍 언어는 저마다 장단점이 있다. 파이썬은 가독성이 쉽고 뭐 내장모듈이 많고 어쩌고... 이렇게들 많이 말하곤 한다. 각 프로그래밍 언어의 강점을 잘 살리고, 약점을 커버할 수 있도록 설계하는 것이 바람직하다고 생각한다. 그렇다면, 파이썬답게(파이써닉하게) 코드를 작성하는 방법은 무엇일까? . 해당 포스팅은 [클린코드, 이제는 파이썬이다] 저서의 일부입니다. 파이썬의 선 (Zen of Python) 파이썬 언어 설계와 프로그램을 위한 20가지 지침이라고 한다. 아래처럼 import this 를 불러오면 볼 수 있다. 이중 몇 가지 재미난 부분에 대해 알아보자 아름다운 것이 흉한거보다 낫다 당연한 사실이다. 파이썬은 중괄호가 사라지고 간결하게 코드를 작성하게 거의 강제하면서, 가독성을 높이고..

Python 에러 예방하기 (코드 악취 제거하기)

프로그래밍을 하다보면, 다양한 에러를 자주 만나게 되는데 처음에는 이게 문제인지도 모르고 짜게되는 경우가 빈번하게 일어난다. 하지만 경험이 쌓일수록, 문제가 자주 발생하던 코드 패턴에 대해서 본인 스스로도 예방하려고 하게 될텐데 초심자를 위해, 그리고 파이썬을 사용하는 사람일지라도 습관을 들이기 위해 이번 장을 살펴보자 해당 포스팅은 [클린코드, 이제는 파이썬이다] 저서의 일부입니다. 코드 악취 (Code Smell) - 잠재적인 버그를 암시하는 코드 패턴 - 말그대로 코드에서 악취가 풍겨 이건 분명 에러날 가능성이 높겠다는 생각이 드는 그러한 것들그렇다면 지금부터 코드 악취의 종류에 대해 알아보고, 예방하는 방법이 있는지 살펴보자 중복 코드 말 그대로, 복붙해서 사용한 비슷한 동작을 수행하는 코드들 이..

[Git] Forked repository update 하기

오픈소스를 fork해서 나만의 작업을 할 수 있다. 하지만 fork 이후, original repository가 수정되었다면? 당연히 내 forked repository는 예전 버전이기 때문에 문제가 생길 수 있다. 그럼 간단하게 forked repository를 최신 버전으로 업데이트하는 방법을 알아보자 편의상 다음과 같이 부르겠다. 내 레포 : 예전것을 fork해온 로컬 레포 원본 레포 : 최신버전의 original 레포 1. 내 레포에서 git bash 열어주기 2. 내 레포와 원본 레포를 각각 지정하기 각각 origin과 upstream이라는 이름으로 지정하겠다. (가장 일반적) $ git remote add origin (내 레포 주소) $ git remote add upstream (원본 레포..

Open Source 개발 2023.02.26

Python 이해하기 쉬운 코드 이름 짓기

혹시 이런 통계를 본 적 있는가? 아무래도 내가 이해하기 쉽기 위해, 그리고 남들도 이해하기 쉽게 하기 위해 함수명, 파일명, 변수명 등등 이름 짓는 것이 가장 귀찮은 일들중 하나일 것이다. 그렇다면, 변수명을 잘 짓는 방법도 배워두면 어떨까 여기서는 파이썬에 특화된, 변수명 잘 짓는 방법을 알려주고 있다. 해당 포스팅은 [클린코드, 이제는 파이썬이다] 저서의 일부입니다. 대소문자 표기법 파이썬은 대소문자가 구분되는 언어이며, 공백이 포함될 수 없는 특징이 있다. 널리 알려진 몇 가지 표기법에 대해 알아보자. 스네이크 표기법 : this_is_snake_case 이와 같이 언더바 _ 와 영문 소문자를 사용한다. 카멜 표기법 : thisIsCamelCase 이와 같이 단어를 언더바가 아닌 대문자로 구분한다..

가독성 좋은 파이썬 코드 작성방법

보기 좋은 코드로 작성하는 것은 프로그래밍 유지 보수를 도와주는 필수 스킬이다. 초심자는 단순히 기술적 지식을 늘리거나, 코드를 작동하게 하는 것에 의의를 두어 이런 부분을 신경쓰지 않을 수도 있다. 하지만 자신의 코드를 나중에 볼 때, 혹은 남에게 보여주며 도움을 구할 때, 함께 프로그래밍 할 때 등 생각보다 가독성 좋은 코드를 작성해야하는 것은 기술을 구현하는 것만큼 중요하다. 지금부터 파이썬만의 가독성 좋은 클린코드를 작성하는 방법을 알아보자. 해당 포스팅은 [클린코드, 이제는 파이썬이다] 저서의 일부입니다. 용어 정리 Code Formatting : 코드 포매팅, 소스코드에 일련의 규칙을 적용하여 특정 형식을 갖추게 하는 것 Style Guide : 스타일 가이드는 특정 집단에서 일련의 코드 포메..

올바른 코딩 질문하는 방법

코딩, 프로그래밍에 몸담은지 몇 년이 지나면서 커뮤니티나 지인들로부터 굉장히 많은 질문을 받기도 하고 나또한 질문을 하곤 했다. 서로 지식을 공유하는만큼 최대한 구체적으로, 답변해주는 사람을 고려하며 질문하려 하지만 초심자의 경우 그렇지 못한 경우가 대부분이며, 이미 잘 알고 있는 사람이라 하더라도 매너없이 질문하는 경우를 보았다. 당신이 프로그래밍에 오래 몸담을 생각이 있다면, 질문하는 방법을 배워서 적용하는 것도 "실력"일 것이다. 해당 포스팅은 [클린코드, 이제는 파이썬이다] 저서의 일부입니다. 질문은 최후의 수단임을 명심하라 디버깅이 우선이며, 구글링을 먼저 할 것 얼마나 찾아보았나? 당신은 러시아어나 중국어가 나오는 문서까지 뒤져볼 정도가 되었지만 해결하지 못했다고 할 정도면, 충분히 검색한 것..

신입 개발자 노션 포트폴리오 템플릿 공유

개발자 포트폴리오 고민 많으실텐데요. (템플릿 URL은 맨 아래쪽으로 이동하세요) 포트폴리오가 필요한 이유 채용 공고에 대놓고 포트폴리오를 제출하라고 한다 이력서 대용으로 활용 가능하다 한 번 잘 정리해놓은 포트폴리오는 두고두고 활용된다 등등의 이유로 포트폴리오를 구체적으로 작성해두면 매우 좋습니다. 개발자 포트폴리오 종류 PDF (Word, PPT로 작성 후 변환) PDF는 기본으로 가져가시는게 좋습니다. 아무래도 파일 첨부를 받는 곳이 많습니다. 직접 홈페이지 개발 직접 홈페이지를 개발해서 오픈하는 것은 가장 개발자다운 방법입니다. 하지만 서버를 상시 열어두기 부담되시죠. 노션 !! 깔끔하면서도 가독성이 좋습니다. 수정이 쉬우면서, PDF가 필요하다면 PDF로 Export 기능이 있어 편리합니다. 그..

경험/취업 2023.01.11

[C++] 백준 23309 : 철도 공사

https://www.acmicpc.net/problem/23309 23309번: 철도 공사 첫 번째 줄에 공사를 시작하기 이전에 있는 역의 개수를 나타내는 양의 정수 $N$과 공사 횟수를 나타내는 양의 정수 $M$이 주어진다. ($1 \le N \le 500\,000$, $1 \le M \le 1\,500\,000$) 두 번째 줄에는 공사 www.acmicpc.net 문제 요약 1. 하나의 원으로 연결된 지하철 역들이 있음 2. 각 역은 고유 번호가 주어짐. 중복되지 않음. 3. 철도 공사를 위해 아래와 같은 4가지 공사 방법을 구현할 것 특정 역 번호 -> 다음에 사로운 역 추가 특정 역 번호 -> 이전에 새로운 역 추가 특정 역 번호 -> 다음 역 삭제 특정 역 번호 -> 이전 역 삭제 설계 방법 ..

baekjoon 풀이 2022.11.15