웹 개발과 앱 개발의 전체적인 맥락
8/1부로 5호점 대표이자, 마케팅팀장으로 속해있던 대리의신 본사로부터 개발팀 보조연구원으로 채용되었다.
벤쳐기업 인증 가보자고~
그러다보니 올해 3월에 처음으로 C언어를 배우며 엄청나게 달려왔는데 여름방학인 지금… 딥러닝을 배우면서 앱 개발도 공부를 시작할 수 밖에 없게되었다…
나의 바쁜 인생에 cheers ㅋㅋㅋㅋㅋ
그래서 웹 & 앱 개발쪽으로는 경험이 부족하기 때문에 전체적인 맥락을 파악하고자, 공부한 기록을 남기는 시초로써 이 글을 작성합니다.
웹 개발을 하려면?
Frontend(프론트엔드)
프론트엔드는 말 그대로 우리눈에 보이는 모든 것들이라고 생각하면 됩니다. UI, UX 등을 말하고
이 프론트 엔드를 하기위해서 필요한 구성요소는 다음과 같습니다.
- HTML
- CSS
- JavaScript
HTML
html은 웹에서 보여지는 구성요소들을 기초공사하는 느낌입니다.
그림처럼 커뮤니티 안에 글들을 넣고 아래 버튼을 넣고 싶다면 왼쪽의 파란글씨처럼 큰 골격을 짜는 느낌이라고 보시면 됩니다.
깃 페이지 초기 세팅할 때 뭔지도 모르고 만져대던 것들이 이제와서 보니까 html이였습니다.
CSS
css는 위의 html문법으로 작성한 골격을 디자인하는 방법을 말합니다.
위 사진은 현재 지금 보고 계시는 제 블로그의 skin.scss 파일입니다.
이것도 이제와서 알고보니까 지금 이 깃페이지 블로그 꾸미려고 커스터마이징했던 것들이 css 였었네요.
이렇게 색을 넣거나 하는 것처럼 디자인을 하는 것을 말합니다.
JavaScript
자바 스크립트는 많이 들어봤는데 사실 무슨 역할을 하는지 전혀 알지 못했는데, 쉽게 말해서 유저와 페이지가 상호작용이 어떤식으로 일어나야하는지 설정해주는 것들을 말합니다.
이렇게 세가지만 알면 프론트엔드는 끝이라고 보면 됩니다.
Backend(백엔드)
쉽게 말해, 눈에 안보이는 부분들입니다.
- 서버
- DB
서버는 좋아하시는 언어로 다 만들 수 있다고 합니다. 예를들면 Python, Ruby, Java, JavaScript …
서버가 하는 역할은 유저가 하는 요청을 받아주는 역할을 합니다.
만약 사용자가 글을 보고싶다고 요청하면, 서버는 데이터베이스에게 요청하고, 데이터베이스에서 서버로 글 정보를 넘겨주면 다시 서버가 유저에게 넘겨주는 방식이라고 보면 되겠습니다.
DB에는 정말 많은 종류가 있고, 일반적으로 데이터베이스에서 쓰이는 언어를 SQL이라고 합니다.
그리고 이런 백엔드에서는 반복적인 작업을 줄여주는 Framework 들이 존재하는데 대표적으로
- Rails
- Jango
- Flask
- Spring … 등이 있다고 합니다.
또 요즘에는 Serverless 같은 것들도 존재하고 또한 프론트엔드도 솔루션으로 제공해주는 카페24, 가비아 같은 것들이 많기 때문에 웹사이트를 만드는 것은 요즘 좀 수얼해졌다고 합니다.
앱 개발을 하려면?
앱 개발은 ios 냐 안드로이드냐로 크게 분류가 됩니다. 각자마다 개발하는 언어와 개발도구가 따로있습니다.
ios
ios를 개발하기위한 언어로는 크게 다음과 같습니다.
- Swift
- Objective - C
스위프트가 요즘에는 제일 많이 사용한다고 합니다.
또한 개발도구는 Xcode를 사용합니다.
Android
안드로이드를 개발하기위한 언어로는 크게 다음과 같습니다.
- Java
- Kotlin
또한 안드로이드 개발도구로는 Android Studio를 사용합니다.
이렇게 양쪽의 개발환경이 너무나 다르기 때문에 보통 한쪽에서 어플을 발표하고 반응이 좋으면 조금 투자해서 다른쪽 어플도 개발한다고 합니다.
또한 이렇게 개발환경이 다르다보니 한 언어로 양쪽 플랫폼에서 둘다 돌아가는 프레임워크가 등장합니다
- ReactNative (자바스크립트 사용)
- Flutter (Dart라는 언어 사용)
이 위의 내용까지는 모바일 앱에서의 프론트엔드에 속하고 백엔드는 또 따로 해주어야합니다.
스타트업이다보니, 물론 개발을 외주로 맡겨놓긴 했지만 저랑 대표님 둘이서 프론트엔드, 백엔드르 다 해야한다고 하네요 휴 유튜버 워니님은 4달이면 된다고 하는데 정말 그럴지?!
제가 한번 해보겠습니다 ㅋㅋㅋㅋㅋ
한번 정리를 해보니, 전체적인 맥락이 파악되고 망망대해같던 느낌이 조금이나마 걷히네요 휴,,, 만능 개발자가 되어보겠습니다! 화이팅!
Leave a comment