본문 바로가기

개발공부/스파르타코딩

(7)
[ 정규 ] Java 문법 종합반 2주차 궁금한 내용 강의에서 Deep Copy를 할 때 clone과 copyOf을 설명해 줬으며, copyOf를 사용하라고 알려줬다. clone은 2차원 배열 이상을 들어가면 복사가 제대로 이루어지지 않는다는 문제가 있기 때문이라고 했다. 정말 copyOf가 clone보다 깊은 복사를 더 잘 수행해 내는 것인지 의문이 들었다. copyOf도 똑같은 이슈가 존재한다면 어떤 방법을 사용하면 좋을지에도 고민이 되는 것 같다. 메서드 분석 정확한 동작을 파악하기 위해 clone과 copyOf의 코드 내부를 확인해보기로 했다. 하지만 두 메서드를 타고 들어갔을 때 사용되는 clone , arraycopy가 native 코드로 작성이 되어 있어 들여다보지 못했다. 이후에 native 코드까지 확인할 수 있다면 봐 보는 것..
[ 정규 ] Java 문법 종합반 1주차 JVM 정의. Java Virtual Machine은 다양한 환경(Window, Linux 등) 위에서 자바 프로그램을 실행시킬 수 있는 가상 기기 구성. 인터프리터 - 운영체제가 읽은 바이트코드를 기계가 실행할 수 있는 기계어로 번역 클래스 로더 - JVM으로 클래스를 불러와 메모리에 저장 메모리 영역 - 자바 데이터를 저장하는 영역 JIT 컴파일러 - 인터프리터의 효율을 높여주는 컴파일러 가바지 컬렉션 - 메모리 영역에서 안쓰는 데이터를 주기적으로 정리 JRE & JDK JRE(Java Runtime Environment) JVM, 자바 클래스 라이브러리 등을 포함하고 있는 자바 실행환경 JDK(Java Development Kit) JRE, 컴파일러, Javadoc 등을 포함하고 있는 자바 개발 도..
[ 사전스터디 ] 웹개발 종합반 5주차 AWS 배포 정의. AWS(Amazon Web Services)는 아마존에서 제공하는 안정성있고 확장 가능한 클라우드 컴퓨팅 서비스 배포 과정. 1. AWS 가입 - https://aws.amazon.com/console/ 2. IAM에서 Access Key 생성 3. Python 배포 폴더 및 파일 생성 4. Python AWS 패키지 설치 5. AWS 명령어를 통해 배포 Python 배포 폴더 및 파일 생성 배포 파일 및 폴더 준비. 1. deploy 폴더 생성 - mkdir deploy 2. app.py 복사 및 application.py 변경 - cp app.py deploy/application.py - [app = Flask(__name__)] -> [application = app = Fla..
[ 사전스터디 ] 웹개발 종합반 4주차 Flask 정의. 플라스크는 Python으로 작성된 마이크로 웹 프레임워크의 하나 설정. 1. app.py 파일 생성 - touch app.py 2. 가상환경 생성 및 적용 - python3 -m venv venv - source venv/bin/activate 3. flask 설치 - pip install flask 4. templates 폴더 생성 - mkdir templates 5. templates 아래에 index.html 파일 생성 - cd templates - touch index.html Flask 코드 설명 및 실행 Flask 시작 코드. if __name__ == '__main__': app.run('0.0.0.0', port=5000, debug=True) Post API 코드. ..
[ 사전스터디 ] 웹개발 종합반 3주차 Python 정의. 파이썬은 소프트웨어 엔지니어인 귀도 반 로섬이 발표한 고급 프로그래밍 언어로 플랫폼에 독립적이며 인터프리터식, 객체지향적, 동적 타이핑 대화형 언어 자료형. 숫자, 문자, Boolean, 리트스, 딕셔너리로 구성 조건문. if (condition) : //logic else : // logic 반복문 list = [value1, value2, value3, ...] for element in list : //logic 함수. def functionName : //logic 웹 스크래핑 정의. 웹 페이지의 정보를 수집하는 일련의 행동 라이브러리. pip install bs4 pip install requests 코드. import requests from bs4 import Beauti..
[ 사전스터디 ] 웹개발 종합반 2주차 JavaScript 정의. 브라우저가 알아들을 수 있는 프로그래밍 언어 타입. // 리스트 타입 list = [value1, value2, value3, ...] // 딕셔너리 타입 list = {key1:value1, key2:value2, key3:value3} // 혼합 list = {key1:[value1, value2], key2:[value3,value4]} 반복문. list.forEach((data)=>{ // logic } 조건문. if(condition) { // logic } else { // logic } JQuery 정의. HTML의 요소들을 편리하게 조작을 할 수 있도록 해주는 JavaScript 라이브러리 JQuery 기능. // 조작 대상 지정 $('#id이름') // 문자 대..
[ 사전스터디 ] 웹개발 종합반 1주차 내용 웹과 HTML, CSS, JavaScript에 대한 간단한 설명 했다. 개발을 위해 IDE(VS Code)와 확장 플러그인 설치를 했다. 그 기반으로 HTML, CSS를 사용해 정적 웹 페이지 만드는 법을 한 단계씩 알려줬다. 마지막으로 만들어진 정적 웹 페이지를 Git에 올려 배포했다. 좋았던 점 개발은 "복사 붙여넣기"라는 설명은 누구든 마음의 부담감을 내려놓고 접근할 수 있도록 해주는 것 같다. font, bootstrap 사용 방법과 사이트를 알 수 있었다. div 영역을 backgroud-color로 먼저 설정하고 코딩을 하는 등 실제 개발에도 도움이 될만한 팁들을 알 수 있었다. 마지막으로 간단한 숙제를 통해서 배운 것들을 직접 해볼 수 있었던 것이 좋았다. Font, Bootstrap ..