프로젝트를 설계할 때네이티브로 할 지 하이브리드로 할 지 정하고는 하는데요대략적으로 어떤 개념인 지는 알지만어떠한 차이를 갖고 있는 지명확하게는 모르고 있어 포스팅하게 되었습니다. 1. 웹 애플리케이션(Web Application)애플리케이션에 대표적인 예로서는 웹 애플리케이션이 있습니다.웹 애플리케이션의 예로는 모바일 인터넷으로 www.naver.com 을 검색하면 나오는 네이버 화면과 같습니다다.주소로 접속이 가능하다.웹을 통해서 애플리케이션처럼 동작한다. 웹 애플리케이션의 장단점은 다음과 같습니다.장점단점앱 마켓 심사가 불필요하기에 실시간 업데이트가 가능하다.표준 웹 언어로 구현이 가능하기에 투자가 적다.카메라, 음성 인식 등 모바일 자체 기능 사용이 불가능하다.상대적으로 속도 및 안정성이 부족하다..
컴파일과 인터프리터의 차이를 공부하면서컴파일 과정에서 실행 파일을 만든다는 것을 알았어요.그럼 또 궁금하잖아요컴파일 과정이 어떤지 0. 과정컴파일 과정은 크게 전처리 -> 컴파일 -> 어셈블리 -> 링킹 과정을 거친다. 1. 전처리 (Pre-processing)컴파일은 사람의 언어를 기계어로 변경해주는 과정이다.기계에게 주석과 같은 사람의 언어를 필요도 없고 용량만 잡는 데이터이기 때문에 이를 전처리기를 통해 제거한다.대표적으로 아래 세가지를 제거한다.주석 제거 헤더 파일 삽입C언어에서 헤더 파일을 가져올 때 #include stdio.h와 같이 코드를 작성하는데 해당 코드는 #include 전처리 지시자를 통해 stdio.h 헤더 파일을 전부 복사하여 소스코드 파일 내로 붙여넣는 작업을 한다.메크로 치..
Compiler는 "편집하다", Interpreter는 "해석하다의 의미를 갖고 있다.컴퓨터의 세계에서는 어떤 역할을 하고 있는 지제대로 짚어보려고 한다. 0. 해석이 왜 필요할까?먼저 해석, 번역 등이 왜 필요한 지를 알아보자. 이유는 굉장히 간단하다.우리가 Java, Python 등으로 작성한 코드를 컴퓨터가 바로 인식할 수 있을까?컴퓨터는 그리 똑똑하지 않다.그렇기 때문에 컴퓨터가 이해할 수 있는 언어로 바꿔주는, 번역해주는 작업이 필요한 것이다. 1. 컴파일러 (Compiler)그러한 상황에서의 번역기 중 하나가 컴파일러이다.컴파일러는 C, C++과 같이 기계와 가까운 저수준 언어에서 사용된다. 저수준 언어에 특징을 생각해보면 타입을 지정한다.처리 속도가 빠르다. 위 특징을 고려하여 보면 컴..
문제 정답import java.io.*;import java.util.*;public class Main { static Stack stack = new Stack(); public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int N = Integer.parseInt(br.readLine()); for(int i = 0 ; i 해당 문제도 이전 "큐"문제 처럼 스택에 기본 메소드들을 사용..
문제 정답import java.io.*;import java.util.*;public class Main { static Queue resultQueue = new LinkedList(); static int lastNum; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int N = Integer.parseInt(br.readLine()); for(int i = 0 ; i ..
문제 정답import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); for(int i = 0 ; i resultQueue = new LinkedList(); for(int i = 0 ; i input값을 어디에 쌓아두었다가 닫는 괄호가 들어오면 어떻게 표시를 해주어야 겠다는 생각이 들었어요 Que..
문제 정답import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Queue numQueue = new LinkedList(); int N = Integer.parseInt(br.readLine()); for(int i = 1; i 1) { numQueue.poll(); // 제일 앞 원소 버림 numQueue.offer(num..
문제 정답1차 시도import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); String[] numList = new String[N]; for(int i = 0 ; i 이전 나이순 정렬 문제를 통해 Arrays.sort()가 나이 뿐만 아니라 이름도 정렬되어 출력되는 것을 확인하고이 문제와 찰떡이..
문제 정답1차 시도import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); String[]userList = new String[N]; for(int i = 0 ; i 예제를 봤을 때는 나이가 같으면 이름 정렬순으로 출력을 해줘야 되나 싶어서 고민이였는데문제를 다시 읽어보니 나이순으로 하되 같은 ..
문제 정답import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine(), " "); int N = Integer.parseInt(st...