<img class="size-full wp-image-17176 aligncenter" src="https://www.wishket.com/media/newscenter/466/01_페북-_-뉴센_복사본-1.png" alt="" /> 안녕하세요, IT 아웃소싱 플랫폼 위시켓입니다. <a href="https://www.wishket.com/?referer_type=31">위시켓</a>은 자신의 아이디어를 앱이나 웹으로 구현하고 싶어 하시는 클라이언트님(의뢰자)과 IT 전문가 파트너님(기획자/디자이너/개발자)을 매칭해드리는 플랫폼입니다. 프로젝트 의뢰 시, 위시켓 매니저도 중간에서 원활한 커뮤니케이션과 계약 진행을 도와드리기 위해 클라이언트님과 파트너님의 미팅에 함께 참석하고 있는데요. 미팅이 끝난 뒤 클라이언트님들이 이렇게 말씀하실 때가 있습니다. <blockquote><br><span style="font-family: Arial, Tahoma, Verdana, sans-serif; font-size: 14px; font-style: normal; font-weight: normal;">저어, 매니저님 사실은 미팅 내내 무슨 말인지 하나도 못 알아들었어요.</span><p style="text-align: left;"><span style="font-family: Arial, Tahoma, Verdana, sans-serif; font-size: 14px; font-style: normal; font-weight: normal;">제가 개발 쪽은 영 모르거든요.. 하하.</span></p><br></blockquote> <p style="text-align: left;">그래서 위시켓이 준비했습니다!</p><div class="compos_section editor_view" data-compo="html"><ul> <li>앱/웹 서비스 창업을 준비 중이다.</li> <li>IT를 하나도 모르는데, IT 프로젝트를 맡게 돼 당혹스럽다.</li> <li>IT 관련 지식을 쌓아두고 싶다.</li> </ul> 여기에 하나라도 해당하시는 분들은 이번 글을 꼭 읽어보세요. :) </div> <br> <h2><strong class="tit_g">앱/웹 외주 시 꼭 알아둬야 할 기본 IT용어 - 웹</strong></h2><blockquote><br><b>클라이언트/서버(프론트엔드/백엔드)가 뭐죠?</b><br> </blockquote><br> 모든 웹사이트나 앱은 두 가지 파트로 구성되어 있습니다. 바로 <strong>클라이언트와 서버</strong>입니다. (완전한 동의어는 아니지만) <strong>프론트엔드(front-end)와 백엔드(back-end)</strong>라고도 합니다. <b>프론트엔드는 </b>우리가 웹 사이트나 앱에서 볼 수 있는 화면들입니다. 아래 위시켓 랜딩페이지를 볼까요? 위시켓 로고, 이미지, 텍스트, 버튼 등 <u>화면에 보이는 것</u>들이 바로 <b>프론트엔드</b>인 거죠. <img class="size-full wp-image-17154 aligncenter" src="https://www.wishket.com/media/newscenter/466/1.png" alt="IT용어_위시켓랜딩" width="1456" height="734" /> 이때 여러분이 랜딩페이지에서 [무료로 프로젝트 등록하기]를 클릭해 의뢰하는 프로젝트 내용을 작성하고 [제출하기] 버튼을 누르면 <u>작성한 데이터를 받아 저장하는 작업</u>이 <b>백엔드</b>에서 이루어집니다. <br> 프론트엔드, 백엔드에 대해 조금 더 자세히 알아볼까요? <h3><strong class="tit_g">1. 프론트엔드(HTML, CSS, JavaScript)</strong></h3><b>웹 프론트엔드</b>는 <u>HTML, CSS, JavaScript</u>(자바스크립트)로 구성됩니다. <img class="alignnone wp-image-17155 size-full" src="https://www.wishket.com/media/newscenter/466/2.jpg" alt="IT용어_프론트엔드" width="1024" height="427" /> <h4><mark>HTML</mark></h4>여러분이 보는 웹사이트들의 배치/구성은 HTML을 사용해 만들어집니다. HTML은 수많은 태그(tag)들로 이루어진 마크업 언어(markup language)입니다. <br> <h4><mark>CSS</mark></h4>CSS는 HTML로 뼈대만 만들어둔 배치/구성(레이아웃)을 좀 더 예쁘게 만들기 위해서 사용하는 것이라고 생각하시면 됩니다. CSS를 사용해 색상, 사이즈, 배경, 음영 등을 활용해서 콘텐츠를 다양하게 꾸밀 수 있습니다. CSS 작업 시 가장 많이 활용되는 프레임워크로는 부트스트랩(Bootstrap)이 있습니다. <br> <h4><mark>JavaScript</mark></h4>JavaScript(자바스크립트)는 프론트엔드에서 쓰이는 개발 언어입니다. 자바스크립트는 웹 사이트의 동적인 부분을 담당하고 있는데요. 그 전에 동적인 부분이 뭐지?라고 생각하실 수 있겠네요. 위시켓 사이트 랜딩페이지를 예로 들면, 랜딩페이지 내 숫자들<em>(아래 이미지를 봐주세요)</em>이 실시간으로 카운팅 되는 것을 '동적 요소'라고 할 수 있습니다. <p style="text-align: center;"><a href="https://www.wishket.com/?referer_type=31"><img class="size-full wp-image-17163 aligncenter" src="https://www.wishket.com/media/newscenter/466/3.png" alt="IT용어_자바스크립트" width="1405" height="222" /></a><em>(위 이미지를 클릭하면 랜딩페이지에서 숫자가 쫘르르륵! 바뀌는 모습을 볼 수 있습니다.)</em></p><p style="text-align: left;">이처럼 다양한 움직임, 애니메이션 효과, 유효성 검증, 비즈니스에 필요한 로직 등을 자바스크립트로 구현할 수 있습니다.</p> 하지만, 자바스크립트의 동적 요소들은 웹사이트에 방문하는 유저들의 PC나 크롬과 같은 브라우저에서 실행되기 때문에 <u>유저의 설정이나 브라우저 환경의 영향을 받습니다.</u> 프로그래밍을 해도 모든 환경에서 동일하게 실행되지 않을 수도 있다는 거죠. 또한 자바스크립트 코드는 누구나 볼 수 있기 때문에, 비즈니스 로직을 프론트엔드에 구현하는 것은 권장하지 않습니다. 자바스크립트도 다양한 라이브러리나 프레임워크가 있는데요. 그중, 제이쿼리(jQuery)와 앵귤러제이에스(AngularJS)가 가장 많이 쓰이고 있습니다. <br> 이제 백엔드로 넘어가겠습니다. <h3><strong class="tit_g">2. 백엔드(서버/서버 개발 언어/DB)</strong></h3><b>백엔드</b>는 우리가 볼 수 없는 영역으로, <b>서버</b>에서 실행됩니다. <h4><mark>서버</mark></h4>서버는 백엔드의 프로세스를 처리하고, 프론트엔드에서 넘어온 데이터를 저장하는 공간입니다. 여러분이 구현하고자 하는 웹/앱 서비스를 운영하기 위해서는 이 서버라는 공간이 꼭 필요합니다. 물론, 여러분의 PC를 서버로 만들어 사용할 수도 있지만 여러 가지 한계가 있기 때문에 대부분 '호스팅'을 활용하고 있습니다. <a href="http://blog.wishket.com/%ED%98%B8%EC%8A%A4%ED%8C%85%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C-%EA%B7%B8%EB%A6%B0%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8/?referer_type=31" target="_blank" rel="noopener noreferrer">*여기서 호스팅에 대해 더욱 쉽게 알려드릴게요!</a> <br> <h4><mark>서버 개발 언어</mark></h4>백엔드에서는 프론트엔드에서 넘어오는 데이터를 처리하기 위한 프로그래밍이 필요합니다. 이 작업을 위해 서버에서 사용하는 개발 언어들이 있는데요. 대표적인 개발 언어(서버사이드 스크립트 언어)로는 PHP, 파이썬(Python), 노드(Node.js), 루비(Ruby) 등이 있습니다. 앱/웹 서비스의 모든 비즈니스 로직은 서버 쪽 언어를 통해 구현되고 있지요. 백엔드에서 개발된 코드들은 전부 '서버'에 위치하고 있기 때문에 훨씬 안전합니다. <br> <h4><mark>DB</mark></h4>프론트엔드에서 넘어온 '회원가입 정보'(데이터)를 이제는 어딘가에 저장해야겠죠? 데이터를 저장하는 장소를 데이터베이스(DB, DataBase)라고 부릅니다. 데이터베이스를 관리하는 시스템도 있는데요. 데이터베이스 관리 시스템의 대표적인 예로는 마이에스큐엘(MySQl), 몽고디비(MongoDB) 등이 있습니다. *SQL이 뭐지? 데이터베이스 관리 시스템을 찾아보면 PostgreSQL, MySQL처럼 이름에 'SQL'이라는 단어가 들어가 있는 것을 보실 수 있는데요. 데이터베이스에 데이터를 만들고, 찾고, 수정하고, 지우는 것에 사용되는 언어를 SQL이라고 부릅니다. <img class="size-full wp-image-15452 aligncenter" src="https://www.wishket.com/media/newscenter/368/%EA%B5%AC%EB%B6%84.PNG" alt="" width="142" height="64" /> 지금까지 웹과 관련된 IT 용어들을 알아보았는데요. 내용이 많이 어렵지는 않으셨나요? 이번 글을 통해 클라이언트/서버의 개념과 '웹' 관련 용어로 기초를 다지셨으니, 다음 글에서는 '모바일(앱)' 쪽에서 많이 사용되는 IT 용어들을 소개드리도록 하겠습니다. <a href="https://www.wishket.com/?referer_type=31"><img class="size-full wp-image-17166 aligncenter" src="https://www.wishket.com/media/newscenter/466/4.png" alt="" width="580" height="300" /></a> <br>