[CrashCourse] 키보드 & 명령 라인 인터페이스 (컴퓨터 과학 수업 22/40) 입출력 장치(Input & Output Device)는 사람과 컴퓨터간의 상호작용을 위한 인터페이스이다. 대표적인 입력 장치로는 '키보드'가 있다. 키보드는 이 시대의 유비쿼터스를 이끌고 데이터 입력의 메커니즘을 가져왔다. 1868년, 현대 타자기가 발명되었으나 보완하고 수정하는 과정을 걸쳐 1874년에 세상에 등장했다. 이 타자기가 바로 Sholes 타자기이다. 이 타자기는 'QWERTY'의 자판배열을 선택하였다. 일상속의 키보드, 핸드폰 입력을 위한 자판도 QWERTY 배열을 주로 택하고 있어 내겐 어느샌가 당연한 배열이라 생각했는데, 여기서 등장하게 되었다니 새로운 느낌이다. 타자기는 사실 속도가 아닌 문서의 표준화와 가독성을 위해 도입되었으나, 10손가락 타법이 보편화되는 등 입력 방식이 다양화되.. 2022. 9. 21. [Java] 혼자 공부하는 자바 385p 풀어보기 3번 문제 Interface 구현 및 추상메소드를 구현 객체에 재정의 연습해보기. package com.example.myjavaproject; public class main { private static void printSound(Soundable soundable) { System.out.println(soundable.sound()); } public static void main(String[] args) { printSound(new Cat()); printSound(new Dog()); } } interface Soundable { String sound(); } class Cat implements Soundable { public String sound() { return "야옹"; }.. 2022. 9. 20. [CrashCourse] 압축 (컴퓨터 과학 수업 21/40) text 형식의 파일, wave 형식의 파일 등 지난 영상에서 파일의 저장방식에 대해 알아보았다. 이 파일들의 크기가 비효율적이고 큰 단점을 개선하기 위해 압축(Compression)이 등장한다. 압축(Compression)이라 함은, 원래의 표현보다 더 적은 수의 비트를 사용하여 인코딩하는 것이다. 데이터를 압축하는 한 방법은 바로 '중복된 정보를 줄이는 것'이다. 이런 방법중 하나를 REL(Run Length Encoding)이라 하며 이는 파일 안에 동일한 값들이 있다는 사실을 이용하여 압축하는 방식이다. 파일 안의 중복되는 데이터의 중복 수를 명시하는 방법인데, 일관전 적용을 위해서 모든 데이터에 대한 추가 데이터가 생겨날 수 있지만, 결과적으로 용량은 줄어든다. 또한 이렇게 압축하는 경우에 데이.. 2022. 9. 20. [CrashCourse] 파일과 파일 시스템 (컴퓨터 과학 수업 20/40) 파일 저장방식과 조각화, 조각모음등의 개념등이 등장한다. 2022. 9. 19. [CrashCourse] 메모리와 저장공간 (컴퓨터 과학 수업 19/40) 컴퓨터 메모리는 비영구적이므로 휘발성 메모리라 불린다. 저장장치(Storage)와는 다른 개념으로, 저장장치는 비휘발성이다. 과거에는 속도차이가 심하게 많이 났지만, 최근엔 개선되면서 구별이 모호해지고 용어가 섞였다. (주 기억장치, 보조기억장치로 불리운다.) 저장장치의 초기 형태는 종이펀치카드 그리고 구멍뚫린 종이테이프였다. 이는 수십년간 유용하고 대중적인 저장장치였으나 1회성이 강했다. 그리하여 실용적인 접근이 이뤄졌고 이는 지연기억장치(Delay Line Memory)의 개발에 영향을 미쳤다. 이는 수은 안에서 음파를 전달시키면서 발생하는 지연으로 2진수(0,1) 형태의 자료를 저장할 수 있다. 이러한 지연기억장치들을 통합하여 EDVAC이라 일컫었다. 이는 가장 초기의 프로그램 저장식 컴퓨터에도 사.. 2022. 9. 16. [Java] 혼자 공부하는 자바 285p 풀어보기 문제3번 싱글톤 생성 연습 package com.example.MyJavaProject; class Main { public static void main(String[] args) { ShopService obj1 = ShopService.getInstance(); ShopService obj2 = ShopService.getInstance(); if(obj1 == obj2 ){ System.out.println("두 객체는 동일합니다."); }else{ System.out.println("두 객체는 동일하지 않습니다."); } } } public class ShopService{ private static ShopService service = new ShopService(); private Shop.. 2022. 9. 15. 이전 1 ··· 3 4 5 6 7 8 9 ··· 12 다음