분류 전체보기
-
[Java] equals 와 ==의 차이점Java 2021. 11. 3. 18:15
개요 알고리즘 문제를 풀다 ==의 경우에 풀리지않고 equals를 써야 풀리는 부분이 있어 궁금해서 찾아보게 되었습니다. 공통점 이 둘은 모두 양쪽의 내용을 비교하여 boolean type으로 반환한다는 공통점을 가집니다. 차이점 1) 형태의 차이 - (메소드와 연산자) equals() 는 메소드 이며 == 은 비교를 위한 연산자입니다. 2) 주소값 비교와 내용 비교 equals 메소드는 대상의 내용 자체를 비교하지만, == 연산자는 비교하고자 하는 대상의 주소값을 비교합니다. *Object 클래스에서는 주소값을 비교하지만 String클래스에서는 equals 메소드를 오버라이딩하여 내용을 비교하도록 합니다. 실습 예를 들어, String 클래스를 이용해 문자열을 생성해보겠습니다. String a = "a..
-
기업들은 왜 Spring Framework를 사용할까?Spring Framework 2021. 11. 2. 15:12
이전글에서 Framework란 무엇인지에 대해서 알아보았습니다. 국내의 많은 기업들이 Java 기반의 Spirng Framework를 사용하는데 왜 Nodejs의 express, Python에서의 Django, Flask를 사용하지 않는지 궁금해서 찾아보게 되었습니다. 1. 정적 언어타입으로의 강점 자바는 함수의 입력과 출력이 어떤 타입을 가져야 하는지 강제하기 때문에 다른사람들과의 협업 또는 오랜 시간 작업을 할 때, 규모 있는 서비스 개발을 할 때 정적타입언어가 선호됩니다. 하지만 js에서도 TypeScript라는 언어를 내놓았기 때문에 스프링이 주류인 충분한 이유가 되지 않습니다. 2. 컴파일된 언어로서의 장점 js, python과 구별되는 특징은 컴파일이된다는 점으로 C/C++에 준하는 성능까지는..
-
프레임워크(Framework)란?Spring Framework 2021. 11. 1. 13:40
프레임워크란? Frame(틀 ) + work(일하다)로 일정하게 짜인 틀, 뼈대를 가지고 일한다라는 느낌으로 장난감 키트를 예시로 들어보면 장난감 키트는 부품과 매뉴얼을 제공하고 사용자는 이를 통해 다양한 형태의 장난감을 만들 수 있습니다. 따라서 프레임워크(Framework)란 일정한 형태의 틀, 부품을 가지고 다양한 형태의 결과물을 만드는 것이라고 할 수 있습니다. IT에서 개발자들이 말하는 프레임워크는 Spring, Django, Ruby on RAils, Node.js 등등이 있습니다. 사전적 정의로는 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것으로 프레임워크(Framework)란 개발을 편하게 해주는 도구입니다. 그러면 우..
-
[Java] 자바의 Hello WorldJava 2021. 10. 29. 03:02
개요 자바에서 기본적으로 제공해주는 public static void main 구문에 대한 궁금증이 생겨 왜 그렇게 사용하는지 알아보고자 합니다. 자바 Public Class와 소스파일 네이밍 class Hello { public static void main(String[] args) { System.out.println("Hello, world."); } } 위는 Java를 사용하여 Hello, world. 를 출력하는 코드입니다. 자바에서 모든 코드는 반드시 클래스 안에 존재해야 하며, 이 클래스들이 모여 하나의 Java 애플리케이션을 이룹니다. 하나의 소스파일에 하나의 클래스만을 정의하는 것이 보통이지만, 하나의 소스파일에 둘 이상의 클래스를 정의하는 것도 가능합니다. 이때 주의해야 할 점은 '소..
-
[Java] 자바의 특징Java 2021. 10. 29. 00:20
개요 자바 공부를 시작하고자 자바의 여러 특징에 대해 알아보며 자바를 이해하는 시간을 가져보려 합니다. 운영체제에 독립적 JVM(자바 가상 머신)을 활용하여 응용프로그램이 운영체제와 통신할 수 있도록 합니다. 하지만 JVM자체는 운영체제에 종속적이어서 설치는 운영체제에 따라 다른 버전의 JVM을 설치해야 합니다. JVM이란? Java Virtual Machine의 줄임말로 자바로 작성된 애플리케이션은 모두 JVM에서만 실행됩니다. 일반 애플리케이션은 바로 OS -> 하드웨어로 전달됩니다. 하지만 자바 애플리케이션은 JVM -> OS -> 하드웨어로 JVM을 추가적으로 거쳐야 합니다. [위 그림 참조] 속도가 느리다는 단점을 가지고 있지만 바이트코드(컴파일된 자바 코드)를 하드웨어의 기계어로 바로 변환해주..