안녕하세요! 강의 잘 듣고 있습니다! 프로젝트 진행하고 있는데 만족스러워서 이 일기장 프로젝트를 조금 변형하거나 발전시켜서 개인 포폴로 사용하거나 또는 깃헙에 올리는 것 가능할까요? app컴포넌트에 data말고도 다른 컴포넌트에서 reducer로 바꿔볼만한 state가 있을까요? setState를 쓰는 것과 reducer로 쓰는 것중에 어떤 것이 적합한지 아직 판단을 잘 못하겠어서요.. useContext 사용할 때 onCreate, onRemove,onEdit을 useMemo로 기억했는데 usecallback으로 써도 동일한가요?
안녕하세요? 퀄리티 높은 강의 덕분에 많은 도움을 받고 있습니다. 정말 감사합니다 강사님! 제가 궁금한 점은, 저는 기존에 백엔드만 학습했었습니다. 그래서 제가 작성했던 코드들도 백엔드만 고려하여 디렉토리를 설계했었습니다. 예시로 제가 이전에 진행했던 API 로직 관련 프로젝트의 디렉토리 구조는 다음과 같습니다. . ├── config │ ├── config.ts ├── controllers │ ├── post.ctrl.ts │ └── user.ctrl.ts ├── models │ ├── index.ts │ ├── sequelize.ts │ ├── hashtag.ts │ ├── like.ts │ ├── post.ts │ ├── user.ts │ └── refreshToken.ts ├── node_modules ├── routes │ ├── index.ts │ ├── post.router.ts │ └── user.router.ts ├── types │ └── express.d.ts ├── utils │ ├── generateToken.ts │ └── authenticateToken.ts ├── index.ts ├── tsconfig.json ├── package-lock.json └── package.json 이 프로젝트는 SNS와 관련된 api 로직들을 작성하는 것이었습니다. 강사님 강의를 보면서 이 프로젝트에 vue(nuxt)를 이용하여 프론트엔드단의 코드도 작성하려고 하는데, 이럴 경우 디렉토리를 어떻게 설계하면 되는지 궁금해서 질문드렸습니다. 추가로, vue나 nuxt + express 같은 경우 먼저 vue-cli나 nuxt init을 통해 생성되는 짜여진 디렉토리 위에서 backend를 나중에 추가하는 방식이 일반적인 것 같은데, 이런 식으로 구성되는 이유도 궁금합니다.
언제나 좋은 강의 감사드립니다. 강의와 교재에 LightGBM 의 boosting 파라미터는 주로 Default 값인 gbdt만 사용하였는데요, 교제(개정2판 기준 248Page) 및 docs에 보면 Random Forest도 가능하다는 내용이 있습니다. 여태까지 Random Forest는 대표적인 bagging기법이라고 생가했는데 Boosting 파라미터에서 선택하게 될 수 있어 이럴 경우 어떻게 동작이 되는지 궁금합니다. (이럴경우 경사하강법을 사용을 하지 않는건가요? 그럼..LightGBM을 써야 하는이유가 없어 보이기도 하고... 뭔가 혼란이 와서 문의 드립니다^^;; 다시 한번 좋은 강의에 언제나 감사드립니다.
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
안녕하세요 !! 자바 개발자가 되기 위해 학습하다가 코틀린을 새로 배우는 과정에서 이 강의를 듣게 된 학생입니다!! 먼저 좋은 강의 제공해주셔서 정말 감사합니다!! 멀티 모듈에서 Repository를 각각 api 모듈에 맞게 구현하고, Spring Data JPA Repository를 코어 모듈에 둔다고 하셨는데. 이런 경우에는 api 모듈에서 core와 관련된 그래들 설정(Querydsl or db 등)이 들어가겠구나 라는 생각이 들었습니다. 멀티 모듈의 장점 중 하나가 모듈의 역할에 맞게 의존성을 관리하는 것도 있다고 생각하는데, 이런 경우 이 장점을 잃지는 않을까 우려됩니다. 그래서 저는 멀티모듈을 사용할 때, core 모듈에 Repository와 관련한 코드를 놓고, 사용하는 모듈에서 인터페이스, 혹은 Repository를 참조하는 구현체를 만들어 해당 클래스만 사용하게끔 유지하는 게 좋지 않을까 생각하는 편인데요. 혹시 강사님의 의견은 어떠신지 궁금합니다!! (적고 보니 강의 내용과는 조금 다른 질문인 것 같아 조금 죄송스럽네요 ㅠㅠ)
안녕하세요 선생님, [초급편] 안드로이드 커뮤니티 앱 만들기를 완강한 수강생입니다. 게시글 수정/삭제 파트와 아래 두 질문을 참고해가며 현재 댓글 수정/삭제를 구현하기 위해 애쓰는 중인데, 잘 되지 않아 질문드립니다. https://www.inflearn.com/questions/411607 https://www.inflearn.com/questions/619233 게시글 설정과 마찬가지로 내가 쓴 댓글에만 보이는 설정 버튼을 클릭하면 다이얼로그를 통해 수정/삭제로 진입하게끔 만드는 데 까지는 성공했습니다. 첫 번째 질문입니다. 우선 수정 기능의 경우 아래 ????? 부분에 어떤 값을 넣어야 할지 감이 안 옵니다. BoardReadActivity.kt // 댓글 클릭하면 -> 대화상자 뜸 // 파이어베이스의 댓글 키를 기반으로 댓글 데이터(=본문+uid+시간) 받아옴 cLV.setOnItemClickListener { parent, view, position, id -> // 명시적 인텐트 -> 다른 액티비티 호출 val intent = Intent(baseContext, CommentEditActivity::class.java) // 댓글수정 액티비티로 댓글의 키 값 전달 intent.putExtra("?????", ?????) // 댓글수정 액티비티 시작 startActivity(intent) } "key", key를 넣으면 댓글이 아닌 게시글의 키 값이 되어 댓글이 수정되지 않고, "commentKey", commentKey를 넣으면 앱이 죽습니다. 게시판 프래그먼트에서 리스트뷰 아이템을 클릭하면 게시글로 이동하듯 댓글 리스트뷰 아이템을 클릭하면 수정 액티비티로 넘어가는 것도 시도해봤는데요, 빨간색이 게시글의 키, 파란색이 댓글의 키일 때 다행히 댓글의 키는 잘 받아오는데 댓글의 키'만' 알다보니 파이어베이스로부터 기존 댓글 내용을 받아올 수도, 수정한 내용을 업데이트 할 수도 없습니다. BoardReadActivity.kt // 댓글 클릭하면 -> 대화상자 뜸 // 파이어베이스의 댓글 키를 기반으로 댓글 데이터(=본문+uid+시간) 받아옴 cLV.setOnItemClickListener { parent, view, position, id -> // 명시적 인텐트 -> 다른 액티비티 호출 val intent = Intent(baseContext, CommentEditActivity::class.java) // 댓글수정 액티비티로 댓글의 키 값 전달 intent.putExtra("commentKey", commentKeyList[position]) // 댓글수정 액티비티 시작 startActivity(intent) } 다이얼로그에서 댓글수정 액티비티로 넘길 때와 마찬가지로 ????? 부분에 어떤 값을 넣어야 할지 모르겠습니다. CommentEditActivity.kt // 댓글을 수정 private fun editCommentData(commentKey: String) { // 수정한 값으로 업데이트 FBRef.commentRef.?????.child(commentKey).setValue(CommentModel( // 제목 및 본문은 직접 수정한 내용으로, binding.commentMainArea.text.toString(), // uid와 시간은 자동 설정됨 FBAuth.getUid(), FBAuth.getTime() )) // 수정 확인 메시지 Toast.makeText(this, "댓글이 수정되었습니다", Toast.LENGTH_SHORT).show() // 댓글수정 액티비티 종료 finish() } 혼자 해결하려니 너무 맨 땅에 헤딩이라ㅠㅠ 질문 올립니다.
강의를 보고 따라서 진행을 했더니 빨간색으로 심각이 나오네요... 그래서 로그에 들어가서 최근 100개의 로그를 보니까 오류 원인으로 추정되는 부분이 있었습니다. 2022/08/28 17:41:22.790598 [INFO] save docker tag command: docker tag 0370c9c70821 current_backend:latest 2022/08/28 17:41:22.790604 [INFO] save docker tag command: docker tag d942a3872fb6 current_nginx:latest 2022/08/28 17:41:22.790609 [INFO] save docker tag command: docker tag 75708d3d8c71 current_frontend:latest 2022/08/28 17:41:22.790614 [INFO] save docker tag command: docker tag 2b7d6430f78d nginx:latest 2022/08/28 17:41:22.790618 [INFO] save docker tag command: docker tag 5dcd1f6157bd node:16-alpine 2022/08/28 17:41:22.790631 [INFO] Running command /bin/sh -c docker rm `docker ps -aq` 2022/08/28 17:41:22.942159 [INFO] Error response from daemon: You cannot remove a running container 6a0c86ea39e968de428d3d30608a610c32c9250c12390b835b82e2367f1e5329. Stop the container before attempting removal or force remove Error response from daemon: You cannot remove a running container 9c2ffeccce2f1e0b49d4f50e7c5de38e7084d077faf3f19123151adc30de6dcb. Stop the container before attempting removal or force remove Error response from daemon: You cannot remove a running container d4507eceb5d8d6384be032723cbcae38f1a427f9b261cef64c78199ed24595a2. Stop the container before attempting removal or force remove 2022/08/28 17:41:22.942188 [INFO] Running command /bin/sh -c docker rmi `docker images -aq` 2022/08/28 17:41:23.115076 [INFO] Error response from daemon: conflict: unable to delete 968794bfee27 (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete 60a98349297b (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete 0370c9c70821 (cannot be forced) - image is being used by running container d4507eceb5d8 Error response from daemon: conflict: unable to delete 8ad18f4e6824 (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete d942a3872fb6 (cannot be forced) - image is being used by running container 6a0c86ea39e9 Error response from daemon: conflict: unable to delete 69041b2058c4 (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete 75708d3d8c71 (cannot be forced) - image is being used by running container 9c2ffeccce2f Error response from daemon: conflict: unable to delete f9fde158cd3b (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete b91481250af7 (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete a5f559502b12 (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete 2b7d6430f78d (cannot be forced) - image has dependent child images Error response from daemon: conflict: unable to delete 5dcd1f6157bd (cannot be forced) - image has dependent child images 이렇게 나오더라구요... 뭐가 원인인지 뭘 해결해야 하는건지 혹시 알려주실 수 있으신가요??ㅠㅠ
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안드로이드에서는 잘 되는데 아이오에스 시뮬레이터 버젼 ios 15.5에서 에러가 나면서 안됩니다. 구글맵과 충돌인거 같은데..ㅠㅠ 맥북 에어 m2 사용중입니다. Error (Xcode): Building for iOS Simulator, but linking in object file built for iOS, file '/Users/ddur/Documents/flutterDev/mapgogo/ios/Pods/GoogleMaps/Maps/Frameworks/GoogleMaps.framework/GoogleMaps' for architecture arm64 Could not build the application for the simulator. Error launching application on iPhone SE (3rd generation).
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
Book.name 에 @Column(nullable = false) 을 붙였으니 UserLoanHistory.bookName 도 논리적으로 null이 될 수 없는데요. 그래서 bookName 에는 애노테이션을 붙이지 않으신 건가요? 애노테이션을 붙여서 DDL에 물리적으로 not null을 설정해야 하는 게 아닌가 싶어 질문 드립니다.
풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
많은 개린이분들이 저처럼 시간낭비하지말라고 글을 남깁니다.. 거의 다잉메세지입니다... 강사님이 nginx.conf파일을 수정하시는데요 실제로 우리가 내려받는 파일의 09폴더에 있는 nginx.conf.http파일에는 고쳐야할 부분이 총 세가지 입니다. (영상과는 다르게 되어 있는 부분들도 있습니다. 그것들까지 포함해서 총 세개!) 도메인(총 6개 였습니다.) : funcoding.xyz >> 각자 도메인으로 수정 맨 아래 server블락(443포트 https관련) 위아래로 있는 주석(*/, /*)삭제 역시 맨 아래 server블락에 servername아래에 있는 네줄의 코드 앞에 있는 #. 역시 주석관련된 건데, #를 모두 삭제 다시 되돌아보면 부끄러울정도로 간단한 것들이였는데, nginx나 docker가 처음이다보니 허둥대다가 몇일을 날렸는지 모르겠네요