본문 바로가기
  • 저희는 평생 개발할 운명이걸랑요

분류 전체보기88

[SOAP API VS REST API] API API는 어떤 서버의 특정한 부분에 접속해서 그 안에 있는 데이터와 서비스를 이용할 수 있게 해주는 소프트웨어 도구이다. 두 개의 소프트웨어가 서로 통신을 주고받을 수 있으며,이용해서 하는 모든 행동들의 기반을 이루고 있다고 할 수 있습니다. REST API란? REST(Representational State Transfer)는 네트워크를 통해서 컴퓨터들끼리 통신할 수 있게 해주는 아키텍처 스타일이다. REST API는 인터넷 식별자(URI)와 HTTP 프로토콜을 기반으로 한다. REST 방식의 API라면, 클라이언트-서버 모델로 구축되었다는 것을 의미하며, 정보의 페이로드(실제 전달하려는 내용)가 두 지점 사이를 왕복하게 된다. REST는 웹에 최적화되어 있고, 데이터 포맷이 JSON이기 때문.. 2021. 6. 6.
[ORM(Object Relational Mapping)] ORM(Object Relational Mapping) 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것 객체 지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용하기 때문에 모델 간에 불일치가 존재한다. ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다 ORM의 장 단점 장점 객체 지향적인 코드로 인해 더 직관적이고 비즈니스 로직에 더 집중할 수 있게 도와준다. 재사용 및 유지보수의 편리성이 증가한다. DBMS에 대한 종속성이 줄어든다. 단점 프로젝트의 복잡성이 커질경우 난이도 또한 올라갈 수 있다. 잘못 구현된 경우에 속도 저하 및 심각할 경우 일관성이 무너지는 문제점이 생길 수 있다. 프로시저가 많은 시스템에선 ORM의 객체 .. 2021. 6. 4.
[SQL Injection] SQL Injection 코드 인젝션의 한 기법으로 클라이언트의 입력값을 조작하여 서버의 데이터베이스를 공격할 수 있는 공격방식을 말한다. INSERT INTO students (이름) VALUES ('학생 이름'); 저 학교에서 입력한 명령은 다음과 같을 것이다. INSERT INTO students (이름) VALUES ('Robert'); DROP TABLE students; --'); 첫 번째 줄에서는 Robert라는 학생이 입력되었지만, 두 번째 줄에서 학생들의 데이터가 있는 테이블을 제거한다. 그리고 세 번째에서는 뒤에 오는 내용을 모두 주석 처리한다. 결과적으로 ‘모든 학생 기록을 삭제한다.’라는 뜻의 명령문이 완성된다. 논리적 오류에 의한 공격 SELECT user FROM user_tab.. 2021. 6. 4.
[Throttle, Debounce & Difference] 웹/앱 사용자가 스크롤(scroll wheel), 트랙패드, 스크롤 막대를 드래깅 해을때, 이 행위로 인해 수많은 스크롤 이벤트가 발생한다. See the Pen Scroll events counter by jaeheekim (@jaehee) on CodePen. 과도한 이벤트 횟수의 실행으로 무거운 계산 및 기타 DOM 조작과 같은 작업을 수없이 많이 수행하기때문에 성능 문제가 발생한다. 이를 막기 위해 등장한 방법이 Throttle, Debounce 이다. 이벤트 핸들러가 많은 연산 을 수행 할 때 (이벤트 핸들러의 과도한 횟수가 발생하는 것)하는 것을 제어할 수 있는 기술이다. 사용 사례 👆 사용자가 창 크기 조정을 멈출 때까지 기다렸다가 resizing event 사용하기 위해 👆 사용자가 키보드.. 2021. 6. 3.