분류 전체보기76 2019년 회고. 2019년이 끝나간다. 작년 이 맘 때 쯤 개발자 회고 모음글을 보며 ‘나도 2019년 연말 되면 회고록을 써야지.’하고 생각했던 것 같은데 막상 돌이켜 보니 참여한 프로젝트가 흐지부지 된 게 많아서 딱히 쓸 말이 많지가 않다. 취업 취업을 했다. 입사하게 되어서 입사일까지 부랴부랴 공부를 했지만, 역시나 부족하다는 게 금방 드러났다. 학부생 때 친구들과 모여서 하던 프로젝트와는 느낌이 너무 달랐고 신경써야 할 부분이 너무 많았다. 지금까지 했던 공부가 수박 겉핥기였다는 걸 깨달았다. 개발 위 내용이랑 이어지는데, 생각해보면 지금까지 들었던 개발 동영상 강의에서 나는 기술 그 자체보다 프로젝트를 완성하는데 급급했다. 최근에 다시 영상을 보니 강의자님이 전달하고자 하는 말이 뭔지 알겠어서… 마음이 너무 급.. 2019. 12. 25. Pandas 공부하기 : 누락된 데이터 처리 다음 글은 을 공부한 내용입니다. 데이터를 분석할 때 모든 데이터가 완전히 채워저 있는 일은 드물다. 값이 잘못된 경우, 데이터 타입이 잘못된 경우, 비어있는 경우 등이 있는데 데이터가 비어 있는 경우를 누락 데이터라 부른다. 누락 데이터 처리 과정은 누락 데이터가 충분한 외부 데이터를 사용하기로 했다. 실험에 사용한 파일은 다음 링크를 통해 다운로드 받을 수 있다. 실행 환경은 google colab이다. google colab에서 내 컴퓨터 내에 있는 파일을 가져오기 위해 제일 먼저 다음 코드를 친다. from google.colab import files uploaded = files.upload() for fn in uploaded.keys(): prin.. 2019. 12. 8. [javascript] ES6 클래스와 Prototype / 왜 Object instanceof Function은 true인가 ES6 Class와 Prototype #dev 자바스크립트는 프로토타입 기반 객체지향 언어다. 프토로 타입 기반이므로 클래스가 없고, 따라서 상속 개념이 존재하지 않는다. ES5까지는 프로토타입 체인과 클로저 등으로 상속이나 캡슐화 등을 흉내내어 구현해왔다 프로토타입 프로토타입은 프로토타입 링크와 프로토타입 오브젝트로 구성된다. 프로토타입 객체 객체는 언제나 함수로부터 생성된디. 객체 뿐만 아니라 함수와 array도 모두 함수로 장의되어 있다. function CreateItem(){}; const NewItem = new CreateItem(); // 함수를 통한 객체 생성 const obj = {}; //다음과 같이 객체를 선언하는 것은 const obj = new Object(); // Object.. 2019. 11. 9. [javascript] ES6 export vs NodeJS module.exports와 exports의 차이 모듈 NodeJS에서의 모듈 모듈이란 관련된 코드를 하나의 코드 단위로 캡슐화 하는 것을 말한다. 여러개의 코드로 분할하여 관리하고 index.js 파일 하나에 전부 import 시켜 효율적으로 코드를 관리할 수 있다. module.exports = { hello: function() { return "HELLO"; }, bye: function() { return "BYE"; } }; 위와 같이 모듈을 작성하면 메안 파일에서 다음 코드를 통해 const greeting = require(‘./greeting’); 작성한 모듈을 import 시킬 수 있다. 여기에서 require 코드는 object를 반환한다. 또한 module.exports와 exports는 동일 객체를 바라보고 있고 반환 값은 항상 .. 2019. 10. 25. TIL #2 : graphQL과 prisma 사용하기 Prisma : orm의 한 종류, 어플리케이션에 필요한 모델을 graphql로 정의할 수 있다는 점에서 특별하다 Prisma를 사용하기 위해서는 prisma.io에서 회원가입을 해야 한다. 먼저 npm을 통해 prisma를 다운로드 한 후 내 계정을 인증하였다. (이 과정은 홈페이지의 설명이 더 자세하다) gitignore을 사용하는 법에 대해 알게 되었다. 왜 .gitignore 파일이 깃허브에 노출되어 있으면 초짜라고 하는지 조금은 알 것 같음. 데이터 모델은 자동으로 생성된 datamodel.prisma에서 작성하고, 추가는 prisma deploy를 통해 가능하다. 데이터베이스를 만들 때 데이터간의 연결관계를 파악하는 게 선행되어야 함을 알게 됨. 데이터간 유기적으로 연결되어 있으니 약간 헷갈리.. 2019. 10. 19. TIL #1 - GraphQL and Express with goorm ide Nomad Coders의 인스타그램 클론 강의를 듣고 있다. 올해가 다 가기전에 완강하는 것이 목표지만 되도록 주어진 내용은 이해하고 넘어가려고 한다. 아직까지는 모든 게 새롭다! 이미 업무에서 사용하고 있는 프로그램과 충돌이 나는 것을 방지하기 위해 구름IDE를 사용해서 실습을 진행했는데 이 때 발생하는 차이점이 몇가지 있어서 그에 대한 내용도 정리했다. 먼저 Node.js가 설치된 환경에서 다음을 추가적으로 설치했다. 명령어는 npm add 이다. 그러면 package.json 파일에 다음과 같이 추가된다. 참고로 개발 시 서버 연결을 간단하게 하기 위해 package.json파일에 scripts를 추가했는데 yarn이 아닌 npm으로 여는 방법은 npm start-script 이다. 여기서는 설명을.. 2019. 10. 8. [javascript] 자바스크립트 Drag&Drop 구현하기 서론Html 드래그 앤 드롭 api는 돔 이벤트 모델에서 정보를 가져와 정보를 업데이트 하는 방식으로 이루어진다. 드래그 앤 드롭을 구현하는데는 여러 방법이 있는데 드래그 된 아이템의 CSS 스타일을 업데이트 할 수도 있고 아니면 드래그 할 아이템을 복사해서 드롭하는 장소에 붙여넣기 할 수도 있다.구현먼저 html을 통해 드래그 할 요소와 드롭할 요소를 만들자. draggable='true'를 추가하여 요소를 드래그 가능하게 만들 수 있다. 처음 알았음 태그 중에 디폴트로 draggable한 요소가 몇가지 있는데 는 가본적으로 드래그 가능하고, 은 드래그 불가능하다. drag dropzone 드래그 앤 드롭 이벤트 핸들러는 최소 세가지 요소로 구성된다. (전부 함수로 지정된다!!)ondragstart :.. 2019. 10. 6. [Javascript] 자주 사용하는 정규표현식과 공부 사이트 서론자바스크립트를 연습하다가 발견한 점. python에서 replace()를 사용하면 문자열 전체에서 해당하는 문자가 바뀌는데 자바스크립트는 가장 처음 나오는 문자 하나만 바뀌었다.a = "this text is for test" print(a.replace("t", "r")) #rhis rexr is for restlet a = "this text is for text"; console.log(a.replace("t", "r")); //rhis text is for text이 문제를 해결하기 위해선 정규표현식을 사용해 console.log(a.replace(/t/g, "r"));이런 식으로 표현해야 했는데, 파이썬의 편리함을 느끼는 한 편, JS로 데이터 처리를 잘 하기 위해서 정규 표현식을 제대로 .. 2019. 9. 21. [Javascript] ES6, let vs const, 호이스팅과 객체 리터럴, 디스트럭쳐링 기존 자바스크립트의 특징 함수 레벨 스코프 함수의 코드 블록만을 스코프로 인정하기 때문에 함수 외부에서 생성한 변수는 모두 전역 변수로 취급한다. 변수 호이스팅 변수를 선언하기 이전에 참조 가능하다. 위와 같은 특징은 변수의 유효 범위가 너무 커지기 때문에 에러의 발생 가능성을 높인다. 대부분의 프로그래밍 언어는 블록 레벨 스코프(if문, for문을 포함한 모든 코드 블록을 포함해 그 안에 작성된 모든 변수는 지역 변수로 생각된다. ) 인 반면 자바스크립트는 함수 레벨 스코프이기 때문에 함수 내에서 선언된 변수만 지역 변수에 해당한다. var example = 123; console.log(example); { var example = 456; } console.log(example); 위 코드를 실행시.. 2019. 9. 20. 이전 1 ··· 4 5 6 7 8 9 다음