오잉 피자먹고 낮잠밖에 안잤는데 벌써 7시라구요!??! 저녁 시간은 풀 공부시간으로 보내야겠담🤣
오늘은 가볍게 소프트웨어에 대해 코드잇으로 기초강의를 듣고 파이썬공부해야지!
우째 공부하면 할수록 공부해야할게 많아지는 것 같지만 뭔가 걱정되면서도 설레는건 변탠가.... 핡
내 머리가 스펀지처럼 쫘악~~ 빨아들이고 이해하면 좋을텐데!
컴파일러와 인터프리터의 차이
운영체제에 대한 기본적인 이해
플랫폼의 파편화와 크로스 플랫폼
네이티브 애플리케이션과 웹 애플리케이션
1. 컴파일러(Compiler)와 인터프리터(Interpreter)
구분 | 컴파일러 | 인터프리터 |
---|---|---|
특징 | 코드 수정시 컴파일을 계속해서 해야함 | 코드 수정하고 즉시 실행 가능 |
속도 | 빠름 | 느림 |
보안 | 유출가능성 적음 | 유출가능성 있음 |
파일용량 | 큼 | 작음 |
프로그래밍 언어 | 저수준 언어(C, C++등) | 고수준 언어(Python, Ruby등) |
2. 플래폼 파편화
1) 플랫폼: 프로그램이 실행되는 하드웨어, 소프트웨어 환경
(어플리케이션은 운영체제 위에서 실행되니 : 운영체제 = 어플리케이션의 플랫폼,
운영체제는 하드웨어 위에서 실행되니 : 하드웨어 = 운영체제의 플랫폼)
2) 플랫폼 의존성: 프로그램은 각 플랫폼에 맞게 제작되어야 실행가능하기 때문에 플랫폼에 대한 의존성이 높아짐 -> 플랫폼 파편화 유발
3) 크로스 플랫폼: OS, CPU등의 상관없이 동일하게 실행할 수 있는 환경 -> 플랫폼 파편화 해결
Java
이고 이를 이용한 가상의 컴퓨터가 JVM
, 때문에 Java
는 다양한 플랫폼에 이식성이 좋고 범용적 사용이 가능하여 다양한 산업분야에 활용 됨3. 네이티브 애플리케이션과 웹 애플리케이션
1) 웹 애플리케이션: 웹을 활용해 애플리케이션처럼 동작
2) 네이티브 애플리케이션: 기기의 OS에서 바로 실행할 수 있는 애플리케이션
3) 웹, 앱 어플리케이션 패턴의 종류
싱글페이지(Single-page, SPA, 스파): 서버로부터 완전한 새로운 페이지를 불러오지 않고 현재의 페이지를 동적으로 다시 작성함으로써 사용자와 소통하는 웹 애플리케이션이나 웹사이트
하이브리드(Hybrid): 네이티브 앱처럽 하드웨어의 기능을 사용하지만 배포 후에도 웹 연결시 수정과 보완이 가능
프로그레시브(Progressive, PWA): 네이티브 앱과 웹의 단점 개선
*참고: 위키백과
https://post.naver.com/viewer/postView.nhn?volumeNo=6642508&memberNo=33802574