묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨비전공자를 위한 개발자 취업 개론
튜터님 안녕하세요~ 프로그래밍에 있어서 효과적인 공부법에 대한 궁금증이 있습니다.
튜터님 안녕하세요~ 잘 지내고 계시는지요? 계속 프로그래밍 공부를 해나가다보니 요즘 들어 "보다 효과적인 공부법이 있지는 않을까?" 하는 생각이 들어 질문 글을 올리게 되었습니다. 튜터님께서는 비전공자이신데 4개월만에 빠르게 실력을 키우셔서 신입이신데 경력 3년이상의 백엔드 개발자를 구인하는 회사에 들어가셨는데 ( 참 대단 하십니다!! (' ')b ) 튜터님께서 취업을 준비하실 때 하신 공부 방법과 효과적이라고 생각하시는 공부 방법이 궁금합니다~ 감사합니다:)
-
해결됨Redux vs MobX (둘 다 배우자!)
next.js 에서 Mobx
getServerSideProps 에서 가져온 Store 함수를 써도 변경이 되나요??? nextjs에서 Mobx 쓰는 법이 궁금합니다!
-
미해결선형대수학개론
1.5강의 p.7처럼 reduced echelon form이 안만들어집니다
아무리풀어도 p.7처럼 마지막 행이 다 0으로 안나옵니다. 제풀이에서 뭐가 잘못되었나요?
-
미해결스프링 핵심 원리 - 기본편
provider 관련 궁금증이 있습니다.
logic() 메서드 호출 시 그때 마다 프로토타입 빈이 생성되어 사용이 되는데 해당 코드를 보면 provider.get() 입니다. 이 경우에는 new PrototypeBean(); 을 호출하는 것과 다른 점이 있을까요? ObjectProvider 같은 경우에는 이외 많은 기능이 있어 사용 하는것이 수긍이 가나 단순히 빈을 해당 라인에서 생성하는 것은 생성자를 호출하는것과 동일한데 provider.get() 코드와 new PrototypeBean(); 코드가 다른점이 있을까요?
-
미해결[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
스타일이 안먹히네요. 똑같이 했어요.
위와 같이 p태그 안에 문장을 넣고 css파일에서 p태그에 중앙정렬 및 색을 넣어주었는데도 불구하고 미리보기를 들어가면 안먹혀 있어요. 왜 그런 걸까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
1차 캐시 관련 질문있습니다.
안녕하세요~ 강의에서 EntityManager의 1차 캐시의 성능 이점은 그렇게 크지 않다, 라고 말씀해주셨는데요. 1) 데스크탑 애플리케이션, 한 명의 유저. 2) insert, update, delete가 빈번하지 않은(flush 발생으로 1차 캐시가 자주 변경 되지 않는?), 데이터 조회가 주로 사용되는 DB를 사용 위와 같은 상황을 가정했을 때, EntityManagerFactory와 EntityManager를 싱글톤으로 관리, (EntityManager의 1차 캐시 영속을 위해) 애플리케이션이 종료되기 전 까지 EntityManager close하지 않고 사용할 수 있을까요? 가능하다면, 실무에서 이런 방법을 사용하기도 하나요? 만약 위와 같은 경우라면, 1차 캐시에서 조회하는 성능 이점을 가져갈 수 있지 않을까 해서 질문 드립니다.
-
미해결JSP WEB MVC Model2 Programming(중급 과정)
MVC패턴의 쇼핑몰 수업자료 관련
model1방식에서는 게시판과 쇼핑몰을 모두 진행 하였는데 model2 방식으로는 게시판밖에 강의가 올라오지 않아서 저도 아쉬워하고있었는데 댓글을 보니 수업자료로 올려주셨다고 하는 글을 보았습니다! 수업자료 다운받아봤는데 model2방식 쇼핑몰은 아직 업데이트가 안된건가요 아니면 추후 업데이트 될 예정인가요?
-
미해결자바스크립트 중고급: 엔진 핵심
정리했봤습니다. 다른 분이 질문한 내용이 많은 도움이 됐습니다!
1. book Function 오브젝트가 생성 → [[scope]] 는 글로벌 오브젝트를 바인딩(= 외부 렉시컬 환경 참조에 연결) 2. book(200) 호출 3. 호출 파라미터 bookParam 는 book 의 선언적환경레코드에 연결 { bookParam: 200 } 4. getPoint Functon 오브젝트가 생성 → [[scope]] 는 book Function 오브젝트를 바인딩 5. point 할당 및 실행 으로 book 의 선언적 환경레코드는 {bookParam : 200, point: 100} 6. 또한 getPoint 의 외부 렉시컬 환경 참조 : { bookParam : 200, point : 100 } 형태가 된다. // book(200) 호출되고 리턴 후 // book Function 오브젝트 형태 렉시컬환경컴포넌트 = { 환경 레코드 : { 선언적 환경 레코드 : { bookParam: 200, point: 100 } } 외부 렉시컬 환경 : { // 글로벌 오브젝트 } } . 1. getPoint Function 오브젝트를 리턴 obj 에 할당 2. obj(400) → book.getPoint(400) 호출 3. 호출 파라미터 pointParam 은 400 을 getPoint 의 선언적환경레코드에 연결 {pointParam : 400} // obj(400) 호출 된 이후의 // getPoint Function 오브젝트 형태 렉시컬환경컴포넌트 = { 환경 레코드 : { 선언적 환경 레코드 : { pointParam: 400 } } 외부 렉시컬 환경 : { bookParam: 200, point: 100 } } . 1. point 는 선언적환경레코드에 없으므로 [[scope]]를 연결한 외부 렉시컬 환경 참조에 연결된 point : 100 값을 의미한다. 2. bookParam 은 선언적환경레코드에 없으므로 [[scope]]를 연결한 외부 렉시컬 환경 참조에 연결된 bookParam : 200 값을 의미한다. 3. point = 100 + 200 + 400 으로 point 에는 700 값이 들어가고 리턴하고 출력한다.
-
미해결업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
에러가 뜹니다
from urllib.parse import quote_plus from bs4 import BeautifulSoup from selenium import webdriver baseUrl = 'https://www.google.com/search?q=' plusUrl = input('무엇을 검색할까요? :') url = baseUrl + quote_plus(plusUrl) driver = webdriver.Chrome() driver.get(url) 이렇게 처는데, 에러가 납니다 어떻게 하나요 에러: DevTools listening on ws://127.0.0.1:62649/devtools/browser/fb7d8021-fd21-4ef6-98ae-84ba89f7e745 Traceback (most recent call last): File "c:\Users\user\Desktop\crawling\구글_크롤링.py", line 9, in <module> driver = webdriver.Chrome() File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 76, in __init__ RemoteWebDriver.__init__( File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__ self.start_session(capabilities, browser_profile) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session response = self.execute(Command.NEW_SESSION, parameters) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute self.error_handler.check_response(response) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 87 Current browser version is 86.0.4240.193 with binary path C:\Program Files\Google\Chrome\Application\chrome.exe
-
미해결퍼블리셔 취업 진짜 실전 가이드(PDF)
인라인블록 관련 문의
섹션 3 (14/14) 에서 인라인 요소와 블록 요소에 대해 설명이 적혀있는데요, 인라인 블록요소에 대한 속성 특징이 안 적혀 있는 것들이 있어서 질문 드립니다. 인라인블록요소는한 줄에 몇개 배치가능한지? 기본 너비값은? 크기값과 상하마진 값 가질 수 있는지?
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
영상 11:00 ~ 11:30 내용 질문입니다.
OrderRepository에 직접 접근해서 findAll을 호출해서 DTO 객체를 만드는데요. 이메서드에는 @Transactional이 안붙어있어서 엔티티매니저가 메서드 호출이 완료되더라도 1차캐시가 끝나지않고 유지되는데 문제는 @Transactional를 붙일경우 메서드 호출이 끝나면 엔티티 매니저도 같이 종료시켜버리지만, 이 코드에서는 컨트롤러에서 엔티티 매니저를 close()를 명시적으로 호출하지 않는데 이럴경우 문제 없을까요?
-
미해결정말 쉽게 풀어보는 코딩 테스트 top 기본 문제 (with 자바)
java문법관련 질문드립니다.
comparator 클래스 사용하시면서 return o1.start - o2.start; 하니 오름차순이 된다고 하셨는데 어떤 방법으로 이게 오름차순이 되는지 모르겠습니다. Comparator 클래스는 어떤 객체이며 파라미터로 사용하는 o1 o2들은 어떤의미인가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
헉 앱개발 면접 때...
질문은 아니지만..정말강의쏙쏙입니다 감사합니다
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
버그를 못찾겠어요;;
배열을 넣는곳에 객체를 넣어버린것 같은데;; 어디가 문제인지 모르겠어요;; import React, {useState, useCallback } from 'react'; import { useSelector } from 'react-redux'; import PropTypes from 'prop-types'; import { Button, Card, Popover, Avatar, List, Comment } from 'antd'; import { RetweetOutlined, HeartOutlined, MessageOutlined, EllipsisOutlined, HeartTwoTone } from '@ant-design/icons'; import PostImages from './PostImages'; import CommentForm from './CommentForm'; import PostCardContent from './PostCardContent'; const PostCard = ({ post }) => { const [liked, setLiked] = useState(false); const [commentFormOpened, setCommentFormOpened] = useState(false); const onToggleLike = useCallback(()=> { setLiked((prev) => !prev); }, []) const onToggleComment = useCallback(() => { setCommentFormOpened((prev) => !prev); }) const id = useSelector((state) => state.user.me?.id); // me가 있으면(널이 아니면) id를 가져온다. // const id = me?.id; // const id = me && me.id; 옵셔널 체이닝 연산자 return ( <div style={{marginBottom: 20}}> <Card cover={post.Images[0] && <PostImages images={post.Images}/>} actions={[ <RetweetOutlined key="retweet" />, liked ? <HeartTwoTone twoToneColor="#eb2f96" key="heart" onClick={onToggleLike} /> : <HeartOutlined key="heart" onClick={onToggleLike} />, <MessageOutlined key="comment" onClick={onToggleComment}/>, <Popover key="more" content={( <Button.Group> {id && post.User.id === id ? ( <> <Button>수정</Button> <Button type="danger">삭제</Button> </> ) : <Button>신고</Button>} </Button.Group> )}> <EllipsisOutlined /> </Popover> ]} > <Card.Meta avatar={<Avatar>{post.User.nickname[0]}</Avatar>} title={post.User.nickname} description = {<PostCardContent postData={post.content} />} /> </Card> {commentFormOpened && ( <div> <CommentForm post={post}/> <List header={`${post.Comments ? post.Comments.length : 0}개의 댓글`} itemLayout="horizontal" dataSource={post.Comments} renderItem={(item) => ( <li> <Comment author={item.User.nickname} avatar={<Avatar>{item.User.nickname[0]}</Avatar>} content={item.content} /> </li> )} /> </div>)} {/*<CommentForm />*/} {/*<Comments />*/} </div> ); }; PostCard.propTypes = { post: PropTypes.shape({ id: PropTypes.number, User: PropTypes.object, content: PropTypes.string, createdAt: PropTypes.object, Comments: PropTypes.arrayOf(PropTypes.object), Images: PropTypes.arrayOf(PropTypes.object), }).isRequired, } export default PostCard; import React, { useCallback, useEffect } from 'react'; import { Form, Input, Button } from 'antd'; import PropTypes from 'prop-types'; import useInput from '../hooks/useInput'; import { useSelector, useDispatch } from 'react-redux'; import { ADD_COMMENT_REQUEST } from '../reducers/post'; const CommentForm = ({post}) => { console.log('post', post); const dispatch = useDispatch(); const id = useSelector((state) => state.user.me?.id); const [ addCommentDone, addCommentLoading ] = useSelector((state) => state.post); const [ commentText, onChangeCommentText, setCommentText ] = useInput(''); useEffect(() => { if (addCommentDone) { setCommentText(''); } }, [addCommentDone]); const onSubmitComment = useCallback(() => { dispatch({ type: ADD_COMMENT_REQUEST, data: { content: commentText, postId: post.id, userId: id}, }) console.log(post.id, commentText); }, [commentText, id]); return ( <Form onFinish={onSubmitComment}> <Form.Item style={{position: 'relative', margin: 0}}> <Input.TextArea value={commentText} onChange={onChangeCommentText} rows={4}/> <Button style={{position:'absolute', right: 0, bottom: -40}}type="primary" htmlType="submit" loading={addCommentLoading}>삐약</Button> </Form.Item> </Form> ); }; CommentForm.propTypes = { post: PropTypes.object.isRequired, } export default CommentForm; 분명 한강씩 따라하면서 한 강의마다 깃 커밋 올리면서 하고 있는데;; 고대로 안되염;;
-
미해결실전! Querydsl
Team 정보 가져올 때 Team 에 속한 회원들도 같이 가져오고 싶을 때는 어떻게 하나요 ?
Team 정보 가져올 때 Team 에 속한 회원들도 같이 가져와 아래와 같은 형태로 만들려면 DTO 구조랑 어떤 방식으로 querydsl 사용해야 하나요 ? { "team" : teamA , "members" : [ { "name" : memeber1 }, { "name" : memeber2 } ]}, { "team" : teamB , "members" : [ { "name" : memeber3 }, { "name" : memeber4 } ]}
-
미해결CSS Flex와 Grid 제대로 익히기
studiomeal 사이트 접속이 안되네요!
보안의 이유로 접속 거부 당하고 있습니다. 확인 부탁드립니다.
-
미해결iOS/Android 앱 개발을 위한 실전 React Native - Basic
왜 저는 slider가 안나올까요?
react-native community 에 똑같이 slider 검색을 했는데 안나오네요 ㅠ
-
해결됨초보를 위한 도커 안내서
도커 이미지관련 문의
실습을 진행하다보면 repo 나 tag가 none인 이미지가 생성되는데요 이러한 이미지가 생성되는 이유는 무엇인가요?? 또한 이런 이미지를 삭제하는 방법은 일일이 docker rmi 이미지 ID를 입력하는 방법 밖에없나요??
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
PostForm.js 에 Post 내용(text)가 빈값이 나와요.
import React, { useCallback, useState, useRef } from 'react'; import { useSelector, useDispatch } from 'react-redux'; import { Form, Input, Button } from 'antd'; import { addPost } from '../reducers/post'; const PostForm = () => { const { imagePaths } = useSelector((state) => state.post); const dispatch = useDispatch(); const imageInput = useRef(); const [text, setText] = useState(''); const onChangeText = useCallback((e) => { setText(e.target.value); }, []); const onSubmit = useCallback(() => { console.log('여기가 빈값 이에요.', text); // 여기가 빈값 이에요. dispatch(addPost(text)); }, []); const onClickImageUpload = useCallback(() => { imageInput.current.click(); }, [imageInput.current]); return ( <Form style={{ margin: '10px 0 20px'}} encType="multipart/form-data" onFinish={onSubmit}> <Input.TextArea value={text} onChange={onChangeText} maxLength={140} placeholder="어떤 신기한 일이 있었나요?" /> <div> <input type="file" multiple hidden ref={imageInput} /> <Button onClick={onClickImageUpload}>이미지 업로드</Button> <Button type="primary" style={{float: 'right'}} htmlType="submit">짹짹</Button> </div> <div> {imagePaths.map((v) => ( <div key={v} style={{ display: 'inline-block'}}> <img src={v} style={{width: '200px'}} alt={v} /> <div> <Button>제거</Button> </div> </div> ))} </div> </Form> ) } export default PostForm;
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
react 환경변수
배포할 때 npm run build 후에 pm2랑 nginx다 켜주고 나니까 리덕스 개발자 도구로 상태가 다 보여버리는데 production상태가 적용이 안되는 것 같습니다 이럴 땐 어떻게 해줘야되나요? "scripts": { "start": "cross-env NODE_ENV=production && react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" },