전체 글

개발함
TIL/CodeUp

[Python] 6097 설탕과자 뽑기 (2차원 배열)

# 첫 줄에 격자판의 세로(h), 가로(w) 가 공백을 두고 입력되고,# 두 번째 줄에 놓을 수 있는 막대의 개수(n)# 세 번째 줄부터 각 막대의 길이(l), 방향(d), 좌표(x, y)가 입력된다.# 1    아직도 헷갈림...이것때문에 코드 얼개는 빠르게 짰는데 .. ..h 가 보통 세로 아님??????근데, 세로이긴 한데 .. 행의 개수가 되어서..  아.. 몰라..

TIL/CodeUp

[Python] 6096 바둑알 십(+)자 뒤집기

# 바둑알 십(+)자 뒤집기# 모든 가로줄 반대로 (1->0 / 0->1) ----> 그 다음 모든 세로줄 돌 반대로# 고른 위치를 제외한 가로줄과 세로줄의 색이 모두 반대로 바뀜# 바둑알이 깔려 있는 상황이 19 * 19 크기의 정수값으로 입력된다.# 십자 뒤집기 횟수(n)가 입력된다.# 십자 뒤집기 좌표가 횟수(n) 만큼 입력된다. 단, n은 10이하의 자연수이다.d = [list(map(int, input().split())) for _ in range(19)]n = int(input())for _ in range(n): x, y = map(int, input().split())# 좌표 (1,1) 은 배열 인덱스로 (0,0) x -= 1 y -= 1 for i in range(..

Node.js

[Node.js] fs 기본 기능 정리 (파일 저장 및 수정, 내용 읽기, 이름 변경, 디렉토리 체크 등)

회사에서 피그마 변환 프로젝트를 수행하며피그마 변환 -> HTML 파일로 저장 하는 과정에서 fs 모듈을 많이 사용했다.그 중 가장 기초가 되고 많이 호출한 메서드를 정리해보려 한다.(거의 비동기로 작성했다.)  0. 경로 생성fs 모듈을 사용하기 위해서는 경로값이 필요하다. 노드 서버를 실행하는 컴퓨터마다 서버 파일의 위치가 달라질 수 있으므로,1) fileURLToPath(import.meta.url) -- 실행 컴퓨터의 현재 파일의 절대경로를 먼저 추출하고 2) path.dirname(절대경로) -- 추출한 경로에서 현재 위치의 파일만 추출한 뒤3) path.join(현재위치, '목표파일상대경로') -- 현재 위치를 기준으로 상대 경로를 찾는다.import fs from "fs/promises";i..

Node.js

[Node.js] 보안 이슈 챙기기

어웅 내일 출근하자마자 url 부터 parse 한다;  1. 입력정보에 대한 보안url 을 그냥 사용하게 되면 엔드포인트가 어떻든간에 '../passoword.js' 를 url에 써서 서버 컴퓨터의 디렉토리 정보를 탐색할 수 있다.path.parse('../passoword.js'); 를 하게 되면 { root: '',   dir: '..',   base: 'password.js',   ext: '.js',   name: 'password' }이렇게 객체 형태로 url을 리턴해주는데, 그러면 디렉토리 정보값('..') 을 제외하고 엔드포인트만 취해서외부 침입을 막을 수 있다.즉, 사용자로부터 경로가 들어오는 모든 곳을 parse 로 바꿔줘야 한다.외부 정보가 유입되거나 유출되는 모든 경우 오염될 수 있으..

Front/Html Css JS

[JavaScript] function 은 statment 이면서 value 이다.

홀리 쉣이게 된다고?자스 이 미친 언어이렇게 써볼 생각도 못했네익명 함수는 많이 써봤지만 그걸 배열이나 객체에 넣어볼 생각은 정말 해본 적 없는데아 근데 생각해보니까 객체에 함수를 담는건 본 적 있는 듯??그냥 그렇구나 하고 넘겼는데 "자바스크립트에서 함수는 값이다" 라는 개념이 적용된 문법이었구나..  // function 은 statment 이면서 value 이다.var f = function() { console.log(1+1);};// 배열과 객체의 원소로 함수를 넣을 수 있음!!!!!!!!var arr = [f];var obj = { func : f };f();arr[0]();obj.func();  // 객체는 복잡한 코드를 정리정돈해서 복잡성을 낮추는 기본적인 기능에서부터 출발한다.var..

Node.js

[Node.js] 동기와 비동기, 그리고 콜백 (추후 내용 갱신할 것)

동기적 방식 (synchronous): 순차적 실행(sample.txt 에는 B라고 적혀있음)var fs = require('fs');console.log('A');var result = fs.readFileSync('syntax/sample.txt', 'utf8');console.log(result);console.log('C');// A B C  비동기적 방식 (asynchronous): 병렬적으로 여러가지 일을 동시 실행(작업이 끝나는걸 기다리지 않고 다음 작업을 수행): Node.js 는 비동기적 방식을 선호함var fs = require('fs');console.log('A');fs.readFile('syntax/sample.txt', 'utf8', function(err, result){ ..

Node.js

[Node.js] readFile 로 동적 웹페이지 만들기

var http = require('http');var fs = require('fs');var url = require('url');function templateHTML(title, list, body) { return ` WEB ${list} ${body} `;};function templateList(filelist) { var list = ''; for (var i = 0; i ${filelist[i]}`; } list = list + ''; return list;}var app = http.createServer(functi..

TIL/thought

Node.js 를 배워볼까

평소처럼 Spring 강의를 들으려다가 갑자기 여러 가지 생각이 떠올라서, 충동적으로 링크드인에 들어가게 됐다.호주 기업에 대해 아는 건 Atlassian 정도라 그냥 호기심에 Atlassian에서 최근에 올린 풀스택 개발자 채용 공고를 봤는데그 공고에서 TypeScript, React, Node.js를 요구하고 있더라.      백엔드 공고에서는 Java 가 먼저 언급되긴 함. 정확히는 객체 지향 언어.    시니어 풀스택 디벨로퍼 자격조건을 보면 "preferred experience with Java, NodeJs" 라고 적혀있음.아마 예상해보건데 레거시 서버 -> JAVA신 기능 서버 -> Node.js로 이루어지지 않았을까 싶음.    사실 지금 회사에서도 주로 Node.js를 사용하고 있기 때..

함s
함함ː