[기초] 언어의 종류, 기본 어휘

Coastby·2022년 8월 7일
0

○ 어떤 프로그래밍 언어가 있나요

C : 고수준 언어 중에서는 기계에 상대적으로 가까워서 기계를 구체적을 통제할 수 있는 언어 . 배우는게 어렵지는 않지만 사용할 수록 난이도가 올라간다. 사용의 효율성보다는 기계의 효율성을 높일 수 있음

C++ : 하드웨어가 중요하면서도 고급기술이 필요한 게임이나 그래픽 분야에 사용 됨

C# : 마이크로 소프트에서 개발되었으며, 윈도우 프로그램에 사용된다.

자바 : 코드를 한번짜면 가능한 대부분의 플랫폼, 하드웨어에서 구현될 수 있게 만들어져 있음.

파이썬 : 자바보다 문법이 간결. 여러 플랫폼에서 기능을 수행할 수 있음. 적은 분량의 코드로 빠르게 코딩할 수 있음. 웹, IoT, 핀테크, 머신러닝 등에서 사용된다. 실행속도가 느린 단점이 있다.

PHP : 개인 웹사이트에 많이 쓰임. 쉽고 간편하게 가벼운 사이트를 만들 수 있지만, 사이트가 커지고 보안 로직이 복잡해질 수록 언어의 한계가 있다. 기업레벨에서는 사용하지 않음.

Swift : 애플에서 만든 언어. 파이썬과 같이 간편한 언어.

kotlin : 안드로이드. 자바와 비슷.

자바스크립트 : 브라우저에서 돌아가는 언어. 원래는 간단한 작업만 하는 언어로 한계가 명확했으나 많이 개선이되고 , 백엔드 언어인 node.js가 만들어지면서 서버, pc, 모바일어플에서도 사용됨.

○ 개발자와 대화하기

서버

  1. 제공자 역할을 하는 컴퓨터
  2. 컴퓨터를 제공자로 만드는 프로그램

Web standard

현대 웹브라우저들은 웹표준에 따라 만들면 일관성있는 결과가 나옴. 인터넷 익스플로러가 웹 표준에 합류되지 않음.

Compatibility

모든 종류의 브라우저에서 일관성있게 보이게 하는 것. 호환성.

모바일앱 (네이티브앱, 웹앱)

네이티브앱은 OS 마다 따로 제작한 앱. 다른 환경에서 돌아가는 프로그램이기 때문에 사용되는 언어, 기술이 다름. 안드로이드, ios 개발자가 따로 있음. 환경에 최적화되어 있기 때문에 파워풀한 기능을 구현할 수 있다. 업데이트하기 위해서는 앱스토어에서 어플을 다시 다운받아야 한다. 그리고 스토어의 검토, 배포 시간이 있기 때문에 안드로이드와 ios에서 출시일자를 맞출 수 없다.

Flutter, react : 모든 환경에서 돌아가는 언어가 나왔지만 아직 기능적으로 제약이 있음.

웹앱 : 틀은 네이티브앱으로 만들고 세부적으로는 웹사이트 (html, css, js) 으로 돌아가게 만듬. 웹만 업데이트하기 때문에 개발, 보안 측면에서 장점이 있음. 부드러운 화면이나 강력한 기능 (게임, 영상편집앱)은 어려움.

PC, 모바일에 모두 맞게 웹을 개발해야한다.

  1. 적응형 웹 : 화면 크기를 인식하여 www…/m…PC 따로, 모바일 따로 만들어서 컨텐츠를 효율적으로 이용할 수 있게 한다.
  2. 반응형 웹 : 화면 크기에 따라 배치가 달라진다. 내용들이 복잡하지 않다면 효율적임

쿠키, 세션, 캐시

쿠키 : 사이트를 만든 개발자가 특정 정보가 사용자의 브라우저에 저장되게 한다. 사용자가 내용을 보거나 조작할 수 있고, 다른 사람이 볼 수도 있다. 보안, 결제 관련 정보들은 쿠키로 저장하면 안 된다.

세션 : 서버에 정보가 저장되게 한다. 예를 들어, 어떤 사람이 로그인이 되어있는 지를 보관해놓음.

로그인을 한 번 하면 같은 서비스의 다른 페이지를 방문할 때도 로그인을 유지할 수 있어야한다. 이를 위해 서버에서 세션키를 발급하여 쿠키로 저장을 해놓으면 다른 페이지를 방문할 때 이를 같이 보내면 로그인된 사용자임을 인증할 수 있다.

캐시 : 이미지나 용량이 큰 파일을 한 번 저장을 하고 다시 안 받아와도 되게 해줌. 통신 데이터를 아끼기 위해 재사용하는 것. 어디에 저장이 되는 지는 캐시종류마다 다르다.

API

공공 API : 국가나 기관에서 프로그래밍을 할 때 사용할 수 있도록 축적된 정보를 개방해 놓은 것.

프론트엔드에서 새로운 정보를 요청하고 변경할 때 백엔드의 API를 통해 서버와 정보를 주고 받는다.

debug

오류를 찾아내는 작업.

스크립트 언어 : 자바스크립트나 파이썬은 컴퓨터가 번역해서 그때그때 실행을 한다.

컴파일 언어 : 자바나 c계열처럼 무거운 언어들은 출시하기 전에 기계어로 번역해놓는다.

빌드 : 컴파일 언어하면 컴파일도 포함된다. . 개발자의 컴퓨터에서 코드로 만들어진 상태에서 서버에 올라가 실행될 수 있는 형태 최종 포장된 상태. 보통 자동화되어 돌아가는 작업. 배포되기 전에 마지막 단계.

Hosting

서버로 사용될 컴퓨터를 임대해주는 서비스. 원격으로 컴퓨터에 접속을 하여서 프로그래밍.

profile
훈이야 화이팅

0개의 댓글