막상 Java 를 다시 공부하면서 Java 가 어떤 언어인지 모른다면 공부하는 의미가 없을 것 같다. 따라서 이번엔 Java 의 역사와 Java 에 대해 간략하게 정리해보록 하겠다. 나의 첫 프로그래밍 언어는 python 이었다. 그러나 C, C+, Java 등을 배우면서 객체 지향 언어에 흥미를 느꼈고, Java 를 주력언어로 사용하기로 결정했다. 후에 백엔드 개발자로 성장하기 위해선 Java가 필수라고 생각한다. 적어도 우리나라에서는 그렇다. Java 프레임워크인 Spring 을 공부하기 위한 가장 기본적인 발판이기도 하다. 따라서 프로그래밍 입문자가 처음 언어를 선택할 때, 비교적 간단하고 쉬운 python 도 좋지만, Java 와 같은 객체 지향 언어도 좋다고 생각한다. 1️⃣ Java 란? Ja..
1️⃣ BigInteger오늘 알고리즘 문제를 풀다가 알게 된 유용한 클래스이다.말 그대로 매우 큰 수에 대한 연산을 수행할 수 있도록 도와준다. 기존 정수형 자료형인 'int' 의 범위를 보자. Data TypeRangeshort (2byte)-32,768 ~ 32,767int (4byte)-2,147,483,648 ~ 2,147,483,647long (8byte)-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 물론 큰 수에 대해서 'long' 타입을 사용하면 가능할 수 있지만, 무한대와 같은 큰 수는 어떻게 다룰까?바로 java.math 안에 내장된 'BigInteger' 타입을 사용하는 것이다. https://www.acmicpc.net/probl..
1️⃣ 개요 - Buffer Java 에서 데이터의 입출력을 수행하는 방법은 여러 가지가 있다. 그동안 나는 'Scanner' 을 주로 사용해왔다. 그러나 이 방식은 데이터의 수가 많아지면 속도가 느려진다는 단점이 있다. 이를 해결하기 위해 버퍼를 이용하는 방법이 있다. 그렇다면 '버퍼(Buffer)' 란 무엇인지 알아보자. '버퍼(Buffer)' 란 데이터를 어느 한 곳에서 다른 곳으로 전송하는 동안 일시적으로 데이터를 보관하는 메모리의 영역이다. 쉽게 말해 지금까지 사용했던 Scanner 방식은 키보드에 입력하는 순간 바로 모니터에 출력된다. 버퍼를 사용하면 일정 조건을 만족할 때 까지 버퍼에 입력을 저장한다. 이후 일정 조건(개행 문자 등) 을 만족하면 모았던 버퍼를 한꺼번에 전송한다. 버퍼의 장점..
컴백이요 중간 고사 기간도 겹치고 과제도 많아지면서 블로그 관리가 소홀했다. 그동안 앞으로의 방향성에 대해 생각도 해보고 아무튼 꽤 고민을 많이 했다. 우선 나는 현재 3학년 2학기에 재학중이며, 내년 4학년 1학기에 모든 학점을 들을 계획이다. 이후 2학기엔 독학을 하든 학원을 다니든, 온전히 코딩에 힘써보려고 한다. 벌써 취업 준비를 해야한다니 시간이 꽤 빠르게 지난 것 같다. 뭐 해놓은게 없는데 벌써 4학년이라니 억장이 와르르 무너진다. 공부 계획 1) Java 우선 주력 언어로 자바를 파볼 생각이다. 물론 처음부터, 기초부터 다시 차근 차근 깊이 있는 공부를 할 것이다. 이와 관련된 내용은 차후 블로그에 기술할 것이며, 이전과는 약간 다른 방식이 될 것이다. 블로그에 글 쓰는 것에 너무 집중하다보..
질러버렸다. 맥북 녀석. 제목 그대로이다. 맥북 시원하게 질렀다. 오랜만에 글 쓰는데 그동안 이것저것 하느라 블로그 할 시간이 없었다. 그래서 오늘은 늦은 맥북 리뷰할 겸 요즘 근황도 같이 끄적끄적 해보려고 한다. 참고로 두서 없이 쓰고싶은 대로 쓸 예정이다. 사실 저번에 맥북 사고싶다고 글 쓰고 이틀 뒤? 였나 바로 사버렸다. 원래 애플 공식 홈페이지에서 교육할인 받아서 사려고 했다. 그런데 이게 뭐람 배송 기간이 최소 2주 넘게 걸린다는 것이었다. 난 못참아. 그래서 바로 쿠팡에서 찾아봤다. 쿠팡 로켓 배송 적용하면 다음 날 바로 온다길래 정신 못차렸다 진짜 가격을 한 20% 할인해서 140만원대..? 아 물론 깡통은 아니다. 어라라 분명 나 살 땐 144만원이었는데 그 사이에 10만원이나 올라버렸..
HTML5 오늘은 'HTML' 이라는 프로그래밍 언어의 기초에 대해 공부했다. HTML (Hypertext Markup Language) 는 웹 페이지의 틀을 만드는 아주 중요한 마크업 언어이다. 현재는 'HTML5' 가 웹 표준 언어로 선정되어있다. 여기서 마크업 언어(Markup Language) 란 '태그(Tag)' 등을 이용하여 문서나 데이터의 구조를 명기하는 언어의 한 가지이다. HTML에서 태그는 굉장히 중요한 개념이다. 태그에 대해 쉽게 설명하자면 뜻 그대로 어떠한 표시를 하기 위한 요소이다. 글씨의 색깔, 모양, 크기 등 특정 부분의 특성을 나타내준다. 개발 환경은 메모장에서 해도 되지만, VS code에서 진행했다. 오늘 만들어볼 것은 간단한 HTML 설명 웹 페이지 이다. 먼저 '태그'..
제목 그대로이다. 맥북 너무 사고싶은데 어떡하지? * 맥북에 대한 정보를 제공하는 글이 아닙니다 * 2020년 12월 3일, Apple M1 Macbook Air 가 출시됐다. 벌써 거의 2년이나 돼버렸다니 시간 훌쩍 훌쩍 간다. (사실 저 때 군대에 있어서 시간 안갔음) 이 글을 쓰는 이유는 그냥 맥북 사고 싶어서 쓰는거다. 별 의미 없음. 아니 솔직히 나도 스타벅스에서 자리 잡고 커피 마시고 싶다. 아니 그게 중요한게 아니라 요즘 맥북에 너무 꽂혀버렸다. 때는 바야흐로 4년 전, 아이폰 6로 애플을 처음 접한 후 에어팟 등 허우적대며 애플에서 빠져나오지 못했다. 근데 때마침 개발 공부를 아주 열심히, 열정적으로 시작하려는 마당에 갑자기? 는 아니고 아무튼 원래부터 사고 싶긴 했는데 맥북에 꽂혀버렸다...
About ' Internet ' 오늘은 웹 개발에서 가장 기초적이고 필수적으로 알아야 하는 '인터넷' 에 대해 공부해보았다. 1학년 때 교양으로 들었던 '데이터통신과 네트워크' 과목을 기반으로 글을 작성했다. (거의 전공이었음 휴^^;) 인터넷 (Internet)이란 인터넷 프로토콜 (TCP/IP)을 기반으로 하여 전 세계적으로 연결된 컴퓨터 네트워크 통신망을 일컫는 말이다. 여기서 '프로토콜 (Protocol)'이란 데이터 통신을 제어하는 규칙의 집합 , 통신규약을 말한다.'TCP/IP' 는 컴퓨터간 통신을 위해 등장하였으며, LAN과 WAN에서 원활한 통신을 위해 사용된다. 개념 설명 1. LAN(Local Area Network) : 지역 네트워크 (근거리 통신망) 2. WAN(Wide Area ..