본문 바로가기

분류 전체보기

(22)
[코딩테스트] 자바스크립트에서 파이썬으로 바꾸기 이번 하반기를 준비하면서 코테의 중요성을 크게 느낀다. 그 동안의 주언어를 자바스크립트를 사용하다가 3주 전부터 급하게 파이썬으로 바꿨다. 자바스크립트를 사용하지않는 기업도 있었고 자바스크립트만 사용하는 기업도 있었지만 가장 큰 이유는 제공하는 라이브러리가 파이썬이 많기 때문에 코테 문제를 풀 때 수월하다는 것이다. 예를 들어 순열, 조합을 계산할 때 자바스크립트는 재귀함수로 함수를 만들어야하지만 파이썬은 라이브러리를 통해 한 줄로 작성가능하다. 코테처럼 시간을 중요시하고 경우의 수를 많이 생각하는 부분에서 당연히 파이썬이 유리할 수 밖에 없다는 나의 판단이다(뇌피셜) 아무튼 학부 때 주언어가 파이썬이었어서 그래도 바꾸는데에 큰 무리는 없었지만 헷갈리기는 했다. 그래서 기본 파이썬 문법들 중 꼭 필요한 ..
앞으로 공부할 것 정리 https://engineering.linecorp.com/ko/blog/ui-component-library-for-developers-with-typescript-storybook/
[프로그래머스] 배상 비용 최소화 문제풀이 / Javascript https://programmers.co.kr/learn/courses/13213/lessons/91086 OO 조선소에서는 태풍으로 인한 작업지연으로 수주한 선박들을 기한 내에 완성하지 못할 것이 예상됩니다. 기한 내에 완성하지 못하면 손해 배상을 해야 하므로 남은 일의 작업량을 숫자로 매기고 배상비용을 최소화하는 방법을 찾으려고 합니다. 배상 비용은 각 선박의 완성까지 남은 일의 작업량을 제곱하여 모두 더한 값이 됩니다. 조선소에서는 1시간 동안 남은 일 중 하나를 골라 작업량 1만큼 처리할 수 있습니다. 조선소에서 작업할 수 있는 N 시간과 각 일에 대한 작업량이 담긴 배열(works)이 있을 때 배상 비용을 최소화한 결과를 반환하는 함수를 만들어 주세요. 예를 들어, N=4일 때, 선박별로 남은 ..
CSS 방법론이란? (OOCSS, BEM, SMACSS) CSS 방법론 CSS 에서 클래스 네임을 지을 때 작성하는 방식으로 일종의 naming convention 이다. 쉽게 말해 CSS방법론이란 웹에서 CSS의 영향력이 높아지게 되면서 CSS사용시 클래스 이름을 어떻게 작성할지, 어떠한 방식으로 스타일을 작성할지 등 CSS를 보다 효율적으로 작성하기 위해 정의된 일종의 규칙이다. CSS 방법론에는 다양한 방법론이 존재한다. 크게는 OOCSS, BEM, SMACSS로 나누어지며, 상황에 따라 다르게 적용된다. 하나하나 알아보자~! 1. OOCSS OOCSS(Object Oriented CSS)는 CSS를 모듈(module) 방식으로 작성하여 중복을 줄이는 방식의 방법론 OOCSS는 가장 많이 사용되는 방법론으로 구조와 스타일을 분리하여 작성한다. 중복되는 디..
[프로그래머스] DFS/BFS - 네트워크 (Javascript) [ 문제 설명 ] 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있을 때 컴퓨터 A와 컴퓨터 C도 간접적으로 연결되어 정보를 교환할 수 있습니다. 따라서 컴퓨터 A, B, C는 모두 같은 네트워크 상에 있다고 할 수 있습니다. 컴퓨터의 개수 n, 연결에 대한 정보가 담긴 2차원 배열 computers가 매개변수로 주어질 때, 네트워크의 개수를 return 하도록 solution 함수를 작성하시오. [ 제한 사항 ] 컴퓨터의 개수 n은 1 이상 200 이하인 자연수입니다. 각 컴퓨터는 0부터 n-1인 정수로 표현합니다. i번 컴퓨터와 j번 컴퓨터가 연결되어 있으면 c..
[프로그래머스] 구현 - 풍선터트리기 (Javascript) [ 문제 설명 ] 일렬로 나열된 n개의 풍선이 있습니다. 모든 풍선에는 서로 다른 숫자가 써져 있습니다. 당신은 다음 과정을 반복하면서 풍선들을 단 1개만 남을 때까지 계속 터트리려고 합니다. 임의의 인접한 두 풍선을 고른 뒤, 두 풍선 중 하나를 터트립니다. 터진 풍선으로 인해 풍선들 사이에 빈 공간이 생겼다면, 빈 공간이 없도록 풍선들을 중앙으로 밀착시킵니다. 여기서 조건이 있습니다. 인접한 두 풍선 중에서 번호가 더 작은 풍선을 터트리는 행위는 최대 1번만 할 수 있습니다. 즉, 어떤 시점에서 인접한 두 풍선 중 번호가 더 작은 풍선을 터트렸다면, 그 이후에는 인접한 두 풍선을 고른 뒤 번호가 더 큰 풍선만을 터트릴 수 있습니다. 당신은 어떤 풍선이 최후까지 남을 수 있는지 알아보고 싶습니다. 위에..
대용량 웹서비스를 위한 마이크로 서비스 아키텍처 (MSA) 마이크로 서비스 아키텍처 (MSA의 이해) Micro Service Architecture 의 줄임말로 마이크로 서비스 아키텍처에 대한 정확한 정의는 없다. 하지만 작고 독립적으로 배포가능한 각각의 기능을 수행하는 서비스로 구성된 프레임워크라 할 수 있다. MSA 등장 배경 마이크로 서비스 아키텍처는 모노리틱 아키텍처 스타일의 문제점을 보완하기 위해 등장했다. 그렇다면 모노리틱 아키텍처란 무엇인가에 대해서 이해해야한다. 모노리틱 아키텍처(Monolithic Architecture) 모노리틱 아키텍쳐 스타일은 기존의 전통적인 웹 시스템 개발 스타일로, 하나의 애플리케이션 내에 모든 로직들이 모두 들어 가 있는 “통짜 구조” 이다. 예를 들어, 온라인 쇼핑몰 애플리케이션이 있을때, 톰캣 서버에서 도는 WAR..
[Error] Window에서 특정 포트 죽이기 Error: listen EADDRINUSE: address already in use :::3095 ... [nodemon] app crashed - waiting for file changes before starting... 라는 에러가 날 때가 있다. 이것은 이미 백엔드 서버가 켜져있는데 다시 한번 백엔드 서버를 키려고 해서 발생하는 에러이다. 해결 방법은 기존의 서버를 먼저 내린 후 다시 실행하면 되는 데, 맥,리눅스를 사용하면 pkill node를 이용하면 되고, 윈도우는 해당 포트 (위의 에러 - 3095)를 사용하고 있는 PID를 찾아 내려주면 된다. 1. cmd를 연다. - 윈도우 검색탕에 cmd or 명령프롬포트 입력 후 open 2. netstat -ano | find "LISTENI..