📝SQLite
주로 소규모 프로젝트에서 사용하는 가벼운 파일을 기반으로한 데이터베이스입니다.
보통은 SQLite로 개발을 빠르게 진행하고 실제 운영 시스템에 반영할 땐 좀 더 규모가 큰 데이터베이스를 사용 합니다.
응용프로그램이 파일을 읽어서 테이블에 CRUD따위의 작업을 한다
📝127.0.0.1과 localhost
127.0.0.1과 localhost는 현재 컴퓨터를 가리키는 아이피 주소이다.
📝ORM
데이터베이스와 객체 지향 프로그래밍 언어간의 호환되지 않는 데이터를 변환하는 프로그램 기법 객체 관계 매핑이라고도 한다.
즉, 객체 지향 프로그래밍 언어로 작성한 걸 DB에서 읽을 수 있는 걸로 매핑시켜주는 것 → DB도 객체 지향적으로 개발이 가능 ( DB쿼리문 작성 등을 해당 언어로 할 수 있게 해준다)
💗 ORM 장점
- 완벽한 객체 지향 코드로서 직관적인 이해가 쉽다 → SQL이 아닌 클래스 메서드를 통해 DB를 조작할 수 있어서 프로그래밍에 집중할 수 있게한다.
- 재사용 유지보수, 리팩토링이 용이하다 → SQL문이 아닌 프로그래밍을 통해 작성하기 때문에 용이하다
- DBMS 종속성 하락 → SQL 자동생성은 물론 객체의 자료형 타입까지 사용할 수 있기 때문에 DBMS를 교체 하는 작업에 리스크가 적고 드는 소요 시간도 줄어든다
⚠️ ORM 단점
- 모든 것을 ORM으로만 해결할 수는 없다 → 프로젝트가 복잡할수록 실수를 만들 수 있고 대형 SQL문은 속도를 위해 별도 튜닝이 필요해 SQL을 써야할 수도 있다.
📝알고리즘
문제 해결을 위한 방법들입니다.
예를 들자면 지하철역으로 가는 문제를 해결하기 위해서는 걸어가는 방법 또는 차를 타고 가는 방법 또는 버스를 타고 가는 방법 등이 있는데 이러한 것들을 알고리즘이라고 합니다.
우리들은 거기중에서 가장 효율적인방법 (고객이나 본인이 원하는 방법)을 찾아야합니다
어떤 사람은 비용 상관없이 빨리 도착하는 방법이 중요할테고 어떤 사람은 시간이 걸리더라도 비용이 적게 드는 방법을 원하니 그에 맞는 알고리즘을 찾는 게 중요합니다.
정답은 없습니다만 잘못된 방법은 있죠
📝자료구조
알고리즘을 해결하기 위해서 필요한 재료같은 거라고 생각하면 됩니다.
많이 아시는 배열, 리스트, 튜플, 컬렉션프레임워크 등이 해당됩니다.
자료를 담는 공간이라고 생각하시면 편합니다.
'[CS 지식]' 카테고리의 다른 글
[CS 지식] 유닉스, 리눅스, GNU프로젝트, GPL, 우분투, 데비안, 데스크탑버전 vs 서버버전 (0) | 2021.09.14 |
---|---|
[CS 지식] Java SE, EE, ME, JDK, JRE (0) | 2021.08.26 |
[CS 지식] 자바스크립트, Nodejs, 디버깅, 프레임워크(FrameWork), 라이브러리(Library) (0) | 2021.07.26 |
[CS 지식] URI, URL, URN, RestAPI, Restful, SOAP (0) | 2021.07.26 |
[CS 지식] 패킷, 헤더, 바디, POST방식 , GET방식, URLEncoding, Encode (0) | 2021.07.26 |