본문 바로가기

분류 전체보기139

Webpack이 뭔데!!(3) Bundle이 중요한 이유? Bundle이란? 번들은 웹팩에 대해 이해할 때 알아봤습니다. 이번에는 번들을 왜 사용하는지, 이게 왜 중요한지에 대해 알아봅니다. 각 모듈을 요청해서 자원을 얻어와야 했던 것들을 묶어서 요청/응답 을 받기 때문에 파입 접근 횟수가 줄어들고 모듈 로드를 위해 검색하는 시간, network cost가 줄어듭니다. Webpack 4 이상의 버전부터는 development, production 모드를 지원합니다. production 모드에서는 로드 시간을 줄이기 위한 번들 최소화, 가벼운 소스맵 및 최적화에 초점을 맞추고 번들링을 진행합니다. 즉 코드를 압축해주고 난독화, 최적화(tree shaking) 작업을 지원합니다. tree shaking: 사용되지 않는 코드를 제거 Web.. 2021. 8. 2.
Webpack이 뭔데!!(2) ESM Keyword Nodejs 환경에서는 CommonJS 표준을 따르기 때문에 모듈을 다른 방식으로 접근할 수 있게 도와주는 도구가 필요합니다. $ npm install esm esm을 설치해준다. esm 모듈이 설치가 되었으면 명령문을 실행할 때 $ node -r esm index.js -r 이라는 플래그는 node 명령어를 실행할 때 실행하는 파일의 다른 모듈의 표준도 해석할 수 있게 실행해줍니다. 내보내기 export 혹은 export default 를 사용합니다. export, export default의 차이? 모듈은 크게 두 종류로 나눌 수 있습니다. 여러 개의 함수가 있는 라이브러리 형태의 모듈과, 개체 하나만 선언되어있는 모듈 export default 를 사용하면 해당 모듈엔 개체가 .. 2021. 8. 1.
Webpack 이 뭔데!!(1) 웹팩은 최신 프론트엔드 프레임워크에서 가장 많이사용되는 모던 Javascript 애플리케이션을 위한 정적 모듈 번들러입니다. 모듈 번들러란? 모듈 번들러는 웹 애플리케이션을 구성하는 웹 구성 자원들(HTML,CSS,JS,Images 등)을 모두 각각의 모듈로 보고 이들의 의존성을 묶고 조합해 합쳐진 하나의 결과물(static한 자원)을 만드는 도구입니다. 즉 js, sass, jpg, png, css 같은 많은 자원들을 하나의 파일로 병합하고 압축해주는 동작을 모듈 번들링이라고 합니다. 모듈이란? 모듈은 단지 파일 하나에 불과 합니다. 모듈은 대개 클래스 하나 혹은 특정한 목적을 가진 복수의 함수로 구성된 라이브러리 하나로 구성됩니다. 각 모듈은 전체 프로그램보다 영향 범위가 좁아 검증 및 디버깅 테스트.. 2021. 7. 30.
[프로그래머스 javascript] 124 나라의 숫자 주의해야할 점 입출력 결과물만 보고 프로그래밍하기 시작하면 규칙을 찾는데에 어려울 수 있다. 3으로 나눈 나머지가 0이면 4 1이면 1 2면 2 를 반복해서 찍어주고 n은 n이 나누어떨어지는 경우에는 3으로 나눈 몫 -1 을 나누어 떨어지지 않으면 3으로 나눈 몫으로 바꿔주고 반복한다. function solution(n) { var answer = '' var arr=[4,1,2] while(n>0){ answer = arr[n%3] + answer if(n%3 == 0) n = parseInt(n/3) -1 else n = parseInt(n/3) } return answer; } 아니면 function solution(n) { var answer = '' var arr=[1,2,4] if (n===.. 2021. 7. 3.
[프로그래머스 javscript] 키패드 누르기 [카카오 인턴] 키패드 누르기 문제 설명 스마트폰 전화 키패드의 각 칸에 다음과 같이 숫자들이 적혀 있습니다. 이 전화 키패드에서 왼손과 오른손의 엄지손가락만을 이용해서 숫자만을 입력하려고 합니다. 맨 처음 왼손 엄지손가락은 * 키패드에 오른손 엄지손가락은 # 키패드 위치에서 시작하며, 엄지손가락을 사용하는 규칙은 다음과 같습니다. 엄지손가락은 상하좌우 4가지 방향으로만 이동할 수 있으며 키패드 이동 한 칸은 거리로 1에 해당합니다. 왼쪽 열의 3개의 숫자 1, 4, 7을 입력할 때는 왼손 엄지손가락을 사용합니다. 오른쪽 열의 3개의 숫자 3, 6, 9를 입력할 때는 오른손 엄지손가락을 사용합니다. 가운데 열의 4개의 숫자 2, 5, 8, 0을 입력할 때는 두 엄지손가락의 현재 키패드의 위치에서 더 가까.. 2021. 7. 2.
[프로그래머스 python, javascript] 로또의 최고 순위와 최저 순위 https://programmers.co.kr/learn/courses/30/lessons/77484 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr javascript와 python 모두 filter 함수를 사용했다. 약간의 사용법은 다르다. 문제 풀이는 적어도 맞힌 갯수와 최대로 맞힐 수 있는 갯수를 구하면 된다. #javascript function solution(lottos, win_nums) { var answer = []; var rank=[6,6,5.. 2021. 7. 1.
[프로그래머스 python, javascript] 소수구하기 https://programmers.co.kr/learn/courses/30/lessons/12977?language=python3 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr 3중 for문을 사용해서 각 숫자들의 조합을 더해 소수인지 판별하기만 하면 되는 문제이다 #javascript function isPrime(n){ for (var i = 2; i 2021. 7. 1.
[백준 파이썬 2667 ] DFS 단지번호붙이기 단지번호붙이기 성공출처 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 128 MB 85824 35346 22337 39.278% 문제 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다. 대각선상에 집이 있는 경우는 연결된 것이 아니다. 는 을 단지별로 번호를 붙인 것이다. 지도를 입력하여 단지수를 출력하고, 각 단지에 속하는 집의 수를 오름차순으로 정렬하여 출력하는 프로그램을 작성하시오. 입력 첫 번째 줄에는 지도의 크기 N(정사각형이므로 가로와 세로의 크기는 같으며 5≤N≤2.. 2021. 6. 29.
파이썬 DFS 등산경로 문제 등산경로(DFS) 등산을 매우 좋아하는 철수는 마을에 있는 뒷산에 등산경로를 만들 계획을 세우고 있습니다. 마을 뒷산의 형태를 나타낸 지도는 N*N 구역으로 나뉘어져 있으며, 각 구역에는 높이가 함께 나타나 있습니다. N=5이면 아래와 같이 표현됩니다. 2 23 92 78 93 59 50 48 90 80 30 53 70 75 96 94 91 82 89 93 97 98 95 96 100 어떤 구역에서 다른 구역으로 등산을 할 때는 그 구역의 위, 아래, 왼쪽, 오른쪽 중 더 높은 구역으로만 이동할 수 있도록 등산로를 설계하려고 합니다. 등산로의 출발지는 전체 영역에서 가장 낮은 곳이고, 목적지는 가장 높은 곳입니다. 출발지와 목적지는 유일합니다. 지도가주어지면출발지에서도착지로갈수있는 등산경로가몇가지인지구하.. 2021. 6. 29.
플로엑셀 붓이끼 녹점이끼 제거 8~10일차 8일차 9일차 10일차 이젠 자취를 거의 감춘 붓이끼. 녹점과 붓이끼는 거의 흔적만 남기고 사라졌습니다. 뿌리 부분에는 아직 약간 남아있는 것 같지만 4일 가량 더 투입하면 새우들이 빠르게 제거 해 줄 것같네요. 2021. 6. 28.
플로엑셀 붓이끼 녹점이끼 제거 5~7일차 5일차 5일차 사진입니다. 조금씩 효과가 있는건지 녹점은 점점 사라지는 모습입니다. 붓 이끼는 아직까지 큰 변화가 안보이네요 5일차에는 환수를 진행하지 않았습니다. 6일차 이 날은 환수를 했습니다. 2일에 한번씩 환수 중입니다. 붓이끼 일부가 사라진 것 같습니다. 잦은 환수로 인해 야마토 새우들이 계속해서 탈피를 합니다. 7일차 이 쪽이 문제입니다. 좀 없어진건지 뭔지 티가 안납니다. 아직까진 남아있는 모습이 보입니다. ㄴ이쪽은 그래도 첨에비해 많이 없어진것 같습니다. 나무 끝 쪽의 붓 이끼는 거의 사라졌습니다. 신기하네요 콩나나에 펴있던 녹점이끼는 모두 죽어버렸습니다. 어항 벽면에 있던 녹점들도 죽어가고 있네요 우선 어항 내 녹점은 거의 제거 된 것 같습니다 2021. 6. 24.
네카라쿠배 프론트엔드 취업완성 스쿨 2기 2차 테스트 7일차 학습 링크드 리스트 링크드 리스트 구조 연결 리스트라고도 함 배열은 순차적으로 연결된 공간에 데이터를 나열하는 데이터 구조 링크드리스트는 떨어진곳에 존재하는 데이터를 화살표로 연결해서 관리하는 데이터 구조 본래 C언어에서는 주요한 데이터 구조이지만, 파이썬은 리스트 타입이 링크드 리스트의 기능을 모두 지원한다. 배열은 연결된 공간을 미리 예약해야한다는 단점이있다. 하지만 링크드 리스트는 미리 예약하지 않고 필요할 때마다 추가할 수 있다. 노드 (Node) : 데이터 저장 단위( 데이터 값, 포인터 ) 로 구성 포인터( pointer ) : 각 노드 안에서, 다음이나 이전의 노드와의 연결 정보를 가지고 있는 공간 [데이터 | 다음데이터주소 ] → [데이터 | 다음데이터주소] → [데이터 | 다음데이터주소] 다음.. 2021. 6. 23.
네카라쿠배 프론트엔드 취업완성 스쿨 2기 2차 테스트 6일차 학습 자료구조란? 자료구조, 데이터 구조, data structure 대량의 데이터를 효율적으로 관리할 수 있는 데이터 구조를 의미 코드상에서 효율적으로 데이터를 처리하기 위해, 데이터 특성에 따라 체계적으로 데이터를 구조화해야 함 어떤 데이터 구조를 사용하느냐에 따라, 코드 효율이 달라짐 대표적인 자료구조 배열, 스택, 큐, 링크드 리스트, 해쉬 테이블, 힙 알고리즘이란? 어떤 문제를 풀기 위한 절차/방법 어떤 문제에 대해, 특정한 '입력'을 넣으면, 원하는 '출력'을 얻을 수 있도록 만드는 프로그래밍 anaconda란? 파이썬 컴파일러 파이썬 주요 라이브러리들을 포함하고 있음. jupyter notebook 등 유용한 툴 데이터 사이선스 작업에 자주 사용하는 패키지를 간단하게 .. 2021. 6. 22.
플로엑셀 붓이끼 녹점이끼 제거 4일차 플로엑셀로 붓이끼 제거하기 4일차입니다. 아직도 별 다른점이 안보입니다. 애초에 붓이끼가 완전 퍼져버리기 전이라 조금밖에 없어서 그런가 죽어가는 모습이 안보입니다. 그래도 희망을 가지고 꾸준히 넣어줍시다. 화질이 좋지않지만 확대해봤습니다. 오늘도 마찬가지로 11ml 를 투여했습니다. https://fishhi.kr 피쉬하이::물양 계산기 물생활 필수 앱 오늘은 추가적으로 20~30% 정도 환수를 해줬습니다. 돌아다니는 붓이끼 포자를 제거해줘야합니다. 2주는 진행해야 좀 효과가 보이지 않을까 싶습니다.. 야마토형님들 힘좀 써주세요 2021. 6. 20.
플로엑셀 붓이끼 녹점이끼 제거 3일차 플로엑셀로 붓이끼 제거하기 3일차 아직까지 큰 변화는 없습니다. 특이사항으로는 야마토가 알을 반쯤 버렸네요. 어차피 기수가 아니면 번식이 힘드므로 큰 상관은 없지만. 뭔가 약간의 타격은 있지 않았나 싶습니다. 오늘도 마찬가지로 11ml 를 투여했습니다. https://fishhi.kr 피쉬하이::물양 계산기 물생활 필수 앱 플로엑셀은 제어항 30큐브 기준 2.68cc 를 권장하지만 4배 가량을 투입했습니다. 오늘도 예쁘게 자라는 중인 콩나나들. 빨리 사라져라 붓이끼 ㅡㅡ 2021. 6. 19.