본문 바로가기

Portpolio/webdev_tip95

[tip] 코테 시간 제한 통과하는 방법 boj처럼 코딩테스트 대비를 위한 알고리즘 사이트에서 문제를 풀다보면 아래와 같은 조건이 나오는 것을 볼 수 있다. 시간 제한과 메모리 제한이라는 제약 조건이 있는 것을 볼 수 있는데 처음에 풀다 보면, 막연하게 1초, 128mb이러니까 잘 와닿지 않고 저런 조건들은 어떻게 돌아가는 것인가 궁금할 수 있다. 나도 정확하게 저 정도가 어느 정도일까 하고 봤는데, 저 내용을 정확하게 이해하려면 몇 가지 개념을 이해해야 한다. 1. 시간복잡도 확인하기(제일 핵심) 시간복잡도는 알고리즘(연산)이 실행되는 동안에 사용된 기본적인 연산 횟수를 입력 크기의 함수로 나타낸다. 아래와 같이 시간복잡도는 알고리즘에서 가장 기초적인 부분이고, 지수와 로그에 대한 연산만 할 수 있다면 2. 로직을 정확하게 작성하자 처음 문제.. 2023. 4. 28.
[백엔드]WAS와 Web Server 차이? 스프링 자료를 찾다보면, 웹 어플리케이션 서버라는 말이 자주 등장한다. 우선, 자바 자체를 배울 때는 그 자체가 문법만 공부하느라 생각을 안 해봤는데, 대다수가 자바를 배우는 이유가 스프링을 공부해서 웹 백엔드 쪽으로 job을 얻으려는 목적이 아닌가.  웹 서버는 일반적인 데이터를 저장해 뒀다가, 필요할 때 웹상으로 보내주거나 저장시키는 개념 정도로 생각하기 마련인데 웹 어플리케이션 서버는 조금 더 복잡하게 다가온다. 그래서 간단하게 정리를 하면,   웹 어플리케이션 서버(Web Application Server)와 웹 서버(Web Server)는 모두 웹 어플리케이션을 실행하는 데 사용되지만, 그 역할과 기능이 약간 다르다. 웹 서버는 HTTP 프로토콜을 사용하여 클라이언트(브라우저)로부터 요청을 받고.. 2023. 4. 13.
[백엔드] 개발 블로그 어떤 게 좋을까? 개발하면서 코드 모음이나 더 크게는 프로젝트 보관하는 블로그 사이트를 고르게 되는데, 크게 보면 깃허브, velog, tistory 정도인 것 같다. 다 하면 좋을 것 같지만 하나 제대로 관리하는 것도 시간을 쪼개서 하다보면 비는 느낌을 갖게 되는데 특징을 나름대로 정리해봤다. 깃허브: 장점 - 코드 버젼 관리(설명이 필요없다) 개발업계에서의 범용성 단점: 글을 쓰기엔 조금 불편하다(github.io가 있긴 하다) velog: 장점 - 마크다운 인터페이스 좋음 단점: 유저가 아직 많진 않음 tistory: 장점 - 진입하기가 쉽다 단점: 에디터가 조금 부실하다 물론 사용하는 상황이나 검색 엔진 분석 등의 역량에 따라 달라질 수도 있다. 근데 블로그라는 것이 자칫 잘못해서 주객이 전도되면 콘텐츠를 만드는 .. 2023. 4. 9.
[백엔드] 자바 11 -> 자바 17로 업데이트 스프링 3.0부터는 자바 17부터 지원이 된다고 한다. 자바 11을 사용하다가 어쩔 수 없이 자바 버젼을 업그레이드 하게 된 과정을 리뷰해 보고자 한다. 1. 오라클 홈페이지에서 설치 파일을 다운로드 https://www.oracle.com/java/technologies/downloads/#java17 Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts. www.oracle.com 여기서 두번째 링크를 클릭해서 설치를 받도록 했다 이번에 받은 자바 버젼은 17.0.6 ver이다 이렇게 설치하.. 2023. 3. 2.
[백엔드] 스프링 프레임워크와 설치 방법 스프링은? 백엔드 개발 부문을 공부하면 가장 먼저 자바를 언어로서 문법을 공부하고, 다음으로 스프링 프레임워크를 활용하는 방법을 배우는 것이 대부분의 사람들에게 해당된다. 스프링은 언어가 아니라 프레임워크, 즉 응용 소프트웨어라는 구조에서 일정 이상 뼈대를 맞춰 주는 것이라고 할 수 있다. 건축에 비유하면, 골조공사까지 된 상태에서 배관, 타일, 난방 공사를 상황에 따라 여러 가지 건축물에 맞춰서 진행하듯, 스프링도 그러한 골조 공사의 역할과 비슷하다고 할 수 있다. 설치 방법 우선, 스프링 프레임워크를 설치하기 위해서는, 아래의 링크로 들어가서 다운을 받으면 된다. https://start.spring.io/ 그러면 이런 화면이 나오게 된다. 여기서 snapshot, m1 등은 미정식 버젼이므로 최신 .. 2023. 3. 2.