Putty – SSH(Secure Shell) 를 통한 command line 으로 서버 프로그램 제어
WinSCP – FTP(File Transfer Protocol) 를 통한 서버에 파일 전송 – 서버의 파일을 직접 편집 가능
vi 에디터 – 입력모드(input mode) – 명령모드(command mode) -> vi 시작 시 기본모드 – 라스트 라인모드(last-line mode 혹은 EX mode) – 내용 삽입 a : 커서 바로 다음부터 입력 A : 현재 행 끝부터 입력 i : 커서 바로 앞부터 입력 o : 커서 다음에 새로운 행이 추가되면서 입력
– 내용 삭제 x : 현재 커서 위치의 한 문자가 삭제 dw : 현재 커서 위치의 한 단어가 삭제 dd : 현재 커서 위치의 한 행이 삭제 D : 현재 커서부터 그 행의 마지막까지 삭제
– 단어나 문자 찾기 /little : 첫 little 단어를 파일 아래로 내려가면서 찾음 ?little : 첫 little 단어를 파일 위로 올라가면서 찾음 n : 이전의 찾기 명령을 동일 방향으로 실행 N : 이전의 찾기 명령을 반대 방향으로 실행
– 종료하기 wq [ filename ] : 저장하고 종료 (vi 시작 시 filename 이 없었다면 반드시 지정) :q! : 저장하지 않고 무조건 종료 :w : 지금까지 작업 내용 저장 (종료 않음) :w [ filename ] : 지정한 이름으로 저장 (종료 않음)
Unix Shell – 유닉스 쉘 (Unix Shell) = 명령줄 – 유닉스 운영 체제와 유닉스 계통 시스템을 위한 사용자 인터페이스 제공 – 문자열 입력으로 쉘 실행
UNIX 기본 명령어 $ ls -al : 파일 목록 보기 $ cd 디렉토리명 : 디렉토리 이동, ( change directory ) $ cd .. : 하위 디렉토리 이동 $ mkdir 디렉토리명 : 디렉토리 생성 $ rm 파일명 : 파일 삭제 $ rm -r 디렉터리명 : 디렉토리 안의 파일 및 디렉토리 삭제. recursive $ rm -i 파일명 : 한번 묻고 삭제. (질문없이 삭제하면 복구불가하므로 주의 요망) $ mv 파일명1 파일명2 : 파일명 변경, move $ mv 파일명 디렉터리명 : 파일을 디렉토리로 이동, move $ cp [옵션] FILE1 FILE2 : FILE1을 FILE2로 복사, overwrite 주의, -i : overwrite 의 방지
프로토콜 (protocol) – 컴퓨터나 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙 체계
패킷 (Packet) 전송 – 큰 용량의 정보를 작은 단위의 패킷으로 나누어 전송하는 방법
TCP/IP – TCP (Transmission Control Protocol) : 송신자와 수신자 사이의 전송 단계에서 패킷의 주소와 내용을 담당하는 프로토콜 – IP (Internet Protocol) : 패킷을 목적지까지 보내는 규칙을 정의한 프로토콜
웹(web) – World Wide Web (WWW) 의 줄임말 – 웹의 창시자 : 팀 버너스리 – 인터넷에 연결된 컴퓨터를 통해 사람들이 정보를 공유할 수 있는 전 세계적인 정보 공간 – 메일, 정보검색, 교육, 인트라넷 등으로 활용 – Web 을 위한 프로토콜 : HTTP
DNS: Domain Name System – 사용자가 알기 쉬운 도메인을 컴퓨터가 알기 쉬운 ip주소로 변환하는 역할
웹 접속 과정
웹의 동작 – 웹 브라우저를 통해 웹 서버에 접속하여 정보 획득 가능 – 웹 접속과 실행을 위해 프론트 엔드와 백 엔드의 역할이 필요
프론트 엔드 – 빙하의 노출된 부분 – 웹의 외관적으로 보이는 부분을 담당
백 엔드 – 빙하의 숨겨진 부분 – 웹의 데이터 베이스 관리, 서버 연동 등의 외관적으로 보이지 않는 부분을 담당
프론트 엔드와 백 엔드 – HTML : 웹 페이지의 기본 구조 담당 – CSS : 웹의 스타일을 담당 – JavaScript : 웹 페이지의 동작 담당 – Jquery, nodeJS : 자바스크립트의 기능을 활용 – Cordova : 하이브리드 앱 개발
웹앱 – 웹 브라우저를 통해서 실행되는 응용 프로그램을 총칭 – Hosted App: 온라인 상태에서 URL 접속을 통해서 실행되는 웹앱 – Packaged App: 실행에 필요한 모든 웹 문서와 파일들을 하나의 ZIP 파일로 압축하여 제공하는 웹앱
네이티브 앱(Native App) – 각각의 스마트폰 OS 환경에 따라 제작된 앱
모바일 웹(Mobile Web) – 웹 어플리케이션을 모바일 스크린 크기로 축소해 놓은 것 – 일반적인 웹 기술로 개발되고 모바일 브라우저에서 실행됨
모바일 웹앱(Mobile WebApp) – 모바일 웹보다 모바일에 더 최적화되고 네이티브 앱화됨 – 단일 페이지 모델을 사용하여 화면을 전환 – 모바일 웹보다 실행 속도가 빠름
하이브리드 앱(Hybrid App) – 네이티브 앱과 웹 앱의 장점을 가지고 단점을 보완한 앱 – 외부 형태는 네이티브 앱이지만, 실제 내부는 모바일 웹앱으로 실행 – 예시: 은행 어플리케이션