월요일에는 대체공휴일로 인해 에이블스쿨이 휴무였습니다.
화요일에는 온프레미스, 클라우드, 개발 방법론 등 IT 인프라에 관한 강의가 진행되었습니다.
수요일부터 금요일까지는 HTML, CSS, JS에 대한 강의가 이어졌습니다.
사실 이전에 백엔드를 공부하기 전부터 프론트엔드에 관심이 있어서 조금 공부한 적이 있었고, 이전 프로젝트에서는 타임리프를 사용해 관리자 페이지를 구현하면서 jQuery를 사용해 본 경험도 있어서 익숙한 내용 이었지만 다시 학습하면서 헷갈리던 개념들을 명확히 할 수 있어서 매우 유익했습니다.
더욱이 강사님이 제가 가장 좋아하는 웹 크롤링 강사님이셔서 더욱 즐거웠습니다!
첫날 IT 인프라 강의에서는 전체적인 흐름과 각 서비스들이 왜 생겼는지에 대한 내용을 다뤘습니다.
그 중에서 가장 궁금했던 부분은 온프레미스와 클라우드에 관한 것이었습니다.
특히, 왜 많은 기업들이 클라우드에 서버를 위임하지 않고 여전히 온프레미스 환경을 구성하는지에 대해 궁금했습니다.
클라우드는 유연성과 확장성이 뛰어나고, 초기 비용이 낮다는 장점이 있지만, 일부 기업들은 데이터 보안과 제어권 유지, 맞춤형 하드웨어 설정 등의 이유로 온프레미스 환경을 선호하는 경향이 있다는 점이 흥미로웠습니다.
이러한 기업들은 클라우드의 장점에도 불구하고, 민감한 데이터를 자체 데이터 센터에서 직접 관리함으로써 보안 리스크를 줄이고, 특정 비즈니스 요구에 맞게 서버 환경을 커스터마이징할 수 있는 장점을 누리기 위해 온프레미스를 선택한다고 합니다.
이처럼 온프레미스와 클라우드의 장단점을 비교하면서, 각각의 선택이 기업의 전략적 목표와 운영 방식에 따라 달라질 수 있음을 배울 수 있었습니다.
또한, 최근에는 중요한 코어 서버는 온프레미스에서 관리하고 다른 서버들은 클라우드를 사용하는 하이브리드 방식도 많이 채택되고 있습니다.
이러한 하이브리드 접근 방식은 각 환경의 장점을 최대한 활용할 수 있는 방법입니다.
예를 들어, 기업의 핵심 데이터와 애플리케이션은 보안과 제어가 중요한 온프레미스 환경에서 유지하면서, 덜 민감한 데이터나 대규모 연산 작업은 확장성과 비용 효율성이 뛰어난 클라우드에서 처리하는 것입니다.
이로 인해 기업은 보다 유연하게 IT 인프라를 운영할 수 있으며, 변화하는 비즈니스 요구에 빠르게 대응할 수 있게 됩니다.
이러한 하이브리드 환경은 온프레미스와 클라우드의 이점을 결합하여 최적의 성능과 보안을 제공하는 전략으로, 많은 기업들이 이를 도입하고 있는 추세라고 합니다
그리고, 강사님께서는 인프라가 갑자기 문제를 일으키는 상황을 통해 개발자와 인프라 운영자 사이의 대화가 어떻게 이루어져야 하는지 설명해주셨습니다.
예를 들어, 인프라 운영자가 "인프라에 문제가 발생했는데, 코드에 문제가 생긴 것 같습니다."라고 말했을 때, 개발자가 "저는 코드를 건드린 적이 없어요. 그러니 제 잘못은 아닙니다. 당신이 알아서 해결하세요."라고 답하는 식의 커뮤니케이션은 절대 바람직하지 않다고 합니다.
대신, 개발자는 "코드가 문제가 생긴 부분을 함께 살펴봅시다. 최근에 변경된 사항이나 시스템 로그를 확인해볼 필요가 있을 것 같습니다."라고 협조적인 태도로 접근해야 합니다.
이와 같은 커뮤니케이션을 통해 개발자와 인프라 운영자는 서로 협력하여 문제의 원인을 신속히 파악하고 해결할 수 있습니다. 강사님은 이러한 사례를 통해 팀워크와 상호 이해가 얼마나 중요한지 강조하셨습니다
위 사이트를 만들어보면서 HTML, CSS, JS에 대해 공부를 했는데, 강사님이 Emmet에 대해 설명해주셨습니다.
예전에 배웠던 Emmet 기능을 오랜만에 다시 보니 너무 반가웠습니다.
Emmet은 코드 작성 속도를 크게 향상시켜주는 도구로, 짧은 약어를 입력하면 자동으로 HTML/CSS 코드 블록을 생성해주는 기능을 가지고 있습니다.
덕분에 코드 작성이 훨씬 수월해졌습니다.
또한, 강사님께서는 JavaScript 자체의 타입 이야기나 ==와 ===와 같은 비교 연산자, 익명 함수 등 자바스크립트에서 중요한 개념들에 대한 설명도 해주셨습니다.
이런 개념들은 자바스크립트를 이해하고 활용하는 데 매우 중요한 요소들로, 특히 ==와 === 연산자의 차이점을 이해하는 것이 중요하다는 것을 강조하셨습니다.
== 연산자는 값만 비교하는 반면, === 연산자는 값과 타입 모두를 비교하기 때문에, 올바른 연산자를 사용하는 것이 코드의 정확성과 안정성을 높이는 데 필수적이라는 점을 배웠습니다.
익명 함수에 대해서도 자세히 설명해주셔서, 이를 다양한 상황에서 어떻게 활용할 수 있는지에 대해 더 깊이 이해할 수 있었습니다.
이러한 개념들을 다시 배우면서 자바스크립트의 기초를 더욱 확고히 다질 수 있었습니다.
특히 자바스크립트는 타입에 대해서 자유로운 언어입니다.
자바스크립트는 동적 타이핑을 지원하기 때문에 변수의 타입이 고정되지 않고, 프로그램 실행 중에 변경될 수 있습니다.
예를 들어, 같은 변수에 숫자, 문자열, 객체 등을 할당할 수 있습니다.
이러한 특성은 유연성을 제공하지만, 타입 관련 버그가 발생할 가능성도 높입니다. 예를 들어, 문자열과 숫자를 비교하거나 더할 때 의도치 않은 결과가 나올 수 있습니다.
이러한 이유로 자바스크립트에서는 타입을 명확히 하고, 타입 검사를 통해 오류를 방지하는 것이 중요합니다
ex) null을 typeof 하면 무슨 타입일까(object) -> 설계시 오류라고 함
HTML이나 CSS를 하면서 역시 디자인은 나와 맞지 않는다는 생각이 들었습니다. 디자인 작업은 시각적 감각과 창의성이 많이 요구되는데, 저는 그보다는 백엔드쪽이 역시 맞구나를 한번더 느꼈습니다.
요즘 운영체제 스터디를 시작했는데, 생각보다 몰랐던 개념도 많고 매우 흥미롭습니다. 그래서 그런지 책이 매우 잘 읽히더라고요.
물론 "이런 것까지 알아야 하나..." 싶은 내용도 있지만, 그래도 열심히 하고 있습니다!!
또한 최근에 공모전에 나갔었는데 완성후 제출을 했습니다!!
웹 페이지를 통해 단속카메라 위치와 주차장 정보를 표시하고, 주차장에 현재 몇 대의 차량이 주차되어 있는지를 머신러닝 모델을 통해 예측하여 제공하는 프로젝트를 진행하였습니다.
이 프로젝트에서는 실시간으로 단속카메라 위치를 업데이트하고, 사용자가 쉽게 주차장 정보를 확인할 수 있도록 구현하였습니다.
같이 공모전 나간분이 수도권쪽에 계셔서 주말에 한번 예측한게 잘 맞나 갔다오실거라고 했는데 제발 잘 맞았으면 좋겠습니다 ㅎㅎ...
모두들 화이팅이에요 !!!