본문 바로가기

프로그래밍/JAVASCRIPT5

클론 개발 후기.. 기본에 치중하고 싶어서 타입스크립트 만으로 카카오톡 클론을 만들어봤다. 프레임워크가 없어서 쉽지는 않았지만 node.js도 있고해서 그렇게 힘들지는 않았다. 하지만 만들고 보니 기능만 구현하는데 치중했지 코드 자체는 눈을 뜨고 보기 어려울 정도로 지저분하다는 느낌이 들었다. 일단 링크는 아래다. https://ihan12389.github.io/typeTalk Document ihan12389.github.io 문제점은 여러가지 많다. 타입스크립트의 특성은 전혀 살리지 않았다. 리덕스를 사용하지 않아 데이터의 공유가 원활하지 않다. CSS가 반응형이 아니다. 코드의 변수명이나 함수명이 직관적이지 않다. 모듈화가 잘 안이루어져 있다. 내가 느낀 문제점들은 위와 같다. 기능을 구현시킨다고 다가 아니라는 걸 .. 2021. 9. 10.
바벨(babel)이란 무엇인가? 바벨 (Babel) 웹 개발을 하다보면 바벨(babel)이라는 단어에 대해서 많이 들어보실 수 있을 겁니다. 저도 바벨을 사용해본 경험은 있지만 이게 정확히 어떤 것인지는 잘 알지 못합니다. 그래서 이번 포스팅에서는 바벨에 대해서 이야기해보려고 합니다. 요약하자면 바벨이란 건 자바스크립트 컴파일러라고 표현할 수 있습니다. 컴파일러란 인간 수준의 고언어로 작성된 프로그램을 기계어로 된 프로그램으로 출력하는 번역기입니다. 하지만 대학교 프로그래밍 기초 강의 시간에서 배우듯이 자바스크립트는 컴파일러가 아니라 인터프리터로 동작합니다. 인터프리터와 컴파일러의 차이. 혹시 기억이 나지 않으신가요? 두 녀석 모두 고레벨 언어를 기계어로 변환하는 번역기인건 맞지만 그 과정에서 차이를 보이기 때문에 따로 분류됩니다. 컴.. 2021. 8. 12.
옵저버 패턴(Observer Pattern)이란? 디자인 패턴이라는 건 소프트웨어 개발을 하면서 발생하는 다양한 이슈들을 해결하는데 도움을 주는 기술들입니다. 많은 개발자들의 경험들을 바탕으로 만들어진 증명된 기술들이죠. 개발에 난항을 겪는 사람들에게는 참조할 수 있는 솔루션이 됩니다. 이게 프레임워크, 라이브러리 같은 도구들과 다른점은 순수한 패턴... 즉, 조언자의 역할만 한다는 거겠죠. 자바스크립트에는 대표적인 디자인 패턴들이 있습니다. 싱글톤 패턴, 팩토리 패턴, Iterotor 패턴, Decorator 패턴, 프록시 패턴, Mediator 패턴, Observer 패턴 등등이요. 각 패턴들이 어떤 용도로, 어떤 솔루션을 제공해주는지는 간략하게 요약해보겠습니다. 싱글톤 패턴 : 특정 클래스의 객체를 한개만 유지하는 패턴 팩토리 패턴 : 비슷한 객체.. 2021. 8. 11.
생성자(Constructor)란?? 자바든 자바스크립트든 클래스를 다룬다면 constructor에 대해서는 꼭 들어봤을 겁니다. 저도 그렇긴하지만 공부를 게을리해서 이 constructor라는 게 뭔지를 잘 이해를 못하고 있었어요. 그러니 이번 포스팅에선 여기에 대해 제대로 이해해두려고 합니다. 공식 페이지에서는 constructor란 클래스 내에서 객체를 생성하고 초기화하기 위한 특별한 메서드라고 소개하고 있습니다. 즉, 객체의 기본 상태(state)를 설정하는 공간인 것이죠. 이건 함수와는 다른 방식으로 클래스 객체가 인자를 전달받도록 할 수 있습니다. class People { constructor(num) { this.age = num; } } let han = new Han(26); console.log(han.age); // 2.. 2021. 8. 11.