분류 전체보기 154

바둑 1. 기본

1. 포석 1) 포석은 작전의 기본이다. 2) 포석의 한 수는 전투의 국면을 신중히 검토한다 3) 그래서 공격과 방어에 편리한 모퉁이인 귀에서 시작한다. 2. 소목 1) 귀에 위치한 적의 근거지를 공격하기 위한 수 2) 위치 방법 1. 날일자 (3선에 위치) = 가로로 날일자가 되도록 놓는 수다. (위 보다는 아래에 위치하도록 한다) 2. 눈목자 (3선에 위치) = 가로로 눈목자가 되도록 놓는 수 (동일) 3. 일자 (귀의 점과 일자) = 가로로 귀의 수와 일자가 되는 수 3. 고목 1) 세력확장에 중점을 둔 수 2) 일자와 날일자를 주로 사용한다. 3) 귀의 위치를 점의 왼쪽에 위치해 뻗어나가기 쉽게 한다. 4. 외목 1) 귀의 점과 입구자가 되도록하며 주로 3선에 위치한다. 2) 외목에서 귀를 굳힐 ..

나의 이야기 2021.02.20

기능 분산

함수는 하나의 계산식을 사용하거나 가지고 있는 정보를 주기에 편리하다. 그러나 함수에 여러개의 결과를 받아오면 효율적일까? 당연히 아니다. 오히려 효율이 떨어지고 개발자들도 이 함수가 무슨 역할을 하는지 모른다. 그래서 함수에는 왠만해서 하나의 결과만 받아오도록 설계된다. 함수 뿐만 아니라 모든 기능들은 하나를 초과한 임무는 잘 주어지지 않는다. 컴포넌트도 마찬가지로 역할이 많아지면 역할을 분산시켜야 효율적으로 사용이 된다. 많은 기능을 짊어지어주면 과부하가 걸린다. 이걸 기억해야한다!

개발자이야기 2021.02.19

발상의 전환 - 객체지향

0. 객체지향의 중요성 = 객체지향은 유지보수와 개발을 쉽게 해주기에 클라우드 시대에도 중요하다 1. 객체지향 발상의 전환 1) 객체지향의 정의와 목표인 유연한 소프트웨어가 중심 2) 점보다 선으로 접근하라 2. 기능 중심 개발 : 코드 품질 저하 - 기능중심 개발이 코드에 끼치는 영향 1) 코드 중복 = 카피앤 페이스로 기존에 있던걸 쓰지만 문제가 발생하거나 버그가 발생하면 전부 바꿔야한다. 2) 코드 속성과 행동의 과도한 노출 -> 결합도를 낮출때 외부에 노출되지 않게 은닉해야 할 시 문제 발생 -> 따라서 의존성이 증가된다. 3)코드 배치의 일관성이 없다 -> 가독성 저하 4) 사이드 이펙트 발생 -> 유지보수의 지장이 생긴다 5) 코드 재사용이 어려움 3. 유연한 소프트웨어 = 고객이 원하는 기능..

개발자이야기 2021.02.07

컴퓨터가 이해하는 언어

1. 비트(0111000) -> 비트라는 말은 한 조각이란 의미. 초기 컴퓨터는 0,1로 껐다, 켰다를 의미로 사용하였다. 그래서 참, 거짓 등으로 해석하여 참이면 실행시키고 거짓이면 중지가 된다. 2. 코드 (암호, 약속) = 0고 1로 약속하자! 코드를 주고 해당된 이름을 받아와 인간이 보기 편하게 하는 것 EX) 141414번 사원번호를 컴퓨터가 이해하면 141414번 사원의 이름으로 표현하게 한 것 3. 바이트 (한 입으로 들어감) = 영어를 모두 표현할 수 있는 최소화의 크기 -> 영문은 알파벳 + 영어를 컴퓨터에게 이해하기 위해서 8개의 비트를 이용하여 1바이트가 된다. 4. 사람의 언어에서 컴퓨터의 언어로 1) 사람언어에서 컴퓨터언어로 = 인코딩 2) 컴퓨터언어에서 사람언어로 = 디코딩 * ..

컴퓨터 원리 2020.12.12