SW개발환경의 이해
1. 웹(Web)과 어플리케이션(Application)
1) PC환경 웹(Web)
- 정의 : PC를 통해서 텍스트 뉴스나 동영상 등 콘텐츠를 접하게 되는 통로.
- 예시 : naver.com
2) 모바일 웹(Web)
- 정의 : PC용 웹사이트를 모바일 스크린 크기에 맞춰 줄여 놓은 것.
- 예시 : m.naver.com
3) 반응형 웹(Web) = pc환경+모바일 웹
- 정의 : 동작하는 기기의 화면과 해상도에 맞춰 최적화된 화면을 변화.
- 단점 : 하나의 화면에 많은 컨텐츠를 표현해야 할 떄 적합하지 않음. 작은 규모의 사이트를 만들때 효율적.
- 예시 : 네이버 같은 대형 사이트는 개발이 복잡하고 한번에 읽어야 하는 컨텐츠의 양이 많아 로딩 속도가 느려진다.
4) native어플(앱)
- 정의 : Android 또는 iOS같은 어떤 구체적인 플랫폼을 위해 만들어진 응용 프로그램.
- Android 앱 개발 : Kotlin 또는 Java로 개발 가능.
- IOS앱 개발 : Swift 또는 Objective C로 개발 가능.
- 예시 : 계산기, 노트 등 폰에 기본적으로 내장되어있는 앱들, 대부분의 게임
- 장점 : 사용자에게 가장 빠르고 안정적이며 반응이 빠른 환경을 제공. 다양한 네이티브 기능을 쉽게 활용(ex:마이크,GPS)
- 단점 : 네이티브앱은 Android와 iOS의 호환이 되지 않기 때문에 별도로 제작.(더 많은 비용과 빌드 시간)
5) Hybrid웹앱=모바일웹+naive어플
- 정의 : 네이티브 앱과 웹 앱의 기능이 결합된 형태.
- 주요 사용되는 개발 언어 : JavaScript, HTML, CSS
- 예시 : 인스타그램, Gmail, 금융기관 앱 등
- 장점 : 하나의 앱을 빌드하고 약간 조정하여 두 플랫폼에서 모두 작동(시간과 돈 절약), 손쉬운 확장(네이티브 기능 엑세스 가능)
- 단점 : 네이티브 앱에 비하여 떨어지는 성능의 문제. 각 플랫폼에서 적절하게 실행되도록 하려면 상당한 노력이 필요(총비용이 많이 들 수 있음)
7) Web서버
- 정의 : HTTP 또는 HTTPS를 통해 웹 브라우저에서 요청하는 HTML 문서나 오브젝트(이미지 파일 등)을 전송해주는 서비스 프로그램.
- 종류 : Apache WEB Server, Nginx WEB Server, IIS WEB Server 등
8) Web 어플리케이션
- 정의 : 사용자의 웹 브라우저에서 실행되는 소프트웨어. 비즈니스는 원격으로 정보를 교환하고 서비스를 제공. 웹 애플리케이션을 사용해 편리하고 안전하게 고객과 연결.
- 종류 : apache tomcat, JEUS, WebLogic, IIS, JBOSS 등
2. 개발환경 구성
NO | OS | DBMS | WAS | S.L(back End) | C.L(front End) |
1 | Windows | Oracle | apache-tomcat | Java | 공통 |
2 | Windows | My-sql | apache-tomcat | Java | 공통 |
OS(운영체제)는 Windows, DBMS(데이터베이스)는 Oracle, WAS(웹 애플리케이션 서버)는 apache-tomcat,
Server 측 언어(back End:화면구성)는 java, Client 측 언어(front End:화면)는 html, css, javascript, jquery 등으로 웹 응용 프로그램 개발환경이 구성되어 있다.
3. 웹 동작 원리
1) 프론트엔드(Front-End)
- 정의 : 사용자가 볼 수 있는 화면. 사용자 인터페이스(User Interface:UI).
- 사용하는 언어 : HTML(뼈대), CSS(장식), JavaScript(동작구현가능) 등
2) 백엔드(Back-End)
- 정의 : 사용자가 보지 못하는 영역인 서버나 데이터베이스를 관리하는 기술.
- 사용하는 언어 : Java(유지보수용이), PHP(쉬운접근성), Ruby(인간중심적언어) 등
4. DBMS(Database Management System)
1) DBMS 정의
- 데이터베이스에 적재된 데이터 작업을 수행할 뿐만 아니라 데이터베이스를 보호하고 보안을 제공한다. 데이터베이스 관리 시스템의 기능은 크게 구성(정의), 조작, 제어 기능으로 나눌 수 있다.
2) DBMS 순위
- https://db-engines.com/en/ranking/relational+dbms
※참고링크
1. pc웹과 모바일웹:
https://brunch.co.kr/@storypop/134
2. 네이티브앱과 하이브리드앱:
https://velog.io/@openhub/%EB%84%A4%EC%9D%B4%ED%8B%B0%EB%B8%8C-%EC%95%B1Native-App-vs-%ED%95%98%EC%9D%B4%EB%B8%8C%EB%A6%AC%EB%93%9C-%EC%95%B1Hybrid-App-vs-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%A0%88%EC%8B%9C%EB%B8%8C-%EC%9B%B9-%EC%95%B1PWA-%EC%A0%95%EC%9D%98%EC%99%80-%EC%9E%A5%EB%8B%A8%EC%A0%90
3. 웹서버:
https://server-talk.tistory.com/296
4. 웹 애플리케이션:
https://studium-anywhere.tistory.com/19
5. 웹 동작의 원리:
'수업 > 수업정리' 카테고리의 다른 글
2024-02-21-오후:UI의 특징 (0) | 2024.02.21 |
---|---|
2024-02-21-오전:Eclipse첫실습 (0) | 2024.02.21 |
2024-02-20-오후:절대경로 지정하기 (0) | 2024.02.20 |
2024-02-20-오전:Eclipse시작하기 (0) | 2024.02.20 |
2024-02-19-오전:기본설정 (0) | 2024.02.19 |