목록분류 전체보기 (385)
만족
Process란 무엇인가? 간단히 말해, 실행중인 프로그램(running process)를 말한다. 잠깐 혼동할 수 있는 개념을 정리하자면 Program: Storage에 저장된 instruction들의 집합Process: Memory에 code, register, data등이 load되어 실행중인 ProgramProcessor: Process를 실행시키는 Hardware Overview: Multi-Process 여러 개의 작업을 실행시켰을 때, 마치 여러 개의 작업이 동시에 실행되는 것 처럼 보인다. 그러나 실제로는 한 번에 하나의 작업(one task at once time)을 실행시킨다. Time Sharing이라는 기법을 이용하여, 아주 짧은 시간마다 작업을 번갈아가면서 실행하기 때문에 마치 동..
다른 라이브러리를 사용하지 않고, Java Code로 View에 Listener를 추가한다면코드는 다음과 같은 형태가 될 것이다. View exampleView= findViewById(R.id.exampelView);exampleView.setOnClickListner(new View.OnClickListener(){@Overridepublic void onClick(View view){Toast.makeText(getApplicatiponContext(), "Click", Toast.LENGTH_LONG).show();}} 만약 exampleView를 현재 메소드에서만 사용하는 것이 아니라면 외부로 다시 빼내어서 View exampleView;// Some Codes...exampleView= fin..
수능 수학을 대비함에 있어, 기출문제는 가장 중요한 요소 중 하나입니다. 어쩌면 수학은 EBS 연계보다 기출문제가 더 중요하다고 여겨질 정도로, 다른 과목보다 그 중요성이 매우 큽니다. 그러나 그것을 학습함에 있어, 기출문제집을 구매하거나 인쇄해서 푸는 방법 외에는 다른 학습법이 딱히 없습니다. 특정 업체에서 구매할 수도 있지만, 경제적으로 많은 부담이 되는 것이 현실입니다. 하위권 학생들에게도, 그리고 상위권 학생들에게도 모든 학생들에게 현실적이고 경제적으로, 그리고 효율적으로 도움이 되는 앱 수능 수학 종결자를 소개합니다. 수능 수학 종결자는 다음과 같은 기능을 가지고 있습니다. 1. 원하는 조건(정답률, 출제기관 등)의 문제를 랜덤하게 생성 2. 원하는 문제를 직접 검색 가능 3. 시험 응시 가능 ..
브라우저 성능을 향상하기 위해 읽기 전용 및 비실시간 모드를 활성화했습니다.실시간으로 수정하거나 보려면 레코드가 더 적게 포함된 키를 선택하세요. 본인의 경우 게시판을 만들었는데, 테스트를 위해 한번에 10000개의 객체를 파이어베이스에 우겨넣은 뒤 이 문제가 발생하였다. 원인은 의외로 간단하다. 이 오류가 뜬 Database의 JSON을 받아 보면 상당히 큰 용량을 차지하는 것을 알 수 있다. 이것을 RealTime으로 웹에서 보려면 PC에 상당한 부하가 걸리게 될 것이기 때문에 파이어베이스 자체적으로 막은 것이다. RealTime Database를 이용하고 싶다면, child수가 작은 노드로 들어가거나 child를 임의로 remove해주는 방법이 있다. 물론 웹에서 실시간으로 수정이 불가능하므로, j..
Firebase에서 단일 객체에 대해 I/O를 할때는 딱히 어려움을 겪을 일이 없다 그러나 ArrayList와 같은 배열 객체를 I/O할때는 주의해야 한다. 위와 같은 형태로 데이터베이스가 구성되어 있다고 하자. 겉보기에는 ExArray1과 ExArray2의 내용은 같은 것 처럼 보인다. 그러나 JSON 내보내기 기능을 이용해서 JSON 파일을 살펴보면 처럼 ExArray1과 ExArray2는 저장방식이 조금 다르다는 것을 알 수 있다. 형태가 다르면, 당연히 데이터를 가져올 때에도 서로 다른 방식으로 가져와야 한다. ExArray1의 경우 ArrayList으로 가져온다. 가져올 때 Object타입으로 가져왔으므로 그것을 ArrayList으로 캐스팅해서 사용하면 되는 것이다. ExArray2의 경우 Ha..
어떤 listener들의 method는 boolean값을 return한다. 이 return value가 의미하는 것은 true //다음 listener를 호출 불가능하게 한다false //다음 listener를 호출 가능하게 한다. 예를 들어서 ListView의 각각의 Item들에 LongClick listener와 Click listener가 적용되어 있다면 LongClick이 끝난 뒤에 Click이 실행되게 되는데 만약 LongClick에 정의한 행동만을 실행하고 싶다면 LongClick Listener의 메소드의 리턴값을 true로 전달하면 된다. 그렇게 하면 다음 Listener로 흐름이 넘어가지 않는다.
참고 https://academy.realm.io/kr/posts/constraintlayout-it-can-do-what-now/ https://academy.realm.io/kr/posts/cool-constraintlayout-droidcon-boston-2017/ 요약 ConstraintLayout은 RelativeLayout과 비슷한 역할을 할 수 있게 고안된 Layout이다. 그러나 RelativeLayout은 연산속도에 있어서 계속해서 부모 컨테이너와의 관계를 계산하기 때문에 문제가 있지만 ConstraintLayout은 새로운 알고리즘을 사용하여 연산속도가 Linear하기 때문에 RelativeLayout보다 우수한 성능을 가질 수 있다. 그러나 굳이 모든 dev environment에서 ..
"English Explain exist below.Please Scroll Down" 파이어베이스는 서버가 필요하지만 번거롭거나, 백엔드 지식이 없을 때 사용할 수 있는 편리한 기능을 제공한다. 하지만 API에 있는 정보만으로는 원활한 개발에 상당히 어렵다는 것을 느낀 사람이 많을 것이다.(가이드는 친절하지만 종종 더 자세한 설명을 얻고 싶을 때 API에서 찾아보면 "한 줄 설명"이 꽤나 많기 때문이다...)(물론 그렇지 않은 사람도 많을 것이다.) 특히 데이터베이스의 데이터 입출력에 관해서, 데이터를 가져오는 경우 set메소드가 존재하지만데이터를 내보낼 때는 get이 아닌 Listener를 활용하기 때문이다. 그래서인지 즉각적으로 데이터를 교환하기가 상당히 까다롭고, 검색으로도 해답을 찾기 상당히 힘..