안녕하세요 제로초님 사가코드를 보면서 궁금한것이 있어 질문드립니다. 사가에서 watch함수를 별도로 만들어서 작성하시는 이유가 있을까요? 마지막 코드 부분에 yield all()에 인라인으로 적어도 잘동작하는걸 확인했는데 따로 함수를 만들어서 구분을 해주시는 이유가 무엇인지 궁금합니다.! 추가적으로 강의에서 thunk는 제공해주는 api가 별로 없기 때문에 saga를 추천하신다고 하셨는데 또 다른 글에서는 thunk가 대세다라는 글을 보았는데 다시 thunk로 추세가 변경된건가요?
강의하는 영상보며 항상 배우고 있습니다. 요즘 알고리즘 문제도 공부하면서 항상 고민인 부분인데요. if-else문에서 else를 써야하는가 입니다. 강의7:16초에서 영한님은 else를 사용하지 않으시더라구요. 그래서 궁금해서 웹에 검색을 하니 camelcase급으로 표준화된 방식이다. 아니다 케이스 바이 케이스다. eslint라는 곳에서는 if 다음에 return이 있으면 else쓰지마라 라고도 하더라구요. 질문 : 현업에서는 else를 지양하는 편인가요?
안녕하세요. SP_Sgg_Add 관련 문의드립니다. SP_Sgg_Add 프로시저에서 select 와 insert 수행시 트랜잭션 같은 처리는 필요없는건가요? 클라이언트 여러곳에서 동시에 호출했을 때 id가 중복이 되어버리니 insert가 실패할 것 같네요. 아니면 별로 큰 이슈가 아니므로 그냥 이렇게 처리해도 될까요? 답변 부탁드립니다. 감사합니다.
어노테이션을 만들고, BeanA에 어노테이션 붙인 후 테스트를 하는데 계속 BeanA 가 없다고 나옵니다. 어노테이션 만들기 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface MyExcludeComponent { } @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface MyIncludeComponent { } 클래스에 필터 붙이기 @MyIncludeComponent public class BeanA { } @MyExcludeComponent public class BeanB { } 3. 테스트(에러 발생) BeanA에 NoSuchBeanDefinition에러가 발생합니다 includeFilters를 적용했는데 이유를 모르겠습니다 ㅠㅠ @Test void filterScan(){ ApplicationContext ac = new AnnotationConfigApplicationContext(ComponentfilterAppConfig.class); BeanA bean = ac.getBean(BeanA.class); assertThat(bean).isNotNull(); Assertions.assertThrows(NoSuchBeanDefinitionException.class, () -> ac.getBean(BeanB.class)); } @Configuration @ComponentScan( includeFilters = @Filter( type = FilterType.ANNOTATION, classes = MyIncludeComponent.class), excludeFilters = @Filter(type = FilterType.ANNOTATION, classes = MyExcludeComponent.class) ) static class ComponentfilterAppConfig{ } }
constructor(): void 의 Aa interface 를 class A 에서 implements 로 사용할때 class A 에서 타입 에러가 나고 있는데요. 이부분은 편집 된것 같은데 위와같은 상황에서 에러를 해결하려면 interface Aa 에 타입을 어떻게 할당 해주어야 할까요? 클래스 문법은 낯설다보니, 해결 방법을 찾기가 힘들어서 질문 드립니다 !
안녕하세요. 타임리프 부분 공부하다 궁금한점이 생겨 질문드립니다. <option th:value="T" ${pageMaker.cri.type == "T"?"selected":""}>제목</option> 이런식으로 option 태그에서 pageMaker.cri.type 값이 T라면 selected 속성이 적용되게끔 태그를 만들고 싶은데 JSP에서는 ${}안에 식을 써주면 그대로 적용이 되었는데 타임리프에서는 th를 써줘야 하잖아요. 근데 지금같은 경우는 text나 href 같은 속성이 아니고 태그 안에 식을 써주는건데 어떻게 써야할까요?
안녕하세요. 엔티티가 Member, Team 이렇게 있을 때, 멤버 1명이 팀을 옮기게 되면 add(member)를 해주고 team에서 기존 멤버를 빼주는 게 맞지만 db 관점에서는 괜찮지만 어플리케이션에서는 지워주는게 맞다고 하셨는데요 이 부분이 잘 이해가 가지 않습니다. 해당링크 : ( https://www.inflearn.com/questions/25417 ) 우선 제가 현재 이해하고 있는 것을 말씀드려보겠습니다. 저는 엔티티가 곧 테이블이라고 이해하고 있습니다. (틀리다면 정정해주시면 감사합니다) Member, Team 테이블이 각각 있을 때 Team에는 team_id, team_name, list team member 이렇게 설계가 되는 것까지는 이해했습니다. 이 team 에서 list 는 실제 member 데이터가 삽입되는 것이 아니고 team에 있는 team_id를 통해 member 테이블에서 team으로 fk를 걸어 놓은 것으로 알고 있습니다. member가 team을 옮기게 될 경우, member가 team 에 걸어놓은 fk가 변경이 되기 때문에 member 쪽에서만 update 해줘도 된다고 이해하고 있고요. db 관점에서 괜찮다고 하시는 부분은 아마 이 부분을 말씀하시는 거 같고, 어플리케이션 관점은 영속성 컨택스트에서 관리되고 있는 데이터를 말씀하시는 것 같은데 제가 제대로 이해하고 있는 게 맞을까요? 맞다면 후자의 경우에는 영속성에서 관리되는 부분을 끊으면 된다는 이야기(비영속으로 적용)인 걸까요? 감사합니다.
MemberController가 있는 회원 등록 기능 중에서 질문 있습니다. createMemberForm.html 보시면 form이 post 형식으로 name에 저장된 값을 웹 서버에 전달하는데 그 name 값이 PostMapping으로 선언된 create 메소드로 전달 되잖아요 여기서 궁금한게 name 값이 어떻게 MembetForm 객체에서 name으로 저장이 됐나 궁금합니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요!! 코드 팩토리 강의를 보며 플러터 공부를 하고있는 수강생입니다. 강의를 보면서 직접 앱 개발 해보다가 궁금증이 생겨서 질문 드립니다... 제가 백엔드에 대한 지식이 전혀 없는 수준이라 대부분 파이어베이스에 의존하며 개발하고 있습니다. 만약 유저수가 만단위 십만단위 이상 넘어가도 자체구축서버 없이 파이어베이스만으로도 커버가 가능한지 알고싶어 여쭈어봅니다... 파이어베이스만으로 커버가 불가능하다면 적합만 백엔드 프레임워크는 무엇을 공부하면 좋을지 조언해주셨으면 합니다!!
안녕하세요, 백기선님. 기존에 저는 JVM 내에서 JIT이 컴파일러와 인터프리터의 역할을 동시에 수행한다고 이해하고 있었는데요. 자료(p.4)에서는 [실행엔진 : 인터프리터, JIT Compiler, GC ] 로 구성되어 있어서 질문드립니다. 인터프리터와 JIT 컴파일러는 서로 분리되어 역할을 수행하는 것이 맞고, 바이트 코드를 실행할 때, JIT 컴파일러가 전체를 싹 훑고, 반복되는 코드에 대해 메모리에 캐싱을 진행한 후, 인터프리터가 처음부터 순차적으로 읽어 나가다가, 반복되는 해당 지점에서 JIT Compiler가 다시 개입하여 캐싱된 코드를 꺼내오는 형태일까요? 이 부분이 조금 헷갈리기도 하고, 궁금하기도 합니다. 혹은 어떤 문서를 보면 공부해볼 수 있을까요? (한국어 블로그에는 대부분 인터프리터와 JIT이 같다고 적어둔 경향이 많은 것 같고, 기선님께서 참고에 올려주신 글이나 해외 블로그에서는 둘을 분리해서 말하는 경향이 있는 것 같아서 더 헷갈리는 것 같습니다.) 감사합니다! * 아래 질문과 비슷한 내용이지만, 답변 달아주신 링크에 접속이 안되서 부득이하게 다시 질문 드립니다ㅠ https://www.inflearn.com/questions/99765
안녕하세요 강의 잘 듣고 있습니다. test 코드에서 실행시 @Transactional 실행하면서 Rollback이 계속 되고 있으니까 DB에 저장하지 않는건 알겠는데 실행이 되긴해서 Id값이 계속 올라가더라고요 예전에 예제 다룰때는 따로 Long id 선언해줘서 증감연산자로 올려줬던거 같은데 여기서는 어떻게 올라가는건지 궁금합니다!