전체 글
-
[바이브 엔지니어링] 바이브 엔지니어링이란AI 2026. 8. 27. 12:33
더이상 생성형 AI가 없는 개발 환경은 상상하기 힘들다.AI를 활용한다는 것이 생산성과 품질로 이어지기 때문이다.다만 AI가 만든 코드를 실제 서비스에 연결하는 순간 문제가 발생하는 경우가 생긴다. 바이브 엔지니어링은 'AI가 만든 결과를 끝까지 책임지는 숙련된 전문 개발자의 방식'이며, 문제를 정의하고, 구조를 설계하고, AI가 만든 결과를 검증하며 개발자의 역할을 재정의해야 한다. 1) 요구사항 정의2) 아키텍처 설계 : 구조를 조망하고 단위별로 쪼갬3) 맥락 주입 : AI에게 프로젝트의 폴더 구조, 컨벤션, 제약 사항 등 배경을 완벽하게 세팅4) 검증 및 테스트5) 리스크 감지 **AI의 함정1) 기능은 잘 동작하지만 문제를 일으키는 경우도 있다.2) 에러 없이 틀리는 조용한 버그가 발생하는 경우..
-
[JPA] JPA 프로젝트 생성JPA 2023. 3. 14. 23:24
공부일자 : 2023.03.14 참조 : 자바 ORM 표준 JPA 프로그래밍 - 기본편 (김영한) 사용툴 : intelliJ H2 데이터베이스 프로젝트를 메이븐으로 새로 생성한 후 pom.xml을 열어 라이브러리를 관리한다. 4.0.0 jpa-basic ex1-hello-jpa 1.0.0 org.hibernate hibernate-entitymanager 5.3.10.Final com.h2database h2 2.1.214 8 8 spring framework 와의 호환성을 생각하면서 JPA 버전을 관리하는 것이 좋으며, h2데이터베이스 꼭 다운받은 같은 버전으로 맞춰야 한다. 이후 maven의 Dependencies에서 가져온 라이브러리들을 확인할 수 있다. javax.persistence~는, jpa..
-
[Linux] 패키지 관리 시스템Linux 2023. 3. 14. 22:00
공부일자 : 2023.03.14 강의 : 리눅스 입문 - 개념으로 탄탄히! (ProgCoach4U님 강좌) 패키지 관리 시스템(package management system) 구글플레이나 apple store에서 저장소에서 원하는 어플리테이션을 찾아서 핸드폰에 설치하고 어플리케이션 사용 가능하게 하는 것을 패키지 관리 시스템을 사용한 것이다. 리눅스도 배포판마다 패키지 관리 시스템이 탑재되어 있다. * 기본구조 리눅스 사용자와 패키지 매니저 툴 혹은 프로그램이 리눅스 시스템이라면 , 인터넷 상의 repository에 접근하여 쿼리를 보내 프로그램을 찾아서 리눅스 시스템에 보내주고 저장시킨다. * 패키지 간 의존성 A -> B 'B를 쓰려면 A가 있어야 해!' : B는 A에 의존관계가 있다. 패키지 관리 ..
-
운영체제무제 2023. 3. 14. 21:15
공부일자 : 2023.03.13 참조 : 운영체제와 정보기술의 원리 (반효경 저) [Linux] 운영체제(Operating System) 공부일자 : 2023.03.13 강의 : 리눅스 입문 - 개념으로 탄탄히! (ProgCoach4U님 강좌) 운영체제 공부일자 : 2023.03.13 참조 : 운영체제와 정보기술의 원리 (반효경 저) 2023.03.13 - [Linux] - [Linux] 운영체제(Operati crystal93.tistory.com 1. 운영체제란 운영체제(Operating System)란 사용자 및 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층으로, 하드웨어 위에 기본적으로 운영체제를 탑재하여 전원을 켰을 때 소프트웨어를 손쉽게 사용할 수 있는 상태가 되도록 한다. 즉 컴퓨터의 전원..
-
[Linux] 운영체제(Operating System)Linux 2023. 3. 13. 22:33
공부일자 : 2023.03.13 강의 : 리눅스 입문 - 개념으로 탄탄히! (ProgCoach4U님 강좌) 운영체제 공부일자 : 2023.03.13 참조 : 운영체제와 정보기술의 원리 (반효경 저) 2023.03.13 - [Linux] - [Linux] 운영체제(Operating System) 1. 운영체제란 운영체제(Operating System)란 사용자 및 소프트웨어와 하드웨어를 crystal93.tistory.com 운영체제(Operating System : OS) 운영체제란 컴퓨터의 하드웨어(기계)와 소프트웨어(기계가 아닌) 자원을 관리하는 시스템 소프트웨어이다, 리눅스도 OS이다. OS는 application(응용 프로그램)을 동작할수있게 관리하고, application들이 하드웨어의 자원을 ..
-
[JPA] JPA 소개JPA 2023. 3. 13. 21:16
공부일자 : 2023.03.09 참조 : 자바 ORM 표준 JPA 프로그래밍 - 기본편 (김영한) 1. sql 중심적인 개발의 문제점 어플리케이션은 객체지행적인 언어를 사용하고 DB는 대부분 관계형DB사용한다. 즉 객체를 관계형 DB에 관리하게 되고 이를 위해서는 SQL이 사용된다. * 문제점 1) 무한반복, 지루함 필드가 변경되면 모든 sql을 다 고쳐야하는 번거로움이 존재한다. 2) 패러다임의 불일치 객체 지향 프로그래밍은 추상화, 캡슐화, 정보은닉, 상속, 다형성과 같은 시스템의 복잡성을 해결해줄 수 있는 특징을 가지고 있는 반면 RDB는 그렇지 않다. * 객체와 RDB의 차이 객체 RDB 상속 상속 개념 존재 슈퍼타입 - 서브타입 연관관계 참조 외래키 탐색의 범위 자유로움 한계가 존재 => 이는 ..
-
[Linux] 리눅스란?Linux 2023. 3. 8. 16:16
공부일자 : 2023.03.08 강의 : 리눅스 입문 - 개념으로 탄탄히! (ProgCoach4U님 강좌) 1. 리눅스(Linux)란 무엇인가 개발자 이름 리누스 토르발스(Linus Benedict Torvalds) + Unix = Linux 리눅스는 운영체제이다. 그리고 무수히 많은 배포판이 존재한다. ubuntu, centOS, suse, fedora... * 많은 배포판의 공통점과 차이점 공통점 차이점 - 리눅스 커널을 사용 - GNU software를 사용 - 데스크탑 관리자 - 패키지 매니저 - 기본 파일 시스템 등등 => 구성이 다름 서로 다른 목적 및 구성으로 만들어졌으며, 그 계열과 종류가 너무 많다. 물론 버전도 있다. ubuntu의 경우도 년도와 월로 버전관리를 하고 있다. * 여러 리..
-
[SPRINGBOOT] JPA AuditingSPRINGBOOT 2022. 4. 24. 22:49
참조 : 스프링부트와 AWS로 혼자 구현하는 웹 서비스(이동욱 저) 보통 엔티티에는 해당 데이터의 생성시간과 수정시간을 포함한다. 그렇기에 매번 DB에 삽입하기 전, 갱신하기 전에 날짜 데이터를 등록, 수정하는 코드가 반복된다. 이러한 문제를 해결하기 위해 JPA Auditing을 사용한다. 1. LocalDate java8부터는 LocalDate와 LocalDateTime이 나왔다. 그간 java의 Date의 문제점을 고친 타입이다. 하지만 데이터베이스에 제대로 매핑되지 않는 이슈가 존재했었다. 스프링부트 1.x 버전을 사용한다면 Hibernate 5.2.10버전 이상을 사용하도록 설정이 필요했다. 하지만 스프링부트 2.x버전을 사용하면 기본적으로 해당 버전을 사용 중이라 바로 적용이 가능하다. ① d..