본문 바로가기

전체 글304

컴퓨터 구조 1 컴퓨터 구조  - 동작 중심으로 볼 때 구성품: 데이터 / 명령어 - 부품 중심으로 볼 때 구성품: CPU / 메모리 / 보조기억장치 / 입출력장치  CPU란?  ALU / 레지스터 / 제어장치로 구성 메모리란?  프로그램 명령어 & 데이터를 저장 / 주소의 개념 보조기억장치란?  메모리는 전원이 꺼지면 데이터가 소실됨 / 메모리를 보조하기 위한 기억장치 메인보드란? CPU 메모리 등을 포함하는 마더보드 / 시스템 버스로 각 부품 연결시스템버스란?  주소버스/ 데이터버스 / 제어 버스로 구성 데이터 -> 숫자는? 문자는? 숫자  -> 2의 보수 개념 -> 빼기 연산을 더하기로 처리 가능  문자   -> 아스키 (7비트로 표현)   -> 확장 아스키 (8비트)   -> EUC - KR - 완성형 인코딩 방.. 2025. 2. 2.
랜턴의 서비스 기획 이야기 12 공부와 기획, 업무에 기름칠하기  10월부터 디자인 매터리얼을 꾸준히 탐독했고,12월~1월 사이에는 HTML / CSS를 공부했으며, 2~3월  사이에는 SQL과 RDB에 대한 공부를,4월부터는 AWS 중심으로 클라우드 공부를 하게 되었다.  좋은 PM 이전에, 내가 답답한 팀원이 되기 싫었기 때문이었다.나 스스로에게도  답답한 게 싫었고,협력사 개발자 및 디자이너들에게는 더더욱 싫었다. 공부를 하면 할 수록, 확실히 커뮤니케이션이 가속화되었다.개발자/디자이너들은 어려운 상황에 대해 장황하게 설명하는 노력을 하지 않아도 되었다. 나는 훨씬 명료하게, 아규먼트가 최소화될 수 있는 방향으로 요구사항을 정리할 수 있었다. 동시에 커뮤니케이션이 가능한 범위 역시 엄청나게 확장되었다. 개발자/디자이너들이 구체적인.. 2025. 2. 1.
알고리즘 1 조회 (버블/삽입/퀵) 버블 정렬 : 가장 느린 정렬 방법순차적으로 앞-뒤 2개의 데이터 쌍을 비교하여 순서를 바꿔서 정렬하는 방법 무조건 n(n-1)/2의 비교횟수가 발생한다 삽입 정렬 : 순차적으로 자료구조를 순회하면서, 순서에 어긋날 경우, 바른 위치에 바로 삽입최대 n(n-1)/2의 비교횟수가 발생최소 n-1의 비교횟수가 발생한다 퀵 정렬 : 기준 요소 선정 -> 분할 반복 뉴턴 메서드를 정렬에 사용하는 방법기준 요소 선정에 따라, 그 성능이 좌우된다. 매우 이상적인 최상의 조건인 경우 log2N번의 재귀호출로 연산이 종료된다 각 재귀호출 마다, n번의 비교가 발생하므로Nlog2N의 비교횟수가 발생한다. 반대로, 최악의 경우 n(n-1)/2의 비교횟수가 발생한다   GitHub - Sukmin-LanternK/Algor.. 2025. 2. 1.
자료구조 8 이진트리 일반적인 트리의 문제는 자식 노드의 갯수가 통제가 되지 않는다는 점이다. 따라서, 데이터를 조회하는 데 드는 시간을 제어하기 어렵다. 이진 트리는 자식 노드의 갯수를 2개로 제한한다. 하나의 기준을 가지고 이분하여 노드를 구성하기 때문에조회에 있어서 탁월한 성능을 가질 수 밖에 없다마치, 미분에서 뉴턴 메서드 처럼 말이다 이진트리의 순회 방법에는 총 3가지가 있다.1. 전위 순회: 뿌리노드부터 시작 -> 왼쪽 자식노드 -> 오른쪽 자식노드 2. 중위 순회: 왼쪽 하위 자식 노드 부터 왼쪽 트리-> 뿌리노드 -> 오른쪽 하위 자식 노드부터 하위 트리   3. 후위 순회 : 왼쪽 하위 자식 노드 -> 오른쪽 하위 자식노드 -> 뿌리노드  그리고 이는 링크르 리스트 스택에서 배웠던, 수식에도 똑같이 대응해 볼.. 2025. 1. 26.
SQLD 취득 후기 공부하게 된 계기 SQLD는 23년 3월에 취득했다. 당시 나는 웹 시스템을 개발 중에 있었는데,CS에 대한 기초지식 없이 업무를 추진하는 데에 막막함을 갖고 있었다.내가 의사결정해야할 사항들이 잔재한 상태에서, 다들 나를 기다리고 있었다.  화면 설계과정에서는 프런트를 공부했고,인프라 결정단계에서는 클라우드를 공부하면서, 어떻게든 진전을 시킬 수 있었다.하지만, 백엔드만큼은 어디부터 손대고 공부해야할지 좀 막막했다.그렇게 고민 중에 시작한 게, SQLD이였다. 데이터에 대한 이해부터 늘린다면 커뮤니케이션 범위가 한결 확대될 거라는 확신없는 기대가 있었다.  23년 새해가 되자마자 시작할 생각이었는데,뜻하지 않게 22년 연말에 듣던 강의 혜택을 받아서, 강의가 연장되었다.그래서 22년 1월까지 프런트 강.. 2025. 1. 25.
개발 과정에서의 중간 산출물 요구사항 정의서 기획 초반에 요구사항 정의서를 분명히 남겨서, 도메인 전문가의 요구사항을 반영할 수 있도록 한다.  워터폴 방식으로 진행할 때에도도메인 전문가의 의견이나, 상호 소통 부족에 따라 요구사항은 새롭게 정의될 수 있다. 이는 요구사항에 대한 추적표를 통해 별도 관리하여 최신화될 수 있도록 한다.  요구사항 추적표도메인 전문가 또는 프로젝트 참여자의 착오로 기존 요구사항이 변경될 수 있다.혹은 프로젝트 진행 과정에서 터지는 현실적인 문제들도 원인일 수 있다.  필요하면 다음 기회로 해당 요구사항을 넘겨야 할 수도 있고,아예 개발요건에서 삭제도 가능하다.  화면설계서도메인 전문가와 업무를 진행할 때,실제로 커뮤니케이션 가능한 시점은 바로 이 시점부터라고 생각이 든다. 요구사항에 화면설계가 대응될 .. 2025. 1. 25.
자료구조 4-1 링크드리스트스택을 활용한 계산기 링크드리스트스택을 이용한 계산기를 만들기 전에, 설명해야 할 개념이 있다. 바로, 중위표기식과 후위표기식이다. 중위표기식은 우리가 보통 사용하는 표기식이다 1+2 처럼 피연산자 사이에 연산자가 위치하는 방식이다.반면, 후위표기식은, 연산자가 피연산자 뒤에 나타난다. 12+처럼 말이다. 후위표기식을 계산하는 법은 다음과 같다.1. 숫자를 순서대로 스택에 삽입한다 2. 연산자가 나오면 스택의 피연산자 2개를 꺼내어 연산을 실행한다3. 결과값을 다시 스택에 넣는다 중위표기식을 입력으로 받아서, 바로 연산할 수 없는 이유는사칙연산 간의 우선순위 그리고 괄호의 존재 때문이다.따라서, 우선순위를 먼저 고려한 상태의 수식으로 변환시켜놓고, 계산해야하는 것이다. 그럼, 코드로 구성할 것도 크게 2가지다.1. 중위표기식.. 2025. 1. 25.
Appsheet 프로젝트 3. 미준맵 서비스 기획에 대해서 강의 등을 하시는 도그냥이라는 분이 만든 기획 단계의 사전 작업으로 '미준맵' 작성이 있다.이 단계는, 구체적 기획에 앞서서, 기획/개발 요소에 해당하는 것들을 놓치지 않기 위한 단계이다.  미준맵 작성은 총 3가지의 마인드맵을 그리는 것으로 구성된다1. 데이터-기능-정책 정의2. 사용자 / 관리자 화면의 기능 정의3. IA 정의  이번에 미준맵을 그릴 때도, 마인드맵 드로잉 도구를 찾았다. 예전에, 독서 내용을 정리할 목적으로 무료 웹 마인드맵 어플리케이션을 찾은 적이 있었는데 사용성이 마뜩치 않아서 딱히 정착을 하지 못했기 때문이었다. 이번에 검색할 때는 EdrawMind라는 어플리케이션을 발견해서 그리게 되었다. 웹-드로잉 도구는 아니고, 설치형으로 작동하는 어플리케이션이다.기.. 2025. 1. 9.
Appsheet Side Project- 회의실 예약 관리 2 2025. 1. 5.
Appsheet Side Project- 회의실 예약 관리 1 지난 3년간, 여러 프로젝트 PM을 경험하면서  닥치는대로 기획, 디자인 공부를 병행하였다. 그러면서, 내가 스터디한 것을 실제 업무에 적용해서 디밸롭하기도 하였지만, 한편으로, 시점과 사정상 여의치 않은 경우도 많았다. 마침, 회사생활을 하면서 스스로 문제의식을 느낀 게 있었다.  갑자기 우리팀이 쓰던 층에 여러 팀이 동시에 입주하면서, 회의실 사용 및 관리 시스템이 있으면 좋겠다고 느꼈다.  평소 관심있던 노코드 앱 개발을 통해, 사이드 프로젝트로 진행하면서, 기획, 디자인 공부를 해왔던 것 역시 사이드 프로젝트에 포함하면 좋겠단 생각이 들었다. 총 아래 단계로 해당 사이트 프로젝트를 추진해나갈 것이다.전략 수립 -> 기획 -> 개발 -> 기능 개선 -> 테스트 전략수립아래 순서대로 비즈니스 문제 등.. 2025. 1. 5.
반응형