본문 바로가기

~2023/IT

mac emacs 복사하기(feat, 클립보드 공유) 요즘 emacs를 사용하면서 react를 개발하고 있다. 근데 mac에서 terminal을 통해서 emacs를 사용하고 있는데, 터미널 상에서 Ctrl + W로 복사한 내용이 실제 블로그에 올리려고 하니 복사가 되지 않았다. 왜 그런지 살펴보니, Emacs와 MAC은 서로 클립보드를 공유하고 있지 않아서 발생하는 문제였다. 이것을 해결하기 위해서 아래와 같이 하였다. 일단 터미널에서 emacs 설정 파일을 연다.(없다면 만들어서 열어준다.) 그러면 창이 하나 뜬다. 여기에 아래와 같은 코드를 입력해준다. ;; pbcopy for OSX (defun copy-from-osx () (shell-command-to-string "pbpaste")) (defun paste-to-osx (text &optiona.. 더보기
React 프론트 개발 기초 ver 2 지난번에 말씀 통통 초기 화면 띄우기를 진행하였다. datacodingschool.tistory.com/146React 프론트 개발 기초 ver 1리액트 개발 기초 노트 1) 노드 설치(노드를 통해서 여러가지 리액트 라이브러리를 사용할 수 있다.) 2) 터미널을 열고 아래 명령어를 칩니다. yarn은 개선된 버전의 npm입니다. brew install yarn 잘 진datacodingschool.tistory.com 오늘은 해당 프로젝트를 이어가면서 필요한 컴포넌트를 만들어보겠다. 1) 일단 component 에 form 이라는 폴더를 만든다.mkdir form cd form 그리고 여기서 Form.js랑 Form.css를 만들어준다. Form.jsimport React from 'react'; impo.. 더보기
React 프론트 개발 기초 ver 1 리액트 개발 기초 노트 1) 노드 설치(노드를 통해서 여러가지 리액트 라이브러리를 사용할 수 있다.) 2) 터미널을 열고 아래 명령어를 칩니다.yarn은 개선된 버전의 npm입니다.brew install yarn 잘 진행되고 있네요. 3) react를 사용하기 위해 추가해줍니다.yarn -g add create-react-app 근데 아래와 같은 에러 발생"Missing list of packages to add to your project"명령어를 조금 바꿔봅니다. -g 를 global로 바꾸니까 설치되었습니다.yarn global add create-react-app 4) 리액트 잘 추가되었는지 버전 확인해봅니다.create-react-app --version 5) 리액트 폴더 생성해줍니다.creat.. 더보기
리액트 너는 누구니? 페이스북에서 만든 프론트엔드 개발 프레임워크이다. (라이브러리 개념) 리액트 이전에도 Angular.js, Backbone.js 등 다양하게 존재했다.(MVC, MVVM 패턴 사용하는 것들.)리액트는 MVC를 사용하지 않는다.왜냐면 MVC 패턴은 시스템 규모가 커지게 되면, 성능이 떨어진다는 것이다. 근데 리액트는 MVC에서 View를 사용하지 않았다.대신 VirtualDOM을 사용하여 처음부터 새롭게 렌더링을 진행해준다. 리액트의 장점1) VirtualDOM을 사용하여 속도가 빠르다.2) 캐치프레이즈, Javascript, React만 알면, 웹, 앱 개발 가능하다.3) 이미 많은 회사에서 사용하고 있어서 문서가 많다. 리액트 구조1) 모든 것이 캡슐, 레고같이 컴포넌트로 구성된다.(유지보수 편함, 이.. 더보기
STS4 기본 웹페이지 설정 1. STS4 를 실행시켜줍니다. 2. 한번 위 쪽에 있는 실행버튼을 눌러봅니다. > 이렇게 생긴거(초록색) 3. 그러면 아래 Spring 배너가 뜨는 것을 확인할 수 있습니다.(서버가 실행되었음을 의미합니다.)저는 서버 실행 시 Spring boot(내장 서버)로 실행했습니다.(달라도 무방) 4. 인터넷을 열고 검색창에 localhost:8080 이라고 검색해봅니다.(저는 크롬 사용했습니다.)그러면 아무것도 나오지 않습니다. 왜냐면 뷰를 만들어주지 않았으니까요 5. 다시 STS로 돌아와서 임시방편으로 화면을 띄워보겠습니다.IndexController 클래스를 만들어줍니다.그리고 아래와 같이 코드를 적어줍니다.@RestController@RequestMapping("/") public String ind.. 더보기
내가 보려고 만든 코딩테스트 필살기 리스트 - Henry's Algorithm 1. 약수 빠르게 구하는 방법 2. 리스트 탐색 시 front, back 방법 3. 그래프 문제는 BFS 알고리즘을 사용하라 4. ~보다 큰, ~보다 작은, 혹은 우선순위를 가지고 있으면 heap을 사용하라 5. 완전탐색도 때로는 답이다(딱 보고 생각했을 때, 다 훓지 않으면 안되는 지 감을 키워라) 더보기
내가 보려고 만드는 정보처리기사 단답형 예상문제 2. 데이터 입출력 구현 Q. 테이블의 제약조건 설계에서 참조 무결성 제약조건의 3가지를 적으시오 정답: 제한, 연쇄, 널값 Q. 반정규화란 무엇인가요? 정답: 조인이 많은 경우 성능향상을 위해서 행하는 정규화의 반대 개념이다. Q. 테이블 생성시 일부 단어들 중 시스템에서 사전 예약이 되어 있어 사용할 수 없는 단어를 의미하는 말 정답: 예약어 Q. DBMS에서 가로방향, 세로방향을 어떻게 부르나요? 정답: 가로(행): 튜플, 세로(열): 애트리뷰트 Q. 3차 정규화 중 A -> B 이고, B -> C 이면서 A -> C인 관계를 ( ) 관계라고 한다. 정답: 이행함수 종속 Q. 전체 데이터의 검색 없이 필요한 정보를 신속히 조회할 수 있도록 도와주는 기능은? 정답: 인덱스 Q. SQL을 이용해 생성된.. 더보기
모두에게 도움 되는 코딩테스트 출제 유형 모음 1. 해시 유형 Key-value 쌍으로 데이터를 저장하여 데이터를 처리하는 유형이다. 주로 0~N까지 완전 탐색을 해야하는 경우의 문제여서, 정확도에 대한 테스트만을 수행하는 경향이 있다. (일부 효율성 테스트가 있긴 하다.) 이런 경우에는 dict = {} 으로 접근하자. 관련 Python 내장 함수 => map, reduce, Counter 등 2. 스택 & 큐 유형 보통 직선 형태의 리스트를 사용하여 문제를 풀어가는 방식이다. Python 같은 경우는 arr = [] 리스트를 통해 스택과 큐로서 사용하면 된다. 문제가 유명한 알고리즘(BFS, DFS, 길찾기 같은 등등)들을 요하는 것보다는 그냥 문제 자체에서 요구하는 대로 구현하면 된다. 관련 Python 내장 함수 arr.pop(0) : 앞에 .. 더보기