본문 바로가기

야미스터디/Backend16

개발자가 알아야 할 인터페이스 개념💡 유튜브에서 우연히 아래 영상을 보고 정말 쉽고 간단하면서도 중요한 개념이라는 생각이 들어서 간략하게 영상의 내용을 정리해봤습니다! 호출벨을 인터페이스의 예시로 들며 누구나 이해하기 쉽고 재미있게 설명해주시니 가볍게 시청하시면 좋을 것 같습니다 😊 https://youtu.be/a6F7rIKaxzo 인터페이스는 약속이다 인터페이스는 상호 작용을 위해서 미리 정의된 약속이다 ex) A 함수를 호출하면 B가 호출된다, 리모콘, 변기 레버, 호출벨 등.. API 또한 인터페이스의 일종이다 API : Application Programming Interface 기능을 사용하기 위한 코드나 문서 같은 세트 프론트와 백엔드 역시 API 라는 약속을 통해 기능을 연결한다 인터페이스 = 호출벨 저기요~! → 구버전 인터.. 2023. 6. 27.
개발자로 성장하는 꿀팁 5가지🍯 https://youtu.be/DmK7d0xB2j0 요즘 제 기강이 좀 떨어진거 같아서 지원서 쓰다가 급발진으로 영상보고 너무 유익한 내용이라 정리하고 가려고 합니둥 어차피 평생 공부해야할 거 빨리 습관 들이자 나 자신... 열쩡염 얼른 소환하란말이야~! 1. 다음은 오지 않는다. '이번만, 다음에!' 하지 않기 지금 당장 바쁘다고 모르는 내용에 대한 공부를 다음으로 미루지 말자! 어차피 미루다 보면 또 똑같은 문제에 직면하게 될 것이고, 그럼 그 때도 어영부영 넘어가게 된다 따라서 모르는 내용이 있다면 무조건 시간을 내서라도 이해하고 넘어가는 습관을 들이자! 2. 깨어있기 (사고하기) 개발을 하다보면 코드 한 줄마다 생각하고 짜기보단 기계적으로 구현하는 경우가 많다 그게 아니라 의식적으로 계속 생각하고.. 2022. 11. 7.
[Etc] Docker 📌 🐳 Docker란? 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼이다 소프트웨어를 컨테이너라는 표준화 된 유닛으로 패키징한다 컨테이너는 라이브러리, 시스템 도구, 코드 등 소프트웨어 실행에 필요한 모든 것이 포함되어 있다 즉, 도커는 컨테이너 환경에서 독립적으로 애플리케이션을 실행할 수 있도록 컨테이너를 만들고 관리하는 것을 도와주는 도구이다 도커를 통해 애플리케이션을 실행하면 독립적인 환경에서 일관된 결과를 보장한다 도커의 핵심 개념은 이미지와 컨테이너이다 컨테이너 컨테이너는 격리된 공간에서 프로세스가 동작하는 기술이다 기존의 가상화 방식인 OS 가상화가 아닌, 프로세스를 격리하는 방식으로 동작한다 리눅스에서 프로세스를 격리하는 방식을 리눅스 컨테이너라고 한다 단순히 프로세.. 2022. 10. 11.
[Etc] DTO 📌 👜 DTO Data Transfer Object / dto package 계층 간 데이터 교환을 위해 사용하는 객체 로직을 갖지 않는 순수한 데이터 객체이다 데이터를 전달하기 위해 사용하는 객체이기 때문에 오직 getter/setter 메서드만을 가지며 다른 로직은 갖지 않는다 데이터를 담아서 전달하는 바구니라고 생각하면 된다 주로 데이터베이스와 통신하거나 소켓에서 받은 메시지의 구문을 분석할 때 유용하게 사용된다 DTO를 사용하는 이유 Core 클래스인 Entity 클래스 보호 View Layer와 DB Layer의 역할 분리 다양한 비즈니스 로직과 요구사항에 대한 유연한 대응 Controller와 Service 사이의 강한 의존 방지 트랜잭션으로 처리되어야 하는 DTO 항목이 요청으로 들어온 결과값과.. 2022. 9. 28.
[Etc] Java와 C언어의 차이 📌 C언어 C언어의 등장 1980년대에 IBM이 개인용 컴퓨터를 만들어 보급하기 전에는 윈도우나 Mac같은 운영체제가 없었다 따라서 컴퓨터 산업 초기에는 주로 회사에서 사용하는 컴퓨터에 Unix 운영체제를 사용했다 그러나 유닉스에서 실행되는 프로그램은 하드웨어가 바뀌면 새로 개발해야 했다 이러한 불편함을 해결하고자 데니스 리치와 켄 톰슨은 B언어를 발전시켜, 1972년 C언어를 만들었다 C언어는 low level 퍼포먼스를 위해 디자인된 프로그래밍 언어로, 기계어에 가깝다 따라서 에어컨이나 스마트 TV 등의 시스템 프로그래밍이나 운영체제(OS) 개발을 할 때 주로 사용한다 C언어는 메모리를 적게 차지하고 빠르게 동작하기 때문에 메모리 공간이 부족한 곳에 주로 사용한다 C언어 특징 시스템 프로그래밍이 가능하다.. 2022. 9. 18.
[Etc] 좋은 개발자란 무엇일까요? 📌 ~ing 여긴 그냥 여기저기 좋은 글들 읽으면서 중요하다고 생각되는 내용들 꾸준하게 기록할 예정이다! 🖍 공부하는 습관 프론트가 api를 재촉하기 전에 먼저 개발해두는 사람 다른 사람의 코드를 잘 읽고 빠르게 이해하는 사람 또한 다른 사람이 이해하기 쉬운 코드를 짜는 사람 자신이 작성한 코드가 어떤 의미인지 아는 사람 아는 것이 많은 것보다 빠르게 배울 수 있는 사람 커뮤니케이션 기록을 잘하고 질문을 두려워하지 않는다 상품을 볼 줄 아는 사람 개발을 잘하는 사람들은 단순히 코드를 잘 짜는 것이 아니라, 코드에 대한 이해가 높은 사람이다. 다른 사람이 짠 코드도 빠르게 이해하는 연습을 하자! 객체지향에서 중요한 것은 "객체의 역할과 책임"에 대해 고민하는 것이다 (+220918 추가) 재료를 온전히 이해하고, 그것.. 2022. 8. 28.