본문 바로가기

Programming120

[Programming] Spring 이란? 베하! 하루하루가 다르게 점점 추워지는 날씨에 감기 조심하세요! 이번주도 새로운 정보로 여러분들을 찾아뵙습니다~! 이번주는 Framework 중에 하나인 Spring 입니다. JAVA를 사용하는 곳이라면 흔히 사용하시는 프레임 워크이니 만큼 간략한 정보들을 가지고왔습니다! Spring 이란? JAVA의 웹 프레임워크로 JAVA 언어를 기반으로 사용합니다. JAVA로 다양한 어플리케이션을 만들기 위한 프로그래밍 틀이라 할 수 있습니다. JAVA를 활용하는 프로젝트가 많아지고 규모가 커짐에 따라 다양한 기술들이 사용되고 있습니다. 이러한 기술들을 더욱더 편하게 사용할 수 있도록 해주는 것이 바로 Spring이라고 할 수 있습니다. Spring은 이런 중복코드의 사용률을 줄여주고, 비즈니스 로직을 더 간단하게.. 2023. 11. 24.
[Vue]Vue.js 컴포넌트 디자인 패턴 안녕하세요, BTC 블랙아웃입니다! Vue.js에서 컴포넌트는 애플리케이션 구축의 핵심 요소입니다. 오늘은 Vue.js에서 사용할 수 있는 다양한 컴포넌트 디자인 패턴을 알아보고, 이들이 애플리케이션의 유지 보수성과 확장성에 어떤 영향을 미치는지 살펴보겠습니다. 1. 컴포넌트 디자인 패턴이란? 컴포넌트 디자인 패턴은 Vue.js 컴포넌트를 설계하고 구현할 때 따르는 일련의 '베스트 프랙티스'입니다. 이러한 패턴을 활용하면 더 가독성 높고, 재사용 가능하며, 테스트하기 쉬운 코드를 작성할 수 있습니다. 2. 주요 컴포넌트 디자인 패턴 1) 단일 책임 컴포넌트 하나의 컴포넌트는 하나의 기능에만 초점을 맞춰야 합니다. 이는 코드의 가독성을 높이고, 재사용과 테스트를 용이하게 합니다. 2) 컴포넌트 조합 작은 .. 2023. 11. 24.
Java의 List Stream() 안녕하세요 여러분! 일단고 팀입니다. 벌써 크리스마스의 시즌이 느껴지면서 날씨가 추워집니다. 몸과 마음 모두 따뜻하게 해야 할 계절이네요. 오늘은 Java의 List 인터페이스에서 제공하는 Stream() 메서드에 대해 알아보고, 이를 활용하여 코드를 간결하게 작성하고 성능을 향상시킬 수 있는 방법에 대해 살펴보겠습니다. 1. Stream 이란 Java 8부터 추가된 Stream은 컬렉션 요소들을 처리하기 위한 연속적인 데이터 흐름을 나타내는 인터페이스입니다. Stream을 활용하면 간단하고 선언적인 방식으로 데이터를 처리할 수 있습니다. 이를 통해 병렬 처리 및 다양한 연산을 수행할 수 있어 코드의 가독성과 유연성이 증가합니다. 2. List.stream() 과 foreach 구문 List.stream.. 2023. 11. 24.
[Django/React] 장고와 리액트 연동 (3) 안녕하세요~ BTC 1-tier팀의 One입니다 😆😆 지난번 포스팅에 이어서 장고와 리액트 연동을 이어가봅시다! 지난 포스팅은 아래 링크를 참고해주세요~😊 https://btcd.tistory.com/1520 [Django/React] 장고와 리액트 연동 (1) 안녕하세요 1-tier팀의 One입니다 😆😆😆 백엔드와 프론트엔드 흔히 웹에서 프론트엔드는 사용자에게 시각적으로 보여지는 부분, 백엔드는 사용자에게 드러나지 않는 DB 공간(회원가입, 로그인) btcd.tistory.com https://btcd.tistory.com/1560 [Django/React] 장고와 리액트 연동 (2) 안녕하세요 1-tier팀의 One입니다 😁 저번 포스팅에 이어 장고와 리액트 연동을 이어서 진행해봅시다. 1편은 아래를.. 2023. 11. 21.
[Vue]Vue Router : Hash mode & History mode 안녕하세요, BTC 블랙아웃입니다! 오늘은 Vue.js에서 중요한 부분인 Vue Router의 두 가지 라우팅 모드, hash와 history에 대해 좀 더 자세히 알아보려고 합니다. 이 두 모드는 웹 애플리케이션의 URL 관리 방식에 큰 영향을 미치므로, 각각의 특성을 정확히 이해하는 것이 중요합니다. 1. Vue Router란? Vue.js를 사용한 SPA(Single-Page Application) 개발에 있어서 Vue Router는 페이지 라우팅을 관리하는 핵심적인 역할을 합니다. Vue Router는 애플리케이션의 다양한 뷰(View)와 라우트(Route)를 연결해 주며, 사용자의 URL 변경에 따라 적절한 컴포넌트를 렌더링합니다. 2. Hash 모드 작동 원리 Hash 모드는 URL의 해시(#.. 2023. 11. 17.
좋은 주석이란 안녕하세요 여러분! 일단고 팀입니다. 벌써 크리스마스가 기다려지는 시기네요. 모두 감기 조심하세요. 오늘 이야기 할 주제는 개발할 때 ‘좋은 주석이란 무엇인가’입니다. 주석은 코딩을 할 때 코드의 내용을 메모하는 목적으로 쓰이며 협업할 때 코드의 이해를 높이는 등 유용하게 쓰이죠. 이러한 주석은 코드의 의도를 명확히할 때 좋은 작용이 되지만, 혼란을 야기하는 좋지 않은 작용을 일으킬 때도 있습니다. 그래서 좋은 주석이란 무엇인가에 대해 이야기를 해보고자 합니다. 좋은 주석 달기 코드를 의도를 명확히 설명하는 주석 (혼란을 없애는 주석) 변수 명 자체만으로 어떤 목적을 가진 변수인지 알 수 있으면 가장 좋지만, 라이브러리 등에 종속되어 이름을 변경하지 못하는 등의 상황에는 주석을 활용하면 좋습니다. 또한 .. 2023. 11. 17.
Python의 타입 힌트 Python의 유연성은 많은 개발자에게 사랑받는 이유 중 하나지만, 크고 복잡한 코드베이스에서는 종종 버그를 야기할 수 있습니다. 타입 힌트(Type Hinting)와 정적 타입 검사(Static Type Checking)는 이러한 문제를 해결하기 위한 강력한 도구입니다. 현대의 Python 개발 환경에서 타입 힌트는 코드의 가독성과 유지 보수성을 크게 향상시킵니다. Python은 기본적으로 동적 타입 언어지만, Python 3.5 이상부터 타입 힌트(type hint) 기능을 통해 변수, 함수의 인자, 그리고 반환 값에 대한 타입 정보를 제공할 수 있게 되었습니다. 이번 게시물에서는 Python에서 타입 힌트를 사용하는 방법과 그것이 개발 프로세스에 어떻게 도움이 되는지를 알아보도록 하겠습니다. 타입 .. 2023. 11. 10.
Javascript에서 웹소켓 구현하기 베하! '일단고' 팀입니다. 저어번 시간에 웹소켓이 무엇인지에 대한 글을 남겼었어요. 기억하시나요? 오늘은 직접 웹소켓을 코드로 구현해보는 시간을 가져보겠습니다. 사용할 코드는 Javascript 입니다. 구현하기에 앞서 Javascript로 웹소켓을 구현하기에 앞서서 이전에 알려드린 웹소켓에 대하여 잠깐 리뷰하는 시간을 가져보겠습니다. 웹 소켓은 양방향 통신을 지원하는 프로토콜로, 클라이언트와 서버 간에 실시간 데이터를 교환할 수 있도록 해줍니다. 이는 HTTP와는 다르게 연결을 유지하고 있어 실시간으로 데이터를 주고받을 수 있습니다. 이때 데이터는 ‘패킷(packet)’ 형태로 전달되며, 전송은 커넥션 중단과 추가 HTTP 요청 없이 양방향으로 이뤄집니다. 구현하기 Javascript에서 웹소켓은 생.. 2023. 11. 5.