UI 자동화 강의를 듣던 중 발생한 문제였습니다. 텍스트 enum의 정보를 받기 위해 Bind<Text>(typeof(Texts)); 를 작성했더니, 텍스트의 Value를 인식하지 못하더군요. 이유를 알아봤는데, 최근 버전에서는 기존의 Text가 TextMeshPro - Text (UI), 즉 TMP로 바뀌었기 때문에, 그에 따라 자료형도 다르게 써 줘야 한다는 것을 확인했습니다. 이 경우, 상단에는 using TMPro; 를 입력하고, 자료형은 public TMP_Text tmp; 처럼 'TMP_Text' 로 바꿔야 정상적으로 이용할 수 있습니다. 요약 using TMPro; - public TMP_Text tmp; - public TextMeshProUGUI tmp2; tmp.text = "원하는 텍스트 적어넣기"; tmp2.text = "원하는 텍스트 적어넣기2";
아래 굵은 글씨로 된것으로 변경해주면 되네요~ contains 인자값이 String 에서 Character로 변경된듯요.. // closure 실전, 조건 -> 특정한 글자가 포함된 것을 찾는다. let names = ["apple", "air", "brown", "red", "orange", "blue", "candy"] func someFind(find: Character ) -> [String]{ var newNames = [String]() for name in names { if name.contains(find) { newNames.append(name) } } return newNames } print(someFind(find: "b")) ////////////////////////////////////////////////////////// 그리고 아래 소스도 수정해야함 let isStartSomeText: (String, Character ) -> Bool = { name, find in if name.first?.description == String(find) { return true } return false }
안녕하세요. 초초주니어 개발자 입니다. 이번에 귀여운 웹사이트를 만들게 되었는데, 한번씩 들어가서 살펴봐주시면 감사하겠습니다.! pc 로도 이용하실 수 있으나, 모바일 맞춤으로 제작 되었습니다! 귀여운 돌멩이의 문답 서비스입니다! https://www.cryington.com 인스타그램 바로가기 https://www.instagram.com/p/CnGgFYxPZXG/?igshid=YmMyMTA2M2Y=
안녕하세요 코딩웍스 선생님 ^^ 여태 많은 질문들을 남겨왔었는데.... 절 기억하실지는 모르겠습니다. :) 학교 졸업하고, 회사에서 권고사직 당하구 그뒤로 할일 없이 디자인 프리랜서 하다가 웹 퍼블리셔의 길을 다짐하고 선생님 강의를 듣기 시작했네요 1년 전쯤 불안해서 제 진로에 대해 게시판에 고민글을 썼었는데 선생님께서 아주 길고 정성스레 답변을 주셨었는데 .... 그 뒤로 앞만 보고 열심히 선생님 강의만 수강 했더니 드디어 제 포트폴리오 웹사이트 완성이 눈앞에 다가와 있습니다. 우선 정말로 감사합니다..ㅠㅠ 다름이 아니라 아무래도 독학으로 하다 보니... 제 포폴 웹사이트 제작이 잘 되었는지에 대해 궁금한 부분을 해결하는 것도 그렇고, 마무리를 완벽하게 하고싶다는 생각이 들어서 혹시 비대면 혹은 대면 1:1 컨설팅도 가능하신가 해서.... 고민고민하다가 질문글로 남겨 봅니다. 서울에 계시다면, 제가 선생님 계신 곳으로 노트북 들고 방문하여 컨설팅을 받고싶은 용의가 있습니다. (그리구 컨설팅 비용이 있으시다면 기꺼이 지불하고 싶습니다.) 선생님과 직접 대면하여 컨설팅을 받는것이 제 입장에서는 가장 든든하고 베스트이지만 비대면만 가능 하시더라도 저는 정말 감사하게 받고 싶습니다. ** 지금 현재 포폴사이트 내용 진행은 85%~90% 정도로 이번주 안으로 다 끝낼 예정이고, 그 뒤에 이력서 신속하게 작성하여 입사지원 할 예정 입니다.** 혹시 이 글이 실례가 되었다면 죄송합니다... 답변 기다리고 있겠습니다 선생님^^ 23년 새해복 많이 받으세요!
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
저는 실기기 테스트로 빌드 결과물을 확인하는걸 좋아하는데, 할때마다 IP를 따와서 넣어주는게 너무 귀찮아서 스크립트를 간단하게 작성했습니다. 혹시 필요하신 분이 있으실까 공유해봅니다! 🙂 https://gist.github.com/WongueShin/48743a2c7433563867df8faaa8203646 (자유롭게 수정해서 사용하셔도 좋습니다. ifconfig 에서 ip를 뽑아오는 부분이 모든 환경에서 잘 동작할지는 모르겠네요. ) 혹시 안드로이드 스튜디오를 사용하신다면, 이런식으로 코드젠 스크립트를 configuration에 등록한 뒤, 이렇게 설정해놓으면 모든 빌드 전에 코드젠이 돌도록 설정이 가능합니다! 스크립트를 실행하면, lib/gen/buildConifg.dart 에 이런 결과가 생성됩니다.
안녕하세요, UX기반의 컴퍼니빌더 컴패노이드 랩스입니다. 저희 컴퍼니 빌더에서 설립한 HCI연구소 겸 인재양성 프로그램인 컴패노이드 인스티튜트(Companoid Institute)에서 HCI 칼리지 제2기 멤버십을 모집합니다. 영국식 3학기제 인재양성 프로그램인 HCI 칼리지는 이번에 2학기가 시작되며 신규 수강신청도 당연히 가능합니다. 이번에는 UX리서치에 필요한 세 과목(인터뷰 방법론/서베이 방법론/실험 방법론)을 개설하였고 UX분야에 초심자를 위한 HCI개론 과목 역시 개설하였습니다. 지난 1기에서는 네이버제트, 카카오브레인, CJ, SK, 11번가, SAP, 토스 등 다양한 주니어, 시니어 현업 분들이 등록해 수강하셔서 30여명의 분들이 멤버십에 합류하였고, 올해 2월 열리는 한국 HCI학회에 논문 2편이 나왔으며 한팀은 창업을 시작했습니다. 이번 제2기에는 1기와 더불어 미국 실리콘밸리 UX리서치, PO, PM 분들과의 교류 기회도 만들고 있으며, HCI업계에서 경험한 저희만의 노하우들을 전달드릴 기회도 만들고 있습니다. 제 2기 모집이 다음 주 마감이라 살펴보시고 관심 가져주시기 바라고, 디자인 스펙트럼 커뮤니티만을 위해 하단에 사용가능한 쿠폰도 전달드리니 결재 시 적용가능합니다:) [모집 과목 및 정원] 1. HCI개론: 문제 해결형 프로덕트 기획/ 정원:30명 2. 인터뷰 방법론/ 정원: 30명 3. 서베이 방법론/ 정원: 30명 4. 실험 방법론/ 정원:30명 -쿠폰: DESIGNSPECTRUM13 *소개 페이지 및 2기 수강신청: https://www.companoid.io/institute-hcicollege-2nd-semester **문의: institute@companoid.io
안녕하세요. 고급편 강의 너무 재밌게 잘 들었습니다. 어려운 내용인 만큼 얻어가는 것이 많은 강의였다고 느껴집니다. 강의를 들으며 pdf 자료를 보다가 발견한 오타들을 메모해두었었습니다. 사소한 오타들이지만, 그래도 말씀드리면 강의 자료 개선에 도움이 될 것 같아 제보드립니다. 좋은 강의 항상 감사드립니다! 1. 예제 만들기 p.22 입니다. HelloTraceV2 와 같고 -> HelloTraceV1 과 같고 로 바꾸면 맞습니다. 4. 프록시 패턴과 데코레이터 패턴 p.49 입니다. 집고 -> 짚고 로 바꾸면 맞습니다. 5. 동적 프록시 기술 p.1 입니다. 리플랙션 -> 리플렉션 5. 동적 프록시 기술 p.20 입니다. public -> private public일 필요가 없습니다. 강의 영상에서도 private으로 사용합니다. <JDK 동적 프록시 - 적용2> 영상 3분 45초 부근입니다. 6. 스프링이 지원하는 프록시 p.4 spring-top -> spring-aop 6. 스프링이 지원하는 프록시 p.12 어드바이스 -> 어드바이저 7. 빈 후처리기 p.22 포인트컷의 매칭하되 -> 포인트컷에 매칭하되 8. @Aspect AOP p.5 지금까지 학습한 기능에 -> 지금까지 학습한 기능에 더해 "더해"라는 표현을 덧붙이면 문장을 이해하기가 더 쉬울 것 같습니다. 10. 스프링 AOP 구현 p.14 포인트것이 -> 포인트컷이 10. 스프링 AOP 구현 p.24 맞은 -> 맞는 10. 스프링 AOP 구현 p.25 @Import(AspectV6Advice.class) 주석 처리 -> @Import(AspectV6Advice.class) 추가 10. 스프링 AOP 구현 p.26 들어난다는 -> 드러난다는 들어난다 -> 드러난다 10. 스프링 AOP 구현 p.26 일종에 -> 일종의 11. 스프링 AOP - 포인트컷 p.12 특정 타입 내의 조인 포인트에 대한 매칭을 제한한다. -> 특정 타입 내의 조인 포인트들로 매칭을 제한한다. 로 표현을 바꾸면 어떨까 생각합니다. 강의 영상에서 스프링 aop 공식 문서를 언급해주셨던 것이 생각나서 스프링 2.5.5 AOP reference 를 확인해보았습니다. within pointcut designator에 대해서 " within - limits matching to join points within certain types"라고 알려주더라고요. 위와 같이 표현을 바꾸는 것이 조금 더 명확한 번역이 될 것 같습니다. 11. 스프링 AOP - 포인트컷 p.30 AOP 적용가 적용된다. -> AOP가 적용된다. 13. 스프링 AOP - 실무 주의사항 p.13 클라이언트 -> 클라이언트가 13. 스프링 AOP - 실무 주의사항 p.20 JDK 동적 프록시에 구체 클래스 타입 주입 -> JDK 동적 프록시를 구체 클래스 타입에 주입 JDK 동적 프록시에 구체 클래스 타입을 주입할 때 -> JDK 동적 프록시를 구체 클래스 타입에 주입할 때 이렇게 바꾸는 것이 문맥 상 더 맞는 것으로 보입니다. 13. 스프링 AOP - 실무 주의사항 pp.20-21 CGLIB 프록시에 구체 클래스 타입 주입 -> CGLIB 프록시를 구체 클래스 타입에 주입 이렇게 바꾸는 것이 문맥 상 더 맞는 것으로 보입니다. 이상입니다.
안녕하세요 프로젝트 swagger에 대한 질문입니다 ㅠㅠ아시는분있으면 꼭 답해주시기 바랍니다 코드 게시물 관련 프로젝트입니다. 나의 페이지에서 코드 게시물을 검색할수 있는 필터링 조건과 다른 유저 페이지에서 코드 게시물을 검색할수 있는 필터링 조건이 다른 상황입니다. api 설계시 위 두 api를 모두 "/codebox/{nickname}"으로 동일한 상황이고 @RequestBody로 받는 JSON 데이터들은 다르기 때문에 Controller에서 @GetMapping("/codebox/{nickname}")으로 동일하나 나의 페이지 접속시 토큰을 추가로 hearder에 받게 하여 아래와 같이 분리하여 구현된 상황입니다. 여기서 Swagger를 통해 api명세서를 자동으로 생성하게 되면 같은 리소스(같은 uri)에 대해서는 api가 한개 생성됩니다. 저는 아래 두가지 경우를 모두 api 명세서로 보여지게 생성하고 싶은데 여러가지 방법을 찾아보는데 마땅히 나오지 않아 질문드립니다.ㅠㅠ 아시는 분 있으시면 꼭 좀 댓글달아주시기 바랍니다.ㅠㅠ @GetMapping(value = "/{nickname}", headers = JwtProperties.ACCESS_HEADER_STRING) @UserAuthen @UserAuthor @ApiOperation(...) @ApiResponses({ ... }) @ApiImplicitParams({ @ApiImplicitParam(name = "nickname", value = "회원 닉네임", required = true), @ApiImplicitParam(name = JwtProperties.ACCESS_HEADER_STRING, value = "엑세스 토큰", required = true) }) public DataResponse<PostListResponse> userPage2(@PathVariable("nickname")String nickname, @RequestHeader(JwtProperties.ACCESS_HEADER_STRING) String accessToken, @RequestBody SearchFormAboutOtherUserPost form) { ..... } @GetMapping(value = "/{nickname}", headers = {JwtProperties.ACCESS_HEADER_STRING, JwtProperties.MYSESSION_HEADER_STRING}) @UserAuthen @UserAuthor @ApiOperation(...) @ApiResponses({ ... }) @ApiImplicitParams({ @ApiImplicitParam(name = "nickname", value = "회원 닉네임", required = true), @ApiImplicitParam(name = JwtProperties.ACCESS_HEADER_STRING, value = "엑세스 토큰", required = true), @ApiImplicitParam(name = JwtProperties.MYSESSION_HEADER_STRING, value = "마이페이지 엑세스 토큰", required = true) }) public DataResponse<PostListResponse> userPage3(@PathVariable("nickname")String nickname, @RequestHeader(JwtProperties.ACCESS_HEADER_STRING) String accessToken, @RequestHeader(JwtProperties.MYSESSION_HEADER_STRING) String my_sessionToken, @RequestBody SearchFormAboutSelfUserPost form) { .... }