전체 글 24

[안드로이드 앱] 맥북에 안드로이드 스튜디오 (Android Studio) 다운로드, 초기 설정

언제나 나만의 앱을 개발한다는 로망이 있었는데 말로만 하는 내 모습을 보면서 반성을 했다. 그러던 중 최근에 공부랑 개발 권태기가 오면서, 다시 동기부여를 위해 재미있는 소소한 개발을 찾게 되었다. 버튼 하나를 누르는 앱이더라도 구현을 완료하고 가능하면 배포하는 것이 목표이다. 참고로 나는 앱 개발 경험 0회, 코틀린 몇 시간 강의를 들은 상태의 비전공자이며 자바도 올해 처음 사용하기 시작한 상태이다. 쉽진 않겠지만 일단 권태기 극복을 위해 도전해본다! 가장 먼저 사용할 언어인 코틀린과 편집툴인 안드로이드 스튜디오를 다운로드 받았다. 안드로이드 스튜디오 (Android Studio) 다운로드 및 설치 1. 안드로이드 스튜디오 홈페이지 접속 홈페이지 접속 링크 : https://developer.andro..

App 2022.08.08

[Java] 자바 입문기 - 오라클 로그인 없이 JDK 설치, 이클립스 (Eclipse) IDE 설치

파이썬쟁이가 드디어 자바를 배운다..! 코테 스터디를 하다보니 많은 분들이 자바를 배우는 것을 추천하셨고, 최근에 자바를 사용할 일이 생겨서 자바를 익혀보기로 했다. 1. JDK (Java Development Kit, 자바 개발 키트) 자바는 개발을 하기 위해 JDK라는 소프트웨어 키트가 필요하다. JDK에는 자바 컴파일러 (Javac)도 포함하고 있다. 이 키트에는 컴파일러 외에도 자바용 인터프리터, 헤더 파일 생성기 등이 포함된 키트지만 C/C++을 다룬 사람들이라면 JDK를 컴파일러 역할 + a인 소프트웨어라고 이해하면 쉽다. 오라클 로그인을 하지 않고 JDK를 설치하기 위해서는 아래 사이트에서 설치하면 된다. https://www.oracle.com/java/technologies/downloa..

Java 2021.12.24

[Python] copy(), deepcopy()의 차이 / 파이썬으로 list, array값 복사하기

알고리즘을 짜다보면 값을 복사해둬야 할 때가 있다. Input 센서 값을 알고리즘에서 활용하거나, 하나의 배열(array)값을 여러 곳에 쓰거나 등등 다양한 이유가 있다. 1. copy() - Python 기본 내장 함수 단순히 같은 값을 가진 1차원 시퀀스에 대해서는 파이썬의 내장 함수인 copy()를 쓰면 된다. a = [1, 2, 3] b = a.copy() print(a) # [1, 2, 3] print(b) # [1, 2, 3] a[0] = 4 print(a) # [4, 2, 3] print(b) # [1, 2, 3] 위 코드 블럭을 보면 알 수 있듯이 이렇게 복사한 list에 대해서는 값을 바꿔도 원본 list 의 값은 변하지 않는다. 즉, 이미 copy 된 list는 더 이상 원본 list에..

Python 2021.09.16

[Markdown] 기본적인 마크다운 활용법 1 (제목, 줄 띄기, 이탈릭/볼드/선긋기, 블록쿼트, 핀포인트, 화살표)

GitHub에서 코드가 무엇인지 파악하려고 README.md를 읽은 적은 많지만 뒤에 '.md'가 무엇인지 별로 관심이 없었다. 그러면서 Jupyter Notebook을 이용할 때도 주석 비슷한 글씨 블록을 만들 때 '마크다운'으로 한다는 얘기를 듣고 활용법에 별로 관심이 없었다. 그러다가 주피터노트북을 예쁘게 쓰고 싶어서 찾아보니 마크다운이 신세계다.....! 마크다운은 markup language의 일종으로 프로그래밍 언어는 아니지만 일반적인 텍스트를 마크다운이 재밌어서 갖고놀다보니 까먹기 전에 정리해야 겠단 생각이 들었다. 기본적인 마크다운(Markdown) 기능을 정리하면 아래와 같다. (주피터노트북으로 작성해본 예시) 1. 제목 만들기 제목은 #을 써서 작성할 수 있다. 그리고 제목을 강조하고 ..

ETC 2021.09.04

[코딩 스타일/명명법] Camel case(카멜 케이스) vs. Snake case(스네이크 케이스)

코딩하다가 변수를 선언할 때 변수명은 띄어쓰기가 없어야 하기 때문에 가독성이 떨어진다. 그럼에도 최대한 직관적인 변수명을 설정하기 위해, 언더바(_) 또는 대소문자를 이용한다. 흥미로운 점은 사람들이 파이썬 변수명에서는 언더바를 많이 활용하는 반면, C언어에서는 주로 대소문자로 구분한다고 느꼈다. 찾아보니 저 두 방식을 각각 'Snake case', 그리고 'Camel case'라고 부른다. 둘의 특징을 비교하면 아래와 같다. 1. Snake Case (스네이크 케이스) 변수명이 소문자와 언더바(_)로 이루어진 경우이다. 예를 들면, snake_case use_underbars_in_between apple_price = 1500 아마 언더바 때문에 길게 늘어져 보이는 걸 뱀의 모습과 유사하다고 한 것 ..

ETC 2021.09.01

[Python] map() 함수 / 여러 input 값의 자료형을 한 번에 바꾸는 방법

난 보통 여러 개의 input값을 받아서 자료형을 바꿀 때 일일이 int() 같은 함수를 씌워줘서 바꿨다. (input 값은 디폴트가 str이다.) # 5개의 정수(n1, n2, n3, n4, n5)의 합 구하기 n1, n2, n3, n4, n5 = input("다섯 개의 정수를 입력하세요 (ex. 1 2 3 4 5) : ").split() sum = int(n1) + int(n2) + int(n3) + int(n4) + int(n5) print("합 : ", sum) 매우 번거롭지만 이것밖에 방법이 없는 줄 알았다. 그런데 map() 함수를 써서 한 번에 할 수 있다. 일단 map() 함수를 간단히 설명하면 아래와 같다. map(function, iterable) * parameter 설명 - func..

Python 2021.08.31

[교육] 멋쟁이사자처럼 AI스쿨 4기 합격/지원서, 이력서, 면접

이전부터 인공지능 관련 활동을 하면서, 외부에 다양한 사람들과 프로젝트를 해보고 싶단 생각을 자주 했다. 그러면서 '멋쟁이사자처럼'이라는 단체도 들어봐서 (이두희 씨가 방송 나오시고 더 자주 들리는 것 같다..!) 거기 커리큘럼이나 프로젝트에 해보고 싶었지만, 주로 웹 관련 커리큘럼을 한다고 들어서 지원하지 않았다. 그런데 작년부터 AI스쿨을 운영하여 파이썬으로 딥러닝 프로젝트를 진행하는 커리큘럼이 생겼다고 들어서 지원해봤다. 지원은 구글폼으로 이루어졌고 문항당 200자 이내로 본인이 인공지능에 관심 있는 이유 등을 물었다. 그리고 마지막에 이력서를 첨부하여 제출하는 것이었다. 난 이전에 스타트업에 지원할 때 정리해둔 이력서를 제출했는데, 결론적으로 이력은 거의 필요 없는 것 같다. 본인이 왜 인공지능에..

후기 2021.08.31

[Python] 비교 연산자와 논리 연산자의 Boolean 값 차이 (==, !=와 is, is not의 차이)

Python뿐만 아니라 프로그래밍 언어에서 비교 연산자, 논리 연산자는 알고리즘을 짜기 위한 기초이다. 그런데 기초라고 생각하다가 문득 Python의 ==, !=와 is, is not의 차이가 무엇인지 모른다는 생각을 했다. 우선 둘의 결과 bool값을 비교해보면 다르다. print(12 == 12.0) # result: True print(12 is 12.0) # result: False 12랑 12.0은 유효 숫자가 다르니까 다른 값 같기도 하고, 그냥 같은 값 같기도 하다. 부정의 비교 연산자와 논리 연산자로 표현하면 다음과 같다. print(12 != 12.0) # result: False print(12 is not 12.0) # result: True 이유를 말하자면, - 비교 연산자 (==,..

Python 2021.08.31

[Python] 파이썬 객체지향 프로그래밍 / 클래스, 인스턴스, 메서드 정리

가장 자신 있는 프로그래밍 언어는 파이썬인데 안타깝게도 class 쓰는 것에 자신이 없었다...... 그래도 오늘 여유가 나서 클래스, 매서드 등을 정리해보고 앞으로는 객체 지향 프로그래밍을 해보기로 마음 먹었다. 1. Class (클래스), Instance (인스턴스) class라는 건 객체의 종류로, 'instance'라는 개념과 대조되어 사용된다. 예를 들어 나는 집을 정의해주고 싶다. 그래서 House라는 class를 만들어줄 수 있다. 이 클래스가 지칭하는 특정한 집은 없지만, House라는 개념을 만들어줬다고 생각하면 된다. 그리고 House 중에서도 철수와 영희네 집이 있을 수 있는데, 이런 특정한 집은 'instance(인스턴스)'라고 부른다. 2. Method (메서드) 이런 클래스 내에..

Python 2021.07.16

[WSL] WSL 2 설치 중 에러 해결(윈도우 업데이트 문제)

'wsl : 'wsl' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.' 이전에 WSL 2 (Windows Subsystem for Linux 2)를 설치할 때 이유를 모르겠는 에러가 떴었다. 잘 설치된 것 같은데 재부팅을 하고서 파워쉘에 wsl을 입력해도 명령어가 잘 실행되지 않았다. Microsoft에 들어가서 문서를 읽어보니 WIndows 10을 사용하지 않거나, 2020년 5월 버전으로 업데이트를 하지 않아도 뜰 수 있다고 알게되었다. 이상하게 내 노트북의 Windows 업데이트를 확인해봤을 땐 업데이트가 최신 상태라고 떴다. 하지만 아래에 보이듯이 W..

728x90