반응형

분류 전체보기 134

[Android Studio] 영어단어 앱 만들기 - 세부 기능

스마트폰 기기의 버튼을 구성하는 메소드로 이를 Overriding해서 활용. @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add(0, 1, 0, "sound on"); menu.add(0, 2, 0, "sound off"); menu.add(0, 3, 0, ""); menu.add(0, 4, 0, ""); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()) { case 1: StudyView.soundOk = 1; break; case 2: StudyView.soundOk = 0; break; defaul..

Android/study_til 2020.12.13

[Android Studio] 영어단어 앱 만들기

영어단어 앱 EnglishDictionary DB를 활용해 [내단어장]에 저장하거나 [카카오톡]으로 친구와 문제를 공유할 수 있는 영어단어 앱을 제작합니다. 이번 예제는 Android 환경에서 DB 활용, SNS 공유기능을 익히는 것이 목적입니다. 기본적으로 책에서 제공하는 이미지와 .txt 파일로 구성했습니다. 1. txt 파일 내용 확인 전체 .txt파일은 res/raw폴더에 저장, toeic.txt파일을 예로 들면 내용은 다음과 같다. 1 : 비평, 비판 : sympathetic : criticism : secondarily : guard : 2 : *sympathetic 동정적인, 공감하는 *criticism 비평, 비판 : *secondarily 종속적으로, 두 번째로 *guard 지키다, 경계..

Android/study_til 2020.12.13

[Android Studio] 미니 그림판 제작하기

미니 그림판 제작 Project 이번에는 xml파일과 View 클래스를 함꼐 활용해서 미니 그림판을 제작하겠습니다. xml파일 윗 부분에는 붓의 크기 조절 및 색상 선택 버튼, 초기화 버튼을 배치하고, 아래 부분은 커스텀 뷰가 오도록 하겠습니다. 이를 위해 View 클래스를 상속받는 클래스를 내부 클래스가 아닌 독립된 클래스로 제작하겠습니다. 처음부터 activity_main.xml과 MainActivity.java를 코딩하면 에러가 뜨기 때문에 MyView 클래스를 먼저 만드는 것을 추천드립니다. package com.example.mathgraphic; import android.content.Context; import android.graphics.Canvas; import android.grap..

Android/study_til 2020.12.01

[Android Studio] 기본 지식 배우기 - 4

1. 버튼을 활용한 덧셈 앱 만들기 지금까지 배운 것들을 활용해 간단한 덧셈 프로젝트를 제작해보겠습니다. package com.example.basicsum; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class MainActivity extends AppCompatActivity { EditText input1, input2; TextView result; Button b1; @Overri..

Android/study_til 2020.11.30

[Android Studio] 기본 지식 배우기 - 3

3. 이벤트 처리하기 3-1. View 클래스를 상속받아서 처리하기 package com.example.mywork00; import androidx.appcompat.app.AppCompatActivity; import android.content.Context; import android.graphics.Color; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInst..

Android/study_til 2020.11.27

[Android Studio] 기본 지식 배우기 - 2

1. 사용자 인터페이스 이해하기 UI는 사용자와 상호작용할 수 있는 Activity에서 이루어지며 이를 작성하는 방법은 3가지가 있다. xml파일로만 화면 구성하기, 코드로 UI구성하기, 코드와 xml파일을 함께 사용하기. 첫번째 포스팅에서 xml파일로만 화면을 구성하는 방법을 배웠다. 이번에는 java코드로 화면 구성한다면 다음과 같이 사용할 수 있다. package com.example.mywork00; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.Te..

Android/study_til 2020.11.26

[Android Studio] 기본 지식 배우기 - 1

안드로이드 스튜디오를 활용한 실전 앱 만들기라는 책을 토대로 공부하고 있습니다. 앞으로 이 책을 공부하며 관련 내용을 포스팅 하도록 하겠습니다. 기본적인 툴(JDK, SDK)과 Android Studio를 설치하는 것은 넘어가겠습니다. 이번 포스팅은 Project생성과 icon, layout변경하기입니다. 1. Project 생성하기 Project생성에 성공하면 다음과 같은 화면이 생성됩니다. 이때 좌측의 목록을 보면 다양한 폴더를 확인할 수 있는데, 각각의 폴더의 역할은 아래와 같습니다. manifests: 앱의 많은 정보를 담고 있으며, Activity를 만들 때마다 이곳에서 등록을 해주어야 합니다. 한 화면을 구성하는 Activity가 많을 때, 처음 실행될 Activity를 설정할 수 있습니다. ..

Android/study_til 2020.11.25

[Crawling] Python을 활용한 동적 웹 크롤링 구현하기

크롤링이란? 간단히 말하자면, 인터넷에 있는 정보들을 자동으로 수집하는 행위를 말합니다. 지난 9월에 데이터 수집 업무를 맡았었습니다. 예전 같았으면 인터넷에서 하나씩 검색해서 엑셀에 저장했을텐데 나름 개발자라고 크롤링하면서 편하게 업무 처리했네요. 그래서 실제로 제가 어떻게 크롤링을 업무에 활용했는지 소개해드리고자 합니다. 가장 먼저 Python과 IDE설치 및 pip를 설치해서 개발 환경을 구축했습니다. 이 부분은 직접 구글링하시는 걸 추천드립니다. 1. ChromeDriver와 Selenium 크롤링에 사용할 프레임워크는 Selenium의 webDriver입니다. webDriver를 활용하면 Python으로 가상 브라우저(Chrome)를 실행해 자유롭게 검색할 수 있는 환경이 만들어집니다. But ..

[Clean Code] 네이밍 기법, 카멜과 파스칼, 스네이크?

다양한 프로그래밍 관습들 중 변수나 클래스 이름을 정의할 때, 두개 이상의 단어를 조합하는 경우가 있다. 프로그래머들은 해당 객체가 이름만으로 어떤 역할을 하는지 알기 쉽게하기 위해 여러 방식들을 사용한다. 1) 카멜식(Camel Casing) 낙타의 모양에서 따온 방법으로 첫 단어는 소문자로 시작, 두번째 단어부터 대문자로 시작한다. ex) sumOfArray 2) 파스칼식(Pascal Casing) 카멜식과 비슷하나 차이점은 첫 단어도 대문자로 시작한다는 점이다. 하지만 특정 언어의 경우 관습적으로 클래스명만 대문자로 시작하는 규칙이 있기 때문에 유의하자. ex) SumOfArray 3) 스네이크식(Snake Casing) 각 단어를 Under bar를 활용해 이어붙인다. "_" ex) sum_array

[객체지향] Java를 Java스럽게

class Solution { public int solution(int n) { int answer = 0; return answer; } } 프로그래머스를 자주 이용하는 분들이라면 위 코드가 무엇인지 알 것이다. 알고리즘 문제에 들어가서 언어를 Java로 선택하면 나오는 기본 템플릿이다. 평소에는 solution함수에 로직을 작성하고 모듈별로 메소드를 만들어서 풀이했는데, 이제는 좀 더 Java스럽게 문제를 풀고 있다. class Solution { public static int solution(int n) { int answer = 0; return answer; } public static void main(String[] args) { int n = 0; solution(n); } } 무슨 차..

반응형