본문 바로가기

분류 전체보기141

노드 Node.js 서버란? 세팅 방법 노드 서버의 특징 싱글 스레드로 멀티 스레드 방식보다 컴퓨터 자원을 적게 사용(CPU 코어를 하나밖에 사용하지 못함) 노드 서버는 I/O 입출력이 많은 작업에 적합, 논블로킹 방식으로 하나의 스레드가 많은 수의 I/O 처리 CPU 부하가 큰 작업에는 적합하지 않음( 하나의 스레드이기 때문) 싱글 스레드 방식 프로그래밍으로 서버 프로그래밍에 익숙하지 않은 사람도 쉽게 배울 수 있음 But, 에러 처리가 제대로 안되면 서버 전체가 멈추게 된다. 웹 서버가 내장되어 있어서 쉬움( 단, 서버 규모가 커지면 결국, nginx 등의 웹 서버를 노드 서버와 연결) 자바스크립트를 사용하여 하나의 언어로 서버까지 프로그래밍 가능 노드 웹서버 express 외부 모듈 설치 1. 노드로 서버를 만들기 위해서는 cmd 창에서.. 2019. 5. 11.
노드 라이브러리 패키지 관리자 npm npm이란? NPM은 노드 패키지 매니저 / Node Package Manager 자바스크립트 프로그래밍 언어를 위한 패키지 관리자 외부모듈을 사용할 수 있도록 해주는 것, maven과 비슷한 개념 npm을 활용 하면 자바스크립트 관련 라이브러리를 다운로드 받아서 사용 할 수 있음 Node.js가 기본적으로 갖고 있지 않고 개인 혹인 단체가 만들어 배포하는 모듈 npm 공식 사이트 공식 사이트에 들어가면 설치하고자 하는 모듈에 대한 정보를 찾아서 볼 수 있다. https://www.npmjs.com/ npm | the ❤ of the modern development community Bring the best of open source to your company npm is the tool used .. 2019. 5. 11.
Node.js란 무엇인가요? Node.js 정의 NodeJS는 구글 크롬의 자바스크립트 엔진(V8 Engine)에 기반해 만들어진 서버 사이드 플랫폼 자바스크립트 런타임(특정 언어로 만든 프로그램을 실행할 수 있는 환경) Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버사이드) 개발에 사용되는 소프트웨어 플랫폼 Node.js 패키지 생태계인 npm은 방대한 오픈 소스 라이브러리 생태계 노드는 자바스크립트 애플리케이션이 서버로서 기능하기 위한 도구를 제공하여 서버로의 역할도 쉽게 할 수 있다. 기존에 Java-Spring-tomcat으로 프로그램을 개발해 본 사람이 Node.js를 배우면, 단 2개의 페이지로 서버까지 구현이 가능한 것이 놀라울 것이다. 자바스크립트가 기본 언어 이다 보니, 기존에 서버 단이 아닌 프론트 단.. 2019. 5. 11.
Spring 스프링 특징 : DI / POJO / AOP 스프링의 특징 어플리케이션 프레임워크 경량(Lightweight) 컨테이너 의존성 주입 Dependency Injection(DI)을 통한 객체 간의 관계 구성 Aspect Oriented Programming(AOP) 지원 POJO 기반의 구성 편리한 MVC 구조 WAS에 종속적이지 않은 개발 환경 ㅇ POJO 기반의 구성 내부에는 객체 간의 관계를 구성할 수 있는 특징을 가지고 있음 스프링은 다른 프레임워크들과 달리 이 관계 구성 시 별도의 API 등을 사용하지 않는 POJO(Plain Old Java Object)의 구성만으로 가능하도록 제작되어 있음 일반적인 JAVA 코드를 이용해서 객체를 구성하는 방식을 그대로 스프링에서 사용 가능 그렇기 때문에 코드를 개발할 때 개발자가 특정한 라이브러리나 컨.. 2019. 5. 10.
Spring STS, Maven 메이븐이란? STS는 기본적으로 maven을 내장하고 있다. 프로젝트를 생성하면 바로 maven을 이용해서 스프링 관련 라이브러리가 다운로드 된다. maven하면, pom.xml을 떠올리고, 프로젝트에 필요한 라이브러리를 다운받는 것이라고만 생각할 수있지만 maven은 엄밀히 말해서 프로젝트 관리 도구이다. maven이란? Java 기반 프로젝트의 라이프사이클 관리를 위한 빌드 도구 컴파일과 빌드를 동시에 수행, 테스트를 병행하거나 서버 측 Deploy 자원을 관리할 수 있는 환경을 제공하는 것 라이브러리 관리 기능도 내포하고 있어서, settings.xml 또는 pom.xml 파일에 필요한 라리브러리만 적으면 Maven이 다운로드 하고 설치 후 경로까지 지정해 준다. settings.xml maven 관련 설정을 .. 2019. 5. 10.
스프링 Spring 프레임워크 왜 쓰는거지? 처음에 웹 프로그래밍을 배우면서 스프링 프레임워크를 배우면 꽤나 어렵다고 느껴진다. 분명 프로그램 개발을 더 쉽게 해준다고 했는데, 기존 방식에 비해 더 복잡하고 어려워 진듯한 기분이 들었다. 그래서 책이나 블로그 등을 찾으면서 정리한 내용을 올리고자 한다. 스프링 전에는 서블릿 방식으로 프로그램을 개발하였다. 그리다가 스프링이 나오게 되었고, 개발자들은 서블릿 방식이 아닌 스프링을 개발에 쓰는 경우가 많아졌다. 왜 스프링이 대세가 된 것일까? 프레임워크는 어플리케이션 개발을 쉽게 하기 위한 뼈대이다. 기본 클래스, 인터페이스 등을 제공한다. 일반적으로 개발자 각각의 능력의 차이가 큰 편이다. 그렇다 보니 구성원에 따라 프로젝트의 결과 차이가 생긴다. 이러한 것을 극복하기 위해서 프레임워크를 사용하게 된.. 2019. 5. 10.
스프링 프레임워크란? Spring framework Frame work 어플리케이션 개발을 쉽게 하기 위한 뼈대(클래스, 인터페이스 등…) 제공 고객이 수정을 요청을 할 때 리소스(시간, 비용, 인력 등)를 덜 들이기 위해 사용 프레임워크 중에 가장 많이 사용 하는 것 struts2 : 일본에서 많이 사용 spring 스프링(Spring) 엔터프라이즈 어플리케이션에서 필요로 하는 기능을 제공하는 프레임워크 JEE(Java Enterprise Edition)가 제공하는 다수의 기능을 지원하고 있기 때문에 JEE를 대체하는 프레임워크로 자리잡고 있음 핵심 기능인 DI(Dependency Injection)나 AOP(Aspect Oriented Programming)도 지원 스프링 개발 도구 eclipse STS 스프링의 특징 어플리케이션 프레임워크 경량(Li.. 2019. 5. 10.
파이썬 크롤러 : requests.get( )으로 못가져오는 사이트 간혹 requests.get으로 못 가져가게 막아 놓은 사이트가 있다. 그런 경우 크롬 개발자 도구의 network탭으로 가면 페이지 변환이 일어나거나 데이터 전송이 일어나는 경우에 네트워크에서 전송되는 파일의 목록을 확인할 수 있다. 이런 경우에 해당 내용을 보면서 데이터가 어떻게 전송되는지 확인하면 json파일로 쉽게 정보를 가져올 수도 있고, 간혹 일반 url만으로 정보가 오지 않는 경우 해당 url 뒤에 쿼리스트링으로 Request Headers에 나온 것을 객체로 만들어서 함께 전달하면 정보를 받을 수 있는 경우가 있다. 동일 사이트 : 정보 가져오지 못함 import requests import re from bs4 import BeautifulSoup url = "http://www.jols.. 2019. 5. 10.
파이썬 에러, re와 BeautifulSoup error : html.parser type Error 파이썬으로 크롤링을 하다보면 웹상의 정보를 가져 온 뒤 원하는 특정 정보를 추출하는 과정에서 에러가 발생하는 경우가 있다. 정규표현식을 하기 위한 re만 쓰거나, Beautifulsoup 뷰티풀숲만 쓰는 경우에는 발생하지 않지만, 2가지를 같이 쓰는 경우에는 에러가 발생하게 된다. 네이버 뉴스 긁어오는 크롤러 : 에러발생 import requests import re from bs4 import BeautifulSoup url="http://news.naver.com/main/main.nhn?mode=LSD&mid=shm&sid1=105" html=requests.get(url) bs_html=BeautifulSoup(html.content,"html.parser") news_list=bs_html.fi.. 2019. 5. 10.
반응형