개발공간 32

❓Entity & DTO & VO

✨ 오늘의 미션이 꽤나 많고 어려워 보이는건 기분 탓이겠쥬~? 비오는 날 창문 밖 빗소리 들으며 공부하는게 얼마나 좋은 일인데요 ☔ 🧩 Entity(엔티티) - 소프트웨어에서 실제로 사용되는 데이터를 나타내는 개념 - 학생의 이름, 나이, 성별, 학년, 학 등이 Entity의 속성이 될 수 있음 🧩 DTO(데이터 전송 객체) - 데이터를 전송하기 위해 사용되는 개념 - 예를 들면, 클라이언트와 서버 사이에서 데이터를 주고 받을 때 사용되는 데이터 모델이 DTO가 될 수 있음 - DTO는 주로 특정한 목적에 따라 필요한 데이터만을 담고 있음 🧩 VO(값 객체) - 값을 갖는 객체로, 불변하게 설계되어 있는 개념 - VO는 주로 데이터의 일부분이나 조합된 값들을 표현하기 위해 사용됨 - 즉, 학생의 주소나 ..

개발공간/HW 2023.04.05

❓DDD 설계와 SQL 중심 설계

✨ 두둥! 오늘은 DDD 설계와 SQL 중심 설계에 대해 알아보는 시간 사실 잘 모르는 부분이라 낯설긴 했지만 새로운 내용을 배우는건 언제나 짜릿ㅎㅐ~~ ❤️ 그럼 대체 DDD 설계와 SQL 중심 설계가 뭔지 알아보러 가봅시다! 🔎 도메인 주도 설계(Domain-Driven Design) - 소프트웨어를 개발할 때, 소프트웨어가 다루는 '도메인'이라는 개념을 중심으로 설계하는 방법 - 도메인은 소프트웨어가 다루는 특정한 분야나 문제 영역을 의미 - DDD는 해당 도메인에 대한 이해를 높이고, 도메인 모델을 중심으로 소프트웨어를 설계하는 접근 방법 - 즉, DDD는 놀이공원에 놀러갈 때 놀이기구의 원리를 이해하고, 그 원리를 활용해 놀이기구를 조립하는 것과 비슷하다고 볼 수 있음 🎡 🔎 SQL(Struct..

개발공간/HW 2023.04.05

❓Spring에서 DI, IoC란 무엇일까?

DI : Dependency Injection; 의존성 주입 IoC : Inversion of Control; 제어의 역전 이런 사전적인 정의 말고 간단하게 이해해 볼 수 있게 정리해 보기! 🔎 이 미션을 받고 든 생각은 딱 하나! 사실 스프링은 이미 학습했지만, DI, IoC와 같은 용어는 정확히 어떤 뜻인지, 왜 사용하는지 모른 채로 그냥 대충 사용해왔던 것 같아 안타까웠다 😫 앞으로는 이 개념이 어떤 건지, 왜 사용하는지 내 것으로 만드는 학습법을 활용해야지! ⚠️DI 우선 DI, 의존성 주입이라고 불리기도 하고 객체를 생성하고 조립하는 작업을 개발자가 하지 않고 Spring이 대신 처리한다. 그렇게 된다면? 객체 간의 의존성은 줄어들고 유연하게 확장이 가능하다는 뜻?! ⚠️IoC IoC는 객체의 ..

개발공간/HW 2023.04.04

[JAVA] 🚌 버스 도착 정보 출력하기

package chap_01; /* 실행 결과 구로03번 버스 약 3분 후 도착 남은 거리 1.5km */ public class _Quiz_01 { public static void main(String[] args) { // 버스 번호(1234, 구로03번) String busNo ="구로03"; // 남은 시간(3분, 5분) int minute = 3; // 남은 거리(1.5km, 0.9km) double distance = 1.2; // 결과 출력 System.out.println(busNo + "번 버스"); System.out.println("약 "+ minute + "분 후 도착"); System.out.println("남은 거리 " + distance + "km"); } }

개발공간/Java 2023.04.03

🔎 지그재그(ZigZag)가 가진 기능 분석하기

✨ 내가 자주 사용하는 웹사이트는 뭐가 있을까 고민하던 중, 쇼핑, 스포츠, 웹서핑, 강의라는 키워드를 떠올리게 되었다. 그래서 고르게 된 웹 사이트는 지그재그! 사실 지그재그는 어플로만 이용해왔었는데, 웹사이트가 존재한다는 사실을 알게 되어 매우 놀랐다. https://store.zigzag.kr/?utm_source=bs_naver_pc&utm_medium=homelink&utm_campaign=mar_w4_2023&NaPm=ct%3Dlg04qkwg%7Cci%3D0yK0001g9wDyazxPAvjy%7Ctr%3Dbrnd%7Chk%3D60a7988df0415eac723bb6c3ca25141c297b83cf 지그재그 스토어 4,000만이 선택한 쇼핑 플랫폼 store.zigzag.kr 🔎 그렇다면 지그재..

개발공간/HW 2023.04.03

배달의민족 CEO에게 뽑고 싶은 개발자를 물어보았다

https://www.youtube.com/watch?v=3H4umWD5bwI 조직 전체가 일을 잘할 수 있는 방법론 -> 같이 성장 개인이 성장한 것만큼 그게 고스란히 조직의 성과로 나타나는 것 오류가 없는 판단은 있을 수 없다. 사람과 사람 간의 신뢰성 -> 전체 조직의 생산성에 가장 중요한 부분 본인 스스로를 코딩하는 사람으로만 정의 내리지 말 것 -> 주어진 비지니스 문제를 해결하는 사람 코딩 자체, 코드를 만 줄을 짰다는 것 자체가 중요한 것이 아님 어떤 로직으로 풀어내야하는 것이 중요! 커뮤니케이션의 중요성, 풀고자하는 문제가 정확히 무엇인지 파악할 것 만드는 사람이 수고로우면 쓰는 사람이 편하고 만드는 사람이 편하면 쓰는 사람이 수고롭다

개발공간/WIL 2023.03.31

❓@Override 오버라이딩

1. 오버라이딩이 뭔가요? 재정의, 다시 구현해서 用 상위 클래스에 정의된 메소드를 하위 클래스에서 재정의하여 사용하는 것 입맛대로 골라 ma dish (왜 이 노래가 생각났지?) 2. 오버라이딩을 구현하려면 @Override를 꼭 적어야 할까? 이 질문은 생각지도 못했는데 곰곰히 생각해보게 되었다.. 수업때 들은 내용을 떠올려보니 생략해도 동작은 되었던 것으로 기억한다. 다만 실수 방지, 가독성을 위해 적어주는 편이 좋지 않을까?! 3. @Override 어노테이션 유무의 차이로 다시 알아보기! class Parent { public void hello(String name) { System.out.println("안녕하세요, 저는 " + name + "입니다."); } } class Child ext..

개발공간/HW 2023.03.29