본문 바로가기
카테고리 없음

웹 개발 개념정리 2

by riversun1 2024. 4. 18.

 

   웹개발 개념정리   

 1. HTML, CSS, Javascript는 각각 어떤 차이가 있나요? 

: HTML은 웹 페이지의 구조를 정의하는 데 사용되며, 웹 콘텐츠를 구성하고 표시하는 데 필요한 요소를 제공합니다. 예를 들어, 텍스트, 이미지, 링크 등을 포함하는 웹 페이지의 기본적인 뼈대를 형성합니다.

 

CSS는 HTML로 정의된 요소의 스타일과 레이아웃을 지정하는 데 사용됩니다. 즉, HTML로 정의된 콘텐츠의 시각적인 디자인을 담당하며, 색상, 폰트, 크기, 간격 등을 조절하여 웹 페이지를 더욱 시각적으로 매력적으로 만듭니다.

 

JavaScript는 웹 페이지의 동적인 동작을 구현하는 데 사용됩니다. 이것은 사용자와의 상호작용, 애니메이션 효과, 데이터 처리 등을 포함합니다. JavaScript를 사용하면 웹 페이지가 보다 생동감 있고 반응적인 특성을 갖추게 됩니다.

 

이 세 가지 언어는 각각 다른 역할을 하지만, 함께 사용하여 웹 페이지를 구축하고 개발하는 데 필수적입니다. HTML은 구조를 정의하고, CSS는 디자인을 처리하며, JavaScript는 동적 기능을 제공하여 웹 페이지가 완성됩니다.

 

 2. Javascript 기초문법 5가지를 간단하게 설명해주세요. 

:  변수 선언: 변수를 선언할 때는 var, let, 또는 const를 사용합니다. var는 함수 스코프를 갖고 있고, letconst는 블록 스코프를 갖습니다. const는 상수를 선언할 때 사용되며, 재할당이 불가능합니다.

 

데이터 유형: JavaScript에는 다양한 데이터 유형이 있습니다. 기본적인 데이터 유형으로는 숫자(number), 문자열(string), 불린(boolean), 배열(array), 객체(object) 등이 있습니다.

 

조건문: 조건문은 주어진 조건에 따라 코드의 실행 흐름을 제어합니다. if, else if, else 키워드를 사용하여 조건문을 작성할 수 있습니다.

 

반복문: 반복문은 특정 작업을 반복하여 수행할 때 사용됩니다. for, while, do-while 등의 반복문이 있으며, 주어진 조건이 참일 때 반복됩니다.

 

함수 선언: 함수는 코드를 모듈화하고 재사용 가능한 단위로 분리하는 데 사용됩니다. 함수를 선언할 때는 function 키워드를 사용합니다.

 

 3. 관계형/비관계형 데이터베이스의 특성을 반영한 웹서비스 아이디어(각 1개씩, 총 2개)를 간단하게 작성해주세요. (목적, 대상, 주요 서비스) 

:

  1. 관계형 데이터베이스를 활용한 소셜 네트워크 플랫폼
    • 목적: 사용자 간의 관계를 추적하고 다양한 형태의 콘텐츠를 공유하고 소통하는 플랫폼 제공
    • 대상: 모든 사용자
    • 주요 서비스:
      • 사용자 프로필 관리 및 연결: 관계형 데이터베이스를 사용하여 사용자 정보와 관계를 저장하고 관리합니다.
      • 타임라인 및 피드 제공: 사용자의 친구 및 팔로워의 활동을 추적하고 최신 콘텐츠를 표시합니다.
      • 메시징 및 댓글: 사용자 간의 메시지 교환 및 콘텐츠에 대한 댓글 기능을 제공합니다.
  2. 비관계형 데이터베이스를 활용한 인터넷 오디오 스트리밍 서비스
    • 목적: 사용자에게 고품질의 오디오 스트리밍 서비스를 제공하고, 사용자의 취향에 맞는 음악 추천 기능을 제공합니다.
    • 대상: 음악을 즐기는 모든 사용자
    • 주요 서비스:
      • 음악 카탈로그 관리: 비관계형 데이터베이스를 사용하여 수백만 개의 음악 트랙을 저장하고 관리합니다.
      • 개인화된 음악 추천: 사용자의 듣기 기록 및 선호도를 기반으로 개인화된 음악 추천 서비스를 제공합니다.
      • 다양한 플랫폼 지원: 다양한 디바이스 및 플랫폼에서 음악 스트리밍을 지원하여 사용자들이 언제 어디서나 즐길 수 있습니다.

 

 4. 데이터베이스(Database) 

: 데이터의 집합을 저장, 관리하고 접근할 수 있는 시스템입니다. 주로 구조화된 데이터를 저장하고 조회할 수 있습니다.

 

 5. 관계형 데이터베이스(Relational Database) 

: 표 형식의 테이블로 데이터를 구성하며, 각 테이블은 서로 관계를 맺고 있습니다. 예를 들어, MySQL, PostgreSQL, Oracle 등이 있습니다.

 

 6. 쿼리(Query) 

: 데이터베이스에서 데이터를 조회, 추가, 수정, 삭제하기 위해 사용되는 명령어나 문장을 의미합니다.

 

 7. API(Application Programming Interface) 

: 소프트웨어 애플리케이션끼리 서로 통신할 수 있도록 만들어진 인터페이스를 의미합니다. 데이터베이스나 외부 서비스에 접근하기 위해 사용됩니다.

 

 8. 오픈소스(Open Source) 

: 소프트웨어의 소스 코드가 공개되어 있고 무료로 사용할 수 있는 소프트웨어를 의미합니다. 누구나 소프트웨어를 수정하고 개선할 수 있습니다.

 

 9. SDK(Software Development Kit) 

: 특정 소프트웨어나 플랫폼을 개발하기 위해 필요한 도구나 라이브러리의 집합을 제공하는 개발 키트를 의미합니다.

 

 10. IDE(Integrated Development Enviroment) 

: 소프트웨어 개발을 위한 통합 개발 환경을 의미합니다. 코드 편집기, 컴파일러, 디버거 등이 포함됩니다.

 

 11. OS 

: 컴퓨터 하드웨어와 응용 프로그램 간의 통신을 관리하고 하드웨어 자원을 관리하는 시스템 소프트웨어를 의미합니다. Windows, macOS, Linux 등이 있습니다.

 

 12. 유닉스(Unix) 

: 멀티유저 및 멀티태스킹 환경을 지원하는 운영 체제로, 대부분의 운영체제가 유닉스 기반으로 만들어졌습니다.

 

 13. 리눅스(Linux) 

: 유닉스 계열의 오픈소스 운영 체제로, 여러 가지 디바이스와 플랫폼에 사용되며, 서버 및 개발 환경에서 널리 사용됩니다.

 

 

   오늘 있었던 일   

오늘도 데일리 미션으로 웹개발 용어정리를 했다!

 

그리고 개인사정으로 여행갔다오신 팀원도 포함시켜서

리더분이 다시 Github 사용법을 알려주셨다.

그리고 추가적으로 fork 하는 법과 full request 하는 방법도 알려주셨다.

원래 기본적으로 레포를 파고 커밋하는건 알고 있었는데 다른 사람과 코드 합치는건 처음해봤다.

리더님 덕분에 upstream의 개념을 알게되었다.

 

 

   느낀점   

이번주가 벌써 다 끝나가고 내일은 미니 프로젝트 진행한 팀들의 발표가 있을 예정이다.

React 트랙은 A,B조가 있는데 A발표하는 곳과 B발표하는 곳을 분리해놓으셨다고 들었다.

그래서 A발표방, B발표방을 왔다갔다하면 방해될 수도?... 있다는 글을 봐서 딱 짚어서 들어가야겠다.

 

다음주 월요일이면 팀이 바뀔텐데

우리팀과 많은 대화를 해보지 못해서 많이 아쉬움이 남는다.

지나가다가 보면 반갑게 인사해야겠다.

 

다음주부터 Javascript를 배울 예정이다.

열심히 하자!