묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
메모리와 프로세스와 CPU
초창기 강의에서메모리와 CPU에대해서 설명해주셧을때 메모리(RAM)는 프로세스(현재 실행중인 프로그램)에 데이터와 명령어를 저장한다고 하였다고 들었습니다.프로그램이 실행하려면 메모리에 저장이 되어야한다고 이해가 안가는게 프로그램을 실행한다는건 CPU가 메모리에있는 데이터를 가지고와서 그 프로그램에 데이터와 명령어를 해석한후 동작을 시켜야 프로그램이 실행되는거 아닌가요? 그이후에 프로그램이 실행되면 거기에대한 명령어와 데이터가 저장되는거 아닌가요? 애초에 CPU가 명령어를 해석하고 동작시키기전에 메모리에 프로세스의 데이터들이 저장이 될 수가 있나요? 이 프로세스 즉, 현재 실행중인 프로그램 이라는 단어때문에 굉장히 애매모호 해지네요
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
컴포넌트 props 질문
자잘하게 궁금한게 있으면 여러방식으로 직접해보고는 하는데요 아래의 코드처럼 {...["a", "b", "c"]} 이렇게 props를 전달했을 때 console에는 {0: "a", 1: "b", 2: "c"} 이렇게 없던 배열값의 키값이 생겼습니다. 짐작하기로는 index 위치가 key값이 된 것 같기는 한데 왜 이렇게 되는지 궁금합니다.ex) parent/index.tsximport Child from "./child/index.tsx"; export default function Parent(): JSX.Element { return <Child {...["a", "b", "c"]} />; }ex) parent/child/index.tsxexport default function Child(props: any): JSX.Element { console.log(props); // {0: "a", 1: "b", 2: "c"} return <></>; }
-
해결됨딥러닝 CNN 완벽 가이드 - TFKeras 버전
가중치 초기화(Weight Initialization) 질문입니다.
안녕하세요 교수님, CNN 강의와 같은 좋은 수업 감사드립니다.다름이 아니라 가중치 초기화를 공부하다가 생긴 궁금증에 질문 글을 달아봅니다.교수님께서 강의 하실 때 평균이 0, 표준 편차 1인 표준 정규 분포에서 Weight 초기화시 sigmoid 출력이 대부분 0과 1로 수렴하신다고 하셨는데이렇게 되는 이유가 평균이 0, 표준 편차가 1인 표준 정규 분포에서 Weight를 초기화하면 처음에 Weight값이 너무 작거나 혹은 너무 큰 값들로 배정되기 때문에 저렇게 되는 걸까요?즉, Weight값이 -1 ~ 1까지의 값들 중 임의로 배정되기 때문에 그런건가요?반대로 Sigmoid 출력이 대부분 0.5로 수렴하는 경우에는 -0.01 ~ 0.01중 Weight 값이 결정되기 때문에 그런걸까요?
-
해결됨[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Flutter daemon terminated 오류
안녕하세요 코팩님!간만에 플러터 다시 해보는데 계속 에러가 떠서 질문드립니다.새로운 프로젝트 생성하면 Flutter daemon terminated Consider re-starting Android Studio라는 알람이 뜨고에뮬레이터 선택하는 칸이 사라집니다.핫리로드나 핫리스타트로 실행시켜보면No connected Devices Found 라는 에러가 뜹니다.cmd로 flutter doctor -v 해보면 아무 문제 없다는데안드로이드 스튜디오 터미널 상에서 flutter doctor -v 해보면 Connected device ( the doctor check crashed) ~~~라는 문제 하나가 발견되네요...(위가 cmd상, 아래가 안드로이드 스튜디오 터미널상) 컴퓨터 뿐만 아니고 안드로이드 스튜디오도 여러번 재부팅 해봤고디렉토리 중간에 한글이 있어서 그런가 싶어 디렉토리도 영어로만 되어있는 곳으로도 해봤는데 계속 같은 문제가 나옵니다.. 뭐가 문제일까요??
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-L 이해가 안되는 부분이 있습니다.
안녕하세요. 큰돌님. 이 문제는 제가 직접 풀지 못해서 선생님 답안을 보고 익히고 있는 중 궁금한 게 생겨서 질문 남깁니다.for문을 나오면 있는 끝점을 계산하는 코드입니다.마지막에 이긴 팀을 기준으로 끝점을 계산하는 게 아닌득점을 많이 한 팀 기준으로 끝점을 계산하신 이유가 궁금합니다
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
jenkins 설치 후 실행 오류 질문 드립니다.
안녕하세요.답변부탁드립니다. 감사합니다. 아래의 명령어로 jenkins를 설치 하였습니다.===================================================================docker run -d -p 8080:8080 -p 50000:50000 --name jenkins-server --restart=on-failure -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts-jdk11 ===================================================================설치 후 docker logs 명령어로 확인해 보니 첨부한 이미지와 같이 오류들이 보입니다. 이대로 진행되도 되는 것인지요?
-
미해결[초중급편] 안드로이드 데이팅 앱 만들기(Android Kotlin)
Notification 구현시 컴파일에러
class MainActivity : AppCompatActivity() { lateinit var cardStackAdapter: CardStackAdapter lateinit var manager : CardStackLayoutManager private val TAG = "MainActivity" private val usersDataList = mutableListOf<UserDataModel>() private var userCount = 0 private val uid =FireBaseAuthUtils.getUid() private lateinit var currentUserGender : String private val REQUEST_CODE = 123 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val isTiramisuOrHigher = Build.VERSION.SDK_INT>= Build.VERSION_CODES.TIRAMISU val notificationPermission = Manifest.permission.POST_NOTIFICATIONS var hasNotificationPermission = if (isTiramisuOrHigher) ContextCompat.checkSelfPermission(this,notificationPermission) == PackageManager.PERMISSION_GRANTED else true val launcher = registerForActivityResult(ActivityResultContracts.RequestPermission()){ hasNotificationPermission = it } if(!hasNotificationPermission) { launcher.launch(notificationPermission) } val setting = findViewById<ImageView>(R.id.settingIcon) setting.setOnClickListener{ // val auth = Firebase.auth // auth.signOut() // val intent = Intent(this,SettingActivity::class.java) startActivity(intent) } val cardStackView = findViewById<CardStackView>(R.id.cardStackView) manager = CardStackLayoutManager(baseContext,object : CardStackListener{ override fun onCardDragging(direction: Direction?, ratio: Float) { } override fun onCardSwiped(direction: Direction?) { if(direction == Direction.Right){ userLikeOtherUser(uid,usersDataList[userCount].uid.toString()) } if(direction == Direction.Left){ } userCount = userCount + 1 if(userCount == usersDataList.count()){ getUserDataList(currentUserGender) Toast.makeText(this@MainActivity,"유저 리스트를 새롭게 받아옵니다.",Toast.LENGTH_SHORT).show() } } override fun onCardRewound() { } override fun onCardCanceled() { } override fun onCardAppeared(view: View?, position: Int) { } override fun onCardDisappeared(view: View?, position: Int) { } }) cardStackAdapter = CardStackAdapter(baseContext,usersDataList) cardStackView.layoutManager = manager cardStackView.adapter = cardStackAdapter // getUserDataList() getMyUserData() } private fun getMyUserData(){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { val data = dataSnapshot.getValue(UserDataModel::class.java) Log.d(TAG,data.toString()) currentUserGender = data?.gender.toString() getUserDataList(currentUserGender) } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } FireBaseRef.userInfoRef.child(uid).addValueEventListener(postListener) } private fun getUserDataList(currentUserGender : String){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { // val post = dataSnapshot.getValue<Post>() for(dataModel in dataSnapshot.children){ val user = dataModel.getValue(UserDataModel::class.java) if(!user!!.gender.toString().equals(currentUserGender)){ usersDataList.add(user!!) } } cardStackAdapter.notifyDataSetChanged() } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } FireBaseRef.userInfoRef.addValueEventListener(postListener) } private fun userLikeOtherUser(myUid : String, otherUid : String) { FireBaseRef.userLikeRef.child(myUid).child(otherUid).setValue("true") getOtherUserLikeList(otherUid) } private fun getOtherUserLikeList(otherUid : String){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { // 여기 리스트에서 나의 UID가 있나 확인 필요 for(dataModel in dataSnapshot.children){ val likeUserKey = dataModel.key.toString() if(likeUserKey.equals(uid)){ Toast.makeText(this@MainActivity,"매칭완료",Toast.LENGTH_SHORT).show() createNotificationChannel() sendNotification() } } } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } FireBaseRef.userLikeRef.child(otherUid).addValueEventListener(postListener) } // 알림 private fun createNotificationChannel() { // Create the NotificationChannel, but only on API 26+ because // the NotificationChannel class is not in the Support Library. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { // 채널 이름 val name = "name" val descriptionText = "description" val importance = NotificationManager.IMPORTANCE_DEFAULT val channel = NotificationChannel("TestChannel", name, importance).apply { description = descriptionText } // Register the channel with the system. val notificationManager: NotificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager notificationManager.createNotificationChannel(channel) } } private fun sendNotification(){ var builder = NotificationCompat.Builder(this, "TestChannel") .setSmallIcon(R.drawable.ic_launcher_background) .setContentTitle("My notification") .setContentText("Hello World!") .setPriority(NotificationCompat.PRIORITY_DEFAULT) .setCategory(NotificationCompat.CATEGORY_MESSAGE) with(NotificationManagerCompat.from(this)){ notify(123,builder.build()) } } }안녕하세요. 알림기능 구현하는데notify(123,builder.build()) 위 부분에서 Call requires permission which may be rejected by user: code should explicitly check to see if permission is available (with checkPermission) or explicitly handle a potential SecurityException 이런 에러가 아직도 발생하고있는데 어떻게 해결할수 있을지 자세한 답변을 부탁드려도될까요? 구글링 해봤는데 명확히 어떤코드 입력해서 컴파일에러를 지울 수 있을지 모르겠습니다. 빠른답변 부탁드리겠습니다.
-
미해결김영한의 실전 자바 - 기본편
기본형참조형 문제풀이
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]문제 풀이 중 gettotalamount 메서드 부분에서 인트(int)반환을 돌리는 것과 보이드(void) 반환타입이 없게 해서 sysoutprint 를 바로 적어서 하는 것 차이는 뭔가요?
-
미해결핸즈온 리액트 네이티브
FirebaseError: auth/already-initialized
안녕하세요, 8강 끝부분을 따라가고 있는 중입니다. 프로젝트에서 npm start 해놓고 expo go 어플로 실시간으로 확인하면서 작업을 진행 중인데요, 새로고침 할 때(r눌러서)는 괜찮은데, VS Code에서 저장을 해서 자동으로 리랜더링 될때마다 아래와 같은 에러 메세지가 콘솔 창에 나타납니다.[FirebaseError: Firebase: Error (auth/already-initialized).] 특별히 뭐가 안되거나 하는건 아닌데... r 눌러서 아예 앱을 새로고침하면 뜨지않습니다. 어디선가 중복으로 초기화하고있다는 뜻일까요? firebase.js 파일 코드 첨부합니다! 추가로 보여드려야 하는 다른 코드가 있다면 말씀 부탁드립니다. screen 부분은 제가 다르게 가져가고 있는데 이 외에 기능부분에 대한 것들은 강의와 동일하게 진행 중입니다. firebase.jsimport { initializeApp } from 'firebase/app'; import { firebaseConfig } from '../../env'; import { getReactNativePersistence, initializeAuth } from 'firebase/auth'; import AsyncStorage from '@react-native-async-storage/async-storage'; export const initFirebase = () => { // Initialize Firebase try { const app = initializeApp(firebaseConfig); initializeAuth(app, { persistence: getReactNativePersistence(AsyncStorage), }); return app; } catch (e) { // eslint-disable-next-line no-console console.error(e); } };
-
해결됨실무에 바로 적용하는 프런트엔드 테스트 - 1부. 테스트 기초: 단위・통합 테스트
shopping-mall-integration-test 브랜치에 이상한 점 발견
4.6 RTL 비동기 유틸 함수를 통한 노출 테스트 작성 강의 수강중 문제 발견shopping-mall-integration-testshopping-mall-integration-test-answer 두 브랜치 사이에 테스트 코드가 아닌 부분이 차이가 있는 것을 발견했습니다. ProductCard.jsx 파일강의 내용과는 상관 없는 부분이 소스코드가 달라서에러가 발생하는 것을 확인했습니다. 이마저도 테스트 코드를 통해 검증하긴 했지만처음에는 제가 테스트 코드가 익숙치 않아 잘못하고 있는 건가 싶었네요. 해당 부분 확인 한번 부탁드릴게요.
-
해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
deleteAt() 질문
// 변경 전 for (let i=0; i < index - 1; i++) { currentNode = currentNode.next; } let deleteNode = currentNode.next; currentNode.next = currentNode.next.next; // 변경 후 for (let i=0; i < index; i++) { currentNode = currentNode.next; } let deleteNode = currentNode; currentNode = currentNode.next;deleteAt()의 나머지 노드에서 삭제 구현 코드에서 '변경 후'와 같은 코드는 제대로 삭제되지 않는 이유가 무엇인가요? 똑같이 동작할거라 생각하고 임의로 변형해봤는데 값에 변화가 없네요.변경 전의 currentNode.next.next 와 변경 후의 currentNode.next 둘 다 값이 없어 참조하지 않는 건 똑같은데..currentNode.next를 참조할 값이 없게 하는거랑currentNode를 참조할 값이 없게 하는거랑 다르게 처리되는건가요?아니면 아예 다른 포인트에서 틀린건지.. 궁금합니다
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
nbextension 설치 및 셋팅 후 적용이 안되는 이슈
말씀주신 내용을 아래와 같이 따라해서 설치했는데 체크박스에 체크하고 재시작 해도 확장 기능이 적용이 안되네요....jupyter contrib nbextension install --userjupyter nbextensions_configurator enable --userpip install jupyter_contrib_nbextensions && jupyter contrib nbextension사진 보시면 파라미터 설정하는 구간도 안뜨는 것 같습니다.
-
미해결SVG 마스터
곡선에 따라 글자쓰기에서 path 대신 circle은 안되나요?
<svg width="500" height="500" xmlns="http://www.w3.org/2000/svg"> <style> .svg-circleText {font-size: 1.5rem; font-weight: bold; fill: red;} .svg-circleText tspan {display: inline-block; margin-right: 30px;} </style> <defs> <circle id="text-circle" cx="250" cy="250" r="240" stroke="blue" fill="transparent" /> </defs> <text x="20" y="20" class="svg-circleText"> <textPath href="#text-circle"> <tspan>My Work</tspan><tspan>My Work</tspan><tspan>My Work</tspan> <tspan>My Work</tspan><tspan>My Work</tspan><tspan>My Work</tspan> <tspan>My Work</tspan><tspan>My Work</tspan><tspan>My Work</tspan> </textPath> </text> </svg>위처럼 circle로 하고싶은데 나오지 않습니다. 각각 따로 하면 circle도 잘 보이고 글자도 잘 보입니다. 하지만 id와 textPath를 사용하여 연결하면 보이지 않습니다ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
왜 train 데이터만 fit_transform 하는지요?
안녕하십니까? 계속 궁금해서요.. 왜 train 데이터만 fit_transform 하고test 데이터는 그냥 transform 하는 건지요?test 데이터도 fit_transform하면 어떻게 되는거진요?항상 자세한 설명에 감사드립니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
for문과 출력문을 나누지않고 한 문단에 작성하면 안될까요?
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.리팩토링 2 강의에서 마지막 int i 를 선언하는 영상에서는 조건식선언 따로 작성하시고 출력문을 따로작성하셨는데작성한 코드처럼 한번에 조건식에서 출력까지 한번에 가면 안되는 이유라도있을까요? 아니면 버그발생이 쉽게나오기 때문인가요?두 코드의 차이가 알고싶습니다.package Array; public class Arraydi4 { public static void main(String[] args) { //2x3 2차원 배열생성 int[][] arr = new int[10][10]; //2행 3열 int i = 0; for (int row = 0; row < arr.length; row++) { for (int culum = 0; culum < arr[row].length; culum++) { arr[row][culum] = i++; System.out.print(i + " "); } System.out.println(); } } }
-
미해결기초부터 따라하는 디지털포렌식
USB.001 파일이 다운이 안됩니다.
쉽게 따라하는 삭제파일 복구 중에 USB.001 다운하려고 들어갔는데 드라이브가 만료됐다네요,, 해결 부탁드립니다.
-
미해결김영한의 실전 자바 - 기본편
참조값에 대한 질문입니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.제가 제대로 이해했는지 답변 부탁드립니다.Student student1 = new Student(); 이부분에서 Student 클래스에 새로운 객체가 생성되고 student1라는 변수에는 생성된 객체가 아닌 객체의 참조값(메모리에 저장된 위치)이 저장된것이 맞나요?students[0] = student1; 에서는 student1에는 참조값이 들어가있는 상태이고 students[0]에 student1의 참조값이 그냥 대입되는 것이 아니라 복사된 참조값이 대입된다는 것이 맞나요? 결과적으로 김영한님이 주의해야한다는 것이 정확히 무언이지를 모르겠습니다. 12:00의 주의! 변수에는 인스턴스 자체가 들어가있는 것이 아니다! 부분에서 인스턴스가 복사되어 대입되는것 이라고 생각하더라도 문제가 될 것이 있나요?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
자원을 식별하는 url
URL은 행위가 아닌 자원을 식별해야한다는 점 잘 이해했습니다.그런데 지금 제가 토이프로젝트를 진행중인데요.인증이 필요한 api와 인증이 필요없는 api를 구분하고자 스프링 시큐리티를 사용중입니다.예를 들어 네이버가 대표적으로 위와 같을 것 같은데, 로그인을 하지 않아도 기본적인 조회활동은 가능하지만 댓글,게시글,메일 등은 인가가 필요하죠.이러한 인증의 필요성을 구분할때 url패턴으로 구분을 하고싶은데예를 들어 /private/mail , /public/products으로 구분한다면 자원을 식별한다는 원칙에 어긋나는 걸까요..?의미를 가지긴하지만 서버측의 자원을 식별한다는 의미는 아니여서 이런 경우는 부적절한걸까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
엔티티 노출을 피하라.
현재 스프링 로드맵부터 시작하여 JPA 로드맵까지 완강하고, 한 프로젝트에 쭈욱 적용해보며 다시 복습하고 있는 취준생입니다!! 학습한 내용 중에 (JPA 로드맵 중) 엔티티 노출은 최대한 피하여 DTO로 변환해 화면에 보여주거나, API 스펙에 맞추어 내려준다 라고 배웠었는데요. MVC2 프로젝트안에 저장할 때의 ItemSaveForm(dto), 수정할 때의 ItemUpdateForm으로 나누어 각각 저장, 수정할 때 dto로 사용하고 있습니다. 이때, 상품 상세, 상품 수정 등 GetMapping으로 저장된 객체를 불러올 때에 새로운 Dto클래스를 만들어 새로운 Dto 클래스에 바인딩하는 코드로 짜주는 것이 맞나요??
-
미해결바닥부터 시작하는 STM32 드론 개발의 모든 것
드론 프레임 모터 프로펠러 결정
S500 쿼드콥터 드론 PDB 에디션 Kit - 카본 랜딩기어 포함 - 프레임[RTS] S2312-920KV Motor for F450/F550/S500/TBS500 Multicopter(CCW/HP/V3) - 모터(반시계)[RTS] S2312-920KV Motor for F450/F550/S500/TBS500 Multicopter(CW/HP/V3) - 모터(시계)[GT-Drone] EC-X3 ESC for Multicopters (30A/OPTO/COB/6S) - ESC[TR] 9x4.5 자동 잠금 프로펠라 (DJI/Universal Type) - White - 프로펠러원래 기존 강의에서 설명해주신 드론 크기보다 좀 더 크게 제작을 해보고 싶어서 이렇게 부품을 선정해봤는데 혹시 돌아가는데에 문제가 없을까요?위에 올라와 있는 부품 외에는 강의에서 올려주신 부품들 그대로 사용할 예정입니다!https://www.falconshop.co.kr/shop/goods/goods_view.php?goodsno=100003772#tle6부품 사이트입니다!보드는 구매 완료한 상황입니다.그리고 혹시 부품들 사용이 안되면 드론 사이즈 키울 수 있는 사용 가능한 부품들도 알려주시면 감사하겠습니다.긴 글 읽어주셔서 감사합니다!