묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
셀레니움 수업 pdf 다운로드
안녕하세요~셀레니움 수업 pdf 자료는 어디서 다운 받을 수 있나요? ^^
-
해결됨[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
dio 네트워크 에러
강의를 진행하던 도중 재실행을 했더니 갑작스럽게E/flutter ( 7367): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: DioException [connection timeout]: The request connection took longer than 0:00:00.000000 and it was aborted. To get rid of this exception, try raising the RequestOptions.connectTimeout above the duration of 0:00:00.000000 or improve the response time of the server.E/flutter ( 7367): Error: SocketException: Connection timed out (OS Error: Connection timed out, errno = 110), address = 192.168.1.106, port = 39308E/flutter ( 7367): #0 DioMixin.fetch (package:dio/src/dio_mixin.dart:519:7)E/flutter ( 7367): <asynchronous suspension>E/flutter ( 7367): #1 LoginScreenState.build.<anonymous closure> (package:delivery/user/view/loginscreen.dart:77:36)E/flutter ( 7367): <asynchronous suspension>E/flutter ( 7367):dio의 연결초과 에러라고 뜨는데 해결방법을 모르겠습니다.잘 진행하다가 갑자기 이렇게 되버려서... 77번째줄 코드는 아래와 같습니다. final resp = await dio.post( 'http://ip/auth/login', options: Options( headers: { 'authorization': 'Basic $token', }, ), );
-
해결됨김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
오타 제보입니다.
섹션 13 - 스레드 풀과 Executor 프레임워크1강의 소스코드의 ExecutorBasicMain.java package thread.executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import static thread.executor.ExecutorUtils.*; import static util.MyLogger.log; import static util.ThreadUtils.sleep; public class ExecutorBasicMain { public static void main(String[] args) { ExecutorService es = new ThreadPoolExecutor(2, 2, 0, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>()); log("== 초기 상태 =="); printState(es); es.execute(new RunnableTask("taskA")); es.execute(new RunnableTask("taskB")); es.execute(new RunnableTask("taskC")); es.execute(new RunnableTask("taskD")); log("== 작업 수행 중 =="); printState(es); sleep(3000); log("== 작업 수행 완료 =="); printState(es); es.close(); log("== showdown 완료 =="); printState(es); } } 다른곳들은 다 고쳐져있는 거 같은데, 이 클래스에만 showdown으로 아직 변경이 안되어있습니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
상속과 생성자 호출순서
여러가지 이론이 막 섞여서 아직 정리가 안되어 질문드립니다상속에서 super이 없어도 그 super가 생략되어있다는 말은 어떤 뜻인가요? 10:30 이 문제에서는 super가 없기때문에 기본 생성자로 간다고 하셔서요 이런경우는 super이 생략되어 있는경우가 아니고 super가 없다고 생각해야 하는거라 헷갈리네요
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
상속과 생성자 호출순서
7:33출력값내는 순서에서 세째줄 start까지는 알겠는데요 그 이후 stop에서 부모의 stop이 있는데 왜 자식stop만 출력하나요?
-
해결됨기초부터 배우는 Next YTMusic 클론 코딩 (with next.js 14, UI 마스터)
코드가 왜 그런지 모르겠는데, 이럴땐 어떻게 공부해야하나요?
7.4 PlayListCarousel - 1 강의의 6분 15초를 보시면,<div className="relative left-[-45px]">부분이 있는데요.left-[-45px]을 해야 화살표가 보이게 되는데, 이게 왜 그런질 모르겠습니다. 근데 제가 질문 드리고싶은 것은, 저 코드가 어떤 원리로 작동되는지가 아닙니다. 이럴때는 스스로 그냥 계속 문서를 참고하든 개발자도구를 참고하든 이해 될때까지 파고드는게 맞는 방법인지 여쭤보고 싶습니다.이것 말고도 제가 어려웠던 부분에 대한 예시를 들자면,1) components 폴더에 저장되는 것들과components/elements 폴더에 저장되는 것들의 차이를 정확히 모르겠음.2) 태그를 감쌀때 어떤 것은 div로 컨테이너를 주시고 어떤것은 안주시는 경우가 있는데, 차이를 모르겠음.3) useUIState에 저장된 변수 이름이 "homeCategory"인데, 제 생각엔 이것 보다는 "selectedSubject" 같은 이름이 더 직관적이라 생각하는데, 그럼에도 제 생각보단 선생님 생각이 맞을건데 제 생각이 어느부분이 부족한질 모르겠음.4) 위와 같은 문제들을 해결하고 싶어서, 책을 찾아보려 하는데 리액트 훅을 설명해주는 책들은 많은데, HTML CSS를 어떤 구조로 짜야 하는지, 리액트 앱 만들때 폴더구조는 어떻게 하는게 좋은지에 대한 책은 없어서 어떻게 해야할지 모르겠음.이런 어려움이 있었습니다. 혹시 공부법 조언 부탁드려도 될까요?
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
[해결 방법] android 빌드 방법
계속 까먹네요 ㅠ^ㅠ 참고~!!cd android ./gradlew build
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 소스코드
혹시 강의 소스코드를 받을 수 있을까요??의존성 문제가 해결이 안돼서 강의 코드를 한번 받고싶습니다
-
해결됨MFC Windows 프로그래밍 - 응용
수업자료
수업자료가 외워서 끝내는 네트워크 핵심이론인데, 맞나요?
-
해결됨MFC Windows 프로그래밍 - 응용
수업자료
수업자료가 '외워서 끝내는 네트워크 핵심이론-응용'인데 이거 맞나요?
-
해결됨Do It! 장고+부트스트랩: 파이썬 웹개발의 정석
url pattern관련 문의
안녕하세요. urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 이런식으로 url패턴을 만들어주면 이렇게 (^media/(?P<path>.*)$)패턴이 생기는거 같고 그 다음 views.py에서 해당 url을 처리할 로직을 만들어야하는걸로 아는데.. 이 경우는 어째서 예외인가요?
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
런타임 에러: 메모리
안녕하세요 강사님, 재귀함수 이해하기[문제풀이]: BOJ 10870 문제 풀이에서 궁금한 점이 있어 질문드립니다. 아래는 제 코드입니다. 백준 제출시 런타임 에러가 발생합니다.시간 복잡도는 O(n)이 나와서 문제가 없는 듯한데,재귀 호출이 너무 깊어져서 발생하는 문제인지, 궁금하여 여쭤봅니다. 감사합니다.import sys input1 = int(sys.stdin.readline()) def fibo(n, n_1, n_2): if n == 1: return n_1 else: return fibo(n-1, n_1+n_2, n_1) result = fibo(input1, 1, 0) print(result)
-
해결됨[Python 초보] Flutter로 만드는 ChatGPT 음성번역앱
음성인식 하는 마이크 시간이 짧은거 같아요
안녕하세요!섹션 7 Flutter음성대화 마지막 부분인 최종 테스트를 진행하고 있습니다음성인식이 가능은 합니다하지만 인식하는 시간이 짧아 긴 문장은 인식 못하는거 같습니다!!더 긴 문장을 말하고 싶은데 제가 말하는 음성인식 시간을 더 길게 할 수 있는 방법이 있을까요?? 제 코드 입니다오류나는 문제는 없습니다!!import 'package:dash_chat_2/dash_chat_2.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart' as http; // 통신을 할수있는 패키지 import 'dart:convert'; //파싱을 위한 import 'package:speech_to_text/speech_to_text.dart'; //stt 패키지 import 'package:speech_to_text/speech_recognition_result.dart'; //음성을 인식하는 import 'package:flutter_tts/flutter_tts.dart'; // class BasicScreen extends StatefulWidget { @override _BasicState createState() => _BasicState(); } class _BasicState extends State<BasicScreen> { bool isListening = false; // 기본 false SpeechToText _speechToText = SpeechToText();//SpeechToText 인스턴스(?) 생성 bool _speechEnabled = false; //음성인식이 가능한지 아닌지 상태 오류가 나면 인식이 나기 떄문에 사용 안함 isListening로 어느정도 대체 가능 String _lastWords = ''; //인식한 문장이 저장될 lastWords FlutterTts flutterTts = FlutterTts();//TTS 인스턴스(?) 생성 @override void initState() { //음성인식부분을 초기화 하는 코드 super.initState(); _initSpeech(); flutterTts.setLanguage("ko-KR");//인스턴스 언어 flutterTts.setSpeechRate(1.0);// 읽어주는 속도 } ChatUser user1 = ChatUser( id: '1', //우리 firstName: 'me', lastName: 'me', ); ChatUser user2 = ChatUser( id: '2', //chatgpt firstName: 'chatGPT', lastName: 'openAI', profileImage: "assets/img/gpt_icon.png" ); late List<ChatMessage> messages = <ChatMessage>[ //List<ChatMessage> = 채팅 메세지를 리스트 형태로 보관하는 ChatMessage( text: '반갑습니다. 어서오세요. 무엇을 도와드릴까요?', //보여지는 텍스트 user: user2, //누가 얘기하는지 user 설정 createdAt: DateTime.now(), //현재 대화가 발생한 날짜,시간 ), ]; @override Widget build(BuildContext context) { // 화면에 메세지를 보여주는 부분 return Scaffold( //Scaffold라는 형식으로 앱 구성을 묶어준것 appBar: AppBar( //AppBar는 타이틀 부분 title: const Text('Basic example'), ), body: DashChat( // DashChat패키지를 이용한 고유 클래스 / DashChat 정의를 해줌 currentUser: user1, //currentUser = 채팅을 입력하는 사람은 누구 onSend: (ChatMessage m) { setState(() {// setState = 현재 화면의 상황을 업데이트 해준다라고 이해하며 됨 messages.insert(0, m); //messages.insert = 메세지 전송 현재 사용자가 입력한 텍스트를 대화창으로 보내는 역할 ,리스트가 추가되는 거죠 }); Future<String> data = sendMessageToServer(m.text); //입력한 메세지를 받아서 서버에 전송을 해주고 data.then((value){ //결과값을 비동기(?) 형태로 받아와서 user2(chatgpt)가 발화(이야기)하고 통신 결과값을 출력하는 setState(() { messages.insert(0, ChatMessage( text: value, user: user2, createdAt: DateTime.now() )); }); }); }, messages: messages, inputOptions: InputOptions( leading: [ IconButton( icon: Icon(Icons.mic, color: isListening? Colors.red: Colors.black), //음성을 듣고있는 상태면 버튼누름 빨강 / 아니면 기본 검정 onPressed: (){ //아이콘이 눌러진다면 setState(() { //상태를 바꿔줘 isListening = !isListening; // 리스닝이 아닌 상태에 검정이 리스닝 상태인 빨강으로 바뀌는 처리 if (isListening == true){// 음성입력 대기 상태가 되면 print('음성인식 시작'); //폴스였다 트루가 되면 _startListening(); }else{ print('음성인식 끝'); // 트루였다가 풀스 _stopListening(); } }); }, ) ] ), ), ); } //통신을 할 수 있는 코드 = postman에서 테스트를 하면서 코드를 얻은것임,약갼의 수정을 해준것뿐 //json의 어떤 부분을 가져와야하는지 전체를 뿌릴순 없으니 추출하는 부분만 추가한것임 Future<String> sendMessageToServer(String messages) async{ var headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer sk-UGIfeFKyAXIhwIXdM3uf96g176CRFnw5AnHJ2acSpyT3BlbkFJmhIKdmcjh56e01G0Axc5xF9scspNoz_MsXuZPUGW8A', }; var request = http.Request('POST', Uri.parse('https://api.openai.com/v1/chat/completions')); request.body = json.encode({ "model": "gpt-4o-mini", "messages": [ { "role": "user", "content": messages, } ] }); request.headers.addAll(headers); http.StreamedResponse response = await request.send(); if (response.statusCode == 200) { String responseString = await response.stream.bytesToString();//json 문자열들이 string 변수에 저장이 된다 Map<String, dynamic> jsonResponse = json.decode(responseString);//responseString을 json 구조에 맞게 변환을 시킨게 jsonResponse가 된다 -> json 구조대로 입맞에 맞게 값을을 골라올수있음 String result = jsonResponse['choices'] != null? jsonResponse['choices'][0]['message']['content']: "No result found"; print(responseString); // 전체 내용 출력, 터미널 화면에서만 출력이 됨 실제 앱에서 출력되지 않음 그래서 return "ERROR"; 을 가지고있어야함 //message = 결과값 부분만 추출 , result라는 String에 저장 // 'choices' 조건문 return result; //함수를 호출한곳에서 사용을 할 수 있다 //print(await response.stream.bytesToString()); //await response.stream.bytesToString() = 실제 결과값 } else { print(response.reasonPhrase); return "ERROR"; // 오류가 날 경우 화면에서도 오류가 난걸 확인할 수 있게 해줌 } } /// This has to happen only once per app void _initSpeech() async { //초기화 하는 함수 , 마이크 같은 디바이스를 사용하기 떄문에 필요 print("음성인식 기능을 시작합니다."); _speechEnabled = await _speechToText.initialize(); //setState(() {}); } /// Each time to start a speech recognition session void _startListening() async { // start를 하게 되면 _onSpeechResult 부분을 동작을 시킴 print("음성인식을 시작합니다."); await _speechToText.listen(onResult: _onSpeechResult); //setState(() {}); } /// Manually stop the active speech recognition session /// Note that there are also timeouts that each platform enforces /// and the SpeechToText plugin supports setting timeouts on the /// listen method. void _stopListening() async { // 음성 인식 중지 print("음성인식을 종료합니다."); await _speechToText.stop(); //setState(() {}); } /// This is the callback that the SpeechToText plugin calls when /// the platform returns recognized words. void _onSpeechResult(SpeechRecognitionResult result) { _lastWords = ""; //초기화 시킴 , 입력을 받을떄마다 새롭게 리셋해야하기 떄문에 추가 if(result.finalResult){ //최종인식 _lastWords = result.recognizedWords; //result에 recognizedWords를 _lastWords에 넣어줘 print("최종 인식된 문장: $_lastWords"); //flutter 에서는 변수를 텍스트 안에 넣어줄때 $를 넣고 일반 텍스트문자영하고 변수가 가티 출력됨 / 최종 인식된 음성을 텍스트로 바꿔서 _lastWords 넣어줘 setState(() { //messages 리스트에 인식한 내용을 추가해줘. messages.insert(0, ChatMessage( text: _lastWords, user: user1, createdAt: DateTime.now() )); }); Future<String> data = sendMessageToServer(_lastWords); //입력한 메세지를 받아서 서버에 전송을 해주고 data.then((value){ //결과값을 비동기(?) 형태로 받아와서 user2(chatgpt)가 발화(이야기)하고 통신 결과값을 출력하는 setState(() { messages.insert(0, ChatMessage( text: value, user: user2, createdAt: DateTime.now() )); }); flutterTts.speak(value); // value를 바로 읽어줌 }); } } }
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
파이썬 내장타입과 메서드-2
집합형 메서드 9:13 마지막부분 my_set.clear()print(my_set)의 답이 set()인 어색합니다.my_set() 아 아니고 set()인 이유가 있나요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] 번외편: AWS로 시작하는 서버 운영
AWS 요금 부과 질문 드립니다.
안녕하세요?지난 달 이 강의 들으면서 실습했는데 요금이 소액 부가되었습니다.다른 불만이 있는 것은 아니고,왜 요금이 부과되었고, 나중에 어떻게 사용할지 알고 사용하고 싶어서 질문 드리게 되었습니다.강의에서 이해한건 프리티어 한도 내에서 사용하면 무료다 라고 이해했는데 아래 영수증 설명을 받을 수 있을까요? 이미지가 좀 작게 나오네요; 우클릭 > 새 탭에서 보기로 크게 보실 수 있으세요
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
파이썬_내장타입과 메서드-2
7:30 사전형 메서드에서 답을 표기할때 여러가지 형태의 괄호를 붙이고 안붙이는 규칙을 알고 싶습니다.예를 들면get()메서드print(my_dict.get("name))에는 아무 괄호가 안 붙고pop()메서드 마지막 print(my_dict)에는 중괄호가 붙는 부분이 아직 익숙하지 않습니다.
-
해결됨[iOS] Swift Modern Collection View & MVVM 패턴 가이드
bind, signal, drive 사용
안녕하세요. 강의 잘 듣고 있습니다.rxsiwft를 독학 중에 UI와 관련된 driver, signal이 있다는 것도 알게 됬습니다.그런데 강의 중 bind만 사용하시는 이유가 따로 있을까요?또한 실무에서 어떤 방식을 주로 사용하는지 알고 싶습니다.
-
미해결[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]
192.168.0.12:8085??
http://127.0.0.1:8085 ==> 127.0.0.1는 로컬로 알고 있는데... http://192.168.0.12:8085 ==> 이 번호는 뭘 의미하는지요?
-
미해결
http://192.168.0.12:8085 ??
127.0.0.1:8085는 로컬 이라고 알고 있는데,,그 아래 192.168.0.12:8085 는 뭘 의미하나요? 이것도 로컬인가요??
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
생성메서드에 대한 질문입니다.
제가 강의를 듣다가Order 엔티티의 생성메서드의 파라미터에는 OrderItem의 리스트가 넘어오고,OrderItem 엔티티의 생성메서드의 파라미터에는 Item 객체가 넘어오는데 각각 Order 엔티티의 생성메서드에 OrderItem 리스트가 넘어오는 이유는 주문상품이 있어야 주문이 있기 때문이고, OrderItem 엔티티의 생성메서드에 Item 객체가 넘어오는 이유는 상품이 있어야 주문상품이 있기 때문이라고 이해하면 될까요??