Scroll indicator done

프로그래밍 공부 (31)

  1. 노드의 모듈 2020.01.21

    노드에서 모듈이라는 개념은 노드로 개발한 애플리케이션을 이루는 기본 조각이라고 할 수 있다. 미리 만들어진 파트들을 조립해서 물건을 만드는 것처럼, 관련된 코드들을 모아서 캡슐화 해놓은 것을 모듈이라고 한다. 그리고 이런 여러가지 모듈들을 이용하면 프로젝트를 훨씬 더 수월하게 진행할 수 있다. 일반적으로 노드로 개발된 애플리케이션은 객체 지향의 개념이 아주 잘 녹아 있는 자바스크립트를 기반으로 하여, 파일과 1:1맵핑이 되는 다양한 모듈로 구성된다. 이는 노드를 개발할 때 개발자가 추가하는 모듈 뿐만 아니라 노드의 기능을 확장할 수 있도록 해주는 확장 모듈과 기본으로 제공하는 기능들에게도 해당되는 이야기다. 노드의 모듈화 개념 노드는 확장성을 위해 모듈의 구조를 이용하여 애플리케이션을 구성하도록 하고 있..

  2. Java - extends, implements, abstract 차이 2020.01.13

    상속이라는 개념을 이론적으로 분명 학습했는데, 잘 안쓰다보니(직접 만들어 쓴적은 없다는 얘기... JpaRepository 인터페이스 같은 것은 자주 사용...) 그 개념을 자꾸 잊어먹어서 implements, extends 심지어 추상 클래스 ,메서드인(명칭만 기억하지 기능은 기억도 안나는 것 같다.. 반성한다) abstract 등 한번 기회 잡아서 다시 정리해야지하며 미뤘는데, 어쩌다보니 스터디원분이 상속 얘기를 꺼내면서, 매우 진땀을 흘렸다. 민망해서 밤에 이불킥 몇 번 하다가 내 선생님인 '구글'을 찾아봤다. 마침 간단하게 잘 요약해둔 블로그가있어서, 옮겨적어본다. 참고: https://velog.io/@hkoo9329/%EC%9E%90%EB%B0%94-extends-implements-%EC%B..

  3. Node.js 란? 2019.12.27

    Node.js는 서버사이드 자바스크립트이며 구글의 자바스크립트 엔진인 V8을 기반으로 구성된 (일종의) 소프트웨어 시스템이다. 이벤트 기반으로 개발이 가능하며 Non-Blocking I/O를 지원하기 때문에 비동기식 프로그래밍이 가능하다. 이 때문에 I/O 부하가 심한 대규모 서비스를 개발하기 적합하다고 할 수 있다. (또한 자바스크립트의 표준 라이브러리(CommonJS)의 스펙을 따르고 있다) 노드의 탄생 배경 노드는 2009년 라이언 달(Ryan Dahl)이 고안해 낸 언어로 같은 해 JSConf EU 컨퍼런스에서 처음 발표돼었다. 노드가 개발된 배경과 목적은 다수의 연결을 효율적으로 관리하고 비용을 최소화할 수 있는 네트워크 소프트웨어를 개발하기 편리한 방법을 제공하기 위함이었다. 기존의 웹 애플리..

  4. RESTful API 특징과 규칙 2019.12.18

    이동욱 님의 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' 책을 차근차근 따라가면서 웹 프로젝트를 진행하고 있는 중에 괄호안의 REST 규약이라는 단어의 정의를 잘 몰랐는데 웹 과정 수업을 들으면서 언뜻? 언급돼었던 기억이 났다. 생각이 난 김에 REST(?)란 무엇인지 알아보고 가는 시간을 가지기로 했다. REST API 웹 어플리케이션에서 제공하는 모든 자원을 URI를 할당하여 활용하는 방식 GET, POST, PUT, DELETE 가 대표적이다. 생겨난 이유 하드웨어와 소프트웨어의 발전으로 인해 프레임 워크 / 라이브러리의 발전과 앱이 등장했고, 클라이언트와 서버의 분리로 생겨났습니다. 하나의 어플리케이션에서 클라이언트와 서버를 관리하던 추세에서 앱의 등장이 있었고 확장성과 안정..

  5. Java - Equals, Hashcode 메소드 2019.12.15

    Equals와Hashcode, toString 등.. 기존의 정의되어있는 메소드를 오버라이딩을 하여 사용하는 경우가 많다. Equals와 toString은 어떤 용도로 사용하는지 알고있었지만, Hashcode의 경우 IntelliJ IDE의 자동완성 기능에서 종종 보았지만, 의미와 용도를 잘 모르고 지나치는 경우가 많았다. (부끄럽지만 알아볼 생각도 안했다) Equals와 Hashcode 메소드에 대해 알아보자 ! 아래의 코드와 같이 member1객체와 member2객체를 선언하고 객체를 비교하였을 때, 결과는 어떻게 될까? 답은 당연히 false일 것이다. 그 이유는 둘은 동일 객체가 아니기 때문이다. public class Test { public static void main(String[] arg..

  6. Java - Java Code Convention (자바 코드 규약) 2019.12.04

    기대하고 갈망했던 '우아한 테크 코스 2기'에 지원했다가 보기 좋게 떨어져 버렸다. 허탈함에 한동안 유튜브만 보면서 시간을 보냈다. 대책없이 이렇게 살면 안되겠다는 생각이 드는 찰나 지인(은인)으로부터 '생활코딩' 커뮤니티에 올라온 스터디 모집공고글을 캡쳐해서 보내줬다. 내용을 보아하니 스터디를 모집하시는 분도 우테코를 지원한 나의 동지였다. 왠지모를 동질감과 좌절하지 않고 바로 행동으로 옮기는 추진력을 보면서 나 자신이 약간 한심하게 느껴졌다. 그리고 스터디에 참가하고 싶다는 메일을 바로 작성했다. 그렇게 모집된 10명의 멤버들은 우테코 없는 우테코(=홍철 없는 홍철팀)를 목표로 우테코 1기 수강생분의 도움을 받아 일단 한달간(3주 or 4주) 우테코 1기 커리큘럼을 따라 프리코스 기간을 가지기로 했다..