- 취업 준비
- 통계 개념만 이해하기
- Linux 사용 공부하기 (Ubuntu)
- spring 개발 시, Maven 말고 Gradle 로 라이브러리 환경 구축
- spring boot 개발
- 최종 프로젝트에 대한 개인 PPT 작성
- 개인 프로젝트 추가 2개 개발
- RoadMap
- C#과 Java의 유사성
- C, C++ : 시스템 개발 언어
- C#, Java : 웹 개발 언어
- C# == Java 문법이 비슷함
- 마이크로소프트 asp, asp.net == JSP 문법이 비슷함
-> 면접 시, 할 수 있다고 명시한다.
- MVC 모델
Client Side : React.js, Vue.js
Server Side : Servlet, JSP, Spring Framework, Spring boot
- RoadMap
- 기술 스택
- 운영체제 : Linux
- RDBMS : MariaDB
- NoSQL : MongoDB
- 데이터 분석 언어 : R, Python
- 에디터 : eclipse
- 개발 환경
1. 저장 폴더 만들기
2. eclipse 설치 : Eclipse IDE for Enterprise Java and Web Developers
3. Anaconda 설치 : 데이터 분석 라이브러리 Python 설치3-1. 설치 시, path 선택
3-2. 패키지 확인 : anaconda3 → Lib → site-packages4. Ecilpse 환경 설정
4-1. ecilpse 실행
4-2. help → Ecilpse MarketPlace → PyDev 설치(설정 건드리는거 없음)
4-3. General → workspace → UTF-8로 변경, reflash 선택
4-4. Web → css, html → UTF-8로 변경
4-5. eclipse와 Python 연결
↪ PyDev → Interpreters → Python Interpreters → new → anaconda3 아래의 python.exe 선택 → Apply
4-6. Python 환경으로 변경
↪ 오른쪽 위에 perspective → PyDev 선택5. eclipse를 위한 Java 환경 변수 설정
java 설치된 경로를 'JAVA_HOME' 이라고 저장
path에 '%JAVA_HOME%\bin' 이라고 저장
- Python 프로젝트 생성
1. 오른쪽 위에 perspective → PyDev 선택
2. File → new → PyDev Project
- 프로젝트 이름 작성
- Grammer Version : Python 버전
- Interpreter : Python
3. 프로젝트 우클릭 → PyDev Package → Name 설정
4. 작성한 패키지 우클릭 → PyDev Module → Name 설정
🔍 주의 사항) Python 파일은 패키지 안에서 동작해야 한다.
- 동적 타입 언어
a = 10 : 자료형 명시 없음# 변수 선언 시 type을 선언하지 않는다. var1 = '안녕' var1 = 5 print(var1) # 출력 : 5 # 변수 값이 변하면 그 값의 타입으로 변경된다.
- 주소 비교, 값 비교
a is b : 주소 비교
a == b : 값 비교a = [1000] b = [1000] print(a is b) # False print(a == b) # True
- 변수의 대소문자 구분
- 대소문자를 구분한다.A = 1; a = 2; print('A+a: ', A+a, id(A), id(a)) # 출력 : 3
* 자료형_
# 정수형 int print(3, type(3)) # 실수형 float print(3.4, type(3.4)) # 실수+허수부 complex print(3+4j, type(3+4j)) # 논리형 bool print(True, type(True)) # 문자열 str print('good', type('good')) # 튜플 tuple print((1,), type((1,))) # 리스트 list print([1], type([1])) # 집합 set print({1}, type({1})) # 딕셔너리 dict print({'k':1}, type({'k':1}))
- 타입 확인 함수
print(isinstance(1.2, float)) # 출력 : True
- 치환, 연속 치환, 집합 치환
- 변수는 값을 기억하는 것이 아닌 참조하는 것이다.# 치환 v1 = 2 # 연속 치환 v1 = v2 = v3 = v4 = 5 print(v1, v2, v3, v4) # 출력 : 5, 5, 5, 5 # 집합 치환 v1 = 1, 2, 3 print(v1) # 출력 : (1, 2, 3)
- 값 스왑 연산
v1, v2 = 10, 20 print(v1, v2) v2, v1 = v1, v2 print(v1, v2)
- 값 할당 packing 연산
- * : Packing 연산자
- 목적 : 특정 변수에 더 많은 값을 가지도록 한다.v1, *v2 = 1,2,3,4,5 print(v1) print(v2)
- 산술 연산자
# 더하기, 빼기, 곱하기, 나누기 print(5+3, 5-3, 5*3, 5/3) # 출력 : 8, 2, 15, 1.66666 # 정수 나누기, 나머지, 몫+나머지 나누기 print(5//3, 5%3, divmod(5,3)) # 출력 : 1, 2, (1, 2)
- 연산자 우선 순위
소괄호 > 산술연산자(* > , / > +, -) > 관계연산자 > 논리연산자 > 치환(=)
- 관계 연산자
print(5 > 3, 5==3, 5!=3) # 출력 : True False True
- 산술 연산자
print(5>3 and 4<3, 5>5 or 4<3, not(5>=3)) # 출력 : False False False
- 문자열 더하기 연산자
print('파이썬' + '만' + '세') print('파이썬'*10)
- 증감 연산자
- 전이, 후이 연산자가 없다.
--a : - 를 두번 적용하여 + 가 된다.a = 10 # 10 a = a + 1 # 11 a += 1 # 12 print('a: ', a) # 출력 : 12
- bool 연산자
- True : 0이 아니거나 문자가 존재하거나 True이면 모두 True로 취급한다.
- False : 0이거나 문자가 없거나 값이 없거나 False이면 모두 False로 취급한다.print(bool(True), bool(1), bool(-23.4), bool('aa')) # 출력 : 모두 True print(bool(False), bool(0), bool(''), bool(None), bool([]), bool(()), bool({})) # 출력 : 모두 False