입학시험을 봤습니다. 생각보다 오래걸렸고 안배운 기능을 구현하는 것은 어려웠으나 어찌어찌 야매로 했습니다. 오늘은 입학시험이 있어서 모여서 하는 스터디가 없는 대신에 메타버스 zep에서 밍글파티(?)가 있을 예정이라고 합니다. 핵심 쏙쏙 Git 2주차 강의를 오늘 다 듣고 Sololearn Java 캡처한 것들 정리하고 자는 게 목표입니다. 내일은 7시 일어나야지. 새로 산 무선키보드가 생각보다 구려서 손가락이 아프네요.
입학시험 - 화성땅 주문하기 가격 붙이기
평당 500원이니까 size * 500 하면 되겠지라는 단순 결론에 이르기까지 3시간이나 걸렸습니다. 뭔가 멋지게 price를 정의해서 하는 방법은 없을까하고 정답 사이트의 html를 샅샅히 보았으나 정답 비스무리한 건 보이지가 않았습니다. ajax를 바꿔야하나 했는데 은행 창구는 계산하는 곳은 아닌 거 같았습니다. 나중에 해답을 보여주면 그 때는 창피할 수도 있겠으나 지금 제 실력에서는 그냥 500을 곱하는 게 최선이었습니다.
input이 없는데 output이 어떻게 나오는 건가에 대해 고민하다가 결국에는 변수에 고정값을 곱하자로 결론이 났습니다. 온갖 블로그를 봤는데 머리만 더 아파지고 힌트도 안되더라고요. 입학시험이 이렇게 어려울리가 없는데 하면서 이러다 입학 못하는 거 아냐 했지만...결과는 내일 나옵니다.
그러나 컴퓨터 프로그래밍을 배울 때 처음부터 잘하지는 못한다. 능숙한 프로그래머가 되려면 능숙하게 '버그'를 찾아내고 수정하는 법을 익혀야 한다. 프로그래밍을 하면서 던져야할 질문은 이것이 맞느냐 틀리느냐가 아니라 버그를 수정할 수 있느냐 없느냐다. 이런 식의 지적 결과물을 바라보는 방식이 지식과 지식 습득을 대하는 좀 더 큰 문화에까지 보편화된다면 우리 모두 '틀리는 것'을 덜 두려워하게 될 것이다. - 마인드스톰 mindstorm (시모어 패퍼트 지음.인사이트.이현경 옮김)
에러 안 내려고 시도하지 않는 거보다 해결하는 것을 배우자
하나의 파일을 여러 브랜치에서 수정하고 하나의 branch에 merge 하려고 할 때 merge conflict(병합 충돌) 가 발생
머지한 브랜치는 삭제하기
원격 repo와 branch
tracking: 로컬 repo와 원격 repo의 특정 브랜치를 연결해주는 것
push와 pull 은 기본적으로 tracking(추적)되고 있는 브랜치를 기준으로 commit 내역을 반영
"No matter the circumstances you can always improve. You can always start improving with yourself. You can always start improving today."
오늘은 항해99 부트캠프의 둘쨋날입니다. 엄밀히 말하면 Pre-onboarding 기간 입니다. 이번주는 9시부터 시작하지 않고 3시부터 9시까지 학습합니다. 내일 입학 시험에 통과하지 못하면 수요일이 마지막 날이 될 수도 있습니다. 이제 무선키보드도 있고 노트북 받침대도 왔고 데스크 스탠드도 있고 거북목이 되지 않기 위해 어제는 등운동도 했습니다. 로지텍 mx mini for mac을 샀는데 생각보다 타자가 부드럽지은 않습니다. 손가락에 무리가 생기는 거 같기도 하지만 제 손톱이 좀 길어서 그런거같습니다. 손목 보호대랑 무선 마우스도 구매를 해야겠습니다. 개발자가 되기로 한지 2개월, 돈을 많~~~이 썼습니다.
어제부터 '혼자 공부하는 자바' 라는 책으로 스터디를 진행하고 있습니다. Sololearn도 레슨 64개중 40 레슨까지 진행했습니다. 자바 마스터가 되는 그날 까지 달리겠습니다. 오늘은 '혼자 공부하는 자바'의 챕터3을 끝내는 것이 학습 목표입니다.
핵심 쏙쏙 GIT이라는 강의를 지급 받았는데 오늘 스터디 시작 전에 몇개를 들었는데 GIT을 설치하고 Github 아이디를 만들었습니다. 유저네임을 뭘로할까 고민하다가 sooni2 라고 저희 집 강아지 이름을 따서 만들었습니다.
Chapter 03-1 연산자와 연산식
연산자(Operator): 연산에 사용되는 표시나 기호 (ex. +,-,*,==)
연산자는 피연산자의 수에 따라 단항, 이항, 삼항 연산자로 구분됨
연산자의 종류:
연산식은 반드시 하나의 값을 산출하며, 값 대신 연산식을 사용할 수 있음
비교 연산자와 논리 연산자의 산출타입은 boolean 타입이다.
연산의 방향과 우선순위
&&보다 >,<의 우선순위가 높음
대부분의 연산자는 왼쪽에서 오른쪽 방향으로 연산을 수행함
단항 연산자 (++,--,~,!), 부호 연산자(+,-), 대입 연산자(=,+=,-+,...)는 오른쪽에서 왼쪽 방향으로 연산을 수행함
복잡한 연산식에는 괄호()를 사용해서 우선순위를 정함
03-2 연산자의 종류
단항 연산자: 피연산자가 단 하나; 부호 연산자(+,-), 증감 연산자(++,--) 논리 부정 연산자(!)
부호 연산자(+,-): boolean 과 char 타입을 제외한 기본 타입에 사용가능
정수 및 실수 리터럴 앞에 붙여 양수 및 음수를 표현
정수 및 실수 타입 변수 앞에는 변수의 부호를 유지하거나 변경하기위해 사용
증감 연산자(++,--): 변수의 값을 1 증가(++) 또는 1 감소(--)시킴; boolean 제외 모든 기본 타입 피연산자에 사용가능
++피연산자 -> 다른 연산을 수행하기 전에 피연산자의 값을 1 증가 시킴
피연산자++ -> 다른 연산을 수행한 후에 피연산자의 값을 1 증가시킴
++i 와 i = i +1의 연산 속도
++i가 i=i+1 보다 연산 속도가 빠르다고 알려져 있으나 차이는 없음
i =i+1이 두번의 연산이 필요하지만 i++는 한번의 연산만 수행하기 때문에 생긴 오해이지만 바이트 코드는 동일하기 때문에 속도 차이 없음
논리 부정 연산자(!)
true를 false로 false를 true로 변경 -> boolean에서만 사용
조건문과 제어문에서 조건식의 값을 부정하도록 해서 실행흐름을 제어할 때 주로 사용
두가지 상태(true/false)를 번갈아가면서 변경하는 토글(toggle)기능을 구현할 때도 사용
산술연산자의 특징: 피연산자들의 타입이 동일하지 않을 경우 규칙을 사용해서 피연산자들의 타입을 일치 시킨 후 연산을 수행함
피연산자들이 byte, short, char 타입일 경우 모두 Int 타입으로 변환 후 연산을 수행
피연산자들이 모두 정수타입이고 long타입이 포함되어 있을 경우, 모두 long 타입으로 변환 후 연산을 수행
피연산자 중 실수 타입(float, double)이 있을 경우, 허용 범위가 큰 실수 타입으로 변환된 후, 연산을 수행
문자열 결합 연산자(+):문자열을 서로 결합하는 연산자
비교 연산자(<,<=,>,>=,==,!=): 흐름 제어문인 조건문(if), 반복문(for, while)에서 주로 이용되어 실행 흐름을 제어할 때 사용
String 변수 비교
대소비교 연산자 사용 불가, 동등 비교 연산자 사용 가능
String 변수 비교 시 equals() 메소드를 사용함
논리연산자: 논리곱(&&), 논리합, 배타적 논리합(^), 논리 부정(!) 연산을 수행-> boolean 타입만 사용가능
&&와 &의 산출 결과는 같지만 연산 과정이 다름
&&는 앞의 피연산자가 false라면 뒤의 피연산자를 평가하지 않고 바로 false라는 산출 결과를 냄; &은 두 피연산자를 모두 평가해서 산출결과를 냄 -> &&이 더 효율적으로 동작
논리합||도 마찬가지
논리 연산은 흐름 제어문인 조건문(If), 반복문(for, while) 등에서 주로 이용됨
대입연산자(=, +=,-=,*=,/=,%=): 오른쪽 피연산자의 값을 왼쪽 피연산자인 변수에 저장
오른쪽 피연산자에는 리터럴 및 변수, 다른 연산식이 올 수 있음
모든 연산자들 중에서 가장 낮은 연산 순위를 가짐; 제일 마지막에 수행됨
삼항 연산자
? 앞의 조건식에 따라 콜론(:) 앞뒤의 피연산자가 선택된다고 해서 조건 연산식이라고도 부름
if문으로 작성할 수 있지만, 한줄에 간단하게 작성 시 삼항 연산자를 사용하는 것이 더 효율적
(?:) 삼항 연산자: 3개의 피연산자를 필요로 하는 연산자
핵심 쏙쏙 Git 1주차
Git과 github 설치
나의 첫 커밋!! - 실습 01
김치요리법을 모으는 프로젝트를 Git을 사용해서 관리
버전관리: 프로젝트 상태가 변경되는 정보를 알고 있다는 것
Git 은 commit 을 사용해서 버전이 달라지는 것을 관리함
컴퓨터에 있는 프로젝트를 Git 이 관리하는 프로젝트로 만들 수 있음 ->**git 초기화(git initialize)**한다고 표현
현재 프로젝트의 상태를 찰칵 📸 저장 = commit
누가(author), 언제 commit 했는지의 정보와 프로젝트 변경 내용
작업내역이 어떤 것인지 알아볼 수 있게 적는 메시지를 'commit 메시지'라고 함
commit 에 반영할지 안할지는 파일 단위로 선택
commit 에 반영할 파일을 선택 = add (혹은 staging, 스테이징)
history: commit 한 기록
원격 repo와 로컬 repo
repo(리포, repository 리포지토리의 약자):Git으로 관리되는 프로젝트
로컬 repo(local repository):내 컴퓨터에 저장되어있는 리포지토리
원격 repo(remote repository): Github 처럼 다른 곳에서 접속할 수 있는 공간에 저장되어있는 것
Github은 원격 repo 가 저장되어있고 + 개발자 커뮤니티 기능을 하는 서비스
Tracking, 트랙킹 / branch tracking: 로컬 repo 가 원격 repo 를 연결하는 것을 추적
로컬 repo 만이 내가 어떤 원격 repo 와 연결되어있는지를 앎
원격 repo 는 내가 어떤 로컬 repo 와 연결되어있는지 정보를 가지고 있지 않음
언제나 로컬 repo 를 기준으로 동작을 이해하기
commit을 자동으로 반영하지 않음; 내가 원하는 대로 어디 commit 까지만 반영할지를 수동으로 설정할 수 있게 해서 프로젝트를 더 잘 관리하기 위해서임
commit 을 수동으로 반영
push(푸쉬): 로컬 repo 의 commit 들을 원격 repo 에 반영하기
pull(풀): 원격 repo 의 commit 들을 로컬 repo 에 반영하기
clone(클론, 복제):원격 repo 를 내 컴퓨터에서도 사용할 수 있도록 가져오기; 초기 다운로드
😫Push가 안됩니다... 소스트리 git 인증 해결 방법
소스트리에서
설정 - 원격 - 추가로
새로 생성한 github 원격 repo 주소를 넣어서 등록을 했습니다.
push 버튼만 누르면 된다고 해서 했는데 계속 해서 에러가 떴습니다.
support for password authentication was removed on august 13 2021.
라는 말과 함께 push 창이 완료가 안됐습니다.
구글링해보니 토큰을 새로 발급받아 보라는 말이 있어서 기존의 토큰을 삭제하고 새로 발급받은 토큰으로 대체했습니다.
그래도 안되서😰 다시
'맥 소스트리 맥 소스트리 support for password authentication was removed on august 13 2021.'라는 검색어로 구글링해서 찾은 티스토리 블로그에서 다음과 같이 솔루션을 알려주셔서 해결했습니다.
원격에 입력되어 있는 git 경로에 'github.com~' 앞에 '토큰 값@'를 붙여넣어준다. 즉, git 경로가 'https://토큰 값@github.com~'이 되는 것이다. 그러면 자동으로 사용자명에 토큰 값이 입력된다. 그리고 확인 버튼을 클릭해 설정한 git 원격 토큰 정보를 저장한다. 출처:https://pamyferret.tistory.com/44
오늘은 부트캠프 첫날입니다. 사전 스터디 할 때는 자바스크립트를 공부했는데 오늘부터 제가 선택한 언어인 JAVA를 배웁니다. Sololearn으로 레슨 64개 중 29개를 완료한 상태입니다. 부트캠프 시작 전에 완료할 생각이었는데 Getter 와 Setter 에서 막혔습니다. 이번주는 Sololearn의 Java 레슨을 다 끝내고 혼자 공부하는 자바 책 Chapter 5를 스케쥴에 맞춰 끝내는 것이 목표입니다.
01-1 프로그래밍 언어와 자바
기계어: 이진법으로 이루어진 코드
소스파일(Source file): 프로그래밍 언어로 작성한 파일
컴파일(compile): 소스파일을 기계어로 번역하는 것
Java: 1995년 Sun Microsystems에서 발표; 안드로이드폰 앱, 웹사이트 개발 핵심 언어로 사용; 모든 운영체제에서 실행 가능한 데스크톱 어플리케이션 개발에 사용
오라클에서 라이선스 보유; JDK(Java Developement Kit:개발 실행 환경(JVM)과 컴파일러 등을 제공)를 배포
Java의 특징
모든 운영체제에서 실행 가능
객체지향 프로그래밍: 객체를 만들고, 이 객체들을 서로 연결해서 더 큰 프로그램을 완성하는 기법
메모리 자동 정리: RAM을 자동 관리; 코드 작성 집중 가능
무료 라이브러리 풍부
자바 개발 도구 설치
자바 개발 도구(JDK: Java Development Kit)설치 필요
Open JDK(무료)와 Oracle JDK(유료)가 있는데 LTS(Long term Support)를 위해서는 Oracle JDK 사용이 안정적
나는 JAVA 11를 설치함
JDK JAVA SE(Standard Edition) 표기
JAVA 11을 설치한다는 것은 JAVA SE 11 또는 JDK 11을 설치한다는 것과 동일한 의미
주 버전이 높은 것 보다는 버그를 지속적으로 수정해나가는 LTS 버전을 사용할것을 추천
환경 변수 설정
맥에서는 어떻게 하는 건지 책에 안나와 있음
검색해보니 terminal을 사용하라함 -> 스파르타 자바 강의를 보니 Window 설치는 환경 변수 내용이 들어있는데 Mac에는 없는 걸로 보아 상관없는듯
01-2 이클립스 개발 환경 구축
이클립스를 사용하지 않고 IntelliJ라는 툴을 사용하기 때문에 교양정도로 알고 지나가겠습니다....
이클립스
오픈소스 통합 개발 환경(IDE: Integrated Development Environment)
IDE: 프로젝트 생성, 자동 코드 완성, 디버깅 등 여러 개발에 필요한 기능 통합 제공
01-3 자바 프로그램 개발 과정
.java 텍스트 파일 생성
자바 언어로 코드 작성
컴파일러 javac 명령어로 컴파일
컴파일 성공하면 확장명이 .class인 바이트 코드 파일 생성
java 명령어로 바이트 코드를 완전한 기계어로 번역해서 실행
바이트 코드 파일과 자바 가상 기계
자바 프로그램은 바이트 코드(byte code) 파일(.class)로 구성
바이트 코드 파일은 운영체제에서 바로 실행할 수 없고, 자바 가상 기계(JVM: Java Virtual Machine)라는 번역기가 필요
JVM 사용 이유: 바이트 코드 파일을 다양한 운영체제에서 수정하지 않고 사용 가능 -> 자바 언어 성공 요인
javac 명령어로 컴파일된 바이트 코드 파일은 JDK가 설치된 어떤 운영체제에서도 java 명령어로 동일하게 실행
개발자는 운영체제와 상관없이 자바 프로그램을 개발 가능
모듈명: JDK 11 버전 이후부터는 명령 프롬프트와 같은 명령 라인에서 프로젝트를 실행할 때 필요; module-info.java 보고 확인 가능
module-info.java 라는 모듈을 만들라고 하는데 스킵하고 Hello.java 부터 실행함
public static void main(String[] args) 를 자동 추가 설정하는 방법
단축키: ctrl + J
psvm + enter
자동 추가는 이클립스에서 제공하는 기능; intelliJ 템플릿 수정할 수 잇음
sout 단축키 -> System.out.println();
명령 라인에서 컴파일하고 실행하기
명령 프롬프트 또는 터미널과 같은 명령 라인에서 javac와 java 명령어로 소스 파일을 직접 컴파일하고 실행하는 법
-> 명령 라인에서 프로젝트 컴파일 및 바이트 코드 파일 실행 방법
예시가 윈도우라 안되는 부분들은 구글링중.... -> 맥의 명령어가 훨씬 쉽다
javac 명령어로 컴파일해서 바이트 코드 파일 생성하기
javac Hello.java --> Hello.class 파일(바이트 코드 파일) 생성됨
a numeric value that represents sth that is not a number....
0/0 --> NaN
1+NaN --> NaN
const: 한번 정한 값을 바꿀수없음 constant variable임
var: old way of making variables
Boolean: True or False
.trim(): space 부분 없애줌
toLowerCase()
toUpperCase()
convention naming: 첫단어는 lowercase; ex) highScore
indexOf() : TheindexOf()method, given one argument: a substring to search for, searches the entire calling string, and returns the index of the first occurrence of the specified substring. Given a second argument: a number, the method returns the first occurrence of the specified substring at an index greater than or equal to the specified number.
.slice(): 잘라서 새로운 string을 만듬
.replace():
.replace('a', 'b') 맨 처음 a 문자만를 대체함
.replaceAll(): 모든 해당 문자를 대체함 -> 쓸수있는 브라우저는 제한적
.repeat(n): n번 반복
String Template Literals
template literals are strings that allow embedded expressions, which will be evaluated and then turned into a resulting string
`I counted ${3+4} sheep`
back-ticks `` 사용 (tab 키 윗키)
${....}
Undefined & Null
Null: international absence of any value
must be assigned
value is explicitly nothing
Undefined
Variables that do not have an assigned value
Math Object
contains properties and methods for mathematical constants and functions
로켓 사이언스는 아니지만 소프트웨어 엔지니어가 되는 것도 어느정도의 수학적 이해력과 사고력을 필요로 합니다. 저는 아주 수학머리가 없는 것은 아니지만 그렇다고 뛰어나지도 않습니다. 다행히 머리가 나쁘지는 않은 것 같습니다. 자꾸 반복해서 연습하고 보다보면 나아질 거라는 희망을 가지고 오늘도 열심히 프로그래밍을 공부합니다. 자바스트립트 언어를 끝내고 오늘부터는 Java로 넘어갑니다.
Dom & Dome Tree
Dom 구조는 tree 구조로 설명할수 있음
html elements는 tree의 nodes임
같은 레벨에 있으며 siblings 위는 parents 아래 레벨은 child
아래 예시: html의 child는 head, body; head의 child는 title; title은 parent 하나, no children;
The document Object
Working with DOM
element.childNodes: child nodes의 array를 return
element.firstChild: element의 첫번째 child node를 return
element.lastChild: element의 마지막 child node를 return
element.hasChildNodes: element가 child node가 있으면 return 없으면 false
element.nextSibling: 같은 tree level의 다음 node를 return
element.previousSibling: 같은 tree level의 이전 node를 return
element.parentNode: element의 parent node를 return
CSS properties
dashes(-) property name에 사용 안됨
ex) background-color -> backgroundColor
Removing & Replacing Elements
.removeChild(node): element를 지우기위해서(remove) 쓰는 method
첫번째 토이프로젝트 이름은 '수진님이 보고 계셔' 입니다. 유데미에서 배운 것과 스파르타 웹개발 종합반에서 배운 것들을 종합하여 동생을 위한 팬명록을 만드려고 합니다. 기존에 언니를 위해서 만들어 준 것을 보고 동생이 원해서 더 업그레이드 버전으로 만들기로 했습니다. 반응형 웹사이트를 만들겁니다.
오늘 드디어 사전스터디의 토이프로젝트를 기획하는 미팅을 가졌습니다. 각자 아이디어를 공유하고 무슨 기능을 넣을까를 고민하는 시간이었습니다. 결론부터 말하자면, 결론이 안나서 각자 아이디어를 구체화해서 내일 오전에 공유하기로 했습니다. 큰 틀은 만들었는데 얼마나 디테일하게 많이 구현해야 할지는 못정했습니다. 와이어프레임을 만드는 Basalmiq이라는 툴을 알게 되어서 내일 오전 미팅 대비하여 간단히 만들어 보았습니다.
웹개발 종합반 내용을 바탕으로 한 아이디어 입니다.
1. 토이프로젝트: 맛집 공유하자🙆♀️
한줄 요약: 맛집 정보와 후기를 한눈에!
상세설명: 맛집 정보를 등록하고 후기를 쓸 수 있고 가고 싶은 곳을 저장하고 갔다 온 곳을 체크할 수 있는 웹사이트
전에 포스팅에서도 자주 언급했지만 Sololearn이라는 모바일 학습앱을 다운받아서 JavaScript를 배우는 중입니다. Duolingo라는 앱을 아시나요? 언어를 배우는 앱인에 전세계적으로 수억명의 이용자가 있을정도로 유명한 앱입니다. 저는 Duolingo로 프랑스어랑 스페인어를 배우려고 '시도'했었던 경험이 있습니다. Sololearn도 학습하는 방법은 비슷합니다. 각 단계별로 레슨이 있고 레슨의 테스트를 통과해야 다음 레슨이 열리고 포인트도 쌓입니다. 각 문제마다 다른 사용자들이 남긴 코멘트도 볼 수 있어서 다른 사람들은 어떤식으로 같은 문제를 풀었는지 볼 수 있고 의견공유도 가능해서 좋습니다. 저같은 초보자가 언어를 배우기에 좋은 앱입니다.
sololearn이라는 카테고리를 만든 이유는 sololearn으로 공부하다가 test나 quiz에서 막히는 부분이나 기억하고 싶은 부분을 기록하고 싶어서 입니다. 늦게 시작한 만큼 더 빨리 배워야 한다는 생각이 들어서 진도를 쭉쭉 나가고는 있지만 복습은 필요하니까요. 지금은 JavaScript를 배우고 있지만 제 목표는 얼른 이번주까지 마무리하고 Java로 넘어가는 겁니다. 대학교 동기중에 Java를 배우다가 포기했다는 친구썰로는 도저히 못하겠다고 하던데 저는 아직 접해본적이 없어서 매우 궁금합니다.
JavaScript
The Console
JavaScript는 웹 브라우저를 운영하는 프로그래밍언어이다.
대부분의 웹사이트는 JavaScript를 사용한다
문제가 생겼을 때는 console를 이용하여 에러를 찾는다
Assignment Operators
operators를 사용해서 value를 지정한다.
Comparison Operators
같은 data type일 때만 사용함
The For Loop
for (i=1; i<=; i++) {}
i =1 -> loop은 var i=1에서 시작한다
i<=5 -> loop이 실행되는 조건을 정의한다
i++ -> 코드가 실행될 때마다 value가 증가(++)한다
Prompt
prompt( )
prompt box가 팝업하면 input 입력 후 "OK" 또는 "Cancel"을 선택할 수 있음
Thearr.reduce()method in JavaScript is used to reduce the array to a single value and executes a provided function for each value of the array (from left-to-right) and the return value of the function is stored in an accumulator. -> array에서 하나의 value를 빼고 실행하는 함수
setinterval (function, 시간 ms) -> 1000ms 가 1초; 1초마다 해당 function 반복함)
1일 = 86,400,000 ms
JavaScript는 월을 0 to 11 으로 셈
Sololearn이라는 학습앱을 강력 추천합니다. (광고 아님) 초보자에게 기본지식을 쉽게 학습할 수 있고 연습할 수 있게 해줍니다. 함께 배우는 유저들의 다양한 의견들과 코드를 보면서 이렇게도 할 수 있구나를 배웁니다. 아직 헷갈리는 부분이나 이해가 안되는 부분이 많이 있긴 하지만 첫 술에 배부를 수는 없겠지요.
드디어 부트스트랩이 나왔습니다. css 지식으로 충만해지고 있는데 아직 프론트 엔드가 되고 싶은지는 모르겠습니다. 서버 쪽을 해봐야 알 것 같아요. 유데미 웹개발자 부트캠프 강의는 2022년 최신 버전이라고 알고 있는데 bootstrap은 4.5 version 이 나옵니다. 스파르타 웹개발 종합반에는 5.0 ver을 씁니다. (2022.10.25 기준) 방금 확인했는데 Bootstrap 5.2ver이 최신인 것으로 확인됩니다.
일단 수업을 맞춰서 들어야 하니까 4.5 ver으로 다운받았습니다. 아래 강의 관련 질문에 보니까 앞에는 4. ver 쓰다가 뒤에 강의에는 5.ver가 나온다고 하네요.
개발을 잘하게 될지는 아직까지는 미지수이지만 컴퓨터로 혼자 일 하는 것은 적성에 맞는 것 같습니다.
세상에 없는 무언가를 만드는 것도 어느정도 창의력을 요하는 일이라 재미있습니다.
CS 강의를 유튜브로 들으니 알고리즘이 여기저기 유명한 프로그래머들과 교수들의 강의를 추천해주는데 재밌습니다.
이제 알아 들을 수 있는 용어가 늘어서 그런 거 같기도 합니다.
인상 깊었던 댓글은 Computer Science 라는 학문이 창시된 지 얼마 안 됐기 때문에 초기 이론, 언어 등의 창시자들을 아직까지 인터뷰할 수 있고 그 시대를 함께 살아간다는 거였습니다.
마치 워런버핏이 근 30년 넘는 동안 발행된 거의 모든 투자 책에 언급되는데 아직도 살아서 주주총회 하는 것과 같은 느낌입니다.