분류 전체보기

회고/f-lab 회고

[회고,f-lab] 5-7주차 회고. 개발자가 가져야 하는 태도.

오랜만이네요. 이번 5-7주차 동안은 많은 일이 있었습니다. 코로나 양성이 떠서 자가 격리를 했지만 그 기간 동안 코딩 테스트 문제를 집중적으로 풀었고 이를 통해 많은 것을 깨달았었네요. 역시 특정 시점에는 깊게 몰입하는게 성장에 긍정적인 영향을 끼치군요. 이번 회고는 태도(Attitude) 중심으로 봐주셨으면 좋겠습니다. 그리고 읽으시는 여러분들도 한번 유추해보면 좋을듯합니다. 필자는 왜 이런 태도를 가지게 됬을까? 회고 목차는 아래와 같습니다. 이전 회고는 역할을 분류 기준으로 삼아 회고 했지만 이번에는 컨텐츠를 분류 기준으로 정했습니다. f-lab에 대한 회고이기도 하며 개발자로서 회고이기 때문에 이와 관련된 컨텐츠 위주로 분류 기준이 정해져야 한다고 판단했습니다. 그럼 회고 시작합니다! 목차 1...

Computer launguage/Java

[Deep dive] 부동 소수점, 고정 소수점 표현 방법? 연산 속도? 오차? 돈 계산?

돈 계산과 같은 높은 정확도를 요구하는 연산 과정에선 float와 double를 사용하지 말라고들 합니다. 아마도 float과 double이 정확도가 낮기 때문이겠죠? 실제로 if (floatVariable == 0)을 지양하라고 합니다. 왜그럴까요? 왜 float와 double은 정확도가 안좋을까요? 적당히 깊게 원리까지 알아보고, 대안을 찾아봅시다. 결론부터 말하면 float와 double은 부동 소수점으로 실수를 표현하기 때문에 정확도가 낮습니다. 또한 부동 소수점 표현 방식은 연산 과정에서 지수부를 일치시킨 후, 가수부 끼리 계산 후, 지수부를 다시 일치시키는 과정을 겪어야 하기 때문에 연산 속도가 느립니다. 이러한 이유로 소수점 계산 시, 이를 정수로 계산한 뒤 소수로 바꾸는 과정을 거치라고들 ..

회고/f-lab 회고

[회고, f-lab] 3, 4주차 회고. 매주 QnA, 토론 with 멘티, 멘토. 성장.

회고록 목록입니다. [회고, f-lab] 1, 2주차 회고, 좋은 멘티 & 멘토, 정보 공유 커뮤니티의 존재. [회고, f-lab] 3, 4주차 회고. 매주 QnA, 토론 with 멘티, 멘토. 성장. 1. 3주차 회고 멘토링질문의 80-90퍼센트는 자신있게 답변한듯하고 10-20퍼센트는 잘모른다고 답변을 했네요. 1,2주차에 비해 학습 방향성을 제대로 짚고 있다는 느낌이 듭니다. 점점 답변할 수 있는 질문도 많아지고, 꼬리 질문도 많이 답변할 수 있었습니다. 질-답 & 토론형 멘토링으로 생각하는 방식이 긍정적인 방향으로 바뀐게 현재 상태가 될 수 있었던 가장 큰 이유가 아닐까 싶습니다. 오늘은 멘토님께 현재 멘티들의 학습했던 & 학습 중인 컨텐츠를 공유하기도 했습니다. 제 컨텐츠 운영체제: Deadlo..

회고/f-lab 회고

[회고, f-lab] 1, 2주차 회고, 좋은 멘티 & 멘토, 정보 공유 커뮤니티의 존재.

회고록 목록입니다. [회고, f-lab] 1, 2주차 회고, 좋은 멘티 & 멘토, 정보 공유 커뮤니티의 존재. [회고, f-lab] 3, 4주차 회고. 매주 QnA, 토론 with 멘티, 멘토. 성장. 안녕하세요 현재 2주차 f-lab 멘토링하고 있습니다! 좋은 내용이 많으니 적은 주차의 글이더라도 읽어주세요!ㅎㅎ 후회 없으실겁니다! 프랩 장점 Quick 정리 백기선님, 토비님도 멘토로 참여하십니다(제 멘토님은 네이버, 아마존, 마이크로소프트 출신 리드 개발자에요!). 멘티들은 현업과 병행하시는 분도 많고 스스로 언어 공부 많이해보신분, 토이프로젝트 하다 오신분, 부트캠프 경험하고 스스로 부족함을 느끼신 분 등이 옵니다 ㅎㅎ 기초가 있으며, 배움의 의지가 많으신 분들이 옵니다! 개발을 배우려는 사람들의 ..

Computer launguage/Java

[Deep Dive] Garbage Collector(GC) 구조? 동작 과정? SE7, 8 차이?

안녕하세요! 오늘은 JVM 구조? 자바 애플리케이션 실행 과정? 컴파일 과정? 이전 시간에 이어 GC에 대해 알아보려 합니다! 이전 시간에 Garbage Collector가 Heap 메모리에 올라온 데이터의 생명을 관리한다고 했었죠! 이번 시간에는, ('왜 필요한지?' -> 참조) 기본 동작 개념은 뭔지! 실제 동작 과정은 어떤지! 마지막으로 JDK 7, 8이 GC 관련해서 어떤 차이가 있었는지! 알아볼겁니다:) 잘 따라오세요 가시죠! 1. Garbage Collector란? - 정의: Garbage Collector는 힙 공간에서 메모리의 수명 관리를 해주는 주체다. Garbage Collector의 메모리 수명 관리 판단 기준은 참조 유무입니다. 현재 프로세스 내의 변수가 객체를 참조하고 있으면 사용..

Computer launguage/Java

[Deep dive] JVM 구조? 자바 애플리케이션 실행 과정? 컴파일 과정?

왜 JVM 구조를 알아야할까? 기술면접 질문에서 자바 애플리케이션의 실행 과정과 JVM 구조를 묻는 것을 보면, 이는 JAVA 개발자가 알아야할 필수 지식이다. JVM 구조를 알아야할 필요성을 먼저 인식하고 자바 애플리케이션의 실행 과정과 JVM 구조를 알아보자. 어떤 애플리케이션에서도 메모리 관리는 중요하다. 애플리케이션의 메모리관리가 효율적으로 이뤄질 수록 애플리케이션의 성능 또한 향상되기 때문이다. 메모리 관리 방법에는 수동적인 메모리 관리법, Garbage collector를 이용한 메모리 관리법 두가지가 있다. 1. 수동적인 메모리 관리법 메모리 관리를 개발자가 직접 하는 방법이다. 메모리 할당부터 해제까지 개발자가 명시적으로 호출해줘야한다. C++과 같은 경우, new와 delete를 이용해서..

운영체제(OS)

[운영체제] 9. CPU 스케줄링이란? 왜 필요? 알고리즘 종류, 평가 기준?

1. 운영체제란? 목적? 분류? 2. 인터럽트란? 컴퓨터 시스템 동작원리로 알아보자. 3. 하드웨어, 메모리 및 메모리 보안 방법? 4. 프로그램의 구조, 실행 과정? 5. 인터럽트, 문맥 교환(컨택스트 스위칭), PCB 정의와 차이? 6. 프로세스란? 5 or 6가지 상태? 스케줄러? 7. 프로세스 생성? 자식 부모 관계를 이용한 협력? 8. 스레드, 멀티스레드란? 프로세스와의 차이? 9. CPU 스케줄링이란? 왜 필요? 알고리즘 종류, 평가 기준? 10. ''업데이트 예정" 1. CPU 스케줄링의 필요성 그냥 cpu를 프로세스에게 I/O 작업을 요청할 때 까지 주면 안될까? 아니면 시분할 방식으로 적당~히 나눠주면 안될까? 생각할 수 있다. 하지만 전자를 택하면 CPU 버스트(Burst) 작업이 긴 ..

Computer launguage/Java

객체지향 프로그래밍? 장단점? 4대 원칙(추상화, 캡슐화, 상속, 다형성)이란?

1. 객체지향 프로그래밍이란? 1) 정의 프로그램을 단순히 데이터와 처리방법으로 나누는 것이 아니라, 수많은 객체라는 기본 단위들로 나누고 이들의 상호작용으로 서술하는 것을 지향하는 방식입니다.(즉, 프로그래밍의 방향성을 단순 데이터와 처리방식의 집합이 아닌, 객체들의 상호작용에 두는 관점입니다.) 여기서 객체란 하나의 역할을 수행하는 속성과 메소드의 묶음입니다. 물리적인 사물 혹은 추상적인 개념도 객체가 될 수 있습니다. *왜 지향인가? 프로그래밍을 모두 객체로 바라보는 것이 좋을 수도 있지만 나쁠 수도 있습니다. 왜냐하면 프로그래밍은 실제 세계와 완벽히 같지 않아서 객체로 표현이 안될 수도 있기 때문이입니다. 이에 '지향'이라는 단어를 사용합니다. 2) 장단점? 장점 코드 유지 보수 및 확장이 쉽다...

운영체제(OS)

[운영체제] 8. 스레드, 멀티스레드란? 프로세스와의 차이?

1. 운영체제란? 목적? 분류? 2. 인터럽트란? 컴퓨터 시스템 동작원리로 알아보자. 3. 하드웨어, 메모리 및 메모리 보안 방법? 4. 프로그램의 구조, 실행 과정? 5. 인터럽트, 문맥 교환(컨택스트 스위칭), PCB 정의와 차이? 6. 프로세스란? 5 or 6가지 상태? 스케줄러? 7. 프로세스 생성? 자식 부모 관계를 이용한 협력? 8. 스레드, 멀티스레드란? 프로세스와의 차이? 9. CPU 스케줄링란? 종류 평가 기준? 10. ''업데이트 예정" 1. 스레드란? 정의: 프로세스 내에서 실제로 작업을 수행하는 주체.(출처: TCP School), 프로세스 내 실행 단위.(출처: 위키백과) 스레드는 스레드 ID, 레지스터 세트, 프로그램 카운터, 스택으로 구성됩니다. 2. 스레드 특징? - 프로세스..

운영체제(OS)

[운영체제] 7. 프로세스 생성? 자식 부모 관계를 이용한 협력?

1. 운영체제란? 목적? 분류? 2. 인터럽트란? 컴퓨터 시스템 동작원리로 알아보자. 3. 하드웨어, 메모리 및 메모리 보안 방법? 4. 프로그램의 구조, 실행 과정? 5. 인터럽트, 문맥 교환(컨택스트 스위칭), PCB 정의와 차이? 6. 프로세스란? 5 or 6가지 상태? 스케줄러? 7. 프로세스 생성? 자식 부모 관계를 이용한 협력? 8. 스레드, 멀티스레드란? 프로세스와의 차이? 8. CPU 스케줄링란? 종류 평가 기준? 9. ''업데이트 예정" 1. 프로세스 생성? 생성 주체 - 운영체제: 컴퓨터를 시작하면 바로 시작되는 프로그램. - 이미 존재하는 프로세스: 운영체제에 의해 실행되는 프로세스 다음에 실행되는 모든 프로세스. 자원 획득 방법 운영체제의 자원 획득 방법은 크게 두가지가 있다. 대부..

김민석(갈레, 페퍼)
'분류 전체보기' 카테고리의 글 목록 (4 Page)